WA Denoise (UWT 2D Array) VI
- Updated2024-07-30
- 5 minute(s) read
Performs noise reduction for 1D or 2D signals by using the discrete wavelet transform (DWT) or undecimated wavelet transform (UWT). You must manually select the polymorphic instance to use.

Inputs/Outputs
![]() threshold settings specifies the settings for the thresholding approximation coefficients and detail coefficients from the wavelet decomposition.
![]() signal specifies the 2D input signal. ![]() levels specifies the number of levels in the discrete wavelet analysis. levels must be a positive integer no greater than log2(Ls), where Ls is the length of the 1D signal or the minimum dimensional size of the 2D signal. The default is -1, which indicates that this VI sets levels as the largest integer no greater than log2(Ls). ![]() wavelet specifies the wavelet type to use for the discrete wavelet analysis. The default is db02. The options include two types: orthogonal (Haar, Daubechies (dbxx), Coiflets (coifx), Symmlets (symx)) and biorthogonal (Biorthogonal (biorx_x), including FBI (bior4_4 (FBI))), where x indicates the order of the wavelet. ![]() error in describes error conditions that occur before this node runs. This input provides standard error in functionality. ![]() filter banks specifies the analysis filter banks and the synthesis filter banks for the wavelet you specify. If you specify a value for filter banks, this VI ignores the settings in the wavelet input. You can use the Wavelet Design Express VI to design the analysis filters and the corresponding synthesis filters.
![]() user defined thresholds specifies thresholds you define to rescale the wavelet coefficients. The length of user defined thresholds must equal levels. The first element of user defined thresholds contains the threshold for the detail coefficients at the largest level, and the last element of user defined thresholds contains the threshold for the detail coefficients at the first level. If you specify a value for user defined thresholds, this VI keeps the approximation coefficients unchanged and ignores the settings in thresholding rule and rescaling method. ![]() denoised signal returns the signal after denoising. ![]() error out contains error information. This output provides standard error out functionality. |
WA Denoise Details
This VI completes the following steps to implement the noise reduction for signals and images using wavelet transforms.
- Applies the wavelet transform to the noisy data and obtains the detail coefficients and the approximation coefficients.
- Applies soft or hard thresholding to the resulting coefficients, thereby suppressing those coefficients smaller than a certain threshold. The thresholding rule and the rescaling method determine the threshold.
- Reconstructs the coefficients after thresholding and transforms them back into the original domain.
To perform denoising on complex signals, use the UWT method.
In general, the DWT is more efficient for decomposing signals, but the UWT provides better denoising performance because it can help reduce artifacts, such as Gibbs oscillation.
Examples
Refer to the following VIs for examples of using the WA Denoise VI:
- Denoise - 1D Complex Signal VI: labview\examples\Wavelet Analysis\WAGettingStarted
- Denoise - 1D Real Signal VI: labview\examples\Wavelet Analysis\WAGettingStarted
- Denoise - Image VI: labview\examples\Wavelet Analysis\WAGettingStarted