增加人脸跟踪检测的通道分辨率调整接口face_track_resize
| | |
| | | } |
| | | |
| | | int c_api_face_tracker_init(const int tm, const int gi, const int wid, const int hei, |
| | | const int maxFaces, const int detinterval, const int sampleSize){ |
| | | const int maxFaces, const int detinterval, const int sampleSize){ |
| | | if (!face) face = new sdkface(); |
| | | if (face) printf("create sdk face success\n"); |
| | | return face->init_face_tracker(tm, gi, wid, hei, maxFaces, detinterval, sampleSize); |
| | | } |
| | | |
| | | int c_api_face_track_resize(const int chan, const int wid, const int hei){ |
| | | return face->face_track_resize(chan, wid, hei); |
| | | } |
| | | |
| | | YoloHandle c_api_yolo_init( |
| | | const char *fcfg, const char *fweights, const char *fname, |
| | | const int gpu_index){ |
| | |
| | | int c_api_face_extractor_init(const int tm, const int gi); |
| | | int c_api_face_tracker_init(const int tm, const int gi, const int wid, const int hei, |
| | | const int maxFaces, const int detinterval, const int sampleSize); |
| | | |
| | | int c_api_face_track_resize(const int chan, const int w, const int h); |
| | | YoloHandle c_api_yolo_init( |
| | | const char *fcfg, const char *fweights, const char *fname, |
| | | const int gpu_index); |
| | |
| | | } |
| | | return nNum; |
| | | } |
| | | |
| | | //THFACETRACKING_API int THFT_Reset(short nChannelID, THFT_Param* pParam); |
| | | int sdkface::face_track_resize(const int chan, const int w, const int h){ |
| | | THFT_Param tmpParam; |
| | | tmpParam.nDeviceID = param.nDeviceID; |
| | | tmpParam.nImageWidth = w; |
| | | tmpParam.nImageHeight = h; |
| | | tmpParam.nMaxFaceNum = param.nMaxFaceNum; |
| | | tmpParam.nSampleSize = param.nSampleSize; |
| | | tmpParam.nDetectionIntervalFrame = param.nDetectionIntervalFrame; |
| | | |
| | | printf("chan %d size: %dx%d", chan, w, h); |
| | | |
| | | auto flag = THFT_Reset(chan, &tmpParam); |
| | | |
| | | return flag; |
| | | } |
| | | } |
| | |
| | | int init_face_tracker(const int tm, const int gi,const int w, const int h, |
| | | const int maxFaces, const int detinterval, const int sampleSize); |
| | | int face_track(const cIMAGE *img, const int chan, void **fInfo, int *fcnt); |
| | | int face_track_resize(const int chan, const int w, const int h); |
| | | private: |
| | | VecFunc dtors_; |
| | | // face detect |
| | |
| | | C.c_api_face_tracker_init(C.int(tm), C.int(gi), C.int(w), C.int(h), C.int(maxFaces), C.int(interval), C.int(sample)) |
| | | } |
| | | |
| | | // ResizeFaceTracker init face tracker |
| | | func ResizeFaceTracker(ch, w, h int) int { |
| | | |
| | | return int(C.c_api_face_track_resize(C.int(ch), C.int(w), C.int(h))) |
| | | } |
| | | |
| | | // Free free sdk |
| | | func Free() { |
| | | C.c_api_release() |
| | |
| | | 3.if image has face(s),face number less than or equal to nMaxFaceNums |
| | | */ |
| | | |
| | | THFACETRACKING_API int THFT_Reset(short nChannelID, THFT_Param* pParam); |
| | | /* |
| | | The THFT_Reset function will reset parameters for an algorithm channel |
| | | |
| | | Parameters: |
| | | nChannelID[input],channel ID(from 0 to nChannelNum-1) |
| | | pParam[input],algorithm channel parameter. |
| | | Return Values: |
| | | If the function succeeds, the return value is 0. |
| | | If the function fails, the return value is negative; |
| | | error code: |
| | | -99,invalid license. |
| | | Remarks: |
| | | NULL |
| | | */ |
| | | |
| | | #endif |
old mode 100644
new mode 100755
Binary files differ
old mode 100644
new mode 100755
Binary files differ
old mode 100644
new mode 100755
Binary files differ
old mode 100644
new mode 100755
Binary files differ
old mode 100644
new mode 100755
Binary files differ
old mode 100644
new mode 100755
Binary files differ