This class represents high-level API for object detection networks. More...
#include <opencv2/dnn/dnn.hpp>

Public Member Functions | |
DetectionModel () | |
DetectionModel (const Net &network) | |
Create model from deep learning network. | |
DetectionModel (const String &model, const String &config="") | |
Create detection model from network represented in one of the supported formats. An order of model and config arguments does not matter. | |
void | detect (InputArray frame, std::vector< int > &classIds, std::vector< float > &confidences, std::vector< Rect > &boxes, float confThreshold=0.5f, float nmsThreshold=0.0f) |
Given the input frame, create input blob, run net and return result detections. | |
bool | getNmsAcrossClasses () |
Getter for nmsAcrossClasses. This variable defaults to false, such that when non max suppression is used during the detect() function, it will do so only per-class. | |
DetectionModel & | setNmsAcrossClasses (bool value) |
nmsAcrossClasses defaults to false, such that when non max suppression is used during the detect() function, it will do so per-class. This function allows you to toggle this behaviour. | |
![]() | |
Model () | |
Model (const Model &)=default | |
Model (const Net &network) | |
Create model from deep learning network. | |
Model (const String &model, const String &config="") | |
Create model from deep learning network represented in one of the supported formats. An order of model and config arguments does not matter. | |
Model (Model &&)=default | |
Impl * | getImpl () const |
Impl & | getImplRef () const |
Net & | getNetwork_ () |
Net & | getNetwork_ () const |
operator Net & () const | |
Model & | operator= (const Model &)=default |
Model & | operator= (Model &&)=default |
void | predict (InputArray frame, OutputArrayOfArrays outs) const |
Given the input frame, create input blob, run net and return the output blobs . | |
Model & | setInputCrop (bool crop) |
Set flag crop for frame. | |
Model & | setInputMean (const Scalar &mean) |
Set mean value for frame. | |
void | setInputParams (double scale=1.0, const Size &size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false) |
Set preprocessing parameters for frame. | |
Model & | setInputScale (const Scalar &scale) |
Set scalefactor value for frame. | |
Model & | setInputSize (const Size &size) |
Set input size for frame. | |
Model & | setInputSize (int width, int height) |
Model & | setInputSwapRB (bool swapRB) |
Set flag swapRB for frame. | |
Model & | setPreferableBackend (dnn::Backend backendId) |
Model & | setPreferableTarget (dnn::Target targetId) |
Additional Inherited Members | |
![]() | |
Ptr< Impl > | impl |
Detailed Description
This class represents high-level API for object detection networks.
DetectionModel allows to set params for preprocessing input image. DetectionModel creates net from file with trained weights and config, sets preprocessing input, runs forward pass and return result detections. For DetectionModel SSD, Faster R-CNN, YOLO topologies are supported.
Constructor & Destructor Documentation
◆ DetectionModel() [1/3]
Create detection model from network represented in one of the supported formats. An order of model
and config
arguments does not matter.
- Parameters
-
[in] model Binary file contains trained weights. [in] config Text file contains network configuration.
◆ DetectionModel() [2/3]
cv::dnn::DetectionModel::DetectionModel | ( | const Net & | network | ) |
Create model from deep learning network.
- Parameters
-
[in] network Net object.
◆ DetectionModel() [3/3]
cv::dnn::DetectionModel::DetectionModel | ( | ) |
Member Function Documentation
◆ 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 |
||
) |
Given the input
frame, create input blob, run net and return result detections.
- Parameters
-
[in] frame The input image. [out] classIds Class indexes in result detection. [out] confidences A set of corresponding confidences. [out] boxes A set of bounding boxes. [in] confThreshold A threshold used to filter boxes by confidences. [in] nmsThreshold A threshold used in non maximum suppression.
◆ getNmsAcrossClasses()
bool cv::dnn::DetectionModel::getNmsAcrossClasses | ( | ) |
Getter for nmsAcrossClasses. This variable defaults to false, such that when non max suppression is used during the detect() function, it will do so only per-class.
◆ setNmsAcrossClasses()
DetectionModel & cv::dnn::DetectionModel::setNmsAcrossClasses | ( | bool | value | ) |
nmsAcrossClasses defaults to false, such that when non max suppression is used during the detect() function, it will do so per-class. This function allows you to toggle this behaviour.
- Parameters
-
[in] value The new value for nmsAcrossClasses
The documentation for this class was generated from the following file:
- opencv2/dnn/dnn.hpp