OpenCV  4.5.2
Open Source Computer Vision
Namespaces | Classes | Typedefs | Enumerations | Functions
cv::dnn Namespace Reference

Namespaces

 details
 

Classes

struct  _Range
 
class  AbsLayer
 
class  AccumLayer
 
class  ActivationLayer
 
class  BackendNode
 Derivatives of this class encapsulates functions of certain backends. More...
 
class  BackendWrapper
 Derivatives of this class wraps cv::Mat for different backends and targets. More...
 
class  BaseConvolutionLayer
 
class  BatchNormLayer
 
class  BlankLayer
 
class  BNLLLayer
 
class  ChannelsPReLULayer
 
class  ClassificationModel
 This class represents high-level API for classification models. More...
 
class  ConcatLayer
 
class  ConstLayer
 
class  ConvolutionLayer
 
class  CorrelationLayer
 
class  CropAndResizeLayer
 
class  CropLayer
 
class  DataAugmentationLayer
 
class  DeconvolutionLayer
 
class  DetectionModel
 This class represents high-level API for object detection networks. More...
 
class  DetectionOutputLayer
 Detection output layer. More...
 
class  Dict
 This class implements name-value dictionary, values are instances of DictValue. More...
 
struct  DictValue
 This struct stores the scalar value (or array) of one of the following type: double, cv::String or int64. More...
 
class  EltwiseLayer
 Element wise operation on inputs. More...
 
class  ELULayer
 
class  ExpLayer
 
class  FlattenLayer
 
class  FlowWarpLayer
 
class  InnerProductLayer
 
class  InterpLayer
 Bilinear resize layer from https://github.com/cdmh/deeplab-public-ver2. More...
 
class  KeypointsModel
 This class represents high-level API for keypoints models. More...
 
class  Layer
 This interface class allows to build new Layers - are building blocks of networks. More...
 
class  LayerFactory
 Layer factory allows to create instances of registered layers. More...
 
class  LayerParams
 This class provides all data needed to initialize layer. More...
 
class  LRNLayer
 
class  LSTMLayer
 LSTM recurrent layer. More...
 
class  MaxUnpoolLayer
 
class  MishLayer
 
class  Model
 This class is presented high-level API for neural networks. More...
 
class  MVNLayer
 
class  Net
 This class allows to create and manipulate comprehensive artificial neural networks. More...
 
class  NormalizeBBoxLayer
 \( L_p \) - normalization layer. More...
 
class  PaddingLayer
 Adds extra values for specific axes. More...
 
class  PermuteLayer
 
class  PoolingLayer
 
class  PowerLayer
 
class  PriorBoxLayer
 
class  ProposalLayer
 
class  RegionLayer
 
class  ReLU6Layer
 
class  ReLULayer
 
class  ReorgLayer
 
class  ReshapeLayer
 
class  ResizeLayer
 Resize input 4-dimensional blob by nearest neighbor or bilinear strategy. More...
 
class  RNNLayer
 Classical recurrent layer. More...
 
class  ScaleLayer
 
class  SegmentationModel
 This class represents high-level API for segmentation models. More...
 
class  ShiftLayer
 
class  ShuffleChannelLayer
 
class  SigmoidLayer
 
class  SliceLayer
 
class  SoftmaxLayer
 
class  SplitLayer
 
class  SwishLayer
 
class  TanHLayer
 
class  TextDetectionModel
 Base class for text detection networks. More...
 
class  TextDetectionModel_DB
 This class represents high-level API for text detection DL networks compatible with DB model. More...
 
class  TextDetectionModel_EAST
 This class represents high-level API for text detection DL networks compatible with EAST model. More...
 
class  TextRecognitionModel
 This class represents high-level API for text recognition networks. More...
 

Typedefs

typedef std::map< std::string, std::vector< LayerFactory::Constructor > > LayerFactory_Impl
 Register layer types of DNN model. More...
 
typedef std::vector< int > MatShape
 

Enumerations

enum  Backend {
  DNN_BACKEND_DEFAULT = 0,
  DNN_BACKEND_HALIDE,
  DNN_BACKEND_INFERENCE_ENGINE,
  DNN_BACKEND_OPENCV,
  DNN_BACKEND_VKCOM,
  DNN_BACKEND_CUDA
}
 Enum of computation backends supported by layers. More...
 
