From f08948b36e73de524a8177f64dab91afd33fe8fd Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期三, 09 十月 2019 17:07:01 +0800 Subject: [PATCH] 把分值和id以及坐标都预备存上 --- ruleserver/ruleToformula.go | 22 +++++++++++++++------- 1 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index 5160f2a..da722fc 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -82,6 +82,11 @@ RuleResult map[string]interface{} // 杩囧畬瑙勫垯鍚庢墦鐨勬爣绛� face: []FaceResult, yolo: []Result } +type TargetInfo struct { + Rect + TargetId uint64 + TargetScore float64 +} // 杩囪鍒欏簱鎵撲笂鐨勬爣绛� type Result struct { TaskId string // 浠诲姟id @@ -90,7 +95,7 @@ DefenceState bool // 鏄惁甯冮槻 AlarmLevel int32 // 鎶ヨ绛夌骇 RuleText string // 鏂囧瓧鐗堣鍒欑粍 - Location []Rect // 鐩爣鐨勫潗鏍� + Location []TargetInfo // 鐩爣鐨勫潗鏍� AlarmPolygon string // 瑙﹀彂鐨勬姤璀︽ IsLink bool // 鏄惁鏄仈鍔ㄤ换鍔� Others @@ -215,7 +220,6 @@ } } } - // 鍐嶈繃鍏朵粬鏁版嵁 杩欐鐩存帴寰楀埌缁撴灉锛堢湡鎴栧亣锛� 杩囩洰鏍囨暟閲� for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { @@ -349,7 +353,7 @@ //} logger.Warn("___________________________________________________________________________缁堜簬璧板畬涓囬噷闀垮緛") // 鎶婁粬浠殑浣嶇疆鏁版嵁涔熶紶涓嬪幓 - locations := []Rect{} + locations := []TargetInfo{} for _, sdkData := range args.Sdkdata { if sdkData.IpcId == "02D54B61-0F16-C604-8567-FC4BE493C523" && sdkNames != "" { // 鎶妝olo鏁版嵁鐨勫悇涓洰鏍囩殑鍧愭爣杈撳嚭鏂逛究鍚庨潰鐢绘 for _, areaMap := range sdkData.AreaMapList { @@ -371,7 +375,7 @@ //logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result))) } if faceFlag { - args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []Rect{}, polygonId, islink,label,}, faces}) + args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []TargetInfo{}, polygonId, islink,label,}, faces}) //logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]FaceResult))) labelTypes = append(labelTypes,1) } @@ -410,11 +414,15 @@ return faces } -func putYolosToResult(am *AreaMap) []Rect { - locations := []Rect{} +func putYolosToResult(am *AreaMap) []TargetInfo { + locations := []TargetInfo{} if len(am.filterData) > 0 { for _, data := range am.filterData { - locations = append(locations, data.Location) + location := TargetInfo{} + location.Rect = data.Location + location.TargetId = data.Id + location.TargetScore = data.Score + locations = append(locations, location) } } //logger.Println("-----------------------------------------------鍚浣犳槸绌虹殑锛�",faces) -- Gitblit v1.8.0