Module opencv::dnn [−][src]
Expand description
Deep Neural Network module
This module contains: - API for new layers creation, layers are building bricks of neural networks; - set of built-in most-useful Layers; - API to construct and modify comprehensive neural networks from layers; - functionality for loading serialized networks models from different frameworks.
Functionality of this module is designed only for forward pass computations (i.e. network testing). A network training is in principle not supported.
Modules
Structs
Derivatives of this class encapsulates functions of certain backends.
Partial List of Implemented Layers
This class represents high-level API for classification models.
Constant layer produces the same data blob at an every forward pass.
This class represents high-level API for object detection networks.
Detection output layer.
This class implements name-value dictionary, values are instances of DictValue.
This struct stores the scalar value (or array) of one of the following type: double, cv::String or int64. @todo Maybe int64 is useless because double type exactly stores at least 2^52 integers.
Element wise operation on inputs
GRU recurrent one-layer
Bilinear resize layer from https://github.com/cdmh/deeplab-public-ver2
This class represents high-level API for keypoints models
This interface class allows to build new Layers - are building blocks of networks.
%Layer factory allows to create instances of registered layers.
This class provides all data needed to initialize layer.
This class is presented high-level API for neural networks.
This class allows to create and manipulate comprehensive artificial neural networks.
inline formula
- normalization layer.Adds extra values for specific axes.
Resize input 4-dimensional blob by nearest neighbor or bilinear strategy.
This class represents high-level API for segmentation models
Permute channels of 4-dimensional input blob.
Slice layer has several modes:
Base class for text detection networks
This class represents high-level API for text detection DL networks compatible with DB model.
This class represents high-level API for text detection DL networks compatible with EAST model.
This class represents high-level API for text recognition networks.
Enums
Enum of computation backends supported by layers.
Enum of Soft NMS methods.
Enum of target devices for computations.
Constants
DNN_BACKEND_DEFAULT equals to DNN_BACKEND_INFERENCE_ENGINE if OpenCV is built with Intel’s Inference Engine library or DNN_BACKEND_OPENCV otherwise.
DNN_BACKEND_DEFAULT equals to DNN_BACKEND_INFERENCE_ENGINE if OpenCV is built with Intel’s Inference Engine library or DNN_BACKEND_OPENCV otherwise.
Intel’s Inference Engine computational backend
FPGA device with CPU fallbacks using Inference Engine’s Heterogeneous plugin.
Traits
Derivatives of this class encapsulates functions of certain backends.
Derivatives of this class wraps cv::Mat for different backends and targets.
Partial List of Implemented Layers
This class represents high-level API for classification models.
Constant layer produces the same data blob at an every forward pass.
This class represents high-level API for object detection networks.
Detection output layer.
This class implements name-value dictionary, values are instances of DictValue.
This struct stores the scalar value (or array) of one of the following type: double, cv::String or int64. @todo Maybe int64 is useless because double type exactly stores at least 2^52 integers.
Element wise operation on inputs
GRU recurrent one-layer
Bilinear resize layer from https://github.com/cdmh/deeplab-public-ver2
This class represents high-level API for keypoints models
LSTM recurrent layer
%Layer factory allows to create instances of registered layers.
This class provides all data needed to initialize layer.
This interface class allows to build new Layers - are building blocks of networks.
This class is presented high-level API for neural networks.
This class allows to create and manipulate comprehensive artificial neural networks.
inline formula
- normalization layer.Adds extra values for specific axes.
Classical recurrent layer
Resize input 4-dimensional blob by nearest neighbor or bilinear strategy.
This class represents high-level API for segmentation models
Permute channels of 4-dimensional input blob.
Slice layer has several modes:
Base class for text detection networks
This class represents high-level API for text detection DL networks compatible with DB model.
This class represents high-level API for text detection DL networks compatible with EAST model.
This class represents high-level API for text recognition networks.
Functions
Creates 4-dimensional blob from image. Optionally resizes and crops @p image from center, subtract @p mean values, scales values by @p scalefactor, swap Blue and Red channels.
Creates 4-dimensional blob from image. @details This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Creates 4-dimensional blob from series of images. Optionally resizes and crops @p images from center, subtract @p mean values, scales values by @p scalefactor, swap Blue and Red channels.
Creates 4-dimensional blob from series of images. @details This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Enables detailed logging of the DNN model loading with CV DNN API.
Returns Inference Engine internal backend API.
Returns Inference Engine CPU type.
Returns Inference Engine VPU type.
Parse a 4D blob and output the images it contains as 2D arrays through a simpler data structure (std::vectorcv::Mat).
Performs non maximum suppression given boxes and corresponding scores.
C++ default parameters
C++ default parameters
C++ default parameters
Read deep learning network represented in one of the supported formats.
Read deep learning network represented in one of the supported formats. @details This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Reads a network model stored in Caffe framework’s format.
Reads a network model stored in Caffe model in memory.
Reads a network model stored in Caffe model in memory. @details This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Reads a network model stored in Darknet model files.
Reads a network model stored in Darknet model files.
Reads a network model stored in Darknet model files.
Load a network from Intel’s Model Optimizer intermediate representation.
Load a network from Intel’s Model Optimizer intermediate representation.
Load a network from Intel’s Model Optimizer intermediate representation.
Reads a network model ONNX.
Reads a network model from ONNX in-memory buffer.
Reads a network model from ONNX in-memory buffer.
Reads a network model stored in TensorFlow framework’s format.
Reads a network model stored in TensorFlow framework’s format.
Reads a network model stored in TensorFlow framework’s format. @details This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Reads a network model stored in Torch7 framework’s format.
Creates blob from .pb file.
Loads blob which was serialized as torch.Tensor object of Torch7 framework. @warning This function has the same limitations as readNetFromTorch().
Release a HDDL plugin.
Release a Myriad device (binded by OpenCV).
Specify Inference Engine internal backend API.
C++ default parameters
Convert all weights of Caffe network to half precision floating point.
Performs soft non maximum suppression given boxes and corresponding scores. Reference: https://arxiv.org/abs/1704.04503
C++ default parameters
C++ default parameters
Create a text representation for a binary network stored in protocol buffer format.
Type Definitions
Each Layer class must provide this function to the factory
Container for strings and integers.