Нулевая фаза цифровой фильтрации
выполняет нулевую фазу цифровой фильтрации путем обработки входных данных, 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