OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::dnn::DetectionModel 类参考

此类表示用于目标检测网络的高级 API。更多…

#include <opencv2/dnn/dnn.hpp>

cv::dnn::DetectionModel 的协作图

公共成员函数

 DetectionModel ()
 
 DetectionModel (const Net &network)
 从深度学习网络创建模型。
 
 DetectionModel (CV_WRAP_FILE_PATH const String &model, CV_WRAP_FILE_PATH const String &config="")
 从以一种受支持的格式表示的网络创建检测模型。modelconfig 参数的顺序无关紧要。
 
void detect (InputArray frame, std::vector< int > &classIds, std::vector< float > &confidences, std::vector< Rect > &boxes, float confThreshold=0.5f, float nmsThreshold=0.0f)
 给定input帧,创建输入 blob,运行网络并返回结果检测。
 
bool getNmsAcrossClasses ()
 getNmsAcrossClasses 的 Getter。此变量默认为 false,因此当在detect() 函数中使用非最大值抑制时,它只对每个类别执行。
 
DetectionModelsetNmsAcrossClasses (bool value)
 nmsAcrossClasses 默认为 false,因此当在detect() 函数中使用非最大值抑制时,它将对每个类别执行。此函数允许您切换此行为。
 
- 从 cv::dnn::Model 继承的公共成员函数
 Model ()
 
 Model (const Model &)=default
 
 Model (const Net &network)
 从深度学习网络创建模型。
 
 Model (CV_WRAP_FILE_PATH const String &model, CV_WRAP_FILE_PATH const String &config="")
 从以一种受支持的格式表示的深度学习网络创建模型。modelconfig 参数的顺序无关紧要。
 
 Model (Model &&)=default
 
ModelenableWinograd (bool useWinograd)
 
Impl * getImpl () const
 
Impl & getImplRef () const
 
NetgetNetwork_ ()
 
NetgetNetwork_ () const
 
 operator Net & () const
 
Modeloperator= (const Model &)=default
 
Modeloperator= (Model &&)=default
 
void predict (InputArray frame, OutputArrayOfArrays outs) const
 给定input帧,创建输入 blob,运行网络并返回输出blobs
 
ModelsetInputCrop (bool crop)
 设置帧的裁剪标志 crop。
 
ModelsetInputMean (const Scalar &mean)
 设置帧的均值。
 
void setInputParams (double scale=1.0, const Size &size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false)
 设置帧的预处理参数。
 
ModelsetInputScale (const Scalar &scale)
 设置帧的比例因子。
 
ModelsetInputSize (const Size &size)
 设置帧的输入大小。
 
ModelsetInputSize (int width, int height)
 
ModelsetInputSwapRB (bool swapRB)
 设置帧的 swapRB 标志。
 
ModelsetOutputNames (const std::vector< String > &outNames)
 设置帧的输出名称。
 
ModelsetPreferableBackend (dnn::Backend backendId)
 
ModelsetPreferableTarget (dnn::Target targetId)
 

其他继承成员

- 从 cv::dnn::Model 继承的受保护属性
Ptr< Impl > impl
 

详细描述

此类表示用于目标检测网络的高级 API。

DetectionModel 允许设置预处理输入图像的参数。 DetectionModel 从包含训练权重和配置文件的文件中创建网络,设置预处理输入,运行前向传递并返回结果检测。对于 DetectionModel,支持 SSD、Faster R-CNN、YOLO 网络结构。

构造函数和析构函数文档

◆ DetectionModel() [1/3]

cv::dnn::DetectionModel::DetectionModel ( CV_WRAP_FILE_PATH const String & model,
CV_WRAP_FILE_PATH const String & config = "" )
Python
cv.dnn.DetectionModel(model[, config]) -> <dnn_DetectionModel 对象>
cv.dnn.DetectionModel(网络) -> <dnn_DetectionModel 对象>

从以一种受支持的格式表示的网络创建检测模型。modelconfig 参数的顺序无关紧要。

参数
[输入]model包含训练权重的二进制文件。
[输入]config包含网络配置的文本文件。

◆ DetectionModel() [2/3]

cv::dnn::DetectionModel::DetectionModel ( const Net & 网络)
Python
cv.dnn.DetectionModel(model[, config]) -> <dnn_DetectionModel 对象>
cv.dnn.DetectionModel(网络) -> <dnn_DetectionModel 对象>

从深度学习网络创建模型。

参数
[输入]网络Net 对象。

◆ DetectionModel() [3/3]

cv::dnn::DetectionModel::DetectionModel ( )
Python
cv.dnn.DetectionModel(model[, config]) -> <dnn_DetectionModel 对象>
cv.dnn.DetectionModel(网络) -> <dnn_DetectionModel 对象>

成员函数文档

◆ detect()

void cv::dnn::DetectionModel::detect ( InputArray frame,
std::vector< int > & classIds,
std::vector< float > & confidences,
std::vector< Rect > & boxes,
float confThreshold = 0.5f,
float nmsThreshold = 0.0f )
Python
cv.dnn.DetectionModel.detect(frame[, confThreshold[, nmsThreshold]]) -> classIds, confidences, boxes

给定input帧,创建输入 blob,运行网络并返回结果检测。

参数
[输入]frame输入图像。
[输出]classIds结果检测中的类别索引。
[输出]confidences一组对应的置信度。
[输出]boxes一组边界框。
[输入]confThreshold用于根据置信度过滤框的阈值。
[输入]nmsThreshold在非最大抑制中使用的阈值。

◆ getNmsAcrossClasses()

bool cv::dnn::DetectionModel::getNmsAcrossClasses ( )
Python
cv.dnn.DetectionModel.getNmsAcrossClasses() -> retval

getNmsAcrossClasses 的 Getter。此变量默认为 false,因此当在detect() 函数中使用非最大值抑制时,它只对每个类别执行。

◆ setNmsAcrossClasses()

DetectionModel & cv::dnn::DetectionModel::setNmsAcrossClasses ( bool value)
Python
cv.dnn.DetectionModel.setNmsAcrossClasses(value) -> retval

nmsAcrossClasses 默认为 false,因此当在detect() 函数中使用非最大值抑制时,它将对每个类别执行。此函数允许您切换此行为。

参数
[输入]valuenmsAcrossClasses 的新值

此类的文档是从以下文件生成的: