This is machine translation

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

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Estimate noise of 1-D wavelet coefficients


STDC = wnoisest(C,L,S)
STDC = wnoisest(C)
STDC = wnoisest(C)


STDC = wnoisest(C,L,S) returns estimates of the detail coefficients' standard deviation for levels contained in the input vector S. [C,L] is the input wavelet decomposition structure (see wavedec for more information).

If C is a one dimensional cell array, STDC = wnoisest(C) returns a vector such that STDC(k) is an estimate of the standard deviation of C{k}.

If C is a numeric array, STDC = wnoisest(C) returns a vector such that STDC(k) is an estimate of the standard deviation of C(k,:).

The estimator used is Median Absolute Deviation / 0.6745, well suited for zero mean Gaussian white noise in the de-noising one-dimensional model (see thselect for more information).


collapse all

Estimate of the noise standard deviation in an N(0,1) white Gaussian noise vector with outliers.

Create an N(0,1) noise vector with 10 randomly-placed outliers.

rng default;
x = randn(1000,1);
P = randperm(length(x));
indices = P(1:10);
x(indices(1:5)) = 10;
x(indices(6:end)) = -10;

Obtain the discrete wavelet transform down to level 2 using the Daubechies’ extremal phase wavelet with 3 vanishing moments.

[c,l] = wavedec(x,2,'db3');
stdc = wnoisest(c,l,1:2)
stdc = 1×2

    0.9650    1.0279

In spite of the outliers, wnoisest provides a robust estimate of the standard deviation.


Donoho, D.L.; I.M. Johnstone (1994), “Ideal spatial adaptation by wavelet shrinkage,” Biometrika, vol 81, pp. 425–455.

Donoho, D.L.; I.M. Johnstone (1995), “Adapting to unknown smoothness via wavelet shrinkage via wavelet shrinkage,” JASA, vol 90, 432, pp. 1200–1224.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Introduced before R2006a