panlei
2019-11-07 59dcc2bba3b294b2679beb4f177b835552798ed5
labelFilter/readyDataForLabel.go
@@ -1,9 +1,9 @@
package labelFilter
import (
   "basic.com/valib/logger.git"
   "ruleprocess/cache"
   "ruleprocess/logger"
   "ruleprocess/ruleserver"
   "ruleprocess/structure"
   "time"
)
@@ -13,36 +13,48 @@
   CameraAddr    string
   TaskId        string
   Time        string
   Persons       []ruleserver.FaceResult
   Persons       []structure.FaceResult
   DefenceLevel  []int32
}
// 把数据装配到label
func (label *Label)DataFormatToLabel(result ruleserver.ResultMsg) {
   logger.Debug("face结果:",result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]ruleserver.FaceResult)) > 0)
   logger.Debug("yolo结果:",result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]ruleserver.Result)) > 0)
   if (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]ruleserver.FaceResult)) > 0) || (result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]ruleserver.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"].([]ruleserver.FaceResult)) > 0 {
         for _,faceGroup := range result.RuleResult["face"].([]ruleserver.FaceResult) {
            label.Persons = append(label.Persons,faceGroup)
            label.DefenceLevel = append(label.DefenceLevel,faceGroup.AlarmLevel)
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) { // 得有人脸或者yolo规则才可以
      // 先判断一下数据带的规则标签是否有报警的可以推送的
      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
         }
      }
      if result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]ruleserver.Result)) > 0 {
         for _,yoloGroup := range result.RuleResult["yolo"].([]ruleserver.Result) {
            label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel)
      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("------------标签过滤器赋值完毕")
      }
      logger.Info("------------标签过滤器赋值完毕")
   }
}