Noise Level Estimation from a Single Image

It can precisely estimate noise level from a single image.
8.1K Downloads
Updated 3 Feb 2015

View License

Editor's Note: This file was selected as MATLAB Central Pick of the Week

NoiseLevel estimates noise level of input single noisy image.
[nlevel th num] = NoiseLevel(img,patchsize,decim,conf,itr)
Output parameters
nlevel: estimated noise levels.
th: threshold to extract weak texture patches at the last iteration.
num: number of extracted weak texture patches at the last iteration.

The dimension output parameters is same to channels of the input image.
Input parameters
img: input single image
patchsize (optional): patch size (default: 7)
decim (optional): decimation factor. If you put large number, the calculation will be accelerated. (default: 0)
conf (optional): confidence interval to determin the threshold for the weak texture. In this algorithm, this value is usually set the value very close to one. (default: 0.99)
itr (optional): number of iteration. (default: 3)

Example:
img = double(imread('img.png'));
nlevel = NoiseLevel(img);

Web page:
http://bit.ly/NLest (http://www.ok.ctrl.titech.ac.jp/res/NLE/noise_level.html)

Reference:
Xinhao Liu, Masayuki Tanaka and Masatoshi Okutomi
Noise Level Estimation Using Weak Textured Patches of a Single Noisy Image
IEEE International Conference on Image Processing (ICIP), 2012.

Xinhao Liu, Masayuki Tanaka and Masatoshi Okutomi,
Single-image Noise Level Estimation for Blind Denoising,
IEEE Transactions on Image Processing, Vol.22, No.12, pp.5226-5237, 2013.

Cite As

Masayuki Tanaka (2026). Noise Level Estimation from a Single Image (https://ch.mathworks.com/matlabcentral/fileexchange/36921-noise-level-estimation-from-a-single-image), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Version Published Release Notes
1.8.0.0

Added the functionality of generating the mask for the weak-texture.

1.7.0.0

Bug fixed.

1.6.0.0

Add new reference to description.

1.5.0.0

Debugged threshold calculation and change default parameter.

1.4.0.0

Debugged for zero-iteration case.

1.3.0.0

Added the web information.

1.1.0.0

Added help.

1.0.0.0