MATLAB: Plotting the bandpass characteristics of a wavlet and its dilations

spectrum wavelet

Hi,
I simply want to plot the bandpass characteristic of a 'db2' Wavelet and some of its dilations. – First idea: Plot the spectrum – Second idea: Take the low- and high pass filter values as frequency characteristics
How would you do that?!
Thanks!

Best Answer

Hi, Since the 'db2' wavelet is associated with a multiresolution analysis, you can use the scaling (lowpass) and wavelet (highpass) filters to obtain the bandpass characteristics.
The key is to determine the equivalent filters for a given level. To do this make use of the multirate Noble identities.
For example, the equivalent scaling filters at levels 1, 2, and 3 are as follows: (I'm assuming you have the Singal Processing Toolbox by using freqz())
[LoD,HiD] = wfilters('db2');
[H1,W1] = freqz(LoD);
LoD2 = upsample(LoD,2);
LoD2 = conv(LoD2,LoD);
[H2,W2] = freqz(LoD2);
LoD3 = upsample(LoD,4);
LoD3 = conv(LoD3,LoD2);
[H3,W3] = freqz(LoD3);
plot(W1,abs(H1),'b');
hold on;
plot(W2,abs(H2),'k');
plot(W3,abs(H3),'r');
legend('Level1','Level2','Level3');
title('Daubechies Extremal Phase Equivalent Scaling Filters');
Wayne