The wavelet denoising toolbox is an application function group created on the wavelet transform base library. Wavelet denoising is based on the consideration that the noise energy in the data is significantly lower than the signal energy, or the part of the data that contains useful information. In this case, the noise is mainly represented with the wavelet coefficients that have small magnitudes. If these coefficients are removed (set to be zeros) and the signal is reconstructed, the noise will be eliminated from the original data. Therefore, wavelet denoising is only suitable for the cases where the signal-to-noise ratio is high.
The thresholds to decide which coefficients are to be removed are usually empirically determined based on the data to be analyzed. However, there are methods (the function thSelect) to automatically select the thresholds by analyzing the input data if the noise has normal distribution property. It has to be noted that the thresholds calculated by thSelect in this toolbox are valid only if the noise has normal (Gaussian) distribution with zero mean and standard deviation of one! Otherwise, the data have to be pre-conditioned or the thresholds have to be manually selected by the user.
The same data processing for denoising could also be used for data compression. The idea is based on such consideration: The wavelet coefficients with small magnitudes contain little information about the original signal. By removing these coefficients, the data amount can be greatly reduced while not much information is lost. If a suitable wavelet is used, most coefficients might have very small magnitudes. Thus, a large compression ratio can be achieved.
Only orthogonal, biorthogonal or discrete Meyer wavelets can be used for wavelet denoising.
Name | Description |
---|---|
denoisGUI | Graphic user interface for 1D wavelet denoising |
denois | 1D wavelet denoising |
thSelect | Calculates threshold value for denoising |
thApply | Apply soft or hard thresholding |