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

Разложение низкочастотного фильтра

Hi_D

Разложение высокочастотного фильтра

Lo_R

Реконструкция низкочастотного фильтра

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′.

Становится очевидным, как указал А. Коэн в своей диссертации (стр. 110), что "полезные свойства для анализа (например, колебания, нулевые моменты) могут быть сконцентрированы в ψ˜ функция; в то время как, интересные свойства для синтеза (регулярность) присваиваются функции Разделение этих двух задач оказывается очень полезным ".

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

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

Примеры

свернуть все

Этот пример показывает, как получить фильтры разложения (анализа) и реконструкции (синтеза) для '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.

Ссылки

Cohen, A. (1992), «Ondelettes, analyses multirésolution et traitement numérique du signal», Ph. d. Дипломная работа, Парижский университет IX, ДОФИНЕ.

Daubechies, I. (1992), Десять лекций по вейвлетам, серия конференций CBMS-NSF по прикладной математике. СИАМ Ред.

См. также

|

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