From 4243a710f702b601b1d5a7dc2c765191c191201d Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 11 十二月 2019 17:59:48 +0800
Subject: [PATCH] 把插入es的so放进中间件
---
insertdata/insertDataToEs.go | 16 ++++++++--------
algorithm/middleware/readyData.go | 2 +-
ruleserver/ruleToformula.go | 14 ++++++++------
structure/rule.go | 5 ++---
algorithm/middleware/insertDataToEs.go | 9 +++++++++
5 files changed, 28 insertions(+), 18 deletions(-)
diff --git a/algorithm/insertEs/insertDataToEs.go b/algorithm/middleware/insertDataToEs.go
similarity index 98%
rename from algorithm/insertEs/insertDataToEs.go
rename to algorithm/middleware/insertDataToEs.go
index f49407a..af27a79 100644
--- a/algorithm/insertEs/insertDataToEs.go
+++ b/algorithm/middleware/insertDataToEs.go
@@ -899,3 +899,12 @@
return nil
}
}
+
+
+//func Insert2Es(msg structure.ResultMsg,weedfsUrl1,videoPersonUrl1,serverIp1,serverPort1 string) {
+// if msg.RuleResult["label"] != nil && len(msg.RuleResult["label"].([]structure.Result)) > 0 {
+// for msg.RuleResult["label"].([]structure.Result) {
+//
+// }
+// }
+//}
\ No newline at end of file
diff --git a/algorithm/middleware/readyData.go b/algorithm/middleware/readyData.go
index bdcc857..5ea0c97 100644
--- a/algorithm/middleware/readyData.go
+++ b/algorithm/middleware/readyData.go
@@ -222,7 +222,7 @@
for _, info := range Track.Result {
logger.Info("鎺ユ敹璺熻釜鏁版嵁锛�",info.Id,info.Confidence)
photoMap := structure.PhotoMap{structure.SourcePhoto{Id: strconv.Itoa(int(info.Id)),Score: float64(info.Confidence)*100,Rects: rectFormat(info.RcHuman), Type: "track"},structure.SourcePhoto{}}
- FacePush2Body(&photoMap,m.Tasklab.Sdkinfos)
+ //FacePush2Body(&photoMap,m.Tasklab.Sdkinfos)
logger.Info("缁勮鍚庣殑璺熻釜鏁版嵁锛�",photoMap)
arg.Photo = append(arg.Photo, photoMap)
}
diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 7349d79..05a014e 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -8,9 +8,9 @@
"strconv"
)
-var weedfsUrl, videoPersonUrl, personAction string
-var serverIp string
-var serverPort string
+//var weedfsUrl, videoPersonUrl, personAction string
+//var serverIp string
+//var serverPort string
func InsertToEs(msg structure.ResultMsg) {
defer func() {
if err := recover(); err != nil {
@@ -21,15 +21,15 @@
if err != nil {
panic("閰嶇疆鏂囦欢涓嶅悎娉�")
}
- weedfsUrl = "http://" + localConfig1.WebPicIp + ":" + strconv.Itoa(int(localConfig1.WebPicPort)) + "/submit"
- videoPersonUrl = "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + structure.EsInfo.EsIndex.AIOcean.IndexName + "/" + structure.EsInfo.EsIndex.AIOcean.IndexType+"?refresh=true"
- serverIp = localConfig1.AlarmIp
- serverPort = strconv.Itoa(int(localConfig1.AlarmPort))
+ weedfsUrl := "http://" + localConfig1.WebPicIp + ":" + strconv.Itoa(int(localConfig1.WebPicPort)) + "/submit"
+ videoPersonUrl := "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + structure.EsInfo.EsIndex.AIOcean.IndexName + "/" + structure.EsInfo.EsIndex.AIOcean.IndexType+"?refresh=true"
+ serverIp := localConfig1.AlarmIp
+ serverPort := strconv.Itoa(int(localConfig1.AlarmPort))
handle(msg,weedfsUrl,videoPersonUrl,serverIp,serverPort)
}
func handle (msg structure.ResultMsg,weedfsUrl,videoPersonUrl,serverIp,serverPort string) {
- p,err := plugin.Open("./algorithm/insertEs.so")
+ p,err := plugin.Open("./algorithm/middleware.so")
if err != nil {
panic(err)
}
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 64a3641..7f3a959 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -119,6 +119,7 @@
result,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
if result {
+
// 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢 鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹� 锛侊紒锛侊紒锛乸s: 瀵圭敾闈腑鍗曚釜鐩爣鍋氬畾鏃跺櫒鐨勪笉鐢ㄥ啀杩囩敾闈㈠畾鏃跺櫒
for j := 0; j < len(groupRule.Rules); j++ {
for _, sdkData := range args.Sdkdata {
@@ -355,7 +356,7 @@
if flag {
m := make(map[string]interface{})
m["yolo"] = []structure.Result{}
- m["yolo"] = append(m["yolo"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, am.AreaJson, false,label})
+ m["yolo"] = append(m["yolo"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, true,am.AreaJson, false,label})
timeLength, _ := strconv.Atoi(rule.SdkArgValue)
timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false, BufferFlag: 10, CacheSdkData: structure.ResultMsg{message, m}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級
//TimeEleList = make(map[string]timeElement)
@@ -370,6 +371,7 @@
}
func AssembResultLabel(args *structure.SdkDatas, groupRule *protomsg.GroupRule,sdkNames string,taskId string,polygonId string,label structure.Others) []int{
+
faces := []*structure.Arg{}
yolos := []*structure.Arg{}
targets := []*structure.Arg{}
@@ -427,27 +429,27 @@
//logger.Info("瑙﹀彂鐨勫尯鍩焛d锛�",polygonId)
var labelTypes []int // 0涓簓olo鏍囩锛�1涓篺ace鏍囩 2涓轰袱鑰呮爣绛�
if sdkNames != "" && len(targets) == 0 {
- args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, yolos, polygonId, islink,label})
+ args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, yolos, true,polygonId, islink,label})
labelTypes = append(labelTypes,0)
//logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result)))
}
if faceFlag {
- args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, faces, polygonId, islink,label})
+ args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, faces, false,polygonId, islink,label})
//logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]structure.Result)))
labelTypes = append(labelTypes,1)
}
if len(targets) > 0 {
- args.RuleResult["target"] = append(args.RuleResult["target"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, targets, polygonId, islink,label})
+ args.RuleResult["target"] = append(args.RuleResult["target"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, targets, false,polygonId, islink,label})
//logger.Info("-------------------鐩爣鎸佺画缁撴灉鏍囩", len(args.RuleResult["target"].([]structure.Result)))
labelTypes = append(labelTypes,2)
}
if len(cars) > 0 {
- args.RuleResult["plate"] = append(args.RuleResult["plate"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, cars, polygonId, islink,label})
+ args.RuleResult["plate"] = append(args.RuleResult["plate"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, cars, false,polygonId, islink,label})
//logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result)))
labelTypes = append(labelTypes,3)
}
if len(personTrack) > 0 {
- args.RuleResult["track"] = append(args.RuleResult["track"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, personTrack, polygonId, islink,label})
+ args.RuleResult["track"] = append(args.RuleResult["track"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, personTrack, false,polygonId, islink,label})
//logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result)))
labelTypes = append(labelTypes,4)
}
diff --git a/structure/rule.go b/structure/rule.go
index 2389cca..a6fe8d5 100644
--- a/structure/rule.go
+++ b/structure/rule.go
@@ -87,13 +87,12 @@
// 杩囪鍒欏簱鎵撲笂鐨勬爣绛�
type Result struct {
TaskId string // 浠诲姟id
- SdkName string
+ SdkName string // 绠楁硶鍚嶇О
RuleGroupId string // 瑙勫垯缁刬d
DefenceState bool // 鏄惁甯冮槻
AlarmLevel int32 // 鎶ヨ绛夌骇
RuleText string // 鏂囧瓧鐗堣鍒欑粍
- //Location []TargetInfo // 鐩爣鐨勫潗鏍�
- AlarmObj []*Arg // 鎶ヨ鐨勭洰鏍囨暟鎹� 鎵撶畻搴熸帀涓婇潰鐨凩ocation
+ AlarmObj []*Arg // 鎶ヨ鐨勭洰鏍囨暟鎹�
AlarmPolygon string // 瑙﹀彂鐨勬姤璀︽
IsLink bool // 鏄惁鏄仈鍔ㄤ换鍔�
Others
--
Gitblit v1.8.0