5.2.2. Обобщения итерационной схемы
Пожалуй, самым неприятным ограничением итерационной схемы, описанной в предыдущем разделе, является существование устойчивых БИХ-фильтров, не удовлетворяющих условию сходимости (5.22). Такие фильтры нельзя реализовать с помощью итерационных вычислений. В этом разделе мы обсудим некоторые обобщения, позволяющие выполнять итерационную реализацию любого устойчивого БИХ-фильтра.
Для упрощения выкладок рассмотрим частный случай, когда полином-знаменатель
является чисто вещественной и строго положительной функцией
. (5.30)
Требуемый частотный отклик БИХ-фильтра можно записать следующим образом:
, (5.31)
где константа
- параметры, которые требуется определить. Теперь можно переопределить
в виде
. (5.32)
Как и выше, построим итерационное выражение для нахождения частотного отклика 
. (5.33)
Условие сходимости
остается без изменения, однако теперь функция
содержит свободный параметр
. Поскольку мы приняли, что функция
строго положительна, то получается, что
для положительных значений
. Для выполнения условия сходимости остается потребовать, чтобы выполнялось условие
. Этого можно добиться, выбирая константу
в интервале
. (5.34)
В результате обеспечивается выполнение условия
. Случай, когда функция
вещественна и положительна, имеет определенную практическую ценность, поскольку он включает в себя некоторые симметричные двумерные БИХ-фильтры, используемые в обработке изображений.
В более общем случае
представляет собой комплексную тригонометрическую полиномиальную функцию, которая для устойчивого двумерного БИХ-фильтра удовлетворяет условию
. (5.35)
Для этого общего случая отклик
можно записать в виде
. (5.36)
Здесь в знаменателе стоит вещественная и положительная функция
, что дает возможность повторить приведенные выше выкладки. Переопределив функцию 
, (5.37)
получим новое итерационное выражение:
. (5.38)
Как и ранее, функция
должна удовлетворять условию сходимости
. Это обеспечивается выбором константы
в интервале
. (5.39)
Итерационное выражение (5.38) позволяет реализовать любой устойчивый двумерный рациональный частотный отклик и, кроме того, обладает еще некоторыми интересными свойствами. Например, легко показать, что фаза спектра сходится к нужному значению после первой же итерации. Это можно выразить следующим образом:
для
(5.40)
с учетом
.
Этот интересный факт объясняется тем, что фаза
совпадает с фазой
. Поэтому
(5.41)
Последующие итерации лишь уточняют амплитуду спектра.
Итерационное выражение (5.38) обладает большей общностью по сравнению с более простым выражением (5.17) в том смысле, что позволяет реализовывать более широкий класс частотных откликов. С другой стороны, оно требует большего объема вычислений. Входной сигнал
должен подвергаться фильтрации последовательно соединенными фильтрами
и
, а не одним фильтром
. КИХ-фильтр, соответствующий функции
, также оказывается более сложным, он требует примерно вдвое больше вычислений по сравнению с реализацией прямой сверткой.
Переопределение функции
, не изменило соотношение между ошибкой
и функцией
. Повторим для удобства это соотношение:
. (5.42)
Если в какой-то полосе частот функция
близка к нулю, то ошибка
в этой полосе частот будет быстро приближаться к нулю по мере увеличения номера итерации. Наоборот, если для некоторой спектральной области функция
близка к 1, то ошибка в этой области будет оставаться значительной даже после нескольких итераций.
Иногда желательно иметь возможность перераспределять ошибки в частотной плоскости, например, для того, чтобы распределить их более равномерно по всей полосе частот или, наоборот, чтобы уменьшить ошибки в пределах более важной полосы частот за счет относительно менее важной полосы. Этого можно добиться с помощью еще одного обобщения. Вместо множителя
в выражениях (5.36) и (5.37) можно использовать более общую частотно-зависимую функцию релаксации
. Тогда можно записать
(5.43)
и снова переопределить функцию
следующим образом:
. (5.44)
Тогда итерационное выражение примет вид
. (5.45)
Теперь следует так выбрать
, чтобы в важной для нас полосе частот выполнялось условие
. [Теоретически можно было бы выбрать функцию
и ограничиться одной итерацией, но реализовать
непосредственно невозможно.] Из практических соображений мы ограничиваемся функциями
, которые являются частотными откликами КИХ-фильтров. Расширив пространственную протяженность обратного преобразования Фурье функции
, можно принудительно уменьшить
. Однако чем больше пространственная протяженность, тем больше объем вычислений на каждой итерации выражения (5.45); таким образом, приходится идти на компромисс между объемом вычислений на каждой итерации и числом итераций, требуемых для снижения ошибки
до допустимого значения в заданной полосе частот.