enum  Target {
  DNN_TARGET_CPU = 0,
  DNN_TARGET_OPENCL,
  DNN_TARGET_OPENCL_FP16,
  DNN_TARGET_MYRIAD,
  DNN_TARGET_VULKAN,
  DNN_TARGET_FPGA,
  DNN_TARGET_CUDA,
  DNN_TARGET_CUDA_FP16,
  DNN_TARGET_HDDL
}
 Enum of target devices for computations. More...
 

Functions

Mat blobFromImage (InputArray image, double scalefactor=1.0, const Size &size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false, int ddepth=CV_32F)
 Creates 4-dimensional blob from image. Optionally resizes and crops image from center, subtract mean values, scales values by scalefactor, swap Blue and Red channels. More...
 
void blobFromImage (InputArray image, OutputArray blob, double scalefactor=1.0, const Size &size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false, int ddepth=CV_32F)
 Creates 4-dimensional blob from image. More...
 
Mat blobFromImages (InputArrayOfArrays images, double scalefactor=1.0, Size size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false, int ddepth=CV_32F)
 Creates 4-dimensional blob from series of images. Optionally resizes and crops images from center, subtract mean values, scales values by scalefactor, swap Blue and Red channels. More...
 
void blobFromImages (InputArrayOfArrays images, OutputArray blob, double scalefactor=1.0, Size size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false, int ddepth=CV_32F)
 Creates 4-dimensional blob from series of images. More...
 
static MatShape concat (const MatShape &a, const MatShape &b)
 
void enableModelDiagnostics (bool isDiagnosticsMode)
 Enables detailed logging of the DNN model loading with CV DNN API. More...
 
std::vector< std::pair< Backend, Target > > getAvailableBackends ()
 
std::vector< TargetgetAvailableTargets (dnn::Backend be)
 
cv::String getInferenceEngineBackendType ()
 Returns Inference Engine internal backend API. More...
 
cv::String getInferenceEngineCPUType ()
 Returns Inference Engine CPU type. More...
 
cv::String getInferenceEngineVPUType ()
 Returns Inference Engine VPU type. More...
 
LayerFactory_ImplgetLayerFactoryImpl ()
 
static Mat getPlane (const Mat &m, int n, int cn)
 
void imagesFromBlob (const cv::Mat &blob_, OutputArrayOfArrays images_)
 Parse a 4D blob and output the images it contains as 2D arrays through a simpler data structure (std::vector<cv::Mat>). More...
 
static bool isAllOnes (const MatShape &inputShape, int startPos, int endPos)
 
void NMSBoxes (const std::vector< Rect > &bboxes, const std::vector< float > &scores, const float score_threshold, const float nms_threshold, std::vector< int > &indices, const float eta=1.f, const int top_k=0)
 Performs non maximum suppression given boxes and corresponding scores. More...
 
void NMSBoxes (const std::vector< Rect2d > &bboxes, const std::vector< float > &scores, const float score_threshold, const float nms_threshold, std::vector< int > &indices, const float eta=1.f, const int top_k=0)
 
void NMSBoxes (const std::vector< RotatedRect > &bboxes, const std::vector< float > &scores, const float score_threshold, const float nms_threshold, std::vector< int > &indices, const float eta=1.f, const int top_k=0)
 
