This tool applies wavelet-thresholding–based noise reduction to the input signal using a Julia implementation of discrete wavelet decomposition.

It automatically separates noise from meaningful signal components and reconstructs a cleaner version of the signal, preserving important transients and features while reducing broadband noise.


Various options can be set directly from the context menu:




Wavelet Type


Selects the wavelet family and filter shape used for decomposition.


Haar – Fast, simple, blocky transitions; good for step-like signals.

Daubechies4 / Daubechies8 – Compactly supported wavelets with increasing smoothness; suitable for general denoising.

Symlet6 – Symmetric, smooth wavelet; often produces very natural-looking denoised signals.

Coiflet4 – Balanced wavelet with good time–frequency localization.

Battle4 – Smooth, spline-like wavelet; good for strongly oscillatory signals.

Beylkin – Very smooth wavelet for detailed feature preservation.



Levels (3–6)


Defines the number of wavelet decomposition levels.

Higher levels remove noise on larger time scales but may also smooth out fine details.

Lower levels focus on removing only high-frequency noise.


Threshold Method


Controls how the denoising threshold is computed.


Universal – Classic Donoho universal threshold; strong noise suppression, risk of over-smoothing.

Robust – Uses robust estimation of noise level; suitable for signals with non-Gaussian noise.

Fixed3Sigma – Applies a fixed threshold of 3× estimated noise sigma; useful for predictable noise levels.


Shrinkage Mode


Determines how coefficients above or below the threshold are modified.


Soft – Reduces coefficients smoothly toward zero; produces smoother, more natural results.

Hard – Sets coefficients below threshold to zero while keeping others unchanged; preserves sharp features but may introduce artifacts.