exponenta event banner

dbaux

Вычисление вейвлет-фильтра Daubechies

Синтаксис

Описание

dbaux функция генерирует коэффициенты фильтра масштабирования для вейвлетов Daubechies «экстремальной фазы».

W = dbaux(N) является заказом N Масштабирующий фильтр Daubechies, который sum(W) = 1.

Примечание

  • Нестабильность может возникнуть, когда N слишком большой. Начиная со значений N в диапазоне 30, выходной сигнал функции больше не будет точно представлять коэффициенты масштабного фильтра.

  • Для N = 1, 2 и 3, порядок N Фильтры Symlet и порядок N Фильтры Daubechies идентичны. См. Экстремальная фаза.

пример

W = dbaux(N,SUMW) является заказом N Масштабирующий фильтр Daubechies, который sum(W) = SUMW.

W = dbaux(N,0) эквивалентно W = dbaux(N,1).

Примеры

свернуть все

В этом примере показано, как определить фильтр масштабирования экстремальной фазы Daubechies с заданной суммой. Двумя наиболее распространенными значениями суммы являются 2 и 1.

Создайте две версии db4 масштабный фильтр. Один масштабный фильтр суммирует до 2, а другой вариант суммирует до 1.

NumVanishingMoments = 4;
h = dbaux(NumVanishingMoments,sqrt(2));
m0 = dbaux(NumVanishingMoments,1);

Фильтр с суммой, равной 2, является синтезирующим (восстановительным) фильтром, возвращаемым wfilters и используется в дискретном вейвлет-преобразовании.

[LoD,HiD,LoR,HiR] = wfilters('db4');
max(abs(LoR-h))
ans = 4.2590e-13

Для ортогональных вейвлетов фильтр анализа (разложения) является обратным по времени фильтром синтеза.

max(abs(LoD-fliplr(h)))
ans = 4.2590e-13

Этот пример показывает, что фильтры масштабирования symlet и Daubechies одного порядка являются решениями одного и того же полиномиального уравнения.

Создайте масштабный фильтр Daubechies порядка 4 и постройте его график.

wdb4 = dbaux(4)
wdb4 = 1×8

    0.1629    0.5055    0.4461   -0.0198   -0.1323    0.0218    0.0233   -0.0075

stem(wdb4)
title('Order 4 Daubechies Scaling Filter')

Figure contains an axes. The axes with title Order 4 Daubechies Scaling Filter contains an object of type stem.

wdb4 - решение уравнения: P = conv (wrev (w), w) * 2, где P - фильтр «группы Лагранжа» для N = 4. Вычислите P и постройте его график. P - симметричный фильтр, а wdb4 - минимальное фазовое решение предыдущего уравнения, основанное на корнях P.

