WaveletThreshold

class WaveletThreshold

Perform threshold on wavelet coefficients

Setters

inline void SetSigma(double sigma)
inline void SetBlock(unsigned int length, double lambda)

The block rule’s parameters: the block length in coefficients, 0 for the natural logarithm of N, Cai’s choice, and the energy threshold in units of L sigma^2, whose calibrated value for that length is 4.505.

inline unsigned int GetBlockLength()
inline double GetBlockLambda()

Operations

void operator()(SeqViewDouble &WT, enum WaveletThresholding t, enum ThresholdingMode m = hard)

Brief documentation for the execute method.

Start of the long documentation for execute method.

Declaration of execute operation

Throws:

An – exception

Parameters:

a – parameter

Pre:

A precondition

Post:

A postcondition

Returns:

a returned value

void operator()(Dmatrix &WT, enum WaveletThresholding t, enum ThresholdingMode m = hard)

Getters

inline double GetSigma()
inline double GetLevel()
inline double GetCm()

Public Types

enum WaveletThresholding

How the coefficients of one window are selected.

dohonojohnston keeps each coefficient on its own against the universal threshold sqrt(2 ln N) sigma, with sigma read from the median of the window’s own coefficients; cuoco applies the same threshold with the sigma given from outside; highest keeps the largest coefficients by count.

block judges contiguous coefficients of one level together (Cai 1999): a block of L coefficients is kept whole when its energy exceeds lambda L sigma^2, and zeroed whole otherwise. A signal spread over neighbouring coefficients, each below the universal threshold, survives as a block where no single coefficient would; a lone noise excursion does not carry its block over the line. sigma is read as for dohonojohnston.

Values:

enumerator highest
enumerator dohonojohnston
enumerator cuoco
enumerator block
enum ThresholdingMode

How a coefficient above the threshold is treated.

hard leaves it unchanged, so its amplitude is unbiased and the energy of the surviving set is the energy of the signal. soft shrinks every survivor by the threshold: that minimises the mean square error of a denoised reconstruction, but biases amplitudes low by an amount that grows with the number of coefficients the signal is spread over.

A detection statistic and a parameter estimate are both read off the amplitude, so hard is the default.

Values:

enumerator hard
enumerator soft

Public Functions

WaveletThreshold(unsigned int N, unsigned int ncoeff = 0, double sigma = 1.0)

Constructor

~WaveletThreshold()

Destructor