Blame view

src/ai_engine_module/motor_phone_det.h 3.19 KB
c5fce6ce   Zhao Shuaihua   增加二轮车玩手机505、加装雨棚5...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  /*******************************************************************************************
  * Version: motor_phone_det_x64_v0.0.1
  * CopyRight: 中科视语(北京)科技有限公司
  * UpdateDate: 20230911
  * Content:二轮车玩手机检测
  ********************************************************************************************/
  #ifndef MOTOR_PHONE_DET_H_
  #define MOTOR_PHONE_DET_H_
  
  #ifdef _MSC_VER
  #ifdef MOTOR_PHONE_DET_EXPORTS
  #define MOTOR_PHONE_DET_API __declspec(dllexport)
  #else
  #define MOTOR_PHONE_DET_API __declspec(dllimport)
  #endif
  #else
  #define MOTOR_PHONE_DET_API __attribute__ ((visibility ("default")))
  #endif
  
  #include "sy_common.h"
  
  #define MAX_OBJ_COUNT 1000
  
  #ifdef __cplusplus
  extern "C"
  {
  #endif
  
  	typedef struct motor_phone_info	//结果结构体
  	{
  		int left;
  		int top;
  		int right;
  		int bottom;
  		int index;
  		double confidence;		//	置信度
  	}motor_phone_info;
  
  	typedef struct motor_phone_result
  	{
  		motor_phone_info objinfo[MAX_OBJ_COUNT];
  		int objcount;
  	};
  
  	typedef struct motor_phone_param
  	{
c5fce6ce   Zhao Shuaihua   增加二轮车玩手机505、加装雨棚5...
47
48
  		int devId;		//运行卡号 GPU模式下有效
  		char* modelNames;
d51ea997   Zhao Shuaihua   升级玩手机、雨棚模型;模型批处理;...
49
  		char* modelNames_b;
c5fce6ce   Zhao Shuaihua   增加二轮车玩手机505、加装雨棚5...
50
  		float thresld;	//检测阈值 默认为0.3
d51ea997   Zhao Shuaihua   升级玩手机、雨棚模型;模型批处理;...
51
52
  		int max_batch;
  		motor_phone_param() :devId(0), max_batch(8), thresld(0.4), modelNames(nullptr), modelNames_b(nullptr) {};
c5fce6ce   Zhao Shuaihua   增加二轮车玩手机505、加装雨棚5...
53
54
55
56
57
58
59
60
61
62
63
64
65
  	}motor_phone_param;
  
  	/*************************************************************************
  	* FUNCTION: hst_init
  	* PURPOSE: 初始化
  	* PARAM:
  	[in] handle		 -处理句柄
  	[in] param		 -初始化参数
  	* RETURN:	handle
  	* NOTES:成功(0)或者错误代码(<0)
  	*************************************************************************/
  	MOTOR_PHONE_DET_API int motor_phone_init(void **handle, motor_phone_param param);
  	MOTOR_PHONE_DET_API int motor_phone_process_batch(void * handle, sy_img *image_data_array, int batchsize, motor_phone_result *result);
d51ea997   Zhao Shuaihua   升级玩手机、雨棚模型;模型批处理;...
66
  	MOTOR_PHONE_DET_API int motor_phone_process_batchV2(void * handle, sy_img *image_data_array, int batchsize, motor_phone_result *result);
c5fce6ce   Zhao Shuaihua   增加二轮车玩手机505、加装雨棚5...
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
  	/*************************************************************************
  	* FUNCTION: hst_release
  	* PURPOSE: 资源释放
  	* PARAM:
  	[in] handle		- 处理句柄
  	* RETURN:	NULL
  	* NOTES:
  	*************************************************************************/
  	MOTOR_PHONE_DET_API void motor_phone_release(void **handle);
  
  
  	/*************************************************************************
  	* FUNCTION: hst_process_gpu
  	* PURPOSE: 
  	* PARAM:
  	[in] handle		- 处理句柄
  	[in] rgb		- 图片数据(3通道BGR数据 cv::Mat格式)
  	[in] width		- 图片宽度
  	[in] height		- 图片高度
  	[in] result		- 搜索结果,在外部申请足够内存
  	* RETURN:	-1:图像错误; 其他:检测到的个数
  	* NOTES:
  	*************************************************************************/
  	MOTOR_PHONE_DET_API int motor_phone_process(void * handle, sy_img image, motor_phone_result *result);
  
  	/*************************************************************************
  	* FUNCTION: hst_getversion
  	* PURPOSE: 释放
  	* PARAM:	NULL
  	* RETURN:	版本号
  	* NOTES:
  	*************************************************************************/
  	MOTOR_PHONE_DET_API const char * motor_phone_getversion();
  
  #ifdef __cplusplus
  };
  #endif
  
  #endif