3.5.2. Параллельные КИХ-фильтрыДва КИХ-фильтра с импульсными откликами и , соединенные параллельно, эквивалентны одному фильтру с импульсным откликом . (3.64) Легко видеть, что справедливо и обратное: любой фильтр с импульсным откликом можно представить в виде параллельного соединения фильтров с импульсными откликами и . В общем случае естественно ожидать, что опорная область для будет объединением опорных областей для и , однако она может быть и меньше, если два фильтра и гасят друг друга. К сожалению, такое разложение редко приводит к сокращению объема вычислений; фактически объем вычислений может увеличиться. Однако сокращения объема вычислений можно добиться, если наложить на и некоторые ограничения, например если потребовать, чтобы и были разделимыми фильтрами. Разделимые фильтры отличаются высокой эффективностью реализации, но с их помощью можно точно аппроксимировать только разделимые импульсные отклики. Однако при параллельном соединении двух разделимых фильтров образуется неразделимый фильтр. Это дает возможность аппроксимации неразделимых переходных характеристик с помощью легко реализуемых фильтров. Эта идея была первоначально предложена Трейтелем и Шэнксом [14], которые назвали такие фильтры многоступенчатыми разделимыми фильтрами. Напомним (гл. 1), что разделимый фильтр - это такой фильтр, импульсный отклик которого можно представить в виде произведения функций горизонтальных и вертикальных индексов. Так, функция (3.65) является импульсным откликом разделимой системы. Частотный отклик такого фильтра равен прямому произведению двух одномерных частотных откликов: . (3.66) Этот фильтр можно реализовать путем свертки каждой строки входной последовательности с , а затем каждого столбца результата с . Если импульсный отклик содержит отсчетов, соответствующих -точечной последовательности и -точечной последовательности , то вычисление каждого выходного отсчета потребует операций умножения и сложения для вычисления сверток столбцов. Общее число операций намного меньше числа операций , которые потребовались бы, если бы не была разделимой функцией. В качестве обобщения рассмотрим фильтр, представляющий собой параллельное соединение нескольких разделимых фильтров, как это показано на рис. 3.9. Импульсный отклик такого фильтра имеет виду , (3.67) а частотный отклик - вид , (3.68) где - число разделимых фильтров, объединяемых таким образом. Если каждая последовательность имеет длину точек, а каждая последовательность - точек, то вычисление одного выходного отсчета потребует операций умножения и сложения. Такие фильтры дают экономию при реализации, если при прочих равных условиях . (3.69) Разделимым фильтрам соответствует частный случай . Рис. 3.9. Многоступенчатый разделимый КИХ-фильтр с разделимыми ступенями. Задача синтеза заключается в нахождении таких , для , чтобы отклик фильтра аппроксимировал идеальный отклик при умеренных значениях (если становится сравнимым с или , реализация неэффективна). Трейтель и Шэнкс выполняли аппроксимацию в пространственной области; другими словами, они аппроксимировали -точечный требуемый импульсный отклик откликом вида (3.67). Рассматриваемая аппроксимация сводится к разложению по собственным векторам. Предположив (без потери общности), что и что столбцы линейно независимы, мы можем записать , (3.70) где - собственные значения (вещественные и положительные) матрицы . (3.71) Последовательности представляют собой нормированные собственные вектор-строки, соответствующие , а - нормализованные собственные вектор-столбцы матрицы . (3.72) Матрица размером имеет , собственных значений. Матрица размером имеет собственных значений, из которых только - ненулевые. Ненулевые собственные значения равны собственным значениям матрицы . Собственная вектор-строка из и собственный вектор-столбец из , которые принадлежат одному и тому же собственному значению, объединены в (3.70) в пару. При реализации фильтра для некоторого уменьшения числа арифметических операций коэффициенты можно отнести к или . Указанное разложение будет точным, если , но в этом случае отсутствует выигрыш в числе операций. Пусть собственные значения записаны в порядке убывания, так что является наибольшим, и . Все повторяющиеся собственные значения должны быть записаны отдельно. Если - сумма квадратов элементов , a - сумма квадратов элементов множества, определяющего ошибку и образованного как разность между требуемым откликом и откликом, получаемым при аппроксимации фильтра -ветвями, то нормированная ошибка описывается формулой . (3.73) Имеется несколько возможностей обобщения этого результата. Можно рассмотреть разложения, в которых не все и имеют одну длину или для определения свободных параметров фильтра используются критерии ошибки в частотной области. Можно также распространить эту методику на синтез многоступенчатых разделимых БИХ-фильтров. Насколько известно авторам, эти возможности пока не реализованы. Пример 1 В качестве очень простого примера рассмотрим двумерный отклик вида ; ; ; , (3.74) который можно записать в форме матрицы . (3.75) Построим разделимую аппроксимацию этого фильтра. Соответствующие матрицы и имеют вид , . (3.76) Собственные значения , должны удовлетворять одному из двух уравнений или . (3.77) Отсюда и . Собственные вектор-строки и вектор-столбцы удовлетворяют соотношениям , (3.78а) , (3.78б) , (3.78в) . (3.78г) Решая эти уравнения при условии, что собственные векторы нормализованы и имеют единичную длину, получим , (3.79а) , (3.79б) , (3.79в) . (3.79г) Аппроксимируя затем функцией , получим коэффициенты разделимого фильтра (3.80) с нормированной ошибкой . (3.81) Прибавление даст точную реализацию заданного отклика. Аппроксимация -точечного разделимого фильтра не дает выигрыша в количестве требуемых арифметических операций. Однако фильтры большего порядка не поддаются ручному расчету.
|