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.


Threshold selection for de-noising


THR = thselect(X,TPTR)


thselect is a one-dimensional de-noising oriented function.

THR = thselect(X,TPTR) returns threshold X-adapted value using selection rule defined by character vector TPTR.

Available selection rules are

  • TPTR = 'rigrsure', adaptive threshold selection using principle of Stein's Unbiased Risk Estimate.

  • TPTR = 'heursure', heuristic variant of the first option.

  • TPTR = 'sqtwolog', threshold is sqrt(2*log(length(X))).

  • TPTR = 'minimaxi', minimax thresholding.

Threshold selection rules are based on the underlying model y = f(t) + e where e is a white noise N(0,1). Dealing with unscaled or nonwhite noise can be handled using rescaling output threshold THR (see SCAL parameter in wden for more information).

Available options are

  • tptr = 'rigrsure' uses for the soft threshold estimator, a threshold selection rule based on Stein’s Unbiased Estimate of Risk (quadratic loss function). One gets an estimate of the risk for a particular threshold value (t). Minimizing the risks in (t) gives a selection of the threshold value.

  • tptr = 'sqtwolog' uses a fixed-form threshold yielding minimax performance multiplied by a small factor proportional to log(length(X)).

  • tptr = 'heursure' is a mixture of the two previous options. As a result, if the signal to noise ratio is very small, the SURE estimate is very noisy. If such a situation is detected, the fixed form threshold is used.

  • tptr = 'minimaxi' uses a fixed threshold chosen to yield minimax performance for mean square error against an ideal procedure. The minimax principle is used in statistics in order to design estimators. Since the de-noised signal can be assimilated to the estimator of the unknown regression function, the minimax estimator is the one that realizes the minimum of the maximum mean square error obtained for the worst function in a given set.


% The current extension mode is zero-padding (see dwtmode).
% Generate Gaussian white noise.
x = randn(1,1000);

% Find threshold for each selection rule. 
% Adaptive threshold using SURE. 
thr = thselect(x,'rigrsure') 
% Fixed form threshold. 
thr = thselect(x,'sqtwolog') 
% Heuristic variant of the first option. 
thr = thselect(x,'heursure') 
% Minimax threshold. 
thr = thselect(x,'minimaxi') 


Donoho, D.L. (1993), “Progress in wavelet analysis and WVD: a ten minute tour,” in Progress in wavelet analysis and applications, Y. Meyer, S. Roques, pp. 109–128. Frontières Ed.

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

Donoho, D.L. (1995), “De-noising by soft-thresholding,” IEEE Trans. on Inf. Theory, 41, 3, pp. 613–627.

Extended Capabilities

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

See Also

Introduced before R2006a

Was this topic helpful?