| | |
| | | // 如果标签中含有持续时间首次报警的timeLabel的话则不需要过人体追踪,不然就没的插入了 |
| | | fk := ruleserver.TrackOrNot(msg.RuleResult) |
| | | if fk { |
| | | logger.Warn("捕捉一个持续时间任务.....") |
| | | InsertYolo(msg, "") |
| | | os.Exit(1) |
| | | //if msg.Cid == "61de081a-7ed9-4970-8432-41d642c35456" { |
| | | // logger.Warn("捕捉188摄像机的持续时间任务.....") |
| | | // os.Exit(1) |
| | | //} |
| | | } else { |
| | | flag := ruleserver.BodyIsSame(msg.SdkMessage) |
| | | if !flag { |
| | |
| | | if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]ruleserver.FaceResult)) > 0 { |
| | | logger.Info("往ES插人脸数据") |
| | | faces := PutFace(msg) |
| | | logger.Info("整理后的数据:",faces) |
| | | if faces != nil { |
| | | for _,face := range faces { |
| | | // 上传大图 |
| | |
| | | panic("解压缩图片时出现错误") |
| | | } |
| | | alarmRules := []AlarmRule{} |
| | | logger.Warn("人脸的规则长度为:",len(face.rules)) |
| | | logger.Warn("人脸id为:",face.Id,"人脸的规则长度为:",len(face.rules)) |
| | | os.Exit(1) |
| | | for _,faceResult := range face.rules { |
| | | alarm := ChangeToString(faceResult.DefenceState, faceResult.AlarmLevel) |
| | |
| | | hebingFace(faces, faceResult) |
| | | } |
| | | return faces |
| | | } else { |
| | | return nil |
| | | } |
| | | return nil |
| | | } |
| | | func hebingFace(faces []FaceAndRules, faceResult ruleserver.FaceResult) { |
| | | for _, arg := range faceResult.Args { |
| | |
| | | face.rules = append(face.rules,faceResult.Result) |
| | | } |
| | | } |
| | | if flag { |
| | | if !flag { |
| | | faces = append(faces, FaceAndRules{arg, []ruleserver.Result{faceResult.Result}}) |
| | | } |
| | | } |
| | | logger.Info("整理中的数据",faces) |
| | | } |
| | | |
| | | // 往es中插入yolo数据 |