Wavelets have been widely used in denoising or extracting one specific frequency band of a signal nowadays. However, these can also be done through conventional filters (e.g. butterworth, Chebyshev). So what are the pros and cons for these two methods for filtering?

  • $\begingroup$ @LaurentDuval, Actually I am talking about using DWT or conventional filters to extract a specific freq band of a signal. For example, [link] (dsp.stackexchange.com/questions/35384/…) $\endgroup$
    – pan
    Sep 27, 2017 at 2:44
  • $\begingroup$ Do you need additional details? $\endgroup$ Dec 14, 2017 at 11:04

2 Answers 2


Let us first consider the orthogonal DWT: this transform is build with several constraints: orthogonality (and invertibility) of course, and the discretization of some continuous wavelet transform, with a specific dyadic structure, yielding a frequency decomposition whose cut are approximately:

$$[0\;1/2^L\;1/2^{L-1}\ldots 1/2 \;1]$$

Discrete wavelets can be implemented as a bank of filters (or a filterbank) dedicated to one of the above intervals, followed by the appropriate subsampling. And only some specific filters (albethey in infinite number) obey the above constraints.

Hence, with the DWT, only dyadic boundaries are available (*), only a subset of filters can be used, and outputs are decimated. And orthogonality, scales are not used at all.

Whereas with standard filters, you only have linearity constraints: invertibility is not required, you can specify the bounds, ripples and decay you need (at the price of design issues).

So for mere filtering, I cannot see an advantage of using discrete and critical wavelet schemes. However, DWT can do some crude band-pass filtering while being used for other processing needs.

Wavelets now play a more interesting role for data sparsification, along with non-linear analysis, for compression, restoration, which standard filters generally cannot achieve.

As a side note, if you allow redundancy in the transformation, choosing a wavelet with a sufficient number of oscillations in a sufficiently long "window" could do a good job, but that would be overkill.

(*) with $M$-band wavelets and wavelet packets, you could get more generic $M$-ary integers $k/M^n$, but not all fractions or reals


You can perform wavelet mra (modwtmra) and apply IIR or FIR filters with filtfilt in matlab on some test signal. For example on the sequence of the rectangle pulses with noise. You will definitely see the difference.

  • $\begingroup$ MODWT does not correspond to the DWT, and is quite redundant $\endgroup$ Sep 27, 2017 at 15:11
  • $\begingroup$ with redundant modwtmra one can localize useful parts of a signal, while with the help of the superfluous dwt it's hardly possible $\endgroup$ Sep 27, 2017 at 16:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.