Реализуйте метод фильтрации частотного диапазона с перекрытием-сохранением
Реализация фильтрации/фильтрации
dsparch4
Примечание
Блок Overlap-Save FFT Filter был заменен блоком Frequency-Domain FIR Filter. Существующие образцы блока Overlap-Save FFT Filter продолжают запускаться.
Блок Overlap-Save БПФ Filter использует БПФ для реализации метода overlap-save, метода, который объединяет последовательные частотные диапазоны отфильтрованные разделы входа последовательности.
Блок принимает векторные или матричные входы и обрабатывает каждый столбец входа как отдельный канал. Блок распаковывает входные данные в векторы-строки так, что длина выходного вектора равна количеству каналов во входе. Скорость вывода данных блока в M раза быстрее, чем его скорость ввода данных, где M - длина столбцов на входе (формат кадра).
Перекрывающиеся участки входа u
свертки с коэффициентами конечной импульсной характеристики
Коэффициенты числителя для H (z) заданы как вектор параметром FIR coefficients. Вектор коэффициентов, b = [b(1) b(2) ... b(n+1)]
, может быть сгенерирована одной из функций создания фильтра в продукте Signal Processing Toolbox™, таком как fir1
. Все состояния фильтра внутренне инициализированы в нуль.
Когда коэффициенты фильтра или входы в блок комплексны, параметр Output должен быть установлен на Complex
. В противном случае значение по умолчанию Output setting, Real
, инструктирует блок, чтобы взять только реальную часть решения.
Круговая свертка каждой секции вычисляется путем умножения БПФ входной секции и коэффициентов фильтрации и вычисления обратной БПФ продукта.
y = ifft(fft(u(i:i+(L-1)),nfft) .* fft(b,nfft))
где вы задаете nfft
в параметре FFT size как степени как степени двойки значения больше (обычно намного больше), чем n+1
. Значения для FFT size, которые не являются степенями двойки, округлены вверх до ближайшего значения степени два, чтобы получить nfft
.
Первый n
точки круговой свертки являются недопустимыми и отбрасываются. Блок Overlap-Save FFT Filter выводит оставшиеся nfft-n
точки, которые эквивалентны линейной свертке.
В однозадачной операции блок Overlap-Save FFT Filter имеет задержку nfft-n+1
выборки. Первый nfft-n+1
последовательные выходы блока равны нулю; первое отфильтрованное входное значение появляется на выходе в виде выборки nfft-n+2
.
В многозадачной операции блок Overlap-Save FFT Filter имеет задержку 2*(nfft-n+1)
выборки. Первый 2*(nfft-n+1)
последовательные выходы блока равны нулю; первое отфильтрованное входное значение появляется на выходе в виде выборки 2*(nfft-n)+3
.
Примечание
Для получения дополнительной информации о задержках и Simulink® режимы задачи окружения, см. Избыточная алгоритмическая задержка (задержка задачи) и основанное на времени планирование и генерация кода (Simulink Coder).
Размер БПФ, который должен быть степенью на два значения больше длины заданного КИХ-фильтра.
Коэффициенты числителя фильтров.
Сложность выходов; Real
или Complex
. Когда входной сигнал или коэффициенты фильтра комплексны, это должно быть установлено на Complex
.
Oppenheim, A. V. and R. W. Schafer. Обработка сигнала в дискретном времени. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1989.
Проакис, Дж. и Д. Манолакис. Цифровая обработка сигналов. 3-й эд. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1996.
Плавающая точка двойной точности
Плавающая точка с одной точностью
Overlap-Add FFT Filter | DSP System Toolbox |