Convolutional neural networks (CNNs, or ConvNets) are essential tools for deep learning, and are especially useful for image classification, object detection, and recognition tasks. CNNs are implemented as a series of interconnected layers. The layers are made up of repeated blocks of convolutional, ReLU (rectified linear units), and pooling layers. The convolutional layers convolve their input with a set of filters. The filters were automatically learned during network training. The ReLU layer adds nonlinearity to the network, which enables the network to approximate the nonlinear mapping between image pixels and the semantic content of an image. The pooling layers downsample their inputs and help consolidate local image features
Convolutional neural networks require Deep Learning Toolbox™. Training and prediction are supported on a CUDA®-capable GPU with a compute capability of 3.0 or higher. Use of a GPU is recommended and requires Parallel Computing Toolbox™
You can construct a CNN architecture, train a network using semantic segmentation, and use the trained network to predict class labels or detect objects. You can also extract features from a pretrained network, and use these features to train a classifier. Additionally, you can perform transfer learning which retrains the CNN on new data.You can also use the Image Labeler, Video Labeler, feature extractors, and classifiers to create a custom detector
|Balance image blocks using bounding boxes and big images|
|Crop bounding boxes|
|Resize bounding boxes|
|Apply geometric transformation to bounding boxes|
|Convert rectangle to corner points list|
|Apply geometric transformation to image|
|Create randomized 2-D affine transformation|
|Create rectangular center cropping window|
|Create randomized rectangular cropping window|
|Calculate 2-D integral image|
|Create anchor box layer for object detection|
|Estimate anchor boxes for deep learning object detectors|
|Create a faster R-CNN object detection network|
|Create focal loss layer using focal loss function|
|Non-quantized ROI pooling layer for Mask-CNN|
|ROI input layer for Fast R-CNN|
|Neural network layer used to output fixed-size feature maps for rectangular ROIs|
|Softmax layer for region proposal network (RPN)|
|Classification layer for region proposal networks (RPNs)|
|Box regression layer for Fast and Faster R-CNN|
|Region proposal layer for Faster R-CNN|
|Space to depth layer|
|SSD multibox object detection network|
|Create SSD merge layer for object detection|
|Create YOLO v2 object detection network|
|Create transform layer for YOLO v2 object detection network|
|Create output layer for YOLO v2 object detection network|
|(Not recommended) Create reorganization layer for YOLO v2 object detection network|
|Compute focal cross-entropy loss|
|Train an R-CNN deep learning object detector|
|Train a Fast R-CNN deep learning object detector|
|Train a Faster R-CNN deep learning object detector|
|Train an SSD deep learning object detector|
|Train YOLO v2 object detector|
|Evaluate average orientation similarity metric for object detection|
|Evaluate miss rate metric for object detection|
|Evaluate precision metric for object detection|
|Compute bounding box overlap ratio|
|Compute bounding box precision and recall against ground truth|
|Detect objects using R-CNN deep learning detector|
|Detect objects using Fast R-CNN deep learning detector|
|Detect objects using Faster R-CNN deep learning detector|
|Detect objects using SSD deep learning detector|
|Detect objects using YOLO v2 object detector|
|Select strongest bounding boxes from overlapping clusters|
|Select strongest multiclass bounding boxes from overlapping clusters|
Compare visualization functions.
Object detection using deep learning neural networks.
R-CNN, Fast R-CNN, and Faster R-CNN basics
Perform multiclass instance segmentation using Mask R-CNN and deep learning.
You only look once (YOLO) v2 basics
Single shot detection basics.
Basics of anchor boxes that are used in deep learning object detection
Datastores for Deep Learning (Deep Learning Toolbox)
Learn how to use datastores in deep learning applications.
Create training data for object detection or semantic segmentation using the Image Labeler or Video Labeler.
Deep Network Designer (Deep Learning Toolbox)
List of Deep Learning Layers (Deep Learning Toolbox)
Discover all the deep learning layers in MATLAB®.
Deep Learning in MATLAB (Deep Learning Toolbox)
Discover deep learning capabilities in MATLAB using convolutional neural networks for classification and regression, including pretrained networks and transfer learning, and training on GPUs, CPUs, clusters, and clouds.
Pretrained Deep Neural Networks (Deep Learning Toolbox)
Learn how to download and use pretrained convolutional neural networks for classification, transfer learning and feature extraction.