| | |
| | | |
| | | import ( |
| | | "fmt" |
| | | "log" |
| | | "ruleprocess/insertdata" |
| | | "ruleprocess/ruleserver" |
| | | "ruleprocess/util" |
| | |
| | | // 暂时写死,sdk还没有这俩算法 |
| | | arg.KeepRight = false |
| | | arg.IsStatic = false |
| | | fmt.Println("从mongos中拿到的数据包长度为:", len(msg)) |
| | | for _, sdkinfo := range m.Tasklab.Sdkinfos { // yolo算法 |
| | | if sdkinfo.Sdktype == "Yolo" { |
| | | fmt.Println("数据长度为:", len(sdkinfo.Sdkdata)) |
| | | if len(sdkinfo.Sdkdata) > 1 { |
| | | // 大于1才有数据 |
| | | fmt.Println("----------------------------------------------------",m.Caddr) |
| | |
| | | //continue |
| | | } |
| | | for _, info := range yoloParam.Infos { |
| | | log.Println("yolo类型:",info.Typ) |
| | | if info.Typ == 0 { |
| | | photoMap := ruleserver.PhotoMap{Rects: rectFormat(info.RcObj), Score: float64(info.Prob)*100} |
| | | arg.Photo = append(arg.Photo, photoMap) |
| | |
| | | if completeFormula != "" { |
| | | expression, _ := govaluate.NewEvaluableExpression(completeFormula) |
| | | result, _ := expression.Evaluate(nil) // 得到数学公式的结果 |
| | | fmt.Println("这帧图像在任务下的除了持续时间外的一整条规则下的判断结果", result) |
| | | //fmt.Println("这帧图像在任务下的除了持续时间外的一整条规则下的判断结果", result) |
| | | // 由于天然或的关系,满足一个就该报警,即该帧数据对于某个任务的某个规则组应该报警 |
| | | if !result.(bool) { // 如果不符合条件,应该重置定时器元素,等符合时再开启,把key中包含任务id的timeEle都重置 |
| | | for k, timeEle := range TimeEleList { |