From ab56030faf4bd9e3923d32d947ca782ba08e261b Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期一, 29 七月 2019 11:40:01 +0800 Subject: [PATCH] --- --- ruleserver/personTrack.go | 28 +++++++++++++++++----------- 1 files changed, 17 insertions(+), 11 deletions(-) diff --git a/ruleserver/personTrack.go b/ruleserver/personTrack.go index c642a44..f8a27ed 100644 --- a/ruleserver/personTrack.go +++ b/ruleserver/personTrack.go @@ -17,25 +17,31 @@ Score float32 } +var num int = 5 // 妫�鏌ユ槸鍚﹀墠鍚庝袱娆$殑鏁版嵁id鏄惁瀹屽叏鐩稿悓锛堜汉鑴稿拰yolo锛� 鏀逛负鐩存帴妫�鏌ユ暟閲忔槸鍚︿竴鑷� func IsSame(msg *protomsg.SdkMessage) { - logger.Debug("+++++++++++++++++++++杩借釜寮�濮�+++++++++++++++鎽勫儚鏈篿d涓猴細", msg.Cid) - logger.Debug("---------------------缂撳瓨姹�--------------------------锛�", TrackPond) + logger.Debug("+++++++++++++++++++++杩借釜寮�濮�+++++++++++++++鎽勫儚鏈篿d涓猴細", msg.Cid, "---缂撳瓨姹犱负锛�", TrackPond) for _, sdkinfo := range msg.Tasklab.Sdkinfos { // 閬嶅巻鍚勭畻娉曠殑sdkData if sdkinfo.Sdktype == "FaceDetect" { // 浜鸿劯妫�娴� logger.Info("鏁版嵁闀垮害涓猴細", len(sdkinfo.Sdkdata)) if len(sdkinfo.Sdkdata) > 1 { + num = 5 FaceIsInPond(msg.Cid, sdkinfo) } else { - if TrackPond[msg.Cid] != nil { - logger.Info("濡傛灉涓嶄负绌猴細", TrackPond[msg.Cid]) - TrackPond[msg.Cid].Faces = nil + if num > 0 { // 杩炵画num娆℃病鏈夋暟鎹墠绠楁槸娌℃湁鏁版嵁锛屼笉鐒跺彧绠椾綔涓㈠抚 + logger.Info("鎴戣涓轰綘鍙槸涓㈠抚浜�,姝ゆ椂鐨刵um鍊间负锛�",num) + num-- } else { - TrackPond[msg.Cid] = &PersonTrack{Faces: nil} - logger.Info("濡傛灉涓虹┖锛�", TrackPond[msg.Cid]) + if TrackPond[msg.Cid] != nil { + logger.Info("濡傛灉涓嶄负绌猴細", TrackPond[msg.Cid]) + TrackPond[msg.Cid].Faces = nil + } else { + TrackPond[msg.Cid] = &PersonTrack{Faces: nil} + logger.Info("濡傛灉涓虹┖锛�", TrackPond[msg.Cid]) + } + logger.Info("鎽勫儚鏈�:" + msg.Cid + "-娌℃湁浜鸿劯锛岃閲嶇疆涓虹┖") + continue } - logger.Info("鎽勫儚鏈�:" + msg.Cid + "-娌℃湁浜鸿劯锛岃閲嶇疆涓虹┖") - continue } } if sdkinfo.Sdktype == "Yolo" { @@ -104,13 +110,13 @@ if faceParam.Faces[i].Pos.FaceID == val.Id && faceParam.Faces[i].Pos.FAngle.Confidence <= val.Score { // 鍦ㄦ睜瀛愰噷骞朵笖鍒嗗�兼洿浣庯紝鏄鎶涘純鐨勬暟鎹� faceFlag = true //return "true" - faceParam.Faces = append(faceParam.Faces[:i], faceParam.Faces[i+1:]...) + //faceParam.Faces = append(faceParam.Faces[:i], faceParam.Faces[i+1:]...) logger.Info("姝ゆ暟鎹敱浜庡湪姹犲瓙涓笖鍒嗗�兼洿浣庯紝鏄琚姏寮冪殑鏁版嵁") break } if faceParam.Faces[i].Pos.FaceID == val.Id && faceParam.Faces[i].Pos.FAngle.Confidence <= val.Score { // 鍦ㄦ睜瀛愰噷骞朵笖鍒嗗�兼洿楂橈紝鏇存柊缂撳瓨 faceFlag = true - logger.Info("鍒嗗�肩敱", val.Score, "鏇存柊涓猴細", faceParam.Faces[i].Pos.FAngle.Confidence,"姝ゆ暟鎹敱浜庡湪姹犲瓙涓笖鍒嗗�兼洿浣庯紝鏄琚紶閫掍笅鍘荤殑鏁版嵁") + logger.Info("鍒嗗�肩敱", val.Score, "鏇存柊涓猴細", faceParam.Faces[i].Pos.FAngle.Confidence, "姝ゆ暟鎹敱浜庡湪姹犲瓙涓笖鍒嗗�兼洿浣庯紝鏄琚紶閫掍笅鍘荤殑鏁版嵁") val.Score = faceParam.Faces[i].Pos.FAngle.Confidence } } -- Gitblit v1.8.0