Reputation: 45
I am confused about the wavelet. I understand that wavelet transform is just a bandpass filter centered at the center frequency. However, in PyWavelets, https://pywavelets.readthedocs.io/en/latest/index.html, a wavelet transform is implemented as a filter bank which can break a signal into low and high components. So my question is: how does wavelet, listed on http://wavelets.pybytes.com/wavelet/bior6.8/, play in this game? If they are used as a bandpass filter, how can the signal be broken into two parts instead of just being bandpassed?
Upvotes: 1
Views: 1500
Reputation: 2480
A wavelet transform uses the scaling function, represented by a lowpass filter, to approximate the signal on the next level, and the wavelet function, represented by a highpass filter, to encode the difference between the current level and the next.
On the page you mention these are the left and right plots of each wavelet basis, respectively. The site also has a short explanation of the algorithm (via the API reference URL). The picture on Wikipedia makes it a bit clearer I think.
So the first-level detail coefficients come from a highpass filter, and the final-level approximation coefficients come from a lowpass filter. The levels in between are repeated lowpass filtering (and usually subsampling) followed by one highpass filter. Comparable to edge detection after repeated smoothing. In other words, the bandpass property does not happen in a single step, see also this earlier answer.
Upvotes: 0