From 317d6f3ebb2437f7f30ef657fafe41a7207ae98e Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期四, 01 八月 2019 11:22:39 +0800 Subject: [PATCH] --- --- main.go | 200 ++++++++++++++++++++++++-------------------------- 1 files changed, 96 insertions(+), 104 deletions(-) diff --git a/main.go b/main.go index bae9775..8276e02 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,9 @@ "basic.com/dbapi.git" "basic.com/pubsub/protomsg.git" "basic.com/valib/deliver.git" + "ruleprocess/insertdata" + "ruleprocess/util" + //"bufio" //"bytes" "flag" @@ -66,15 +69,15 @@ continue } else { arg := ruleserver.SdkDatas{} - paramFormat(msg, &arg) - //m := paramFormat(msg, &arg) - //logger.Info("瑙f瀽鍑烘潵鐨勬暟鎹細", arg) - //ruleserver.Judge(&arg,&m) // 鎶妔dkMessage浼犺繘鍘伙紝鏂逛究缂撳瓨鏁版嵁鏃舵嫾鍑轰竴涓猺esultMag - //// 鎶奱rg閲岀殑鎵撶殑鏍囩鎷垮嚭鏉ョ粰m鍐嶅皝瑁呬竴灞� - //resultMag := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult} - ////logger.Info("鎵撳畬鏍囩鍚庣殑缁撴灉锛�",resultMag) - //// 灏嗘墦瀹屾爣绛剧殑鏁版嵁鎻掑叆鍒癊S - //insertdata.InsertToEs(resultMag) + //paramFormat(msg, &arg) + m := paramFormat(msg, &arg) + logger.Info("瑙f瀽鍑烘潵鐨勬暟鎹細", arg) + ruleserver.Judge(&arg,&m) // 鎶妔dkMessage浼犺繘鍘伙紝鏂逛究缂撳瓨鏁版嵁鏃舵嫾鍑轰竴涓猺esultMag + // 鎶奱rg閲岀殑鎵撶殑鏍囩鎷垮嚭鏉ョ粰m鍐嶅皝瑁呬竴灞� + resultMag := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult} + //logger.Info("鎵撳畬鏍囩鍚庣殑缁撴灉锛�",resultMag) + // 灏嗘墦瀹屾爣绛剧殑鏁版嵁鎻掑叆鍒癊S + insertdata.InsertToEs(resultMag) } } } @@ -106,105 +109,94 @@ panic("瑙f瀽msg鏃跺嚭鐜伴敊璇�") } - // 鎵�201鐨勪汉鑴告暟鎹� - for _, sdkinfo := range m.Tasklab.Sdkinfos { - if sdkinfo.Sdktype == "FaceDetect" && m.Cid == "e7e3f5b0-d0ef-40af-a9c9-eefd736937bf"{ // 浜鸿劯妫�娴� + // 鍏堣繘琛屼竴涓嬭拷韪� + ruleserver.FaceIsSame(&m) + args.CameraId = m.Cid + args.TaskId = m.Tasklab.Taskid + // 鎶婂浘鐗囩殑浜岃繘鍒惰В鍘嬬缉杩涜鐢绘鍦ㄥ帇缂╁洖鍘� + bdata, err := util.UnCompress(m.Data) + if err != nil { + panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") + } + i := protomsg.Image{} + err = proto.Unmarshal(bdata, &i) + //logger.Info("----------------鐪嬬湅鏈夊嚑涓畻娉曪細",len(m.Tasklab.Sdkinfos)) + for _, sdkinfo := range m.Tasklab.Sdkinfos { // yolo绠楁硶 + if sdkinfo.Sdktype == "Yolo" { + arg := ruleserver.SdkData{} + arg.TaskId = m.Tasklab.Taskid + arg.IpcId = sdkinfo.Ipcid + arg.IsYolo = true + bdata, err := util.UnCompress(m.Data) + if err != nil { + panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") + } + i := protomsg.Image{} + err = proto.Unmarshal(bdata, &i) + arg.ImageWidth = int(i.Width) + arg.ImageHeight = int(i.Height) + // 鏆傛椂鍐欐锛宻dk杩樻病鏈夎繖淇╃畻娉� + arg.KeepRight = false + arg.IsStatic = false + logger.Info("-----杩借釜涔嬪悗sdkinfo.Sdkdata鐨勯暱搴︿负锛�----",len(sdkinfo.Sdkdata)) if len(sdkinfo.Sdkdata) > 1 { - logger.Debug("鏈�201鐨勪汉鑴告暟鎹簡") + // 澶т簬1鎵嶆湁鏁版嵁 + yoloParam := protomsg.ParamYoloObj{} + err = proto.Unmarshal(sdkinfo.Sdkdata, &yoloParam) + if err != nil { + logger.Info("瑙f瀽YOLO sdk鏁版嵁鏃跺嚭鐜伴敊璇�", err) + continue + } + var yoloNum int = 0 + for _, info := range yoloParam.Infos { + if info.Typ == 0 { + //logger.Debug("-------------yolo鐨勫潗鏍囨湁鍑犱釜",info.RcObj) + photoMap := ruleserver.PhotoMap{Rects: rectFormat(info.RcObj), Score: float64(info.Prob)*100,IsYolo:true} + arg.Photo = append(arg.Photo, photoMap) + yoloNum++ + } + } + logger.Info("--------------杩借釜涔嬪悗yolo鐨勪釜鏁帮細",yoloNum) + args.Sdkdata = append(args.Sdkdata,&arg) } else { - logger.Debug("娌℃湁201鐨勪汉鑴告暟鎹�") + continue + } + + } + if sdkinfo.Sdktype == "FaceDetect" { // 浜鸿劯妫�娴� + arg := ruleserver.SdkData{} + arg.TaskId = m.Tasklab.Taskid + arg.IpcId = sdkinfo.Ipcid + arg.IsYolo = false + bdata, err := util.UnCompress(m.Data) + if err != nil { + panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") + } + i := protomsg.Image{} + err = proto.Unmarshal(bdata, &i) + arg.ImageWidth = int(i.Width) + arg.ImageHeight = int(i.Height) + // 鏆傛椂鍐欐锛宻dk杩樻病鏈夎繖淇╃畻娉� + arg.KeepRight = false + arg.IsStatic = false + if len(sdkinfo.Sdkdata) > 1 { + faceParam := protomsg.ParamFacePos{} + err = proto.Unmarshal(sdkinfo.Sdkdata, &faceParam) + if err != nil { + logger.Info("瑙f瀽FACE sdk鏁版嵁鏃跺嚭鐜伴敊璇�", err) + continue + } + logger.Info("--------------杩借釜涔嬪悗yolo鐨勪釜鏁帮細",len(faceParam.Faces)) + for _, info := range faceParam.Faces { + //logger.Info("_______________________________________________绗竴娆$湅鐩镐技鍊硷細",info.Pos.FAngle.Confidence*100) + photoMap := ruleserver.PhotoMap{Rects: rectFormat(info.Pos.RcFace), Score: float64(info.Pos.FAngle.Confidence*100), IsYolo:false,ThftRes:*(info.Result),Feature:info.Feats} + arg.Photo = append(arg.Photo, photoMap) + } + args.Sdkdata = append(args.Sdkdata,&arg) + } else { + continue } } } - - // 鍏堣繘琛屼竴涓嬭拷韪� - //ruleserver.FaceIsSame(&m) - //args.CameraId = m.Cid - //args.TaskId = m.Tasklab.Taskid - //// 鎶婂浘鐗囩殑浜岃繘鍒惰В鍘嬬缉杩涜鐢绘鍦ㄥ帇缂╁洖鍘� - //bdata, err := util.UnCompress(m.Data) - //if err != nil { - // panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") - //} - //i := protomsg.Image{} - //err = proto.Unmarshal(bdata, &i) - ////logger.Info("----------------鐪嬬湅鏈夊嚑涓畻娉曪細",len(m.Tasklab.Sdkinfos)) - //for _, sdkinfo := range m.Tasklab.Sdkinfos { // yolo绠楁硶 - // if sdkinfo.Sdktype == "Yolo" { - // arg := ruleserver.SdkData{} - // arg.TaskId = m.Tasklab.Taskid - // arg.IpcId = sdkinfo.Ipcid - // arg.IsYolo = true - // bdata, err := util.UnCompress(m.Data) - // if err != nil { - // panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") - // } - // i := protomsg.Image{} - // err = proto.Unmarshal(bdata, &i) - // arg.ImageWidth = int(i.Width) - // arg.ImageHeight = int(i.Height) - // // 鏆傛椂鍐欐锛宻dk杩樻病鏈夎繖淇╃畻娉� - // arg.KeepRight = false - // arg.IsStatic = false - // logger.Info("-----杩借釜涔嬪悗sdkinfo.Sdkdata鐨勯暱搴︿负锛�----",len(sdkinfo.Sdkdata)) - // if len(sdkinfo.Sdkdata) > 1 { - // // 澶т簬1鎵嶆湁鏁版嵁 - // yoloParam := protomsg.ParamYoloObj{} - // err = proto.Unmarshal(sdkinfo.Sdkdata, &yoloParam) - // if err != nil { - // logger.Info("瑙f瀽YOLO sdk鏁版嵁鏃跺嚭鐜伴敊璇�", err) - // continue - // } - // var yoloNum int = 0 - // for _, info := range yoloParam.Infos { - // if info.Typ == 0 { - // //logger.Debug("-------------yolo鐨勫潗鏍囨湁鍑犱釜",info.RcObj) - // photoMap := ruleserver.PhotoMap{Rects: rectFormat(info.RcObj), Score: float64(info.Prob)*100,IsYolo:true} - // arg.Photo = append(arg.Photo, photoMap) - // yoloNum++ - // } - // } - // logger.Info("--------------杩借釜涔嬪悗yolo鐨勪釜鏁帮細",yoloNum) - // args.Sdkdata = append(args.Sdkdata,&arg) - // } else { - // continue - // } - // - // } - // if sdkinfo.Sdktype == "FaceDetect" { // 浜鸿劯妫�娴� - // arg := ruleserver.SdkData{} - // arg.TaskId = m.Tasklab.Taskid - // arg.IpcId = sdkinfo.Ipcid - // arg.IsYolo = false - // bdata, err := util.UnCompress(m.Data) - // if err != nil { - // panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒") - // } - // i := protomsg.Image{} - // err = proto.Unmarshal(bdata, &i) - // arg.ImageWidth = int(i.Width) - // arg.ImageHeight = int(i.Height) - // // 鏆傛椂鍐欐锛宻dk杩樻病鏈夎繖淇╃畻娉� - // arg.KeepRight = false - // arg.IsStatic = false - // if len(sdkinfo.Sdkdata) > 1 { - // faceParam := protomsg.ParamFacePos{} - // err = proto.Unmarshal(sdkinfo.Sdkdata, &faceParam) - // if err != nil { - // logger.Info("瑙f瀽FACE sdk鏁版嵁鏃跺嚭鐜伴敊璇�", err) - // continue - // } - // logger.Info("--------------杩借釜涔嬪悗yolo鐨勪釜鏁帮細",len(faceParam.Faces)) - // for _, info := range faceParam.Faces { - // //logger.Info("_______________________________________________绗竴娆$湅鐩镐技鍊硷細",info.Pos.FAngle.Confidence*100) - // photoMap := ruleserver.PhotoMap{Rects: rectFormat(info.Pos.RcFace), Score: float64(info.Pos.FAngle.Confidence*100), IsYolo:false,ThftRes:*(info.Result),Feature:info.Feats} - // arg.Photo = append(arg.Photo, photoMap) - // } - // args.Sdkdata = append(args.Sdkdata,&arg) - // } else { - // continue - // } - // } - //} return m } \ No newline at end of file -- Gitblit v1.8.0