// // Created by ps on 18-12-18. // #ifndef TESTCODE_FACETRACKINGWRAPPER_H #define TESTCODE_FACETRACKINGWRAPPER_H #include #include #include #include #include #include #include #include #include #include "FaceDefine.h" //typedef std::list ObjectList; #define MAX_DETECT_FACE 50 class FaceTrackingWrapper { public: explicit FaceTrackingWrapper(); virtual ~FaceTrackingWrapper(); void setChannelParam(int channel, const BasicFace::InitParam &); bool initHandle(); std::vector detectFace(BasicFace::FaceImage image); std::vector trackingFace(int channel, BasicFace::FaceImage image); vector extractFace(BasicFace::FaceImage image); static float compareFeature(BasicFace::Feature &feature1, BasicFace::Feature &feature2); private: int nGPUDeviceID = 0; //sdk 初始化参数 std::map m_mapParam; //保存上次跟踪的目标 // std::map m_objListCache; }; #endif //TESTCODE_FACETRACKINGWRAPPER_H