biorfilt

Биоортогональный фильтр вейвлета устанавливается

Синтаксис

[Lo_D,Hi_D,Lo_R,Hi_R] = biorfilt(DF,RF)
[Lo_D1,Hi_D1,Lo_R1,Hi_R1,Lo_D2,Hi_D2,Lo_R2,Hi_R2] = biorfilt(DF,RF,'8')

Описание

biorfilt команда возвращает или четыре или восемь фильтров, сопоставленных с биоортогональными вейвлетами.

[Lo_D,Hi_D,Lo_R,Hi_R] = biorfilt(DF,RF) вычисляет четыре фильтра, сопоставленные с биоортогональным вейвлетом, заданным фильтром разложения DF и реконструкция фильтрует RF. Эти фильтры

Lo_D

Разложение фильтр lowpass

Hi_D

Фильтр высоких частот разложения

Lo_R

Реконструкция фильтр lowpass

Hi_R

Фильтр высоких частот реконструкции

[Lo_D1,Hi_D1,Lo_R1,Hi_R1,Lo_D2,Hi_D2,Lo_R2,Hi_R2] = biorfilt(DF,RF,'8') возвращает восемь фильтров, первые четыре, сопоставленные с вейвлетом разложения и последними четырьмя, сопоставленными с вейвлетом реконструкции.

Известно в сообществе фильтрации поддиапазона что, если те же КИХ-фильтры используются для реконструкции и разложения, то симметрия и точная реконструкция несовместимы (кроме с вейвлетом Хаара). Поэтому с биоортогональными фильтрами, два вейвлета введены вместо всего один:

Один вейвлет, ψ˜, используется в анализе, и коэффициенты s сигнала

c˜j,k=s(x)ψ˜j,k(x)dx

Другой вейвлет, ψ, используется в синтезе:

s=j,kc˜j,kψj,k

Кроме того, эти два вейвлета связаны дуальностью в следующем смысле:
ψ˜j,k(x)ψj,k(x)dx=0 как только j ≠ j′ или k ≠ k′ и
ϕ˜0,k(x)ϕ0,k(x)dx=0 как только k ≠ k′.

Это становится очевидным, как А. Коэн указал в своем тезисе (p. 110), это “полезные свойства для анализа (e.g., колебания, пустые моменты), может быть сконцентрирован в ψ˜ функция; тогда как, интересные свойства для синтеза (регулярность) присвоены функции ψ. Разделение этих двух задач оказывается очень полезным”.

ψ˜ и ψ может иметь совсем другие свойства регулярности, ψ быть более регулярным, чем ψ˜.

ψ˜, ψ, ϕ˜ и функции ϕ являются нулем вне сегмента.

Примеры

свернуть все

В этом примере показано, как получить разложение (анализ), и реконструкция (синтез) фильтрует для 'bior3.5' вейвлет.

Определите два масштабирования и фильтры вейвлета, сопоставленные с 'bior3.5' вейвлет.

wv = 'bior3.5';
[Rf,Df] = biorwavf(wv);
[LoD,HiD,LoR,HiR] = biorfilt(Df,Rf);

Постройте импульсные характеристики фильтра.

subplot(2,2,1)
stem(LoD)
title(['Dec. lowpass filter ',wv]) 
subplot(2,2,2)
stem(HiD)
title(['Dec. highpass filter ',wv])
subplot(2,2,3)
stem(LoR)
title(['Rec. lowpass filter ',wv]) 
subplot(2,2,4)
stem(HiR)
title(['Rec. highpass filter ',wv])

Figure contains 4 axes. Axes 1 with title Dec. lowpass filter bior3.5 contains an object of type stem. Axes 2 with title Dec. highpass filter bior3.5 contains an object of type stem. Axes 3 with title Rec. lowpass filter bior3.5 contains an object of type stem. Axes 4 with title Rec. highpass filter bior3.5 contains an object of type stem.

Продемонстрируйте, что автокорреляции в даже задержках являются только нулем для двойных пар фильтров. Исследуйте последовательность автокорреляции на фильтр разложения lowpass.

npad = 2*length(LoD)-1;
LoDxcr = fftshift(ifft(abs(fft(LoD,npad)).^2));
lags = -floor(npad/2):floor(npad/2);
figure
stem(lags,LoDxcr,'markerfacecolor',[0 0 1])
set(gca,'xtick',-10:2:10)

Figure contains an axes. The axes contains an object of type stem.

Исследуйте последовательность взаимной корреляции на фильтры разложения и синтеза lowpass. Сравните результат с предыдущей фигурой.

npad = 2*length(LoD)-1;
xcr = fftshift(ifft(fft(LoD,npad).*conj(fft(LoR,npad))));
lags = -floor(npad/2):floor(npad/2);
stem(lags,xcr,'markerfacecolor',[0 0 1])
set(gca,'xtick',-10:2:10)

Figure contains an axes. The axes contains an object of type stem.

Сравните передаточные функции масштабирования анализа и синтеза и фильтров вейвлета

dftLoD = fft(LoD,64); 
dftLoD = dftLoD(1:length(dftLoD)/2+1);
dftHiD= fft(HiD,64); 
dftHiD = dftHiD(1:length(dftHiD)/2+1);
dftLoR = fft(LoR,64);
dftLoR = dftLoR(1:length(dftLoR)/2+1);
dftHiR = fft(HiR,64);
dftHiR = dftHiR(1:length(dftHiR)/2+1);
df = (2*pi)/64;
freqvec = 0:df:pi;

subplot(2,1,1)
plot(freqvec,abs(dftLoD),freqvec,abs(dftHiD),'r')
axis tight
title('Transfer modulus for dec. filters') 
subplot(2,1,2)
plot(freqvec,abs(dftLoR),freqvec,abs(dftHiR),'r') 
axis tight
title('Transfer modulus for rec. filters')

Figure contains 2 axes. Axes 1 with title Transfer modulus for dec. filters contains 2 objects of type line. Axes 2 with title Transfer modulus for rec. filters contains 2 objects of type line.

Ссылки

Коэн, A. (1992), “Ondelettes, аналитический multirésolution et traitement numérique du signal”, кандидатская диссертация, Университет Парижа IX, DAUPHINE.

Daubechies, я. (1992), Десять лекций по вейвлетам, ряду конференции CBMS-NSF в прикладной математике. SIAM Эд.

Смотрите также

|

Представлено до R2006a