1D цифровой фильтр
y = filter(b,a,x)
y = filter(b,a,x,zi)
y = filter(b,a,x,zi,dim)
[y,zf] =
filter(___)
фильтрует входные данные y
= filter(b
,a
,x
)x
с помощью рациональной передаточной функции, заданной числителем и коэффициентами знаменателя b
и a
.
Если a(1)
не равен 1
, то filter
нормирует коэффициенты фильтра a(1)
. Поэтому a(1)
должен быть ненулевым.
Если x
является вектором, то filter
возвращает отфильтрованные данные как вектор, одного размера как x
.
Если x
является матрицей, то filter
действует по первому измерению и возвращает отфильтрованные данные для каждого столбца.
Если x
является многомерным массивом, то filter
действует вдоль первого измерения массива, размер которого не равняется 1.
Если у вас есть Signal Processing Toolbox™, используйте y = filter(d,x)
, чтобы отфильтровать входной сигнал x
с объектом digitalFilter
d
. Чтобы сгенерировать d
на основе спецификаций частотной характеристики, используйте designfilt
.
Чтобы использовать функцию filter
с коэффициентами b
от КИХ-фильтра, используйте y = filter(b,1,x)
.
Смотрите Цифровую Фильтрацию (Signal Processing Toolbox) для больше при фильтрации функций.
[1] Оппенхейм, Алан V, Рональд В. Шафер и Джон Р. Бак. Обработка сигналов дискретного времени. Верхний Сэддл-Ривер, NJ: Prentice Hall, 1999.