From 2ced67b4ae27d141d2643717fd76c45782ad35fe Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期六, 29 六月 2019 18:45:58 +0800 Subject: [PATCH] ---注释 --- ruleserver/ruleToformula.go | 55 ++++++++++++++++++++++++++----------------------------- 1 files changed, 26 insertions(+), 29 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index 5d87d20..c5aae7c 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -101,18 +101,6 @@ Liker []LikePerson // 濡傛灉鏄汉鑴哥殑璇濆挨鍏舵槸姣斿锛屽簲瀛樹笅浠栬窡搴曞簱鐨勪汉鍛樼殑鐩镐技鎯呭喌 yolo鐨勮瘽缁檔il灏辫 } -// 浠庨�氶亾涓幏鍙栫殑sdk杈撳嚭鐨勫浘鍍忔暟鎹�(鐩墠涓昏鏄痽olo绠楁硶鐨勬暟鎹�) -//type ArgsFromSdk struct { -// CameraId string -// TaskId string -// Photo []PhotoMap // yolo绠楁硶缁撴瀯锛屼篃鍙互瀛樹汉鑴哥殑鏁版嵁锛屾瘯绔熶汉鑴镐腑鑳界敤瑙勫垯鏉ユ祴鐨勮繕鏄偅浜涘弬鏁� -// KeepRight bool // 鏄惁闈犲彸琛� 绠楁硶鍒ゆ柇鐨勪笌涓婁竴甯у浘鍍忕殑姣旇緝缁撴灉 -// IsStatic bool // 鏄惁闈欐 -// ImageWidth int // 鎽勫儚鏈烘媿鎽勭殑鍥惧儚瀹� 鍍忕礌 -// ImageHeight int // 鎽勫儚鏈烘媿鎽勭殑鍥惧儚楂� 鍍忕礌 -// RuleResult []Result // 杩囧畬瑙勫垯鍚庢墦鐨勬爣绛� -//} - // 姣忎釜绠楁硶瀵逛簬褰撳墠甯х敾闈㈣嚜宸辨彁鍙栫殑鏁版嵁 type SdkData struct { TaskId string @@ -124,8 +112,7 @@ IsStatic bool // 鏄惁闈欐 ImageWidth int // 鎽勫儚鏈烘媿鎽勭殑鍥惧儚瀹� 鍍忕礌 ImageHeight int // 鎽勫儚鏈烘媿鎽勭殑鍥惧儚楂� 鍍忕礌 - AreaMapList []AreaMap // 鏈瑂dk鎻愬彇鐨勬暟鎹寜鐓у尯鍩熷垝鍒嗗悗鐨勬暟鎹泦鍚� - RuleResult []Result // 杩囧畬瑙勫垯鍚庢墦鐨勬爣绛� + AreaMapList []*AreaMap // 鏈瑂dk鎻愬彇鐨勬暟鎹寜鐓у尯鍩熷垝鍒嗗悗鐨勬暟鎹泦鍚� } // 浠庣畻娉曟ā鍧楀効鎷挎潵鐨勫涓�甯у浘鍍忓悇涓畻娉曟彁鍙栫殑鏁版嵁闆嗗悎 @@ -171,17 +158,18 @@ } // 鏍规嵁鎽勫儚鏈篿d鎷垮埌鎽勫儚鏈烘墍鏈夊尯鍩� -func GetPolygons(cameraId string) []*protomsg.CameraPolygon { +func GetPolygons(cameraId string) []protomsg.CameraPolygon { var api dbapi.CameraApi data := api.FindAllPolygons() //fmt.Println("鏌ュ埌鐨勬墍鏈夊尯鍩燂細", data) // 鏍规嵁id浠巑ap涓嬁鍒板尯鍩� - var cameraPolygons []*protomsg.CameraPolygon + var cameraPolygons []protomsg.CameraPolygon for _, item := range data { - if item.CameraId == cameraId { + if item.CameraId == cameraId && item.Type != "line" { // 闇�瑕佹牴鎹瘮渚嬫妸鍓嶅彴鐢荤殑鍖哄煙鐨勫潗鏍囪浆鍖栦负鐩稿簲鎽勫儚鏈烘媿鎽勭殑鍥惧儚鐨勫ぇ灏� x鍧愭爣鍒嗗埆*image.width/椤甸潰鍖哄煙瀹� y鍧愭爣鍒嗗埆*image.height/椤甸潰鍖哄煙楂� // 鍓嶅彴瀹介珮鍥哄畾 - cameraPolygons = append(cameraPolygons, &item) + log.Println("------------绗﹀悎鏉′欢鐨勫尯鍩燂細",item) + cameraPolygons = append(cameraPolygons, item) } } //log.Println("鏍规嵁鎽勫儚鏈篿d鏌ュ埌鐨勫尯鍩�", cameraPolygons, "--鍖哄煙鏁伴噺涓猴細", len(cameraPolygons)) @@ -189,11 +177,10 @@ } // 鎶妔dk浠庢暟鎹抚涓婃彁鍙栫殑鎸夌収鍖哄煙鍒嗙被褰掔疆 -func SdkDataFormat(cameraId string, arg *SdkData, cameraPolygons []*protomsg.CameraPolygon) { - // cameraPolygons := GetPolygons(arg.CameraId) - // list := AreaMapList{} +func SdkDataFormat(cameraId string, arg *SdkData, cameraPolygons []protomsg.CameraPolygon) { for _, polygon := range cameraPolygons { - areaMap := AreaMap{cameraId: cameraId, areaId: polygon.Id, areaJson: polygon.Polygon, triggerLine: polygon.TriggerLine, directionLine: polygon.DirectionLine} + log.Println("++++++鍦ㄨ繖鍎跨湅涓�涓嬪尯鍩熷晩", polygon) + areaMap := &AreaMap{cameraId: cameraId, areaId: polygon.Id, areaJson: polygon.Polygon, triggerLine: polygon.TriggerLine, directionLine: polygon.DirectionLine} // 涓烘瘡涓憚鍍忔満鍖哄煙濉厖鏁版嵁 areaMap.CountAreaObjs(arg) arg.AreaMapList = append(arg.AreaMapList, areaMap) @@ -211,6 +198,7 @@ } // 璺戞湰鎽勫儚鏈虹殑鎵�鏈夎鍒欑粍 涓�缁勪竴缁勮窇 taskRuleList := GetRuleGroup(args.CameraId) // 鏈憚鍍忔満涓嬫墍鏈変换鍔$粍 + //log.Println("鐪嬩笅鎽勫儚鏈轰笅鐨勪换鍔$粍锛�",taskRuleList) // 寰楀埌灞炰簬璇ユ憚鍍忔満鐨勮嫢骞茬粍浠诲姟鐨勫畬鏁磋鍒欙紙璺熸瘡涓�鏉″畬鏁磋鍒欐瘮杈冧箣鍚庡緱鍑烘湰寮犲浘鍍忓浜庢煇涓鍒欐槸鍚︽姤璀︾殑缁撴灉銆傛斁杩沵ap锛屾瘮濡傛湰甯у浘鍍忕殑id锛屾墍纰版挒鎴愬姛鐨勮鍒檌d锛� args.RuleResult = make(map[string]interface{}) args.RuleResult["yolo"] = []Result{} @@ -227,6 +215,7 @@ linkTask(args, ruleList[i], taskId) } else { // 鐙珛浠诲姟鐨勫鐞� + log.Println("----------------------------------------64鎽勫儚鏈哄叆鍏�") RunRule(args, ruleList[i], taskId) } } @@ -238,10 +227,14 @@ func RunRule(args *SdkDatas, groupRule *protomsg.GroupRule, taskId string) bool { resultSplice := []*LittleRuleResult{} // 鍏堣繃瀹屾潯浠惰鍒� + log.Println("---------------------鐪嬩笅杩欎釜缁勮鍒欙細", groupRule.Rules) for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { + if sdkData.SdkId == "812b674b-2375-4589-919a-5c1c3278a975" { + log.Println("鍏ヤ镜鐨勭畻娉曟暟鎹�", sdkData) + } for _, areaMap := range sdkData.AreaMapList { - ruleResult := filterRule(groupRule.Rules[j], &areaMap) + ruleResult := filterRule(groupRule.Rules[j], areaMap) if ruleResult.Result != "" { log.Println("鏉′欢瑙勫垯缁撴灉锛�", ruleResult.Result) resultSplice = append(resultSplice, &ruleResult) @@ -254,7 +247,7 @@ for _, sdkData := range args.Sdkdata { for _, areaMap := range sdkData.AreaMapList { for j := 0; j < len(groupRule.Rules); j++ { - putFaceToResult(groupRule.Rules[j], &areaMap, faces) + putFaceToResult(groupRule.Rules[j], areaMap, faces) } } } @@ -263,7 +256,7 @@ for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { for _, areaMap := range sdkData.AreaMapList { - ruleResult := transferParameters(groupRule.Rules[j], &areaMap) + ruleResult := transferParameters(groupRule.Rules[j], areaMap) if ruleResult.Result != "" { log.Println("鏁伴噺瑙勫垯缁撴灉锛�", ruleResult.Result) resultSplice = append(resultSplice, &ruleResult) @@ -275,7 +268,7 @@ for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { for _, areaMap := range sdkData.AreaMapList { - ruleResult := timeRuleResult(groupRule.Rules[j], &areaMap) + ruleResult := timeRuleResult(groupRule.Rules[j], areaMap) if ruleResult.Result != "" { log.Println("鏃堕棿瑙勫垯缁撴灉锛�", ruleResult.Result) resultSplice = append(resultSplice, &ruleResult) @@ -287,7 +280,7 @@ for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { for _, areaMap := range sdkData.AreaMapList { - duration(groupRule.Rules[j], &areaMap) + duration(groupRule.Rules[j], areaMap) } } } @@ -326,7 +319,7 @@ sdkName := "" for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { - if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo{ // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk + if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo { // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk sdkName = sdkName + "," + sdkData.SdkName } } @@ -371,6 +364,8 @@ // } for _, obj := range arg.Photo { + log.Println("-------------------鐪嬬湅areajson-------------", a.areaJson) + log.Println("------------------鐪嬬湅sdkData鐨凱hoto鏁版嵁----------------", obj, "----椤轰究鐪嬬湅鍗犳瘮-----锛�", PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale)) if threshold <= obj.Score && size <= float64(obj.Rects.Width*obj.Rects.Height) && intersectionper <= PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale) { // 杩欐瑕佸榻愯〃杈惧紡閲屾墍闇�瑕佺殑鎵�鏈夊弬鏁� a.targetNum++ @@ -483,7 +478,7 @@ sdkName := "" for j := 0; j < len(groupRule.Rules); j++ { for _, sdkData := range args.Sdkdata { - if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo{ // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk + if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo { // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk sdkName = sdkName + "," + sdkData.SdkName } } @@ -511,6 +506,7 @@ func filterRule(rule *protomsg.Rule, am *AreaMap) LittleRuleResult { if rule.SdkId == "FaceDetect" || rule.SdkId == "FaceCompare" { // 澶勭悊鐨勬槸浜鸿劯绠楁硶 濡傛灉杩欐潯瑙勫垯閰嶇疆鐨勬槸浜鸿劯绠楁硶锛岃繃婊ゅ畬鏉′欢涔嬪悗鐩存帴寰楀嚭缁撴灉锛屽洜涓鸿偗瀹氭病鏈夋暟閲忔潯浠讹紝鑷繁鎷兼帴 + log.Println("------------------------------------------杩樿兘杩涜繖鍎夸簡涓嶆垚锛燂紵锛�") if rule.SdkId == am.sdkId && rule.PolygonId == am.areaId { // 绠楁硶鍜屽尯鍩熼兘寰楀鐨勪笂 if rule.SdkId == "FaceCompare" { @@ -592,6 +588,7 @@ } } else { // 澶勭悊鐨勯兘鏄痽olo鏁版嵁 + log.Println("瑙勫垯涓殑sdkId涓猴細", rule.SdkId, "--鍖哄煙鏁版嵁闆嗗悎涓殑sdkId涓猴細", am.sdkId, "--瑙勫垯涓殑鍖哄煙Id涓猴細", rule.PolygonId, "--鍖哄煙鏁版嵁闆嗗悎涓殑鍖哄煙Id涓猴細", am.areaId, ) if rule.SdkId == am.sdkId && rule.PolygonId == am.areaId { // 棣栧厛杩欐潯瑙勫垯寰楁槸杩欎釜绠楁硶鐨勮鍒欙紝鍏舵瑙勫垯鎵�瀵瑰簲鐨勫尯鍩焛d瑕佽窡鍖哄煙鏁版嵁鐨刬d瀵圭殑涓� if rule.SdkArgAlias == "score" || rule.SdkArgAlias == "proportion" || rule.SdkArgAlias == "size" { // 鍒ゆ柇鐨勬槸鐩镐技鍊硷紝鍗犳瘮锛屽昂瀵哥瓑杩囨护鏉′欢锛屽鏋滃啀鏈夛紝杩樺彲浠ュ啀鍔� var args []Arg -- Gitblit v1.8.0