Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Deep Learning for Computer Vision

Perform classification, object detection, transfer learning using convolutional neural networks (CNNs, or ConvNets) and semantic segmentation.

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 Neural Network 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.

Functions

trainRCNNObjectDetectorTrain an R-CNN deep learning object detector
trainFastRCNNObjectDetectorTrain a Fast R-CNN deep learning object detector
trainFasterRCNNObjectDetectorTrain a Faster R-CNN deep learning object detector
rcnnObjectDetectorDetect objects using R-CNN deep learning detector
fastRCNNObjectDetectorDetect objects using Fast R-CNN deep learning detector
fasterRCNNObjectDetectorDetect objects using Faster R-CNN deep learning detector
semanticsegSemantic image segmentation using deep learning
segnetLayersCreate SegNet layers for semantic segmentation
fcnLayersCreate fully convolutional network layers for semantic segmentation
pixelLabelImageSourceData source for semantic segmentation networks
evaluateSemanticSegmentationEvaluate semantic segmentation data set against ground truth
semanticSegmentationMetricsSemantic segmentation quality metrics
pixelLabelDatastoreDatastore for pixel label data
pixelClassificationLayerCreate pixel classification layer for semantic segmentation
crop2dLayerNeural network layer in a neural network that can be used to crop an input feature map
labeloverlayOverlay label matrix regions on 2-D image

Topics

Semantic Segmentation Basics

Segment objects by class using deep learning

Deep Learning Basics (Neural Network Toolbox)

Discover deep learning capabilities in MATLAB using convolutional neural networks (ConvNets) for classification and regression

Semantic Segmentation Using Deep Learning

This example shows how to train a semantic segmentation network using deep learning.

Image Category Classification Using Deep Learning

This example shows how to use a pre-trained Convolutional Neural Network (CNN) as a feature extractor for training an image category classifier.

Object Detection Using Deep Learning

This example shows how to train an object detector using deep learning and R-CNN (Regions with Convolutional Neural Networks).

Object Detection Using Faster R-CNN Deep Learning

This example shows how to train an object detector using a deep learning technique named Faster R-CNN (Regions with Convolutional Neural Networks).

Choose Among R-CNN, Fast R-CNN, or Faster R-CNN Object Detectors

Decide which R-CNN detector training function to use.

Pretrained Convolutional Neural Networks (Neural Network Toolbox)

Learn how to download and use pretrained convolutional neural networks for classification, transfer learning and feature extraction.