5.6.2. Синтез фильтров с разделимым знаменателем
Разделимые фильтры, представляя
собой прямое произведение двух одномерных фильтров, обладают рядом достоинств,
проявляющихся как при синтезе, так и при реализации. В работах [13, 29] был
предложен интересный компромиссный подход, в котором используется комбинация
неразделимого полинома-числителя с разделимым полиномом-знаменателем. Это
сохраняет значительную долю гибкости синтеза неразделимых систем и в то же
время обеспечивает преимущества реализации, присущие разделимым БИХ-фильтрам.
Частотный отклик двумерного
фильтра с разделимым знаменателем имеет вид
. (5.158)
Мы
можем рассматривать отклик
как отклик каскада, состоящего из
двумерного неразделимого КИХ-фильтра
и двумерного разделимого БИХ-фильтра
без нулей.
Поскольку по мере увеличения числа свободных параметров
может аппроксимировать
требуемый частотный отклик сколь угодно точно, то и отклик
можно использовать для сколь
угодно точной аппроксимации
. Введение члена
можно рассматривать как
попытку улучшения аппроксимации способом, влекущим за собой более эффективную с
вычислительной точки зрения реализацию, чем просто увеличение числа свободных
параметров многочлена
.
Фильтры с разделимым знаменателем
обладают с точки зрения их реализации некоторыми преимуществами. Если
пренебречь числителем, который можно реализовать отдельно в виде КИХ-фильтра,
то оставшаяся часть фильтра представляет собой разделимый фильтр с частотным
откликом в виде
.
Реализацию этой части фильтра можно выполнить с помощью набора одномерных
сверток (реализуемых разностным уравнением), выполняемых над строками входного
сигнала, за которым следует другой набор одномерных сверток над столбцами
результирующего сигнала. Полная реализация фильтра с разделимым знаменателем,
как показано на рис. 5.27, имеет вид
, (5.159а)
, (5.159б)
. (5.159в)
Рис. 5.27. Каскадная реализация
фильтра
с
разделимым знаменателем.
Выражение
(5.159а) представляет собой реализацию отклика знаменателя
. Хотя оно записано в форме
непосредственной свертки, здесь можно использовать любой подходящий алгоритм
реализации КИХ-фильтров (гл. 3). Выражение (5.159б) описывает набор одномерных
операций фильтрации по строкам, а выражение (5.159в) - одномерных операций
фильтрации по столбцам. С целью повышения производительности одномерные
операции фильтрации в каждом наборе можно выполнять параллельно, используя
многопроцессорную систему.
Поскольку выражения (5.159) и
рис. 5.27 описывают схему, которую можно рассматривать как каскад из трех
фильтров, порядок следования этих фильтров можно изменить, не изменяя
результирующий частотный отклик. Предпочесть какой-то один порядок другим могут
заставить практические соображения, например снижение шума округления.
Частотный отклик фильтра с
разделимым знаменателем, выраженный через параметры фильтра
, имеет вид
, (5.160)
где
.
Естественно, полином-знаменатель можно представить в виде произведения двух
одномерных полиномов, однако запись, использованная в выражении (5.160),
удобнее в дальнейших рассуждениях. Поскольку знаменатель должен быть
разделимым, число свободных параметров знаменателя, определяемых при проектировании,
уменьшается от
до
. С другой
стороны, задача синтеза становится более нелинейной вследствие того, что
перемножаются свободные параметры
в выражении (5.160). Поэтому алгоритм
оптимизации потребует решения задачи минимизации с меньшим числом параметров,
но более нелинейной.
Шоу и Мерсеро [13] разработали
метод синтеза фильтров с разделимым знаменателем, в котором минимизируется
ошибка
в
пространственной области. Их алгоритм проектирования является вариантом
итерационного метода с предварительной фильтрацией (разд. 5.4.3),
видоизмененного так, чтобы учесть дополнительную нелинейность, внесенную
разделимым знаменателем. Вспомним, что в соответствии с итерационным методом
проектирования с предварительной фильтрацией мы стремимся минимизировать ошибку
в пространственной области
, где (5.161)
. (5.162)
Последовательность
получается
в результате обратного преобразования Фурье функции
. В случае разделимого
знаменателя
,
так что
и
. Для
упрощения рассуждений примем, что входной сигнал
представляет собой двумерную
дельта-функцию. Тогда выражение (5.162) преобразуется следующим образом:
. (5.163)
Если
предположить, как в разд. 5.4.3, что
и
- константы, то частные производные от
по коэффициентам
числителя
будут
иметь вид
, (5.164)
а
частные производные по коэффициентам знаменателя - вид
, (5.165а)
. (5.165б)
Поскольку
и
зависят от
и
соответственно, то
уравнения, полученные дифференцированием
и приравниванием нулю полученных
производных, будут по-прежнему нелинейными. Шоу и Мерсеро [13] устраняют эту
проблему, используя для вычисления частных производных в выражениях (5.165)
значения
,
полученные на предыдущей итерации. Последовательности
и
также вычисляются с помощью
предыдущих значений
путем одномерных итераций
, (5.166a)
. (5.166б)
Как уже отмечалось в разд. 5.4.3,
вычисление частных производных в предположении, что
или, в нашем случае,
,
- константы, приводит к тому,
что градиент ошибки отличен от нуля. Как и в случае неразделимого фильтра,
после того, как первичные итерации закончены, можно перейти к этапу вторичных
итераций. На этом этапе частные производные в выражениях (5.165) заменяются на
, (5.167а)
, (5.167б)
где
-
результат обратного преобразования Фурье функции
, (5.168а)
a
-
результат обратного преобразования Фурье функции
. (5.168б)
Ввиду разделимости
полинома-знаменателя проверка устойчивости фильтра выполняется просто путем
проверки устойчивости двух одномерных БИХ-фильтров
и
.
Пример 2
[13]
Для аппроксимации КИХ-фильтра
нижних частот из примера 1 в конце разд. 5.4.3 был спроектирован квадрантный
фильтр с симметричным разделимым полиномом-знаменателем
. Числитель одноквадрантного
фильтра имел 25 независимых параметров, а знаменатель был ограничен четырьмя независимыми
параметрами. После 13 первичных итераций ошибка составляла
; после трех первичных
итераций и восьми вторичных - немного менее
. Было высказано предположение, что
ошибка отличается столь незначительно из-за того, что из 29 параметров лишь на
четыре повлияло использование выражений (5.165) вместо (5.167) [13]. Полный
четырехквадрантный частотный отклик имел пульсации полосы пропускания 0,0034,
пульсации полосы непропускания 0,021, а ширину переходной полосы
.