exponenta event banner

Внедрение банка многоскоростного фильтра

upfirdn функция изменяет частоту дискретизации сигнала на целое отношение P/Q. Он вычисляет результат каскада из трех систем, которые выполняют следующие задачи:

  • Повышающая дискретизация (вставка нуля) по целочисленному коэффициенту p

  • Фильтрация по фильтру FIR h

  • Понижение дискретизации на целочисленный коэффициент q

Например, чтобы изменить частоту дискретизации сигнала с 44,1 кГц на 48 кГц, сначала найдем наименьший коэффициент целочисленного преобразования p/q. Набор

d = gcd(48000,44100);
p = 48000/d;
q = 44100/d;

В этом примере: p = 160 и q = 147. Затем выполняется преобразование частоты выборки путем ввода

y = upfirdn(x,h,p,q)

Этот каскад операций реализуется эффективным образом с использованием методов многофазной фильтрации, и он является центральной концепцией многоскоростной фильтрации. Обратите внимание, что качество результата повторной выборки зависит от качества фильтра FIR. h.

Банки фильтров могут быть реализованы с помощью upfirdn разрешив фильтр h является матрицей с одним фильтром FIR на столбец. Вектор сигнала проходит независимо через каждый КИХ-фильтр, в результате чего получается матрица выходных сигналов.

К другим функциям, выполняющим многоскоростную фильтрацию (с фиксированным фильтром), относятся resample, interp, и decimate.