static int normalize_axis (int axis, int dims)
 Converts axis from [-dims; dims) (similar to Python's slice notation) to [0; dims) range. More...
 
static int normalize_axis (int axis, const MatShape &shape)
 
static Range normalize_axis_range (const Range &r, int axisSize)
 
static std::ostream & operator<< (std::ostream &out, const MatShape &shape)
 
static void print (const MatShape &shape, const String &name="")
 
Net readNet (const String &model, const String &config="", const String &framework="")
 Read deep learning network represented in one of the supported formats. More...
 
Net readNet (const String &framework, const std::vector< uchar > &bufferModel, const std::vector< uchar > &bufferConfig=std::vector< uchar >())
 Read deep learning network represented in one of the supported formats. More...
 
Net readNetFromCaffe (const String &prototxt, const String &caffeModel=String())
 Reads a network model stored in Caffe framework's format. More...
 
Net readNetFromCaffe (const std::vector< uchar > &bufferProto, const std::vector< uchar > &bufferModel=std::vector< uchar >())
 Reads a network model stored in Caffe model in memory. More...
 
Net readNetFromCaffe (const char *bufferProto, size_t lenProto, const char *bufferModel=NULL, size_t lenModel=0)
 Reads a network model stored in Caffe model in memory. More...
 
Net readNetFromDarknet (const String &cfgFile, const String &darknetModel=String())
 Reads a network model stored in Darknet model files. More...
 
Net readNetFromDarknet (const std::vector< uchar > &bufferCfg, const std::vector< uchar > &bufferModel=std::vector< uchar >())
 Reads a network model stored in Darknet model files. More...
 
Net readNetFromDarknet (const char *bufferCfg, size_t lenCfg, const char *bufferModel=NULL, size_t lenModel=0)
 Reads a network model stored in Darknet model files. More...
 
Net readNetFromModelOptimizer (const String &xml, const String &bin)
 Load a network from Intel's Model Optimizer intermediate representation. More...
 
Net readNetFromModelOptimizer (const std::vector< uchar > &bufferModelConfig, const std::vector< uchar > &bufferWeights)
 Load a network from Intel's Model Optimizer intermediate representation. More...
 
Net readNetFromModelOptimizer (const uchar *bufferModelConfigPtr, size_t bufferModelConfigSize, const uchar *bufferWeightsPtr, size_t bufferWeightsSize)
 Load a network from Intel's Model Optimizer intermediate representation. More...
 
Net readNetFromONNX (const String &onnxFile)
 Reads a network model ONNX. More...
 
Net readNetFromONNX (const char *buffer, size_t sizeBuffer)
 Reads a network model from ONNX in-memory buffer. More...
 
Net readNetFromONNX (const std::vector< uchar > &buffer)
 Reads a network model from ONNX in-memory buffer. More...
 
Net readNetFromTensorflow (const String &model, const String &config=String())
 Reads a network model stored in TensorFlow framework's format. More...
 
Net readNetFromTensorflow (const std::vector< uchar > &bufferModel, const std::vector< uchar > &bufferConfig=std::vector< uchar >())
 Reads a network model stored in TensorFlow framework's format. More...
 
Net readNetFromTensorflow (const char *bufferModel, size_t lenModel, const char *bufferConfig=NULL, size_t lenConfig=0)
 Reads a network model stored in TensorFlow framework's format. More...
 
Net readNetFromTorch (const String &model, bool isBinary=true, bool evaluate=true)
 Reads a network model stored in Torch7 framework's format. More...
 
Mat readTensorFromONNX (const String &path)
 Creates blob from .pb file. More...
 
Mat readTorchBlob (const String &filename, bool isBinary=true)
 Loads blob which was serialized as torch.Tensor object of Torch7 framework. More...
 
void releaseHDDLPlugin ()
 Release a HDDL plugin. More...
 
void resetMyriadDevice ()
 Release a Myriad device (binded by OpenCV). More...
 
cv::String setInferenceEngineBackendType (const cv::String &newBackendType)
 Specify Inference Engine internal backend API. More...
 
static MatShape shape (const int *dims, const int n)
 
static MatShape shape (const Mat &mat)
 
static MatShape shape (const MatSize &sz)
 
static MatShape shape (const UMat &mat)
 
static MatShape shape (int a0, int a1=-1, int a2=-1, int a3=-1)
 
void shrinkCaffeModel (const String &src, const String &dst, const std::vector< String > &layersTypes=std::vector< String >())
 Convert all weights of Caffe network to half precision floating point. More...
 
static Mat slice (const Mat &m, const _Range &r0)
 
static Mat slice (const Mat &m, const _Range &r0, const _Range &r1)
 
static Mat slice (const Mat &m, const _Range &r0, const _Range &r1, const _Range &r2)
 
static Mat slice (const Mat &m, const _Range &r0, const _Range &r1, const _Range &r2, const _Range &r3)
 
static std::string toString (const MatShape &shape, const String &name="")
 
static int total (const MatShape &shape, int start=-1, int end=-1)
 
void writeTextGraph (const String &model, const String &output)
 Create a text representation for a binary network stored in protocol buffer format. More...
 

Function Documentation

◆ concat()

static MatShape cv::dnn::concat ( const MatShape a,
const MatShape b 
)
inlinestatic

◆ getInferenceEngineBackendType()

cv::String cv::dnn::getInferenceEngineBackendType ( )

Returns Inference Engine internal backend API.

See values of CV_DNN_BACKEND_INFERENCE_ENGINE_* macros.

Default value is controlled through OPENCV_DNN_BACKEND_INFERENCE_ENGINE_TYPE runtime parameter (environment variable).

◆ getInferenceEngineCPUType()

cv::String cv::dnn::getInferenceEngineCPUType ( )

Returns Inference Engine CPU type.

Specify OpenVINO plugin: CPU or ARM.

◆ getInferenceEngineVPUType()

cv::String cv::dnn::getInferenceEngineVPUType ( )

Returns Inference Engine VPU type.

See values of CV_DNN_INFERENCE_ENGINE_VPU_TYPE_* macros.

◆ getPlane()

static Mat cv::dnn::getPlane ( const Mat m,
int  n,
int  cn 
)
inlinestatic

◆ isAllOnes()

static bool cv::dnn::isAllOnes ( const MatShape inputShape,
int  startPos,
int  endPos 
)
inlinestatic

◆ normalize_axis() [1/2]

static int cv::dnn::normalize_axis ( int  axis,
int  dims 
)
inlinestatic

Converts axis from [-dims; dims) (similar to Python's slice notation) to [0; dims) range.

◆ normalize_axis() [2/2]

static int cv::dnn::normalize_axis ( int  axis,
const MatShape shape 
)
inlinestatic

◆ normalize_axis_range()

static Range cv::dnn::normalize_axis_range ( const Range r,
int  axisSize 
)
inlinestatic

◆ operator<<()

static std::ostream& cv::dnn::operator<< ( std::ostream &  out,
const MatShape shape 
)
inlinestatic

◆ print()

static void cv::dnn::print ( const MatShape shape,
const String name = "" 
)
inlinestatic

◆ releaseHDDLPlugin()

void cv::dnn::releaseHDDLPlugin ( )

Release a HDDL plugin.

◆ resetMyriadDevice()

void cv::dnn::resetMyriadDevice ( )

Release a Myriad device (binded by OpenCV).

Single Myriad device cannot be shared across multiple processes which uses Inference Engine's Myriad plugin.

◆ setInferenceEngineBackendType()

cv::String cv::dnn::setInferenceEngineBackendType ( const cv::String newBackendType)

Specify Inference Engine internal backend API.

See values of CV_DNN_BACKEND_INFERENCE_ENGINE_* macros.

Returns
previous value of internal backend API

◆ shape() [1/5]

static MatShape cv::dnn::shape ( const int *  dims,
const int  n 
)
inlinestatic

◆ shape() [2/5]

static MatShape cv::dnn::shape ( const Mat mat)
inlinestatic

◆ shape() [3/5]

static MatShape cv::dnn::shape ( const MatSize sz)
inlinestatic

◆ shape() [4/5]

static MatShape cv::dnn::shape ( const UMat mat)
inlinestatic

◆ shape() [5/5]

static MatShape cv::dnn::shape ( int  a0,
int  a1 = -1,
int  a2 = -1,
int  a3 = -1 
)
inlinestatic

◆ slice() [1/4]

static Mat cv::dnn::slice ( const Mat m,
const _Range r0 
)
inlinestatic

◆ slice() [2/4]

static Mat cv::dnn::slice ( const Mat m,
const _Range r0,
const _Range r1 
)
inlinestatic

◆ slice() [3/4]

static Mat cv::dnn::slice ( const Mat m,
const _Range r0,
const _Range r1,
const _Range r2 
)
inlinestatic

◆ slice() [4/4]

static Mat cv::dnn::slice ( const Mat m,
const _Range r0,
const _Range r1,
const _Range r2,
const _Range r3 
)
inlinestatic

◆ toString()

static std::string cv::dnn::toString ( const MatShape shape,
const String name = "" 
)
inlinestatic

◆ total()

static int cv::dnn::total ( const MatShape shape,
int  start = -1,
int  end = -1 
)
inlinestatic