panlei
2019-07-02 0c853f9c71a13d2a43a74524843476db08e15c8c
人脸大图路径截取
3个文件已修改
23 ■■■■■ 已修改文件
insertdata/insertDataToEs.go 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruleserver/ruleToformula.go 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
util/image.go 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
insertdata/insertDataToEs.go
@@ -126,7 +126,6 @@
                }
                i := protomsg.Image{}
                err = proto.Unmarshal(bdata, &i)
                log.Println("======================================看看这个框:",face.Location)
                bytes := util.SubImg(i, int(face.Location.X), int(face.Location.Y), int(face.Location.X+face.Location.Width), int(face.Location.Y+face.Location.Height))
                resp, err := util.PostFormBufferData1(weedfsUrl, bytes, uuid.NewV4().String())
                if err != nil {
@@ -137,7 +136,7 @@
                    msg.Cid,
                    msg.Caddr,
                    time.Now().Format("2006-01-02 15:04:05"),
                    bigPhotoUrl["fileUrl"].(string),
                    strings.Split(bigPhotoUrl["fileUrl"].(string), "/")[1],
                    msg.Tasklab.Taskid,
                    msg.Tasklab.Taskname,
                    face.SdkName,
ruleserver/ruleToformula.go
@@ -356,7 +356,6 @@
    if rule.SdkId == am.sdkId {
        if len(am.filterData) > 0 {
            for _, data := range am.filterData {
                log.Println("---------------------------------------------------------------------有这个data",data)
                faces = append(faces, data)
            }
        }
util/image.go
@@ -4,29 +4,10 @@
    "basic.com/pubsub/protomsg.git"
    "gocv.io/x/gocv"
    "image"
    "log"
)
// 按尺寸去切图
func SubImg(i protomsg.Image,x0,y0,x1,y1 int,) []byte{
    //bbb := bytes.NewBuffer(dbyte)                           // 必须加一个buffer 不然没有read方法就会报错
    ////log.Println("==================看看这个buffer",bbb)
    //m, _, _ := image.Decode(bbb)                          // 图片文件解码
    //rgbImg := m.(*image.YCbCr)
    //subImg := rgbImg.SubImage(image.Rect(x0, y0, x1, y1)) //图片裁剪x0 y0 x1 y1
    //fmt.Println(reflect.TypeOf(subImg))
    ////f, _ := os.Create("./test.jpg")                   //创建文件
    ////defer f.Close()                                         //关闭文件
    //emptyBuff := bytes.NewBuffer(nil)                 //开辟一个新的空buff
    //jpeg.Encode(emptyBuff, subImg, nil)                //img写入到buff
    //bytes := emptyBuff.Bytes()
    //i := protomsg.Image{}
    //proto.Unmarshal(bytes,&i)
    //return i
    //f, _ := os.Create("./test.jpg")                   //创建文件
    //defer f.Close()                                         //关闭文件
    //jpeg.Encode(f, subImg, nil)                         //写入文件
    log.Println("--------------------------四大金刚:",x0,y0,x1,y1)
    img,_ := gocv.NewMatFromBytes(int(i.Height),int(i.Width),gocv.MatTypeCV8UC3,i.Data)
    rect := image.Rect(x0,y0,x1,y1)
    region := img.Region(rect)