From 345c30b0136fe9c7be963f98a9e52719d1bffb60 Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期四, 05 十二月 2019 17:37:55 +0800 Subject: [PATCH] --- --- ruleserver/ruleToformula.go | 49 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 32 insertions(+), 17 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index fe7f49b..8688dab 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -5,7 +5,7 @@ "github.com/knetic/govaluate" "plugin" "ruleprocess/cache" - "ruleprocess/logger" + logger "github.com/alecthomas/log4go" "ruleprocess/structure" "sort" "strconv" @@ -160,7 +160,7 @@ //for _,face := range faces { // //logger.Debug("鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�擾_______________鐪嬬湅浜鸿劯鐨勫潗鏍�:",face.Location) //} - logger.Warn("___________________________________________________________________________缁堜簬璧板畬涓囬噷闀垮緛") + //logger.Warn("___________________________________________________________________________缁堜簬璧板畬涓囬噷闀垮緛") // 鎶婁粬浠殑浣嶇疆鏁版嵁涔熶紶涓嬪幓 yolos := []*structure.Arg{} for _, sdkData := range args.Sdkdata { @@ -172,7 +172,7 @@ } } } - logger.Debug("------locations鐨勫唴瀹癸細", yolos) + //logger.Debug("------locations鐨勫唴瀹癸細", yolos) // 澶勭悊鐩爣瀹氭椂鏁版嵁 targets := []*structure.Arg{} for _, sdkData := range args.Sdkdata { @@ -187,11 +187,23 @@ // 杞﹁締鐩爣缁熻 cars := []*structure.Arg{} for _, sdkData := range args.Sdkdata { - logger.Info("鐪嬬湅sdkNames",sdkNames) + //logger.Info("鐪嬬湅sdkNames",sdkNames) if sdkData.IpcId == "91d923ef-6200-4549-ab1b-8e773e85d729" { // 鎶婅溅鐗屾暟鎹殑鍚勪釜鐩爣鐨勫潗鏍囪緭鍑烘柟渚垮悗闈㈢敾妗� for _, areaMap := range sdkData.AreaMapList { if areaMap.IsEffective { cars = append(cars, putFaceToResult(areaMap, cars)...) + } + } + } + } + // 璺熻釜鐩爣缁熻 + personTrack := []*structure.Arg{} + for _, sdkData := range args.Sdkdata { + //logger.Info("鐪嬬湅sdkNames",sdkNames) + if sdkData.IpcId == "璺熻釜鐨刬pcId" { // 鎶婅窡韪〉闈㈢殑鍚勪釜鐩爣鐨勫潗鏍囪緭鍑� + for _, areaMap := range sdkData.AreaMapList { + if areaMap.IsEffective { + personTrack = append(personTrack, putFaceToResult(areaMap, personTrack)...) } } } @@ -202,6 +214,7 @@ } else { islink = false } + //logger.Info("瑙﹀彂鐨勫尯鍩焛d锛�",polygonId) var labelTypes []int // 0涓簓olo鏍囩锛�1涓篺ace鏍囩 2涓轰袱鑰呮爣绛� if sdkNames != "" && len(targets) == 0 { args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, yolos, polygonId, islink,label}) @@ -210,17 +223,22 @@ } if faceFlag { args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, faces, polygonId, islink,label}) - //logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]FaceResult))) + //logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]structure.Result))) labelTypes = append(labelTypes,1) } if len(targets) > 0 { args.RuleResult["target"] = append(args.RuleResult["target"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, targets, polygonId, islink,label}) - logger.Info("-------------------鐩爣鎸佺画缁撴灉鏍囩", len(args.RuleResult["target"].([]structure.Result))) + //logger.Info("-------------------鐩爣鎸佺画缁撴灉鏍囩", len(args.RuleResult["target"].([]structure.Result))) //labelTypes = append(labelTypes,2) } if len(cars) > 0 { args.RuleResult["plate"] = append(args.RuleResult["plate"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, cars, polygonId, islink,label}) - logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result))) + //logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result))) + //labelTypes = append(labelTypes,2) + } + if len(personTrack) > 0 { + args.RuleResult["track"] = append(args.RuleResult["track"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, personTrack, polygonId, islink,label}) + //logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result))) //labelTypes = append(labelTypes,2) } // 缁欐寔缁椂闂寸殑绗竴寮犺祴浜堢紦瀛樻暟鎹紙閬嶅巻澶嶅埗锛� @@ -254,7 +272,7 @@ // 缁撴灉涓哄亣鏃朵篃瑕佽蛋锛屾湁鏉�姝诲畾鏃跺櫒鐨勬搷浣� TimerAlarm(&label, groupRule.GroupId, result) //fmt.Println(timeFlag) - logger.Info("涓嶇鍚堣鍒�") + //logger.Info("涓嶇鍚堣鍒�") return false,[]int{} } } @@ -274,7 +292,6 @@ } } } - //logger.Println("-----------------------------------------------鍚浣犳槸绌虹殑锛�",faces) return faces } @@ -283,7 +300,6 @@ if len(am.FilterData) > 0 { locations = am.FilterData } - //logger.Println("-----------------------------------------------鍚浣犳槸绌虹殑锛�",faces) return locations } func putTargetsToResult(am *structure.AreaMap) []*structure.Arg { @@ -291,7 +307,6 @@ if len(am.AlarmObj) > 0 { locations = am.AlarmObj } - //logger.Println("-----------------------------------------------鍚浣犳槸绌虹殑锛�",faces) return locations } // 鑱斿姩浠诲姟鐨勫鐞� @@ -356,7 +371,7 @@ } } va.CacheData = structure.ResultMsg{message, tempMap} - logger.Info("杩欎釜鎽勫儚鏈�--", args.CameraId, "--琚祴浜堜簡result", va.Result) + //logger.Info("杩欎釜鎽勫儚鏈�--", args.CameraId, "--琚祴浜堜簡result", va.Result) } } // 鍒ゆ柇缁撴灉鏁扮粍鏄惁瀹屾弧(鍗宠璧嬪�煎畬姣�)鍙緱鍑烘姤璀︾粨鏋� @@ -376,12 +391,12 @@ for _, va := range timeEle.RuleResults { completeFormula = completeFormula + va.RuleWithPre + "" + va.Result } - logger.Info("---------------------------鑱斿姩浠诲姟鐨勫叕寮�", completeFormula) + //logger.Info("---------------------------鑱斿姩浠诲姟鐨勫叕寮�", completeFormula) if completeFormula != "" { expression, _ := govaluate.NewEvaluableExpression(completeFormula) result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� if result.(bool) { - logger.Info("___________________________________________________________________鑱斿姩浠诲姟鎶ヨ") + //logger.Info("___________________________________________________________________鑱斿姩浠诲姟鎶ヨ") rw.RLock() if TimeEleList[groupRule.GroupId] != nil { // 鏋佸伓灏旀湁鎯呭喌浼氱瓑浜巒il锛屼笉鐭ラ亾涓哄暐锛屽仛涓垽鏂互闃插畷鏈� // 鎶婃暟缁勯噷缂撳瓨鐨勬暟鎹彇鍑烘潵涓�璧锋姤璀� @@ -405,7 +420,7 @@ } } } else { - logger.Warn("鏁扮粍涓嶅渾婊′笉鎵撴爣绛�") + //logger.Warn("鏁扮粍涓嶅渾婊′笉鎵撴爣绛�") // 鍊掓槸鎶婃墦鐨勭粍瑙勫垯鏍囩缁欏幓鎺変簡鍟� for _,val := range labelTypes { if val == 0 { @@ -434,7 +449,7 @@ for k, _ := range TimeEleList { if k == groupRule.GroupId { delete(TimeEleList, k) - logger.Debug("鍥犱负瀹氭椂鍣ㄧ殑涓�甯ф暟鎹粨鏋滀负false锛屽共鎺夊畾鏃跺櫒") + //logger.Debug("鍥犱负瀹氭椂鍣ㄧ殑涓�甯ф暟鎹粨鏋滀负false锛屽共鎺夊畾鏃跺櫒") } } rw.Unlock() @@ -469,7 +484,7 @@ timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false, BufferFlag: 10, CacheSdkData: structure.ResultMsg{message, m}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級 //TimeEleList = make(map[string]timeElement) TimeEleList[groupId+"+"+rule.Id] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互褰撳墠鎸佺画鏃堕棿灏忚鍒檌d涓洪敭 - logger.Info("鍒涘缓浜嗚鏁板櫒") + //logger.Info("鍒涘缓浜嗚鏁板櫒") //cacheId = groupId+"+"+rule.Id } rw.Unlock() -- Gitblit v1.8.0