From c620c6eed928d0f308bee212c40ca67abde9baeb Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期二, 30 七月 2019 16:56:08 +0800 Subject: [PATCH] 追201人脸数据 --- ruleserver/readyDataForRule.go | 33 ++++++++++++++++++--------------- 1 files changed, 18 insertions(+), 15 deletions(-) diff --git a/ruleserver/readyDataForRule.go b/ruleserver/readyDataForRule.go index cc3a2f7..63c2cd0 100644 --- a/ruleserver/readyDataForRule.go +++ b/ruleserver/readyDataForRule.go @@ -1,14 +1,13 @@ package ruleserver import ( - "basic.com/pubsub/cache.git/esutil" bigCache "basic.com/pubsub/cache.git" + "basic.com/pubsub/cache.git/esutil" "basic.com/pubsub/protomsg.git" "encoding/json" "fmt" "github.com/go-yaml/yaml" "io/ioutil" - "os" "ruleprocess/cache" "ruleprocess/logger" "strconv" @@ -74,18 +73,19 @@ func GetPolygons(cameraId string) []protomsg.CameraPolygon { var cameraPolygons []protomsg.CameraPolygon cameraPolygons = cache.GetPolygonsByCameraId(cameraId) - logger.Debug("------=======鏌ョ湅涓嬪叏閮ㄥ尯鍩燂細",cameraPolygons) + //logger.Debug("------=======鏌ョ湅涓嬪叏閮ㄥ尯鍩燂細",cameraPolygons) return cameraPolygons } // 淇濈暀鍥涗綅灏忔暟 -func Retain(f float32)(float32) { +func Retain(f float32)(float64) { s:= strconv.FormatFloat(float64(f), 'f', 4, 64) - v, err := strconv.ParseFloat(s, 32) + v, err := strconv.ParseFloat(s, 64) if err != nil { logger.Error("淇濈暀鍥涗綅灏忔暟杞崲閿欒") } - return float32(v) + // float32涓巉loat64浜掕浆浼氭湁浣嶆暟淇濈暀涓嶅噯鐨勯棶棰� + return v } // 鍙栧嚭鏌愪釜鏃堕棿瑙勫垯鐨勭鍑犲ぉ鐨勮鍒欐闆嗗悎 @@ -159,7 +159,7 @@ ids = append(ids,key) } logger.Info("------------------------------------------------------------------------------------------------------------------------") - logger.Info("=====================浜哄憳id鐨勯泦鍚堜负锛�",ids) + //logger.Info("=====================浜哄憳id鐨勯泦鍚堜负锛�",ids) if len(ids) > 0 { baseinfos, err1 := esutil.Dbpersoninfosbyid(ids,dbTablePersons,serverIp,serverPort) if err1 != nil { @@ -167,14 +167,16 @@ } for _,baseinfo := range baseinfos { // 鏍规嵁tableId鏌ヨ搴曞簱淇℃伅缁檒iker璧嬪�� - logger.Info("---------鐪嬬湅姣忎釜搴曞簱浜哄憳鐨勪俊鎭細",baseinfo.Id,baseinfo.PersonName) + //logger.Info("---------鐪嬬湅姣忎釜搴曞簱浜哄憳鐨勪俊鎭細",baseinfo.Id,baseinfo.PersonName) var tableIds []string tableIds = append(tableIds,baseinfo.TableId) // 铏界劧鏄紶鍏ユ暟缁勮繑鍥炴暟缁勭殑鎺ュ彛锛屼絾鎴戞寜鍗曚釜鐨勪娇鐢ㄤ簡 table,err := esutil.Dbtablefosbyid(tableIds,"dbtables",serverIp,serverPort) if err != nil || len(table) == 0{ logger.Error("鏍规嵁id鏌ヨ搴曞簱淇℃伅鍑洪敊锛�",err,"--杩斿洖鍊奸暱搴︿负锛�",len(table)) } - base := BaseInfo{TableId:baseinfo.TableId,TableName:table[0].TableName,BwType:table[0].BwType,CompareScore:float64(m[baseinfo.Id]),PersonId:baseinfo.Id,PersonName:baseinfo.PersonName,PersonPicUrl:baseinfo.PersonPicUrl,PhoneNum:baseinfo.PhoneNum,Sex:baseinfo.Sex,MonitorLevel:baseinfo.MonitorLevel,Content:""} + base := BaseInfo{TableId:baseinfo.TableId,TableName:table[0].TableName,BwType:table[0].BwType,CompareScore:Retain(m[baseinfo.Id])*100,PersonId:baseinfo.Id,PersonName:baseinfo.PersonName,PersonPicUrl:baseinfo.PersonPicUrl,PhoneNum:baseinfo.PhoneNum,Sex:baseinfo.Sex,IdCard:baseinfo.IdCard,MonitorLevel:baseinfo.MonitorLevel,Content:baseinfo.Reserved} + //logger.Debug("鐪嬬湅杩欎釜base鐨勫姣斿�兼槸澶氬皯锛�",base) + //os.Exit(1) arg.Liker = append(arg.Liker, &base) } } @@ -184,11 +186,11 @@ func Compare(args *SdkDatas, groupRule *protomsg.GroupRule) { compareFlag := 0 var tableIds []string - var threshold float32 = 0.2 + var threshold float32 = 0.5 // 榛樿闃堝�间负0.5 // 鐪嬬湅鏄惁鏈夊彧閰嶄汉鑴告瘮瀵圭畻娉曚絾娌℃湁閰嶅姣斿簱鐨勮鍒欙紝濡傛灉鏈夛紝鍒欐瘮瀵瑰璞′负鍏ㄩ儴搴曞簱 for j := 0; j < len(groupRule.Rules); j++ { if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a972" { // 閰嶄簡浜鸿劯姣斿 - if groupRule.Rules[j].SdkArgAlias == "compareBase" && groupRule.Rules[j].SdkArgValue != "" { // 閰嶄簡姣斿搴曞簱鐨勫弬鏁颁絾娌℃湁閰嶅叏閮ㄥ簳搴� + if groupRule.Rules[j].SdkArgAlias == "compareBase" && groupRule.Rules[j].SdkArgValue != "" { // 閰嶄簡姣斿搴曞簱鐨勫弬鏁颁絾涓嶆槸閰嶇殑鍏ㄩ儴搴曞簱 compareFlag = 2 tableIds = append(tableIds,groupRule.Rules[j].SdkArgValue)// 鏈�鍚庝細澶氫竴涓猼ableId锛屽垏鍑烘潵鐨勬暟缁勫彇len-1灏卞彲浠� } @@ -208,7 +210,7 @@ //compareFlag = 1 if compareFlag == 0 { logger.Info("娌℃湁閰嶇疆瀵规瘮搴曞簱鍙傛暟") - //return + return } logger.Debug("=====閰嶇疆鐨勯槇鍊间负锛�",threshold) for j := 0; j < len(groupRule.Rules); j++ { @@ -219,7 +221,7 @@ for _, areaMap := range sdkData.AreaMapList { // 鎷垮尯鍩熶腑姣忎釜浜鸿劯鐗瑰緛鍊煎幓瀵规瘮锛屽~鍏呭叾liker if groupRule.Rules[j].PolygonId == areaMap.areaId { - logger.Info("--------------鐪嬬湅compareFlag鐨勫�煎拰tableId锛�",compareFlag,tableIds) + //logger.Info("--------------鐪嬬湅compareFlag鐨勫�煎拰tableId鍜宎reaMap.args鐨勯暱搴︼細",compareFlag,tableIds,len(areaMap.args)) for _, arg := range areaMap.args { if compareFlag == 1 { arg.fillLiker(nil,threshold) @@ -227,15 +229,16 @@ if compareFlag == 2 { arg.fillLiker(tableIds,threshold) } - logger.Info("-------------------鎴愬姛缁檒iker璧嬪��,闀垮害涓猴細", len(arg.Liker)) + //logger.Info("-------------------鎴愬姛缁檒iker璧嬪��,闀垮害涓猴細", len(arg.Liker)) } areaMap.filterData = areaMap.args //logger.Info("=======绗竴娆$湅args锛�",(areaMap.filterData)) } - logger.Info("-------------------------------浜鸿劯瀵规瘮涔嬪悗鐨勭洰鏍囨暟閲�",len(areaMap.args)) + //logger.Info("-------------------------------浜鸿劯瀵规瘮涔嬪悗鐨勭洰鏍囨暟閲�",len(areaMap.args)) } } } + return // 姣斿畬涓�娆″氨鍑哄幓锛岄槻姝㈠啀姣旂浜岄亶閫犳垚閲嶅锛屽洜涓虹‘瀹炲彲浠ユ湁涓や釜浜鸿劯姣斿鐨勫皬瑙勫垯锛屼竴涓簳搴擄紝涓�涓槇鍊� } } } -- Gitblit v1.8.0