P = conv(wrev(wdb4),wdb4)*2;
stem(P)
title('''Lagrange trous'' filter')

Figure contains an axes. The axes with title 'Lagrange trous' filter contains an object of type stem.

Создайте wsym4, масштабный фильтр symlet порядка 4 и постройте его график. Symlets - «наименее асимметричные» вейвлеты Daubechies, полученные из другого выбора между корнями P.

wsym4 = symaux(4)
wsym4 = 1×8

    0.0228   -0.0089   -0.0702    0.2106    0.5683    0.3519   -0.0210   -0.0536

stem(wsym4)
title('Order 4 Symlet Scaling Filter')

Figure contains an axes. The axes with title Order 4 Symlet Scaling Filter contains an object of type stem.

Вычислите конвейер (wrev (wsym4), wsym4) * 2 и подтвердите, что wsym4 является другим решением уравнения P = conv (wrev (w), w) * 2.

P_sym = conv(wrev(wsym4),wsym4)*2;
err = norm(P_sym-P)
err = 1.8677e-15

Этот пример демонстрирует, что для данной поддержки совокупная сумма возведенных в квадрат коэффициентов масштабного фильтра увеличивается быстрее для экстремального фазового вейвлета, чем для других вейвлетов.

Создание коэффициентов масштабного фильтра для db15 и sym15 вейвлеты. Оба вейвлета имеют опору ширины 2 × 15-1 = 29.

[~,~,LoR_db,~] = wfilters('db15');
[~,~,LoR_sym,~] = wfilters('sym15');

Затем создайте коэффициенты масштабного фильтра для coif5 вейвлет. Этот вейвлет также имеет поддержку ширины 6 × 5-1 = 29.

[~,~,LoR_coif,~] = wfilters('coif5');

Подтвердите, что сумма коэффициентов для всех трех вейвлетов равна 2.

sqrt(2)-sum(LoR_db)
ans = 2.2204e-16
sqrt(2)-sum(LoR_sym)
ans = 0
sqrt(2)-sum(LoR_coif)
ans = 2.2204e-16

Постройте график кумулятивных сумм возведенных в квадрат коэффициентов. Обратите внимание, как быстро увеличивается сумма Daubechies. Это потому, что его энергия сконцентрирована в небольших абсциссах. Поскольку вейвлет Daubechies имеет экстремальную фазу, кумулятивная сумма его квадратных коэффициентов увеличивается быстрее, чем два других вейвлета.

plot(cumsum(LoR_db.^2),'rx-')
hold on
plot(cumsum(LoR_sym.^2),'mo-')
plot(cumsum(LoR_coif.^2),'b*-')
legend('Daubechies','Symlet','Coiflet')
title('Cumulative Sum')

Figure contains an axes. The axes with title Cumulative Sum contains 3 objects of type line. These objects represent Daubechies, Symlet, Coiflet.

Входные аргументы

свернуть все

Порядок фильтра масштабирования Daubechies, заданного как положительное целое число.

Типы данных: single | double

Сумма коэффициентов, заданная как положительный скаляр. Установить в значение sqrt(2) для формирования вектора коэффициентов, нормой которых является 1.

Типы данных: single | double

Выходные аргументы

свернуть все

Коэффициенты фильтра масштабирования возвращены как вектор.

Коэффициенты фильтра масштабирования удовлетворяют ряду свойств. Как показано в примере Daubechies Extremal Phase Scaling Filter with Specified Sum, можно построить коэффициенты фильтра масштабирования с определенной суммой. Если {hk} обозначает набор порядка N Daubechies масштабирует коэффициенты фильтра, где n = 1,..., 2N, затем ∑n=12Nhn2=1. Коэффициенты также удовлетворяют соотношению ∑nh (n) h (n 2k) = δ (k). Эти свойства можно использовать для проверки результатов.

Ограничения

  • Расчет dbN Фильтр масштабирования Daubechies требует извлечения корней многочлена порядка 4N. Нестабильность может возникнуть, начиная со значений N в 30-е годы.

Подробнее

свернуть все

Экстремальная фаза

Построение компактно поддерживаемого ортогонального вейвлетного базиса включает в себя выбор корней конкретного полиномиального уравнения. Различные варианты корней приводят к вейвлетам, фазы которых различны. Выбор корней, лежащих в пределах единичной окружности в комплексной плоскости, приводит к созданию фильтра с очень нелинейной фазой. Говорят, что такой вейвлет имеет экстремальную фазу и имеет энергию, сконцентрированную на малых абсциссах. Пусть {hk} обозначает набор коэффициентов масштабирования, связанных с экстремальным фазовым вейвлетом, где k = 1,...,M. Тогда для любого другого набора коэффициентов масштабирования {gk}, полученных из другого выбора корней, следующее неравенство будет сохраняться для всех J = 1,...,M :

∑k=1Jgk2≤∑k=1Jhk2

{hk} иногда называют фильтром минимальной задержки [2].

Упомянутое выше уравнение полинома зависит от количества исчезающих моментов N для импульса. Для построения вейвлет-базиса выбирают корни уравнения. В случае наименьших асимметричных вейвлетов и экстремальных фазовых вейвлетов для порядков 1, 2 и 3 фактически нет выбора. Для N = 1, 2 и 3 dbN и symN фильтров равны. Пример фильтров масштабирования Symlet и Daubechies показывает, что два разных фильтра масштабирования могут удовлетворять одному и тому же полиномиальному уравнению. Для получения дополнительной информации см. Daubechies [1].

Алгоритмы

Используемый алгоритм основан на результате, полученном Шенсой [3], показывающем соответствие между фильтрами «Lagrange à trous» и сверточными квадратами вейвлет-фильтров Daubechies.

Вычисление масштабного фильтра w порядка N Daubechies выполняется в два этапа: вычислить фильтр P «Lagrange à troys» и извлечь квадратный корень. Точнее:

  • P связанный фильтр «Lagrange à trous» является симметричным фильтром длины 4N-1. P определяется

    P = [a (N) 0 a (N-1) 0... 0 а (1) 1 а (1) 0 а (2) 0... 0 a (N)]

  • где

  • Тогда, если w обозначает dbN Daubechies масштабный фильтр суммы, w является квадратным корнем из P:

        P = conv(wrev(w), w) где w - фильтр длины 2N .

    Соответствующий многочлен имеет N нулей, расположенных в − 1, и N − 1 нулей, меньших 1 в модуле.

Следует отметить, что могут использоваться и другие методы; см. различные решения задачи спектральной факторизации в Strang-Nguyen [4] (стр. 157).

Ссылки

[1] Daubechies, I. Десять лекций по вейвлетам, серия региональных конференций CBMS-NSF по прикладной математике. Филадельфия, Пенсильвания: SIAM Ed, 1992.

[2] Оппенгейм, Алан В. и Рональд В. Шефер. Дискретно-временная обработка сигналов. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1989.

[3] Шенса, М.Дж. (1992), «Дискретное вейвлет-преобразование: свадьба a trops и Mallat Algoriths», IEEE Trans. on Signal Processing, vol. 40, 10, pp. 2464-2482.

[4] Стрэнг, Г. и Т. Нгуен. Вейвлетс и банки фильтров. Уэлсли, Массачусетс: Уэлсли-Кембридж Пресс, 1996.

См. также

| |

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