From 9d559b7d6c980cc1eb0eb3e58f6945a01633339a Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期五, 06 十二月 2019 10:01:50 +0800
Subject: [PATCH] 使用dev配置文件
---
insertdata/insertDataToEs.go | 95 +++++++++++++++++++----------------------------
1 files changed, 39 insertions(+), 56 deletions(-)
diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 691ac13..0ca5793 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -1,19 +1,20 @@
package insertdata
import (
- "basic.com/valib/logger.git"
"encoding/base64"
"encoding/json"
"errors"
"net"
- "ruleprocess/cache"
- "ruleprocess/structure"
"strconv"
"time"
- "basic.com/pubsub/protomsg.git"
"github.com/golang/protobuf/proto"
"github.com/satori/go.uuid"
+ logger "github.com/alecthomas/log4go"
+
+ "ruleprocess/cache"
+ "ruleprocess/structure"
+ "basic.com/pubsub/protomsg.git"
"ruleprocess/ruleserver"
"ruleprocess/util"
)
@@ -27,43 +28,6 @@
ServerIp string `yaml:"serverIp"`
ServerPort string `yaml:"serverPort"`
DbTablePersons string `yaml:"dbTablePersons"`
-}
-
-//func InitInsertEs() {
-// weedfsUrl = "http://"+WeedFs.Ip+":"+strconv.Itoa(WeedFs.UploadPort)+"/submit"
-// videoPersonUrl = "http://"+EsInfo.Masterip+":"+EsInfo.Httpport+"/"+EsInfo.EsIndex.VideoPersons.IndexName+"/"+EsInfo.EsIndex.VideoPersons.IndexType
-// personAction = "http://"+EsInfo.Masterip+":"+EsInfo.Httpport+"/"+EsInfo.EsIndex.Personaction.IndexName+"/"+EsInfo.EsIndex.Personaction.IndexType
-//}
-
-// 浜鸿劯鐨勬暟鎹粨鏋�
-type PerVideoPicture struct {
- Id string `json:"id"`
- CameraId string `json:"cameraId"`
- CameraAddr string `json:"cameraAddr"`
- CameraName string `json:"cameraName"`
- PicDate string `json:"picDate"`
- PicMaxUrl []string `json:"picMaxUrl"`
- TaskId string `json:"taskId"`
- TaskName string `json:"taskName"`
- SdkName string `json:"sdkName"`
- Content string `json:"content"`
- AlarmRules []AlarmRule `json:"alarmRules"`
- LikeDate string `json:"likeDate"`
- ShowLabels string `json:"showLabels"`
- OtherLabels string `json:"otherLabels"`
- VideoUrl string `json:"videoUrl"`
- AnalyServerId string `json:"analyServerId"`
- AnalyServerName string `json:"analyServerName"`
- AnalyServerIp string `json:"analyServerIp"`
- ClusterId string `json:"clusterId"`
- IsAlarm bool `json:"isAlarm"`
- IsAckAlarm bool `json:"isAckAlarm"`
- IsCollect bool `json:"isCollect"`
- IsDelete bool `json:"isDelete"`
- BaseInfo []*structure.BaseInfo `json:"baseInfo"`
- TargetInfo []Target `json:"targetInfo"`
- LinkTag string `json:"linkTag"`
- LinkTagInfo []*LinkInfo `json:"linkTagInfo"`
}
type LinkInfo struct {
@@ -94,13 +58,24 @@
TargetInfo []Target `json:"targetInfo"`
}
-type Target struct {
+// 缁熶竴鐨勬暟鎹粨鏋�
+type PerVideoPicture struct {
+ LinkInfo
+ LinkTag string `json:"linkTag"`
+ LinkTagInfo []*LinkInfo `json:"linkTagInfo"`
+}
+
+type SourceTarget struct {
TargetId string `json:"targetId"`
TargetScore float64 `json:"targetScore"`
TargetType string `json:"targetType"`
Feature string `json:"feature"`
PicSmUrl string `json:"picSmUrl"`
TargetLocation Points `json:"targetLocation"`
+}
+type Target struct {
+ SourceTarget
+ AttachTarget SourceTarget `json:"attachTarget"`
}
type Points struct {
@@ -138,7 +113,7 @@
panic("閰嶇疆鏂囦欢涓嶅悎娉�")
}
weedfsUrl = "http://" + localConfig1.WebPicIp + ":" + strconv.Itoa(int(localConfig1.WebPicPort)) + "/submit"
- videoPersonUrl = "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + EsInfo.EsIndex.AIOcean.IndexName + "/" + EsInfo.EsIndex.AIOcean.IndexType
+ videoPersonUrl = "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + EsInfo.EsIndex.AIOcean.IndexName + "/" + EsInfo.EsIndex.AIOcean.IndexType+"?refresh=true"
InsertFace(msg)
InsertYolo(msg)
InsertTarget(msg)
@@ -146,14 +121,15 @@
// 寰�es涓彃鍏ヤ汉鑴哥被鍨嬫暟鎹�
func InsertFace(msg structure.ResultMsg) {
- if (msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.Result)) > 0) || (msg.RuleResult["plate"] != nil && len(msg.RuleResult["plate"].([]structure.Result)) > 0) {
+ if (msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]structure.Result)) > 0) || (msg.RuleResult["plate"] != nil && len(msg.RuleResult["plate"].([]structure.Result)) > 0) || (msg.RuleResult["track"] != nil && len(msg.RuleResult["track"].([]structure.Result)) > 0) {
for key, results := range msg.RuleResult {
- if key == "face" || key == "plate" {
+ if key == "face" || key == "plate" || key == "track"{
logger.Info("寰�ES鎻掍汉鑴告暟鎹�(鎴栬溅鐗屾暟鎹�)")
faces := []*ObjAndRules{}
faces = PutFace(faces, results.([]structure.Result))
//logger.Info("鏁寸悊鍚庣殑鏁版嵁锛�",faces)
if faces != nil {
+ logger.Warn("face涓嶄负nil")
var imgMaxUrl []string = []string{}
var picTime string = ""
for _, face := range faces {
@@ -164,6 +140,7 @@
panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒")
}
alarmRules := []AlarmRule{}
+ //logger.Info("寰幆姣忎竴涓洰鏍�")
for _, faceResult := range face.rules {
alarm := ChangeToString(faceResult.DefenceState, faceResult.AlarmLevel)
alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText, faceResult.DefenceState, ""})
@@ -171,7 +148,7 @@
i := protomsg.Image{}
err = proto.Unmarshal(bdata, &i)
// 鍏堜紶灏忓浘锛屽啀浼犲ぇ鍥撅紝闃叉鑴镐笂鏈夌嚎
- bytes := util.SubImg(i, int(face.Location.X), int(face.Location.Y), int(face.Location.X+face.Location.Width), int(face.Location.Y+face.Location.Height))
+ bytes := util.SubImg(i, int(face.Location.X), int(face.Location.Y), int(face.Location.X+face.Location.Width), int(face.Location.Y+face.Location.Height),face.Type)
resp, err := util.PostFormBufferData1(weedfsUrl, bytes, uuid.NewV4().String())
if err != nil {
logger.Error("涓婁紶灏忓浘鍑洪敊")
@@ -192,6 +169,7 @@
target.Feature = base64.StdEncoding.EncodeToString(face.Feature)
target.PicSmUrl = resp["fileUrl"].(string)
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}}
+ target.AttachTarget = SourceTarget{face.AttachArg.Id,face.AttachArg.Score,face.AttachArg.Type,base64.StdEncoding.EncodeToString(face.AttachArg.Feature),"",Points{TopLeft: Point{face.AttachArg.Location.X, face.AttachArg.Location.Y}, BottomRight: Point{face.AttachArg.Location.X + face.AttachArg.Location.Width, face.AttachArg.Location.Y + face.AttachArg.Location.Height}}}
var targetInfos []Target
targetInfos = append(targetInfos, *target)
@@ -202,8 +180,8 @@
case "plate":
sdkname = "杞︾墝璇嗗埆"
}
- logger.Info("浜鸿劯鐩爣target:",targetInfos)
- pervideo := PerVideoPicture{
+ //logger.Info("浜鸿劯鐩爣target:",targetInfos)
+ pervideo := PerVideoPicture{LinkInfo{
face.Uuid,
msg.Cid,
msg.Push.Cam.Addr,
@@ -229,6 +207,7 @@
false,
face.Liker,
targetInfos,
+ },
"",
[]*LinkInfo{},
}
@@ -322,7 +301,7 @@
linkInfo = "鑱斿姩浠诲姟"
}
alarmRules = append(alarmRules, AlarmRule{yoloResult.RuleGroupId, alarm, yoloResult.RuleText, yoloResult.DefenceState, linkInfo})
- logger.Info("鎵撳嵃浠诲姟鍚嶇О锛�", )
+ //logger.Info("鎵撳嵃浠诲姟鍚嶇О锛�", )
// 涓婁紶缂撳瓨鏁版嵁鐨勫浘鐗囨嬁鍒皍rl
if yoloResult.Others.CacheData != nil {
//InsertYolo(msg.RuleResult["cacheData"].(ruleserver.ResultMsg))
@@ -361,6 +340,7 @@
var target1 = new(Target)
target1.TargetId = target.Id
target1.TargetScore = target.Score
+ target1.TargetType = "action"
target1.TargetLocation = Points{TopLeft: Point{target.Location.X, target.Location.Y}, BottomRight: Point{target.Location.X + target.Location.Width, target.Location.Y + target.Location.Height}}
targetInfos = append(targetInfos, *target1)
}
@@ -410,7 +390,7 @@
if resp["fileUrl"] != nil {
url = append(url, resp["fileUrl"].(string))
//esDataId := uuid.NewV4().String()
- peraction := PerVideoPicture{
+ peraction := PerVideoPicture{LinkInfo{
msg.Push.PushId,
msg.Cid,
msg.Push.Cam.Addr,
@@ -436,6 +416,7 @@
false,
nil,
targetInfos,
+ },
linkTag,
linkTagInfos,
}
@@ -561,6 +542,7 @@
var target1 = new(Target)
target1.TargetId = target.Id
target1.TargetScore = target.Score
+ target1.TargetType = "action"
target1.TargetLocation = Points{TopLeft: Point{target.Location.X, target.Location.Y}, BottomRight: Point{target.Location.X + target.Location.Width, target.Location.Y + target.Location.Height}}
targetInfos = append(targetInfos, *target1)
}
@@ -571,7 +553,7 @@
return
}
//esDataId := uuid.NewV4().String()
- peraction := PerVideoPicture{
+ peraction := PerVideoPicture{LinkInfo{
msg.Push.PushId,
msg.Cid,
msg.Push.Cam.Addr,
@@ -597,6 +579,7 @@
false,
nil,
targetInfos,
+ },
linkTag,
linkTagInfos,
}
@@ -752,11 +735,11 @@
case "plate":
// 杞︾墝杩愬姩鏂瑰悜锛�0 unknown, 1 left, 2 right, 3 up, 4 down
- logger.Info("杞﹁締杞︾墝淇℃伅锛�", obj.Car.NColor, obj.Car.NCarColor, obj.Car.NCarLogo, obj.Car.NCarType, obj.Car.NDirection)
- lable = obj.Car.License + "/" + cache.GetDic("nColor"+strconv.Itoa(int(obj.Car.NColor))) + "杞︾墝" + "/" +
- cache.GetDic("nCarColor"+strconv.Itoa(int(obj.Car.NCarColor))) + "杞﹁締" + "/" + "鍝佺墝锛�" + cache.GetDic("nCarLogo"+strconv.Itoa(int(obj.Car.NCarLogo))) + "/" + "鍨嬪彿锛�" + cache.GetDic("nCarType"+strconv.Itoa(int(obj.Car.NCarType)))
- lableAttach = "杩愬姩鏂瑰悜锛�" + cache.GetDic("nDirection"+strconv.Itoa(int(obj.Car.NDirection))) + "/" + "杞︾墝缃俊搴︼細" + strconv.Itoa(int(obj.Car.NConfidence)) + "/" +
- "杞︾墝浜害锛�" + strconv.Itoa(int(obj.Car.NBright)) + "/" + "杞︾殑浜害锛�" + strconv.Itoa(int(obj.Car.NCarBright)) + "/" + "璇嗗埆鏃堕棿锛�" + strconv.Itoa(int(obj.Car.NTime))
+ lable = obj.Car.License + "/" + cache.GetDic("nVehicleColor1"+strconv.Itoa(int(obj.Car.NVehicleColor1))) + "杞﹁締" + "/" +
+ cache.GetDic("nColor"+strconv.Itoa(int(obj.Car.NColor))) + "杞︾墝"
+ lableAttach = "杞︾墝缃俊搴︼細" + strconv.Itoa(int(obj.Car.NConfidence)) + "/" + "杞︾殑浜害锛�" + strconv.Itoa(int(obj.Car.NVehicleBright)) +"/"+ "杞︾墝绫诲瀷"+cache.GetDic("nType"+strconv.Itoa(int(obj.Car.NType)))+
+ "杞﹁韩杈呴鑹诧細"+cache.GetDic("nVehicleColor2"+strconv.Itoa(int(obj.Car.NVehicleColor2)))+"/"+"鏄惁璇嗗埆鍒拌溅鐗岋細"+cache.GetDic("nVehicleColor1"+strconv.Itoa(int(obj.Car.NVehicleColor1)))+"/"+
+ "杞﹁締缃俊搴�"+strconv.Itoa(int(obj.Score))+"/"+"鍝佺墝锛�" +obj.Car.VehicleType1
}
return lable, lableAttach
}
--
Gitblit v1.8.0