Main Content

Deep Learning for Image Processing

Perform image processing tasks, such as removing image noise and creating high-resolution images from low-resolutions images, using convolutional neural networks (requires Deep Learning Toolbox™)

Deep learning uses neural networks to learn useful representations of features directly from data. For example, you can use a pretrained neural network to identify and remove artifacts like noise from images.


expand all

augmentedImageDatastoreTransform batches to augment image data
blockedImageDatastoreDatastore for use with blocks from blockedImage objects
denoisingImageDatastoreDenoising image datastore
imageDatastoreDatastore for image data
randomPatchExtractionDatastoreDatastore for extracting random 2-D or 3-D random patches from images or pixel label images
transformTransform datastore
combineCombine data from multiple datastores
jitterColorHSVRandomly alter color of pixels
randomWindow2dRandomly select rectangular region in image
randomCropWindow3dCreate randomized cuboidal cropping window
centerCropWindow2dCreate rectangular center cropping window
centerCropWindow3dCreate cuboidal center cropping window
RectangleSpatial extents of 2-D rectangular region
CuboidSpatial extents of 3-D cuboidal region
randomAffine2dCreate randomized 2-D affine transformation
randomAffine3dCreate randomized 3-D affine transformation
affineOutputViewCreate output view for warping images
imeraseRemove image pixels within rectangular region of interest
resize2dLayer2-D resize layer
resize3dLayer3-D resize layer
dlresizeResize spatial dimensions of dlarray object
DepthToSpace2DLayerDepth to space layer
SpaceToDepthLayerSpace to depth layer
depthToSpaceRearrange dlarray data from depth dimension into spatial blocks
spaceToDepthRearrange spatial blocks of dlarray data along depth dimension
encoderDecoderNetworkCreate encoder-decoder network
blockedNetworkCreate network with repeating block structure
pretrainedEncoderNetworkCreate encoder network from pretrained network
cycleGANGeneratorCreate CycleGAN generator network for image-to-image translation
patchGANDiscriminatorCreate PatchGAN discriminator network
pix2pixHDGlobalGeneratorCreate pix2pixHD global generator network
addPix2PixHDLocalEnhancerAdd local enhancer network to pix2pixHD generator network
unitGeneratorCreate unsupervised image-to-image translation (UNIT) generator network
unitPredictPerform inference using unsupervised image-to-image translation (UNIT) network
denoiseImageDenoise image using deep neural network
denoisingNetworkGet image denoising network
dnCNNLayersGet denoising convolutional neural network layers


Preprocess Images for Deep Learning

Datastores for Deep Learning (Deep Learning Toolbox)

Learn how to use datastores in deep learning applications.

Augment Images for Deep Learning Workflows Using Image Processing Toolbox (Deep Learning Toolbox)

This example shows how MATLAB® and Image Processing Toolbox™ can perform common kinds of image augmentation as part of deep learning workflows.

Preprocess Images for Deep Learning (Deep Learning Toolbox)

Learn how to resize images for training, prediction, and classification, and how to preprocess images using data augmentation, transformations, and specialized datastores.

Preprocess Volumes for Deep Learning (Deep Learning Toolbox)

Read and preprocess volumetric image and label data for 3-D deep learning.

Create Neural Networks for Image Processing Applications

Create Modular Neural Networks

You can create and customize deep learning networks that follow a modular pattern with repeating groups of layers, such as U-Net and cycleGAN.

Get Started with GANs for Image-to-Image Translation

GAN networks can transfer the styles and characteristics from one set of images to the scene content of other images.

Denoise Images Using Deep Learning

Train and Apply Denoising Neural Networks

Use a pretrained neural network to remove Gaussian noise from a grayscale image, or train your own network using predefined layers.

Remove Noise from Color Image Using Pretrained Neural Network

This example shows how to remove Gaussian noise from an RGB image by using a pretrained denoising neural network on each color channel independently.

Prepare Datastore for Image-to-Image Regression (Deep Learning Toolbox)

This example shows how to prepare a datastore for training an image-to-image regression network using the transform and combine functions of ImageDatastore.

Deep Learning 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.

Semantic Segmentation Using Deep Learning (Computer Vision Toolbox)

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

List of Deep Learning Layers (Deep Learning Toolbox)

Discover all the deep learning layers in MATLAB.

Featured Examples