From a646b6258e3265c218caa397638cc455da1844e7 Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期三, 15 一月 2020 12:26:18 +0800 Subject: [PATCH] debug --- goface.go | 24 +++++++++++++++--------- 1 files changed, 15 insertions(+), 9 deletions(-) diff --git a/goface.go b/goface.go index 16b840a..bfe5475 100644 --- a/goface.go +++ b/goface.go @@ -8,7 +8,7 @@ #cgo LDFLAGS: -lTHFaceImage -lTHFeature -lTHFaceProperty -lTHFaceTracking #cgo LDFLAGS: -lcudart -lcublas -lcurand -lrt -ldl -lpthread #include <stdlib.h> -#include "csdk.h" +#include "cface.h" */ import "C" import ( @@ -103,7 +103,7 @@ func (s *SDKFace) Tracker(w, h, maxFaces, interval, sampleSize, threadMax, gpu int) bool { if s.tracker { - return s.tracker + return true } ret := C.c_api_face_tracker_init(C.int(threadMax), C.int(gpu), C.int(w), C.int(h), C.int(maxFaces), C.int(interval), C.int(sampleSize)) if ret <= 0 { @@ -150,15 +150,21 @@ if !s.extractor { return nil } + s.printLog("->face--> facepos: ", fpos) var featLen C.int pos := (*C.cFacePos)(unsafe.Pointer(&fpos)) + if pos == nil { + return nil + } p := C.c_api_face_extract(&featLen, pos, (*C.uchar)(unsafe.Pointer(&data[0])), C.int(w), C.int(h), C.int(ch)) - defer C.free(unsafe.Pointer(p)) - b := C.GoBytes(unsafe.Pointer(p), featLen) - s.printLog("->face--> Extract Nothing, Ret: ", len(b)) - return b + if p != nil { + defer C.free(unsafe.Pointer(p)) + return C.GoBytes(unsafe.Pointer(p), featLen) + } + s.printLog("->face--> Extract Nothing") + return nil } // Compare face compare @@ -173,15 +179,15 @@ } // Propertize prop -func (s *SDKFace) Propertize(fpos sdkstruct.CFacePos, data []byte, w, h, c int, ch int) *sdkstruct.CThftResult { +func (s *SDKFace) Propertize(fpos sdkstruct.CFacePos, data []byte, w, h, c int, ch int) sdkstruct.CThftResult { if !s.propertizer { - return nil + return sdkstruct.CThftResult{Age: 0} } pos := (*C.cFacePos)(unsafe.Pointer(&fpos)) result := C.c_api_face_property(pos, (*C.uchar)(unsafe.Pointer(&data[0])), C.int(w), C.int(h), C.int(ch)) s.printLog("->face--> Propertize") - return (*sdkstruct.CThftResult)(unsafe.Pointer(&result)) + return *(*sdkstruct.CThftResult)(unsafe.Pointer(&result)) } // CFaceInfoArrayToGoArray convert cFaceInfo array to go -- Gitblit v1.8.0