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); таким образом, приходится идти на компромисс между объемом вычислений на каждой итерации и числом итераций, требуемых для снижения ошибки до допустимого значения в заданной полосе частот.
|