В этом примере используется wavefun для демонстрации того, как количество исчезающих моментов в паре биоргональных фильтров влияет на гладкость соответствующей функции двойного масштабирования и вейвлета. Пока в этом примере используется wavefun для биортогенного импульса, 'bior3.7', вы также можете использовать wavefun получение ортогонального масштабирования и вейвлет-функций.
Во-первых, получить масштабирование и вейвлет-фильтры и посмотреть на количество исчезающих моментов в вейвлетах. Это эквивалентно просмотру числа нулей в -1 + i0 в двойном фильтре.
[LoD,HiD,LoR,HiR] = wfilters('bior3.7');При наличии Toolbox™ обработки сигналов можно использовать zplane для просмотра числа нулей в -1 + i0 как для фильтров разложения, так и для фильтров реконструкции.
zplane(LoD); title('Decomposition Filter');
figure;
zplane(LoR); title('Reconstruction Filter');
Если увеличить область вокруг -1 + i0, то в фильтре разложения появятся нули 7 и нули 3 в фильтре реконструкции. Это имеет важные последствия для гладкости соответствующих функций масштабирования и вейвлетов. Для биоргональных вейвлетов чем больше нулей при -1 + i0 в фильтре нижних частот, тем более гладкой является противоположная функция масштабирования и вейвлет. Другими словами, большее количество нулей в фильтре разложения подразумевает более плавную функцию масштабирования реконструкции и вейвлет. И наоборот, большее количество нулей в фильтре реконструкции подразумевает более плавную функцию масштабирования разложения и вейвлет.
Использовать wavefun чтобы подтвердить это. Для ортогональных и биоргональных вейвлетов wavefun работает путем обращения алгоритма Маллата. В частности, алгоритм начинается с одного вейвлета или коэффициента масштабирования на самом высоком уровне разрешения и восстанавливает вейвлет или функцию масштабирования до указанного самого высокого уровня разрешения. Обычно от 8 до 10 уровней достаточно для получения точного представления масштабной функции и вейвлета.
[phiD,psiD,phiR,psiR] = wavefun('bior3.7',10); subplot(2,1,1) plot([phiD' phiR']); grid on; title('Bior3.7 Scaling Functions'); legend('Decomposition','Reconstruction'); subplot(2,1,2) plot([psiD' psiR']); grid on; title('Bior3.7 Wavelets'); legend('Decomposition','Reconstruction');

Поскольку число нулей в -1 + i0 для фильтра декомпозиции нижних частот более чем в два раза больше, функция двойного масштабирования (реконструкции) и вейвлет намного более гладкие, чем функция масштабирования анализа (декомпозиции) и вейвлет.