#ifndef _c_wrapper_sdk_h_ #define _c_wrapper_sdk_h_ #ifdef __cplusplus extern "C"{ #endif #include "csdk_struct.h" #ifndef uchar typedef unsigned char uchar; #endif typedef void* YoloHandle; int c_api_face_detector_init(const int tm, const int gi, const int minFaces, const int rollAngle); int c_api_face_property_init(const int tm); 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); void c_api_release(); /////////////////////////////////////////// /// face api cFacePos* c_api_face_detect(int *faceCount, uchar*data, const int w, const int h, const int channel); cThftResult c_api_face_property(const cFacePos* pos, uchar*data, const int w, const int h, const int channel); uchar* c_api_face_extract(int *featLen, const cFacePos* pos, uchar*data, const int w, const int h, const int channel); float c_api_face_compare(uchar *feat1, uchar *feat2); cRECT* c_api_face_track_only(int *fCount, uchar *data, const int wid, const int hei, const int channel); cFaceInfo* c_api_face_track_detect(int *fCount, uchar *data, const int wid, const int hei, const int channel); cFaceInfo* c_api_face_track(int *fCount, uchar *data, const int wid, const int hei, const int channel); /// yolo api cObjInfo* c_api_yolo_detect(YoloHandle handle, int *objCount, uchar*data, const int w, const int h, const float thrsh, const int use_means); const char* c_api_yolo_obj_name(const int typ); // plateid api int c_api_plate_id_init(const cPlateIDCfg *config, char *soPath); cPlateIDResult* c_api_plate_id_detect(int *plateIDCount, uchar*data, const int w, const int h, const cRECT *rcDetect); int c_api_plate_id_free(); // plateid cloud sdk int c_api_plate_id_cloud_init(const cPlateIDCloudSDKCfg *config, char *soPath, char *modelPath); cPlateIDCloudSDKResult* c_api_plate_id_cloud_detect(int *plateIDCount, uchar *data, const int w, const int h, const cRECT *rcDetect); void c_api_plate_id_cloud_free(); // its vehicle sdk api int c_api_init_vehicle_its_detector(int sceneMode, int modelMode, char *keyPath, char *modelPath); cVehicleITSResult* c_api_vehicle_its_detect(int *plateIDCount, uchar *data, const int w, const int h, const cRECT *rcDetect); void c_api_vehicle_its_free(); #ifdef __cplusplus } #endif #endif