package labelFilter
|
|
import (
|
"ruleprocess/cache"
|
"basic.com/valib/logger.git"
|
"ruleprocess/ruleserver"
|
"time"
|
)
|
|
type Label struct {
|
CameraId string
|
CameraName string
|
CameraAddr string
|
TaskId string
|
Time string
|
Persons []ruleserver.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)
|
}
|
}
|
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)
|
}
|
}
|
logger.Info("------------标签过滤器赋值完毕")
|
}
|
}
|
|
// 从缓存中查出所有的规则数据
|