panlei
2019-07-04 5c3cfd092cf6fc9c1aec5027a5ed97eaa1a13c6f
加上给目标画框,解析底库数据
3个文件已修改
22 ■■■■ 已修改文件
insertdata/insertDataToEs.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.go 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
util/simpleCV.go 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
insertdata/insertDataToEs.go
@@ -211,7 +211,7 @@
            i := protomsg.Image{}
            err = proto.Unmarshal(bdata, &i)
            //resp, err = util.PostFormBufferData(weedfsUrl, i, uuid.NewV4().String())
            resp, err = util.DrawPolygonOnImage(msg.Cid, i)
            resp, err = util.DrawPolygonOnImage(msg.Cid, i,msg.RuleResult["yolo"].([]ruleserver.Result))
            if err != nil {
                log.Println("画框或上传图片服务器出错", err)
            } else {
main.go
@@ -224,6 +224,18 @@
                continue
            }
        }
        if sdkinfo.Sdktype == "FaceCompare" {
            faceParam := protomsg.ParamFaceFeature{}
            for _,faceExtCom := range faceParam.ExtComp  {
                binfos := protomsg.Binfos{}
                err := proto.Unmarshal(faceExtCom.Comp, &binfos)
                if err != nil {
                    fmt.Println("解析人脸比对数据时出现错误", err)
                    continue
                }
                log.Println("_________________________________________________________________解析出的人脸的相似的底库数据",binfos)
            }
        }
    }
    return m
util/simpleCV.go
@@ -161,7 +161,7 @@
    }
}
func DrawPolygonOnImage(cameraId string, img protomsg.Image) (maps map[string]interface{}, err0 error) {
func DrawPolygonOnImage(cameraId string, img protomsg.Image, results []ruleserver.Result) (maps map[string]interface{}, err0 error) {
    rook, _ := gocv.NewMatFromBytes(int(img.Height), int(img.Width), gocv.MatTypeCV8UC3, img.Data)
    //rook := gocv.IMRead("/home/user/workspace/ruleprocess/util/105.jpg",gocv.IMReadColor)
@@ -183,7 +183,11 @@
        }
    }
    // 把目标框出来
    //gocv.Rectangle()
    for _,result := range results  {
        for _,rect := range result.Location {
            gocv.Rectangle(&rook, image.Rect(int(rect.X), int(rect.Y), int(rect.X+rect.Width), int(rect.Y+rect.Height)), red, 1)
        }
    }
    //return nil,nil
    // 上传
    fdata, _ := gocv.IMEncode(".jpg", rook)