Опрос

Какой архиватор наиболее эффективный?:

Новички

Виктор Васильев
Юрий Антонов
Сергей Андреевич
Генадий
Avanasy

Нахождение коэффициентов фильтра

После рассмотрения общих операций над фильтрами возникает следующий вопрос: «Как находить коэффициенты фильтров?» Полный ответ на этот вопрос весьма непрост и выходит за рамки нашего изложения (см., например, [Akansu, Haddad 92]). В этом параграфе мы постараемся дать некоторое представление об основных правилах и методах вычисления коэффициентов различных банков фильтров.

Пусть имеется два прямых фильтра Н$,Н\ и два обратных фильтра Fq, F\, которые состоят из N отсчетов (число N предполагается четным). Обозначим их коэффициенты через

ho = (МО),Ml), • • .M(N - 1)), hx= (МО),Ml), • • • M(N - 1)), /o = (/o(0),/o(l),...,/o(iV-l)),/i = (/i(0),/i(l),...,/i(iV-l)).

Четыре вектора /io,M/o и /l являются импульсными откликами четырех фильтров. Вот простейшие правила, позволяющие выбрать численные значения для этих векторов:

1. Нормализация: Вектор ho имеет единичную длину.

2. Ортогональность: Для любого целого числа г, удовлетворяющего неравенству 1 < г < iV/2, вектор, состоящий из первых 2г элементов /го, должен быть ортогонален вектору, составленному из последних 2г элементов того же вектора /го-

3. Вектор /о состоит из компонентов вектора /го, записанных в обратном порядке.

4. Вектор h\ является копией /о, но с обратными знаками у компонент на нечетных позициях (первой, третьей и т.д.). Формально это можно выразить как покомпонентное умножение вектора h\ на вектор (—1,1, —1,1,..., —1,1).

5. Вектор /i является копией /го, но с обратными знаками у компонент на четных позициях (второй, четвертой и т.д.). То есть, f\ равен /io, умноженному на (1, —1,1, —1,..., 1, —1).

Для фильтра с двумя отсчетами правило 1 означает, что

h20(0) + h20(l) = 1. (4.10)

Правило 2 не применимо, так как N = 2 и неравенство г < N/2 означает, что г < 1. Правила 3-5 дают соотношения

/о = (Mi),МО)), hx= (-Mi),МО)), Л = (МО),-Mi))-

Значит, все зависит от выбора чисел /io(0) и /io(l)- Однако, уравнения (4.10) не достаточно для их определения. Тем не менее видно, что значения /io(0) = /го(1) = 1/\/2 удовлетворяют этому условию. Для фильтров из четырех отсчетов правила 1 и 2 означают, что

Л§(0) + Л§(1) + Л§(2) + Л§(3) = 1, Ло(0)Ло(2) + Ло(1)МЗ) - 0, (4.11) а правила 3-5 дают соотношения

/о = (МЗ),М2),М1),М0)),

К = (-Ао(3),Ао(2),-Ао(1),Ао(0)), /i = (М0),-М1),М2),-МЗ))-

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

Для фильтра с восемью отсчетами, правила 1 и 2 приводят к уравнениям

Л8(0)+Л§(1) + /&2) + Л§(3)+А2(4) + й2(5) + Л§(6) + й2(7) = 1,

Ло(0)Ао(2) + М1)МЗ) +

+Ао(2)Ао(4) + Ао(3)Ао(5) + Ао(4)Ао(6) + h0(5)h0(7) = 0,

Ао(0)Ао(4) + Ло(1)М5) + Ао(2)Ао(6) + Ао(3)Ло(7) = 0,

Ао(0)Ао(6) + М1)М7)=0,

252 Глава 4- Вейвлетные методы

а правила 3-5 записываются в виде соотношений

/о = (Ло(7),Ао(6),Ло(5),Ло(4),Ло(3),Ло(2),Ло(1),Ло(0)),

fti = (-Ло(7),Ао(6),-Ло(5),Ло(4),-Ло(3),Ао(2),-Ло(1),Ао(0)),

/i = (Ло(0),-Ао(1),Ло(2),-Ло(3),Ло(4),-Ао(5),Ло(6),-Ло(7)).

Восемь допустимых коэффициентов приведены в табл. 4.23 (они образуют фильтр Добеши D8).

.230377813309 .714846570553 .630880767930 -.027983769417 -.187034811719 .030841381836 .032883011667 -.010597401785

Табл. 4.23. Коэффициенты фильтра Добеши с 8 отсчетами.

Для задания N коэффициентов для каждого из фильтров Н$, #ь Fo и Fi необходимо знать коэффициенты с ho(0) no ho(N — 1). Поэтому следует задать N уравнений для нахождения этих величин. Однако правила 1 и 2 дают только N/2 уравнений. Значит, необходимо добавить новые условия для однозначного определения чисел с ho(0) no ho(N — 1). Вот некоторые примеры таких условий:

Фильтр пропускания низких частот: Мы хотим, чтобы фильтр Щ пропускал только низкие частоты, поэтому имеет смысл потребовать, чтобы частотный отклик Но(ш) был равен нулю для самой высокой частоты ш = 7г.

Минимальный фильтр фазы: Это условие означает, что нули комплексной функции Hq(z) должны лежать на единичной окружности комплексной плоскости или вне ее.

Контролируемая колинеарность: Линейность фазового отклика можно контролировать с помощью нахождения минимума суммы. Другие условия обсуждаются в [Akansu, Haddad 92].