| | |
| | | |
| | | type reid struct { |
| | | handle *ReID |
| | | list *sdkhelper.LockList |
| | | fnLogger func(...interface{}) |
| | | |
| | | ipc string |
| | |
| | | |
| | | gpuM := sdkhelper.Atoi(cfg.Param[sGPU]) |
| | | |
| | | rGPU := 0 |
| | | rGPU := gpu |
| | | |
| | | if rGPU == -1 { |
| | | rGPU = gogpu.ValidGPU(gpuM + 512) |
| | |
| | | return nil |
| | | } |
| | | |
| | | rGPU = 0 |
| | | |
| | | handle := NewSDK(rGPU, cfg.Param[sModel]) |
| | | if handle == nil { |
| | | fn("Reid SDK Create Error When New SDK") |
| | |
| | | |
| | | return &reid{ |
| | | handle: handle, |
| | | list: sdkhelper.NewLockList(6), |
| | | fnLogger: fn, |
| | | |
| | | ipc: cfg.Param[sIPC], |
| | |
| | | |
| | | feat := s.handle.Extract2(unsafe.Pointer(&i.Data[0]), int(i.Width), int(i.Height), 3) |
| | | if feat == nil { |
| | | |
| | | feat = make([]float32, 1) |
| | | } else { |
| | | for k := 0; k < 3; k++ { |
| | | s.fnLogger("REID~~~~~~extractor---human_feats------%f", feat[k+2000]) |
| | | } |
| | | } |
| | | buf := float32SliceAsByteSlice(feat) |
| | | c.Send(buf) |