reid from https://github.com/michuanhaohao/reid-strong-baseline
zhangmeng
2020-01-19 611d12371729d0e9f4a36b74d08f5c2deb4b71c8
run.go
@@ -144,23 +144,24 @@
         return
      case msg := <-chMsg:
         if len(msg.Tasklab.Sdkinfos) == 0 || int(msg.Tasklab.Index) >= len(msg.Tasklab.Sdkinfos) {
            s.fnLogger("reid !!!!!! recv msg error")
            s.fnLogger("reid !!!!!! Recv Msg From Humantrack Error")
            continue
         }
         i := sdkhelper.UnpackImage(msg, "reid", s.fnLogger)
         if i == nil || i.Data == nil || i.Width <= 0 || i.Height <= 0 {
            s.fnLogger("reid !!!!!! unpack image error")
            s.fnLogger("reid !!!!!! Unpack Image From Humantrack Msg Failed")
            continue
         }
         sdkInfo := msg.Tasklab.Sdkinfos[int(msg.Tasklab.Index)]
         s.fnLogger("reid !!!!!! recv from humantrack len: ", len(sdkInfo.Sdkdata))
         s.fnLogger("reid !!!!!! Recv From Humantrack SDK Result Length: ", len(sdkInfo.Sdkdata))
         res := &protomsg.HumanTrackResult{}
         if err := proto.Unmarshal(sdkInfo.Sdkdata, res); err != nil {
            s.fnLogger(err, " sdkinfo msg Unmarshal 处理异常")
            s.fnLogger("reid !!!!!! proto.Unmarshal SDK Result From Humantrack msg Error:", err)
            continue
         }
         for _, v := range res.Result {
            var clen C.int
@@ -177,20 +178,23 @@
         }
         if out, err := proto.Marshal(res); err == nil {
            msg.Tasklab.Sdkinfos[int(msg.Tasklab.Index)].Sdkdata = out
            nMsg := protomsg.SdkMessage{}
            if data, err := proto.Marshal(&nMsg); err == nil {
               if data == nil {
                  s.fnLogger(err, " msg Marshal 处理异常")
                  continue
               }
               s.fnLogger("reid !!!!!! send to humantrack len: ", len(data))
               chSnd <- data
         if len(res.Result) > 0 {
            if out, err := proto.Marshal(res); err == nil {
               msg.Tasklab.Sdkinfos[int(msg.Tasklab.Index)].Sdkdata = out
            }
         }
         if data, err := proto.Marshal(&msg); err == nil {
            if data == nil {
               s.fnLogger("reid !!!!!! proto.Marshal Failed To Marshal proto.SdkMessage")
               continue
            }
            s.fnLogger("reid !!!!!! Send To Humantrack Result Length:", len(data))
            chSnd <- data
         } else {
            s.fnLogger("reid !!!!!! proto.Marshal Out Msg Error:", err)
         }
      default:
         time.Sleep(10 * time.Millisecond)