| | |
| | | AlarmLevel string `json:"alarmLevel"` |
| | | RuleText string `json:"ruleText"` |
| | | DefenceState bool `json:"defenceState"` |
| | | IsLink bool `json:"isLink"` |
| | | } |
| | | |
| | | // 一个face对多个规则组的归置人脸的结构体 |
| | |
| | | //os.Exit(1) |
| | | for _,faceResult := range face.rules { |
| | | alarm := ChangeToString(faceResult.DefenceState, faceResult.AlarmLevel) |
| | | alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText, faceResult.DefenceState}) |
| | | alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText, faceResult.DefenceState,faceResult.IsLink}) |
| | | } |
| | | i := protomsg.Image{} |
| | | err = proto.Unmarshal(bdata, &i) |
| | |
| | | //logger.Info("应该进来才对的") |
| | | sdkNames = sdkNames + yoloResult.SdkName |
| | | alarm := ChangeToString(yoloResult.DefenceState, yoloResult.AlarmLevel) |
| | | alarmRules = append(alarmRules, AlarmRule{yoloResult.RuleGroupId, alarm, yoloResult.RuleText, yoloResult.DefenceState}) |
| | | alarmRules = append(alarmRules, AlarmRule{yoloResult.RuleGroupId, alarm, yoloResult.RuleText, yoloResult.DefenceState,yoloResult.IsLink}) |
| | | // 上传缓存数据的图片拿到url |
| | | if yoloResult.Others.CacheData != nil { |
| | | //InsertYolo(msg.RuleResult["cacheData"].(ruleserver.ResultMsg)) |
| | |
| | | args []*Arg // 区域内目标集合 |
| | | filterData []*Arg // 过滤后区域内目标集合 |
| | | time string // 当前时间(用以匹配时间规则) |
| | | isEffective bool // 规则中是否用到了此区域 |
| | | keepRight bool // 是否靠右行 |
| | | isStatic bool // 是否静止 |
| | | } |
| | |
| | | RuleText string // 文字版规则组 |
| | | Location []Rect // 目标的坐标 |
| | | AlarmPolygon string // 触发的报警框 |
| | | IsLink bool // 是否是联动任务 |
| | | Others |
| | | } |
| | | type Others struct { |
| | |
| | | } |
| | | } |
| | | //logger.Debug("------locations的内容:", locations) |
| | | var islink bool |
| | | if groupRule.SetType == "linlkTask" { |
| | | islink = true |
| | | } else { |
| | | islink = false |
| | | } |
| | | if sdkNames != "" { |
| | | args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, label}) |
| | | args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, islink,label,}) |
| | | //logger.Info("-------------------yolo结果标签长度", len(args.RuleResult["yolo"].([]Result))) |
| | | } |
| | | if faceFlag { |
| | | args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []Rect{}, polygonId, label}, faces}) |
| | | args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []Rect{}, polygonId, islink,label,}, faces}) |
| | | //logger.Info("-------------------face结果标签", len(args.RuleResult["face"].([]FaceResult))) |
| | | logger.Info("过完规则时查看人脸标签:") |
| | | if args.RuleResult["face"] != nil && len(args.RuleResult["face"].([]FaceResult)) > 0 { |