panlei
2019-07-12 2a7ac2e657ea58c17eb3ad96e0183283b4448514
ruleserver/ruleToformula.go
@@ -238,10 +238,19 @@
      if err1 != nil {
         logger.Error("查询底库人员信息出错", err1)
      }
      baseinfo.CompareScore = val
      baseinfo.CompareScore = Retain(val)
      arg.Liker = append(arg.Liker, &baseinfo)
   }
   //logger.Info("------------------第一次看args:",*arg)
}
// 保留四位小数
func Retain(f float32)(float32) {
   s:= strconv.FormatFloat(float64(f), 'f', 4, 64)
   v, err := strconv.ParseFloat(s, 32)
   if err != nil {
      logger.Error("保留四位小数转换错误")
   }
   return float32(v)
}
func Compare(args *SdkDatas, groupRule *protomsg.GroupRule) {
   compareFlag := 0
@@ -259,7 +268,7 @@
      }
   }
   // 为了测试作下弊,直接让其比对全部底库
   compareFlag = 1
   //compareFlag = 1
   if compareFlag == 0 {
      logger.Info("没有配置对比底库参数")
      return
@@ -320,6 +329,9 @@
         if ipcId == sdkData.IpcId {
            logger.Info("当前走的规则的算法是--:", sdkName, "---")
            logger.Info("========================有几个区域:",len(sdkData.AreaMapList))
            for _,areaMap := range sdkData.AreaMapList{
               logger.Info("检查一下区域的具体数据:",areaMap.areaJson)
            }
            for _, areaMap := range sdkData.AreaMapList {
               ruleResult := filterRule(groupRule.Rules[j], areaMap)
               if ruleResult.Result != "" {
@@ -459,7 +471,6 @@
         if flag {
            // 最后成功报警才把符合条件的人脸数据塞进结果标签里
            // 配了人脸的算法才把人脸的数据甩出来打标签
            logger.Info("------------------------------最后一关")
            faces := []Arg{}
            faceFlag := false
            for j := 0; j < len(groupRule.Rules); j++ {
@@ -489,10 +500,10 @@
            }
            if sdkNames != "" {
               args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText, locations,polygonId})
               logger.Info("-------------------yolo结果标签", args.RuleResult["yolo"].([]Result))
               logger.Info("-------------------yolo结果标签长度", len(args.RuleResult["yolo"].([]Result)))
            }
            if args.RuleResult["face"] != nil {
               logger.Info("-------------------face结果标签", args.RuleResult["face"].([]Arg))
               logger.Info("-------------------face结果标签", len(args.RuleResult["face"].([]Arg)))
            }
            return true
         } else {