#ifndef _sdk_face_h_ #define _sdk_face_h_ #include "../base.hpp" struct _cFacePos; struct _cIMAGE; struct THFT_Param; struct _cFaceInfo; namespace csdk_wrap{ class sdkface{ public: sdkface(); ~sdkface(); public: int init_face_detector(const int tm, const int gi, const int minFaces, const int rollAngle); int face_detect(const cIMAGE *img, const int chan, void **fpos, int *fcnt); int init_face_extractor(const int tm, const int gi); int face_extract_feature(const cFacePos &pos, const cIMAGE *img, const int chan, void **feat, int *featLen); float face_compare(unsigned char *feat1, unsigned char *feat2); int init_face_property(const int tm); cThftResult face_property(const cFacePos &pos, const cIMAGE *img, const int chan); 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); private: VecFunc dtors_; // face detect cFacePos *fpos_; // face extract int featLen_; unsigned char *feat_; // face track THFT_Param *param_track_; cFaceInfo *finfo_; }; } #endif