Main Content

denoisingNetwork

Get image denoising network

Description

net = denoisingNetwork(modelName) returns a pretrained image denoising deep neural network specified by modelName.

This function requires Deep Learning Toolbox™.

example

Examples

collapse all

Get the pretrained image denoising convolutional neural network, "DnCNN".

net = denoisingNetwork("DnCNN")
net = 
  dlnetwork with properties:

         Layers: [58×1 nnet.cnn.layer.Layer]
    Connections: [57×2 table]
     Learnables: [76×3 table]
          State: [36×3 table]
     InputNames: {'InputLayer'}
    OutputNames: {'Conv20'}
    Initialized: 1

  View summary with summary.

Load the pretrained denoising convolutional neural network, "DnCNN".

net = denoisingNetwork("DnCNN");

Read a grayscale image into the workspace, then display the image.

I = imread("cameraman.tif");
imageshow(I)

Create a noisy version of the image, then display the noisy image.

noisyI = imnoise(I,"gaussian",0,0.01);
imageshow(noisyI)

Remove noise from the noisy image, then display the result.

denoisedI = denoiseImage(noisyI,net);
imageshow(denoisedI)

Input Arguments

collapse all

Name of pretrained denoising deep neural network, specified as the character vector 'DnCnn'. This is the only pretrained denoising network currently available, and it is trained for grayscale images only.

Data Types: char | string

Output Arguments

collapse all

Pretrained denoising deep neural network, returned as a dlnetwork (Deep Learning Toolbox) object.

References

[1] Zhang, K., W. Zuo, Y. Chen, D. Meng, and L. Zhang. "Beyond a Gaussian Denoiser: Residual Learning of Deep CNN for Image Denoising." IEEE Transactions on Image Processing. Vol. 26, Number 7, Feb. 2017, pp. 3142-3155.

Version History

Introduced in R2017b

expand all