liuxiaolong
2019-06-27 64ada1f83781f9b109618d7506d76efbb0d16e60
service/FaceSdkService.go
@@ -8,9 +8,7 @@
   "github.com/gogo/protobuf/proto"
   "github.com/pierrec/lz4"
   "github.com/satori/go.uuid"
   "image"
   "io/ioutil"
   "os"
   "gocv.io/x/gocv"
   "time"
)
@@ -64,28 +62,27 @@
   formatTimeStr := time.Unix(timeUnix, 0).Format("2006-01-02 15:04:05")
   filePath := "/home/user/workspace/timg.jpg"
   file, err := os.Open(filePath)
   defer file.Close()
   if err !=nil{
      fmt.Println("image not exist")
      return i
   } else {
      img, _, err := image.Decode(file)
      bytes, err := ioutil.ReadFile(filePath)
      if err !=nil {
         return i
      }
      b := img.Bounds()
      width := b.Max.X
      height := b.Max.Y
      i = protomsg.Image{
         Width:int32(width),
         Height:int32(height),
         Timestamp:formatTimeStr,
         Data:bytes,
      }
   picMat := gocv.IMRead(filePath, gocv.IMReadColor)
   defer picMat.Close()
   if picMat.Empty() {
      fmt.Println("file not exist")
      return i
   }
   width := int32(picMat.Rows())
   height := int32(picMat.Cols())
   data := []byte(picMat.DataPtrUint8())
   fmt.Printf("data.width:%d,height:%d,data.length:%d",width,height,len(data))
   i = protomsg.Image{
      Width: width,
      Height: height,
      Timestamp: formatTimeStr,
      Data: data,
      Id: timeUnix,
   }
   fmt.Println("gocv read img completed")
   return i
}
func PushImgMsg(is protomsg.Recvmsg){
@@ -140,10 +137,10 @@
         if rMsg.Tasklab !=nil && rMsg.Tasklab.Taskid == Virtual_FaceTaskId {
            sdkInfos := rMsg.Tasklab.Sdkinfos
            fmt.Println("Len(sdkInfos)=",len(sdkInfos))
            //第一个sdk是人脸检测,第二个sdk是人脸提取
               for _,swt :=range sdkInfos{
                  if swt.Sdktype == "FaceExtract"{
                     fmt.Println("sdkName:",swt.SdkName)
                     fmt.Println("sdkData.len:",len(swt.Sdkdata))
                     var pff protomsg.ParamFaceFeature
                     if err := proto.Unmarshal(swt.Sdkdata, &pff);err !=nil{
                        fmt.Println("ParamFaceFeature unmarshal err:",err)