В этом примере показано, как создать приблизительно аналитические вейвлеты с помощью двойного древовидного комплексного вейвлета, преобразовывают. КИХ просачивается, эти два набора фильтров должны быть тщательно созданы для того, чтобы получить приблизительно аналитический вейвлет, преобразовывают и выводят преимущества двойного древовидного преобразования.
Создайте нулевые выборки сигнала 256 в длине. Получите два двойных древовидных преобразования нулевого сигнала вниз к уровню 5. По умолчанию, dualtree
использует почти симметричную биоортогональную пару фильтра по умолчанию nearsym5_7
для уровня 1 и ортогонального вейвлета К-шифта Гильберта фильтруют пару длины 10 для уровней, больше, чем 1.
x = zeros(256,1); [a1,d1] = dualtree(x,'Level',5); [a2,d2] = dualtree(x,'Level',5);
Установите один уровень пять коэффициентов детали в каждом из этих двух деревьев к 1 и инвертируйте преобразование, чтобы получить вейвлеты.
d1{5}(5) = 1; d2{5}(5) = 1i; wav1 = idualtree(a1,d1); wav2 = idualtree(a2,d2);
Сформируйте комплексный вейвлет с помощью первого дерева в качестве действительной части и второго дерева как мнимая часть. Постройте действительные и мнимые части вейвлета.
analwav = wav1+1i*wav2; plot(real(analwav)) hold on plot(imag(analwav),'r') plot(abs(analwav),'k','linewidth',2) axis tight legend('Real part','Imaginary part','Magnitude','Location','Northwest')
Преобразование Фурье аналитический вейвлет и график величина.
zdft = fft(analwav); domega = (2*pi)/length(analwav); omega = 0:domega:(2*pi)-domega; clf; plot(omega,abs(zdft)) xlabel('Radians/Sample') axis tight
Преобразование Фурье вейвлета имеет поддержку чрезвычайно только на половине оси частоты.