| | |
| | | package labelFilter |
| | | |
| | | import ( |
| | | "basic.com/valib/logger.git" |
| | | "ruleprocess/logger" |
| | | "ruleprocess/cache" |
| | | "ruleprocess/structure" |
| | | "time" |
| | |
| | | func (label *Label)DataFormatToLabel(result structure.ResultMsg) { |
| | | logger.Debug("face结果:",result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0) |
| | | logger.Debug("yolo结果:",result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0) |
| | | if (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0) || (result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0) { |
| | | logger.Info("---------------标签过滤器赋值") |
| | | label.CameraId = result.Cid |
| | | camera, err := cache.GetCameraById(result.Cid) |
| | | if err != nil { |
| | | logger.Error("查询摄像机信息出错") |
| | | } |
| | | label.CameraName = camera.Name |
| | | label.CameraAddr = camera.Addr |
| | | label.TaskId = result.Tasklab.Taskid |
| | | label.Time = time.Now().Format("2006-01-02 15:04:05") |
| | | if result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0 { |
| | | for _,faceGroup := range result.RuleResult["face"].([]structure.FaceResult) { |
| | | label.Persons = append(label.Persons,faceGroup) |
| | | label.DefenceLevel = append(label.DefenceLevel,faceGroup.AlarmLevel) |
| | | } |
| | | } |
| | | if result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0 { |
| | | if (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0) || (result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0) { // 得有人脸或者yolo规则才可以 |
| | | |
| | | for _,yoloGroup := range result.RuleResult["yolo"].([]structure.Result) { |
| | | label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel) |
| | | // 先判断一下数据带的规则标签是否有报警的可以推送的 |
| | | flag := false |
| | | for _, res := range result.RuleResult["yolo"].([]structure.Result) { |
| | | //logger.Info("定时器打的数字标签:",res.Others.TimeLabel) |
| | | if res.Others.TimeLabel == "01" || res.Others.TimeLabel == "10" { |
| | | flag = true |
| | | } |
| | | } |
| | | logger.Info("------------标签过滤器赋值完毕") |
| | | if flag || (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0){ |
| | | logger.Info("---------------标签过滤器赋值") |
| | | label.CameraId = result.Cid |
| | | camera, err := cache.GetCameraById(result.Cid) |
| | | if err != nil { |
| | | logger.Error("查询摄像机信息出错") |
| | | } |
| | | label.CameraName = camera.Name |
| | | label.CameraAddr = camera.Addr |
| | | label.TaskId = result.Tasklab.Taskid |
| | | label.Time = time.Now().Format("2006-01-02 15:04:05") |
| | | if result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0 { |
| | | for _,faceGroup := range result.RuleResult["face"].([]structure.FaceResult) { |
| | | label.Persons = append(label.Persons,faceGroup) |
| | | label.DefenceLevel = append(label.DefenceLevel,faceGroup.AlarmLevel) |
| | | } |
| | | } |
| | | if result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0 { |
| | | |
| | | for _,yoloGroup := range result.RuleResult["yolo"].([]structure.Result) { |
| | | label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel) |
| | | } |
| | | } |
| | | logger.Info("------------标签过滤器赋值完毕") |
| | | } |
| | | } |
| | | } |
| | | |