Diceret Wavelet Transform Detail Function

5 visualizaciones (últimos 30 días)
arash
arash el 8 de Dic. de 2013
Comentada: kishan el 8 de Dic. de 2013
I'm using Discrete wavelet transform and i was wondering how can i find out what's my frequency of detail function

Respuesta aceptada

Wayne King
Wayne King el 8 de Dic. de 2013
Editada: Wayne King el 8 de Dic. de 2013
Wavelet filters act like bandpass filters in particular way:
level j --approximately (Fs/2^(j+1) Fs/2^j]
How concentrated the wavelet filter's transfer function is in that passband depends on the wavelet filter. Generally, the longer the filter, the more concentrated.
For the Haar filter, the above is a poor approximate, for something like 'sym8', much better.
If you really want to see the transfer function, you can use the multirate noble identities to find it. For example, I'll do the transfer function of the level-2 'sym4' and 'sym8' wavelet filters. They will pass most between [1/8 1/4] assuming Fs = 1
[g,h] = wfilters('sym4');
h = dyadup(h,0);
det2 = conv(g,h);
tfFilter = fft(det2,64);
tfFilter = tfFilter(1:64/2+1);
df = 1/64;
F = 0:df:1/2;
plot(F,abs(tfFilter))
set(gca,'xtick',[0 1/8 1/4 1/2]);
grid on;
Now repeat for 'sym8'
[g,h] = wfilters('sym8');
h = dyadup(h,0);
det2 = conv(g,h);
tfFilter = fft(det2,64);
tfFilter = tfFilter(1:64/2+1);
df = 1/64;
F = 0:df:1/2;
hold on;
plot(F,abs(tfFilter),'r')
set(gca,'xtick',[0 1/8 1/4 1/2]);
grid on;
Now compare level-2 and level-3 wavelet filter transfer function for the 'sym8' wavelet.
figure;
[g,h] = wfilters('sym8');
h = dyadup(h,0);
det2 = conv(g,h);
tfFilter = fft(det2,64);
tfFilter = tfFilter(1:64/2+1);
df = 1/64;
F = 0:df:1/2;
hold on;
plot(F,abs(tfFilter),'r')
set(gca,'xtick',[0 1/16 1/8 1/4 1/2]);
grid on;
[g,h] = wfilters('sym8');
g2 = dyadup(g,0);
h = dyadup(h,0);
h = dyadup(h,0);
det3 = conv(conv(g,g2),h);
tfFilter = fft(det3,64);
tfFilter = tfFilter(1:64/2+1);
df = 1/64;
F = 0:df:1/2;
plot(F,abs(tfFilter),'k')
set(gca,'xtick',[0 1/16 1/8 1/4 1/2]);
grid on;

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by