Class ObjectDetection
ObjectDetectionResult 类
说明
一个用于表示和检索物体检测神经网络所识别物体相关数据的类。
语法
class ObjectDetectionResult
成员
公共构造函数 |
|
|
构造一个 NNImageClassification 对象 |
公共方法 |
|
|
获取识别物体的类型索引。 |
|
获取识别物体的名称。 |
|
获取识别物体的置信度分数。 |
|
获取包含识别物体的边界框左上角的 x 坐标。 |
|
获取包含识别物体的边界框右下角的 x 坐标。 |
|
获取包含识别物体的边界框左上角的 y 坐标。 |
|
获取包含识别物体的边界框右下角的 y 坐标。 |
ObjectDetectionResult::type
说明
获取识别物体的类型索引,对应 COCO 图像数据集中的物体类别。
语法
int type(void);
参数
NA
返回值
一个整数,指示识别物体的类别。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
ObjectDetectionResult::name
说明
获取识别物体的名称。
语法
const char* name(void);
参数
NA
返回值
一个指向字符数组的指针,包含识别物体的类别名称。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
ObjectDetectionResult::score
说明
获取识别物体的置信度分数。
语法
int score(void);
参数
NA
返回值
一个范围从 0 到 100 的整数,表示识别物体类别的置信度。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
ObjectDetectionResult::xMin
说明
获取包含识别物体的边界框左上角的 x 坐标。
语法
float xMin(void);
参数
NA
返回值
一个范围从 0.00 到 1.00 的浮点数,0.00 表示输入视频帧的左边缘,1.00 表示输入视频帧的右边缘。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
ObjectDetectionResult::xMax
说明
获取包含识别物体的边界框右下角的 x 坐标。
语法
float xMax(void);
参数
NA
返回值
一个范围从 0.00 到 1.00 的浮点数,0.00 表示输入视频帧的左边缘,1.00 表示输入视频帧的右边缘。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
ObjectDetectionResult::yMin
说明
获取包含识别物体的边界框左上角的 y 坐标。
语法
float yMin(void);
参数
NA
返回值
一个范围从 0.00 到 1.00 的浮点数,0.00 表示输入视频帧的顶部边缘,1.00 表示输入视频帧的底部边缘。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
ObjectDetectionResult::yMax
说明
获取包含识别物体的边界框右下角的 y 坐标。
语法
float yMax(void);
参数
NA
返回值
一个范围从 0.00 到 1.00 的浮点数,0.00 表示输入视频帧的顶部边缘,1.00 表示输入视频帧的底部边缘。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体类别可从 "ObjectClassList.h" 文件中获取。
NNObjectDetection 类
说明
一个用于配置、运行和获取物体检测神经网络模型结果的类。
语法
class NNObjectDetection
成员
公共构造函数 |
|
|
构造一个 NNObjectDetection 对象。 |
公共方法 |
|
|
配置输入视频流参数。 |
|
配置物体检测的感兴趣区域。 |
|
配置物体检测阈值。 |
|
在输入视频上启动物体检测过程。 |
|
停止输入视频上的物体检测过程。 |
|
设置接收物体检测结果的回调函数。 |
|
获取物体检测结果的数量。 |
|
获取物体检测结果。 |
NNObjectDetection::configVideo
说明
配置输入视频流参数。
语法
void configVideo(VideoSetting& config);
参数
config:包含所需视频配置的 VideoSetting 类对象。
返回值
NA
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。物体检测模型要求输入视频流使用 RGB 格式,该格式仅在视频流通道 3 上可用。需要先配置输入视频流,然后才能开始物体检测。
NNObjectDetection::configRegionOfInterest
说明
配置物体检测的感兴趣区域。物体检测将仅在感兴趣区域内的图像帧上执行。
语法
void configRegionOfInterest(int xmin, int xmax, int ymin, int ymax);
参数
xmin:感兴趣区域的左边界,以像素为单位。
xmax:感兴趣区域的右边界,以像素为单位。
ymin:感兴趣区域的上边界,以像素为单位。
ymax:感兴趣区域的下边界,以像素为单位。
返回值
NA
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
NNObjectDetection::configThreshold
说明
配置物体检测阈值。
语法
void configThreshold(float confidence_threshold, float nms_threshold);
参数
confidence_threshold:物体检测置信度阈值。默认值为 0.5。
nms_threshold:非极大值抑制(Non-Maximal Suppression)阈值。默认值为 0.3。影响合适且精确的边界框的选择。值越小,边界框的精度越低。
返回值
NA
示例代码
NA
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
NNObjectDetection::begin
说明
在输入视频上启动物体检测过程。
语法
void begin(void);
参数
NA
返回值
NA
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
NNObjectDetection::end
说明
停止输入视频上的物体检测过程。
语法
void end(void);
参数
NA
返回值
NA
示例代码
NA
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
NNObjectDetection::setResultCallback
说明
设置接收物体检测结果的回调函数。
语法
void setResultCallback(void (*od_callback)(std::vector));
参数
od_callback:一个回调函数,接受 ObjectDetectionResult 类对象的向量作为参数,并返回 void。
返回值
NA
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。每轮迭代都会使用最新结果调用回调函数。
NNObjectDetection::getResultCount
说明
获取物体检测结果的数量。
语法
uint16_t getResultCount(void);
参数
NA
返回值
最近一组结果中检测到的物体数量,以无符号整数形式返回。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。
NNObjectDetection::getResult
说明
获取物体检测结果。
语法
ObjectDetectionResult getResult(uint16_t index);
std::vector getResult(void);
参数
index:要检索的特定物体检测结果的索引
返回值
如果未指定索引,函数返回包含在 ObjectDetectionResult 类对象向量中的所有检测到的物体。
如果指定了索引,函数返回包含在 ObjectDetectionResult 类对象中的特定检测到的物体。
示例代码
备注
必须包含 "NNObjectDetection.h" 才能使用该类函数。