panlei
2019-11-13 33804d4591d5021b4dec1da5f5152422282409c6
insertdata/insertDataToEs.go
@@ -1,7 +1,7 @@
package insertdata
import (
   "ruleprocess/logger"
   "basic.com/valib/logger.git"
   "encoding/base64"
   "encoding/json"
   "errors"
@@ -146,7 +146,7 @@
// 往es中插入人脸数据
func InsertFace(msg structure.ResultMsg, linkId string) {
   if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.FaceResult)) > 0 {
   if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.TargetResult)) > 0 {
      logger.Info("往ES插人脸数据")
      faces := []*FaceAndRules{}
      faces = PutFace(faces, msg)
@@ -162,7 +162,6 @@
               panic("解压缩图片时出现错误")
            }
            alarmRules := []AlarmRule{}
            //logger.Warn("人脸id为:", face.Id, "人脸的规则长度为:", len(face.rules))
            //os.Exit(1)
            for _, faceResult := range face.rules {
               alarm := ChangeToString(faceResult.DefenceState, faceResult.AlarmLevel)
@@ -179,7 +178,7 @@
            // 上传大图
            if imgMaxUrl == "" {
               bigPhotoUrl := make(map[string]interface{})
               bigPhotoUrl, err = util.DrawPolygonOnImageForFace(msg.Cid, i, msg.RuleResult["face"].([]structure.FaceResult), weedfsUrl)
               bigPhotoUrl, err = util.DrawPolygonOnImageForFace(msg.Cid, i, msg.RuleResult["face"].([]structure.TargetResult), weedfsUrl)
               logger.Debug("========大图路径:", bigPhotoUrl)
               imgMaxUrl = bigPhotoUrl["fileUrl"].(string)
               picTime = i.Timestamp
@@ -204,6 +203,7 @@
            target.TargetScore = face.Score
            target.TargetLocation = Points{TopLeft:Point{face.Location.X,face.Location.Y},BottomRight:Point{face.Location.X+face.Location.Width,face.Location.Y+face.Location.Height}}
            //logger.Info("人脸的id:",strconv.FormatUint(face.Id, 10))
            pervideo := PerVideoPicture{
               msg.Push.PushId,
               msg.Cid,
@@ -259,8 +259,8 @@
// 归置人脸
func PutFace(faces []*FaceAndRules, msg structure.ResultMsg) []*FaceAndRules {
   if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.FaceResult)) > 0 {
      for _, faceResult := range msg.RuleResult["face"].([]structure.FaceResult) {
   if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.TargetResult)) > 0 {
      for _, faceResult := range msg.RuleResult["face"].([]structure.TargetResult) {
         faces = hebingFace(faces, faceResult)
      }
      return faces
@@ -268,7 +268,7 @@
      return nil
   }
}
func hebingFace(faces []*FaceAndRules, faceResult structure.FaceResult) []*FaceAndRules {
func hebingFace(faces []*FaceAndRules, faceResult structure.TargetResult) []*FaceAndRules {
   for _, arg := range faceResult.Args {
      // 拿到每一张人脸
      //logger.Info("归置人脸时相似者的数量:", len(arg.Liker))
@@ -357,7 +357,6 @@
               // 装配目标信息数据
               for _,target := range yoloResult.Location  {
                  // 去重添加
                  //logger.Info("装配前的原始数据是:",target)
                  var flag = true
                  for _,selectTarget := range targetInfos  {
                     if strconv.FormatUint(target.TargetId, 10) == selectTarget.TargetId {