From 393d4f7e51dd1298f6215e3958bc982711245224 Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期二, 02 七月 2019 18:29:19 +0800 Subject: [PATCH] faces相关 --- ruleserver/ruleToformula.go | 28 ++++++++++++++++++---------- 1 files changed, 18 insertions(+), 10 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index d6a7f49..00e6b2e 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -4,6 +4,7 @@ "encoding/json" "fmt" "log" + "os" "ruleprocess/cache" "sort" "strconv" @@ -252,11 +253,10 @@ for _, sdkData := range args.Sdkdata { for _, areaMap := range sdkData.AreaMapList { for j := 0; j < len(groupRule.Rules); j++ { - putFaceToResult(groupRule.Rules[j], &areaMap, faces) + args.RuleResult["face"] = putFaceToResult(groupRule.Rules[j], &areaMap, faces) } } } - args.RuleResult["face"] = faces // 鍐嶈繃鍏朵粬鏁版嵁 杩欐鐩存帴寰楀埌缁撴灉锛堢湡鎴栧亣锛� 杩囩洰鏍囨暟閲� for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { @@ -330,14 +330,17 @@ for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo && !strings.Contains(sdkName,sdkData.SdkName) { // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk 鍚屾椂瑕侀伩鍏嶉噸澶嶆嫾鎺� - sdkName = sdkName + "," + sdkData.SdkName + sdkName = sdkData.SdkName + " " } } } - args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText}) - log.Println("-------------------yolo缁撴灉鏍囩",args.RuleResult["yolo"].([]Result)) + if sdkName != "" { + args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText}) + log.Println("-------------------yolo缁撴灉鏍囩",args.RuleResult["yolo"].([]Result)) + } if args.RuleResult["faces"] != nil { log.Println("-------------------face缁撴灉鏍囩",args.RuleResult["faces"].([]Arg)) + os.Exit(1) } return true } else { @@ -349,14 +352,16 @@ } } -func putFaceToResult(rule *protomsg.Rule, am *AreaMap, faces []Arg) { +func putFaceToResult(rule *protomsg.Rule, am *AreaMap, faces []Arg) []Arg { if rule.SdkId == am.sdkId { if len(am.filterData) > 0 { for _, data := range am.filterData { + log.Println("---------------------------------------------------------------------鏈夎繖涓猟ata") faces = append(faces, data) } } } + return faces } // 璁$畻鍖哄煙鍐呯殑鐩爣鏁伴噺浠ュ強灏嗙浉浼煎害銆佸崰姣斻�佸昂瀵哥瓑鎵撳寘 @@ -392,7 +397,7 @@ a.time = time.Unix(time.Now().Unix(), 0).String()[11:16] a.keepRight = arg.KeepRight a.isStatic = arg.IsStatic - log.Println("--------------------鐪嬬湅鍖哄煙鏁版嵁锛�",*a) + //log.Println("--------------------鐪嬬湅鍖哄煙鏁版嵁锛�",*a) } // 灏嗗瓧绗︿覆鏍煎紡鐨勫潗鏍囧簭鍒楀寲涓篜oint鏍煎紡 @@ -518,11 +523,12 @@ // 杩囨护瑙勫垯鍏堢瓫閫夊嚭绗﹀悎鏉′欢鐨勭洰鏍囨暟閲� func filterRule(rule *protomsg.Rule, am *AreaMap) LittleRuleResult { - if rule.SdkId == "FaceDetect" || rule.SdkId == "FaceCompare" { + if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { // 澶勭悊鐨勬槸浜鸿劯绠楁硶 濡傛灉杩欐潯瑙勫垯閰嶇疆鐨勬槸浜鸿劯绠楁硶锛岃繃婊ゅ畬鏉′欢涔嬪悗鐩存帴寰楀嚭缁撴灉锛屽洜涓鸿偗瀹氭病鏈夋暟閲忔潯浠讹紝鑷繁鎷兼帴 + if rule.SdkId == am.sdkId && rule.PolygonId == am.areaId { // 绠楁硶鍜屽尯鍩熼兘寰楀鐨勪笂 - if rule.SdkId == "FaceCompare" { + if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { // 鍙渶瑕佽繃婊ら槇鍊硷紝杩囨护瀹屽悗鏁扮粍闀垮害澶т簬0鍗充负鎶ヨ锛屼絾瑕佽�冭檻濡備綍瀵规瘡涓�寮犻兘鎶ヨ鍛� argValue, err := strconv.ParseFloat(rule.SdkArgValue, 64) if err != nil { @@ -556,7 +562,8 @@ } return LittleRuleResult{am.sdkName, rule.RuleWithPre + "" + flag, rule.Sort} } - if rule.SdkId == "FaceDetect" { // 浜鸿劯妫�娴� + if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" { // 浜鸿劯妫�娴� + log.Println("------------------------------------------------------------------------------------------------------------------------------------缁堜簬绛夊埌浣�") if rule.Operator == "==" || rule.Operator == ">=" || rule.Operator == "<=" || rule.Operator == "<" || rule.Operator == ">" || rule.Operator == "!=" { // 濡傛灉鏄笉瑙勭煩鐨勮繛鎺ョ缁熺粺杩斿洖false 瑙勫垯涔熷彧鑳藉垽鏂汉鑴哥殑鐩镐技搴︼紝鎵�浠ヤ笉瀛樺湪鍒殑杩炴帴绗� if rule.SdkArgAlias == "score" || rule.SdkArgAlias == "proportion" || rule.SdkArgAlias == "size" { // 鍒ゆ柇鐨勬槸鐩镐技鍊硷紝鍗犳瘮锛屽昂瀵哥瓑杩囨护鏉′欢锛屽鏋滃啀鏈夛紝杩樺彲浠ュ啀鍔� @@ -586,6 +593,7 @@ am.targetNum = len(am.filterData) // 鎶婄鍚堟潯浠剁殑鐩爣鏁伴噺鏇存柊鍒皌argetNum瀛楁 } if am.targetNum > 0 { + log.Println("锛侊紒锛侊紒锛侊紒锛侊紒锛佷汉鑴告娴嬫垚鍔�") return LittleRuleResult{am.sdkName, rule.RuleWithPre + "" + "true", rule.Sort} } else { return LittleRuleResult{am.sdkName, rule.RuleWithPre + "" + "false", rule.Sort} -- Gitblit v1.8.0