Нулевая фаза цифровой фильтрации
выполняет нулевую фазу цифровой фильтрации путем обработки входных данных, y
= filtfilt(b
,a
,x
)x
, как в прямом, так и в обратном направлениях. После фильтрации данных в прямом направлении, filtfilt
отменяет отфильтрованную последовательность и выполняет ее обратно через фильтр. Результат имеет следующие характеристики:
Искажение нулевой фазы.
Передаточная функция фильтра, равная квадратной величине исходной передаточной функции фильтра.
Порядок фильтра, который вдвое превышает порядок фильтра, заданный b
и a
.
filtfilt
минимизирует начальный и конечный переходные процессы путем согласования начальных условий. Не используйте filtfilt
с дифференцирующими и КИХ-фильтрами Гильберта, потому что работа этих фильтров в большой степени зависит от их фазовой характеристики.
нулевая фаза фильтрует входные данные, y
= filtfilt(d
,x
)x
, используя цифровой фильтр, d
. Использовать designfilt
чтобы сгенерировать d
на основе спецификаций частотной характеристики.
[1] Gustafsson, F. «Определение начальных состояний в обратной фильтрации». IEEE® Транзакции по обработке сигналов. Том 44, апрель 1996 года, стр. 988-992.
[2] Митра, Санджит К. Цифровая обработка сигналов. 2nd Ed. New York: McGraw-Hill, 2001.
[3] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Обработка сигнала в дискретном времени. 2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.
designfilt
| digitalFilter
| fftfilt
| filter
| filter2