Главная > Обработка сигналов > Цифровые фильтры (Хемминг Р.В.)
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

Глава 1. ВВЕДЕНИЕ

1.1. Что такое цифровой фильтр?

В нашем развивающемся обществе часто приходится определять переменные величины. Примерами могут служить кровяное давление, смещение при землетрясениях, напряжение от звукового сигнала при телефонном разговоре, яркость переменной звезды, заселение города, накат волн на морской пляж и вероятность смерти. Все эти величины изменяются во времени, и мы рассматриваем их как функции времени — в математическом обозначении. Например, можно интересоваться изменениями кровяного давления от момента к моменту или из года в год. Кроме того, можно иметь дело с функциями, независимая переменная которых не является временем, например, с числом ядерных частиц в данном эксперименте как функцией их энергии.

Обычно такие переменные можно рассматривать как изменяющиеся непрерывно (аналоговые) сигналы, даже если, как в случаях заселения города или популяции колонии бактерий, измеряемое число может изменяться только на целое число единиц.

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

Предположим, что последовательность чисел представляет такой ряд равноотстоящих измерений некоторой величины в котором целое, непрерывная переменная. Обычно обозначает время, но не всегда. Используем обозначение Если последовательность вычисляется по формуле

то эта формула определяет цифровой фильтр. Коэффициенты являются константами. Таким образом, цифровой фильтр есть просто линейная комбинация равноотстоящих отсчетов некоторой функции а также вычисленных значений на выходе Для каждого следующего один за другим формула сдвигает текущую отсчетную точку вдоль потока отсчетов

В том случае, когда вторая сумма распространяется только на диапазон положительных индексов как в приведенном уравнении, это уравнение легко решается для Однако имеются не только теоретические основания для такого ограничения. Если бы мы не ограничили индекс таким образом, то все равно были бы вынуждены решать систему линейных уравнений для неизвестных Во многих ситуациях стоимость собранной информации так велика, что затраты на решение соответствующей системы линейных уравнений высокого порядка не являются серьезным вопросом (поскольку эти уравнения обычно имеют большие члены по главной диагонали). Однако за исключением разд. 11.6, мы не будем далее касаться этого вопроса.

Часто встречаются различные частные случаи этой формулы, возможно, хорошо известные большинству читателей. Фактически эти формулы настолько банальны, что книга могла бы содержать только их список. В том случае, когда все коэффициенты для равны нулю, фильтр называется нерекурсивным, в противном случае — это рекурсивный фильтр. Простым примером нерекурсивного фильтра служит широко используемое сглаживание пятерками (разд. 3.2)

Другой пример дает формула сглаживания по методу наименьших квадратов, полученная при проведении этим

методом кубической параболы через пять равноотстоящих значений с последующим использованием в качестве сглаженной величины значения параболы в средней точке. Формула для такого сглаженного значения (которое будет получено в разд. 3.3) имеет вид

Многие формулы для предсказания цен акций на бирже, равно как и других значений временных рядов, также относятся к форме нерекурсивного фильтра.

Примером рекурсивного фильтра может служить формула трапеций для численного интегрирования (разд. 3.4)

Очевидно, что рекурсивная формула способна, так сказать, запоминать все прошлые данные, так как значение в правой части уравнения используется для вычисления , следовательно,

В некоторых ситуациях значения для являются невозможными. Формулы, которые не используют эти значения, называются физически реализуемыми. Это название вводит в заблуждение и, вероятно, его следовало бы избегать при обсуждениях, так как физически нереализуемые фильтры могут программироваться на цифровых ЭВМ, когда, как правило, все данные имеются до начала вычислений. Однако для предсказания будущих значений от некоторых данных требуется уже физически реализуемый фильтр. Физически реализуемые фильтры также называются каузальными (причинными) из-за того, что в случае, когда время является независимой переменной, они реагируют на прошедшие результаты (причины) и не реагируют на будущие.

Для практических целей необходимо рассматривать только цифровые фильтры ограниченной длины. Это означает, что в таких фильтрах содержится конечное число членов, а для всех остальных коэффициенты равны нулю. Например, если все равны нулю и только конечное число не равно нулю, то мы имеем нерекурсивный фильтр ограниченной длины. Даже при таком фильтре непосредственно видно, что для последовательности

данных конечной длины мы не сможем вычислить значения, близкие к концам этой последовательности. Следовательно, здесь имеет место потеря данных в том смысле, что количество данных на выходе меньше, чем на входе. Обычная практика добавления последовательности из нулевых значений за пределами одного или обоих концов массива данных для того, чтобы можно было вычислить столько же выходных значений, сколько имеется первоначальных входных, в данном случае представляется сомнительной (см. также разд. 10.7).

Предполагается, что коэффициенты фильтра Си и представляют собой константы и не изменяются со временем. Такие фильтры, называемые инвариантными во времени, наиболее часто используются на практике. Фильтры, изменяющиеся во времени, иногда бывают полезны, но их обсуждение лежит вне сферы этой книги.

Наконец, фильтр должен быть реализован таким образом, чтобы вычисления осуществлялись с применением чисел конечной длины. Процесс квантования чисел выполняется с округлением как в коэффициентах фильтра, так и в арифметике, выполняемой машиной. Поэтому в полученных окончательных числах присутствуют ошибки округления. Часто удобнее представлять фильтр в виде бесконечного числа членов, причем так, что каждый член имеет неограниченную точность и используется абсолютно точная арифметика, однако в конце мы должны будем вернуться к реальности. Более того, выбранный путь выполнения арифметических операций может иногда значительно изменять числа, получаемые в результате вычислений. Этот вопрос более подробно мы рассмотрим - в гл. 12 и 13.

<< Предыдущий параграф Следующий параграф >>
Оглавление