Wavelet Toolbox |
Threshold selection for de-noising
Syntax
Description
thselect
is a one-dimensional de-noising oriented function.
THR = thselect(X,TPTR)
returns threshold X
-adapted value using selection rule defined by string TPTR
.
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).
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.
Examples
% The current extension mode is zero-padding (see dwtmode
).
% Generate Gaussian white noise.
init = 2055415866; randn('seed',init);
x = randn(1,1000);
% Find threshold for each selection rule.
% Adaptive threshold using SURE.
thr = thselect(x,'rigrsure')
thr =
1.8065
% Fixed form threshold.
thr = thselect(x,'sqtwolog')
thr =
3.7169
% Heuristic variant of the first option.
thr = thselect(x,'heursure')
thr =
3.7169
% Minimax threshold.
thr = thselect(x,'minimaxi')
thr =
2.2163
See Also
wden
References
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.
symwavf | tnodes |
© 1994-2005 The MathWorks, Inc.