Отфильтруйте входной сигнал в частотном диапазоне
DSP System Toolbox / Фильтрующий / Реализации Фильтра
Блок Frequency-Domain FIR Filter реализует частотный диапазон, быстрое преобразование Фурье (FFT) - базирующаяся фильтрация, чтобы отфильтровать входной сигнал потоковой передачи. Во временном интервале операция фильтрации включает свертку между входом и импульсной характеристикой фильтра конечной импульсной характеристики (FIR). В частотном диапазоне операция фильтрации включает умножение преобразования Фурье входа и преобразования Фурье импульсной характеристики. Фильтрация частотного диапазона становится более эффективной, чем временной интервал, фильтрующий, когда импульсная характеристика становится более длинной. Можно задать коэффициенты фильтра непосредственно в частотном диапазоне установкой Numerator domain к Frequency
.
Этот блок использует сохранение перекрытие и методы перекрытия-суммы, чтобы выполнить фильтрацию частотного диапазона. Для фильтров с долгой длиной импульсной характеристики задержка, свойственная к этим двум методам, может быть значительной. Чтобы смягчить эту задержку, блок Frequency-Domain FIR Filter делит импульсную характеристику в более короткие блоки и реализует сохранение перекрытие и методы перекрытия-суммы на этих более коротких блоках. Чтобы разделить импульсную характеристику, установите флажок Partition numerator to reduce latency. Для получения дополнительной информации об этих двух методах и при сокращении задержки посредством разделения импульсной характеристики, см. Алгоритмы.
x
— Ввод данныхВвод данных, заданный как вектор или матрица. Этот блок поддерживает входные сигналы переменного размера. Таким образом, можно изменить размер входного кадра (количество строк) даже после вызова алгоритма. Однако количество каналов (количество столбцов) должно остаться постоянным.
Этот порт без имени, пока вы не выбираете параметр Specify coefficients from input port.
Типы данных: single
| double
Поддержка комплексного числа: Да
NUM
— КИХ области времени фильтрует коэффициентыКИХ области времени фильтрует коэффициенты, заданные как вектор-строка.
Этот порт появляется, когда вы устанавливаете Numerator domain на Time
и выберите параметр Specify coefficients from input port.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Поддержка комплексного числа: Да
NUMFFT
— КИХ частотного диапазона фильтрует коэффициентыКИХ частотного диапазона фильтрует коэффициенты, заданные как вектор-строка или матрица. Когда вы очищаете параметр Partition numerator to reduce latency, содействующий вход через этот порт должен быть вектором-строкой. Длина БПФ равна длине векторного входа. Когда вы выбираете параметр Partition numerator to reduce latency, Frequency response должен быть матрицей 2P-by-N, где P является размером раздела, и N является количеством разделов.
Этот порт появляется, когда вы устанавливаете Numerator domain на Frequency
и выберите параметр Specify frequency response from input port.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Поддержка комплексного числа: Да
y
— Filtered выходФильтрованный выходной параметр, возвращенный как вектор или матрица. Размер, тип данных и сложность выхода совпадают с теми из входа.
Этот порт без имени, пока вы не выбираете параметр Output filter latency и нажимаете Apply.
Типы данных: single
| double
Поддержка комплексного числа: Да
latency
— Отфильтруйте задержкуОтфильтруйте задержку, возвращенную как скаляр. Эта задержка свойственна, чтобы наложиться - добавляют и сохраняют перекрытие методы, и не включает групповую задержку фильтра. Этот порт появляется только, когда вы устанавливаете флажок Output filter latency.
Этот порт без имени, пока вы не устанавливаете флажок Output filter latency и нажимаете Apply.
Типы данных: uint32
Frequency-domain filter method
— Фильтрация метода в частотном диапазонеOverlap-save
(значение по умолчанию) | Overlap-add
Фильтрация метода в частотном диапазоне, заданном как любой Overlap-save
или Overlap-add
. Для получения дополнительной информации об этих двух методах см. Алгоритмы
Numerator domain
— Область числителяTime
(значение по умолчанию) | Frequency
Область коэффициентов фильтра, заданных как одно из следующего:
Time
– Задайте коэффициенты фильтра временного интервала в параметре Filter coefficients или через входной порт NUM.
Frequency
– Задайте частотную характеристику фильтра в параметре Frequency response или через входной порт NUMFFT.
Specify coefficients from input port
— Отметьте, чтобы задать коэффициенты фильтра lowpassКогда вы устанавливаете этот флажок, КИХ-коэффициенты фильтра вводятся через порт, NUM. Когда вы снимаете этот флажок, коэффициенты заданы на диалоговом окне блока через параметр Filter coefficients.
Чтобы просмотреть ответ фильтра, снимите этот флажок, задайте коэффициенты на диалоговом окне блока и нажмите на кнопку View Filter Response.
Чтобы включить этот параметр, установите Numerator domain на Time
.
Filter coefficients
— отфильтруйте коэффициентыfir1(100,0.3)
(значение по умолчанию) | вектор-строкаКИХ-коэффициенты фильтра, заданные как вектор-строка.
Чтобы включить этот параметр, установите Numerator domain на Time
и очистите параметр Specify coefficients from input port.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Поддержка комплексного числа: Да
Specify frequency response from input port
— Отметьте, чтобы задать коэффициенты фильтра частотного диапазонаКогда вы устанавливаете этот флажок, КИХ-коэффициенты фильтра в частотном диапазоне вводятся через порт, NUMFFT. Когда вы снимаете этот флажок, коэффициенты заданы на диалоговом окне блока через параметр Frequency response.
Чтобы просмотреть ответ фильтра, снимите этот флажок, задайте частотную характеристику на диалоговом окне блока и нажмите на кнопку View Filter Response.
Чтобы включить этот параметр, установите Numerator domain на Frequency
.
Frequency response
— Отфильтруйте коэффициентыfft(fir1(100,0.3),202)
(значение по умолчанию) | вектор-строка | матрицаЧастотная характеристика фильтра, заданного как вектор-строка или матрица. Когда вы очищаете параметр Partition numerator to reduce latency, Frequency response должен быть вектором-строкой. Длина БПФ равна длине вектора Frequency response. Когда вы выбираете параметр Partition numerator to reduce latency, Frequency response должен быть матрицей 2P-by-N, где P является размером раздела, и N является количеством разделов.
Чтобы включить этот параметр, установите Numerator domain на Frequency
и очистите параметр Specify frequency response from input port.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Поддержка комплексного числа: Да
Partition numerator to reduce latency
— Отметьте, чтобы разделить числитель, чтобы уменьшать задержкуОтметьте, чтобы разделить числитель, чтобы уменьшать задержку, заданную как одно из следующего:
прочь – фильтр использует традиционное сохранение перекрытие или метод перекрытия-суммы. Задержка в этом случае является длиной БПФ – NumLen + 1. NumLen является длиной вектора числителя, который вы задаете в параметре Filter coefficients.
на – В этом режиме, блок делит числитель в сегменты длины, заданной параметром Numerator partition length. Фильтр выполняет, сохраняют перекрытие или накладываются - прибавляют каждый раздел, и комбинирует частичные результаты сформировать полный выход. Задержка теперь уменьшается до длины раздела.
Numerator partition length
— Длина раздела числителя
(значение по умолчанию) | положительное целое числоДлина раздела числителя, заданного как положительное целое число, меньше чем или равное длине числителя.
Этот параметр применяется только, когда вы устанавливаете Numerator domain на Time
и выберите параметр Partition numerator to reduce latency.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Time-domain numerator length
— Длина числителя временного интервала
(значение по умолчанию) | положительный скаляр с целочисленным знакомДлина числителя временного интервала, заданная как положительный скаляр с целочисленным знаком.
Этот параметр применяется только, когда вы устанавливаете Numerator domain на Frequency
и снимите флажок Partition numerator to reduce latency.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Inherit FFT length from numerator length
— Отметьте, чтобы наследовать длину БПФ от длины числителяКогда вы устанавливаете этот флажок, длина БПФ равняется дважды длине числителя. Когда вы снимаете этот флажок, вы задаете длину БПФ через параметр FFT length.
Этот параметр применяется только, когда вы устанавливаете Numerator domain на Time
и очистите параметр Partition numerator to reduce latency.
FFT length
— Длина БПФ
(значение по умолчанию) | положительное целое числоДлина БПФ, которую вы задаете, должна быть больше или быть равна длине вектора числителя, который вы задаете в параметре Filter coefficients.
Этот параметр применяется, когда вы устанавливаете Numerator domain на Time
, очистите Partition numerator to reduce latency и параметры Inherit FFT length from numerator length.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Filter is real
— Отметьте, чтобы задать, действителен ли фильтрtrue
(значение по умолчанию) | false
Отметьте, чтобы задать, действителен ли фильтр, задан как true
или false
.
Этот параметр применяется когда Numerator domain к Frequency
.
Output filter latency
— Отметьте, чтобы вывести задержку фильтра'off'
(значение по умолчанию) | 'on'
Когда вы устанавливаете этот флажок и нажимаете Apply, блок выводит задержку фильтра через порт latency.
View Filter Response
— Визуализируйте частотную характеристику КИХ-фильтраbutton
Открывает Инструмент Визуализации Фильтра (FVTool) и отображает величину/фазовый отклик КИХ-фильтра. Ответ основан на диалоговых параметрах блока. Изменения, внесенные в эти параметры, обновляют FVTool.
Чтобы обновить ответ величины, в то время как FVTool запускается, измените диалоговые параметры блока и нажмите Apply.
Просмотреть ответ фильтра, когда Numerator domain установлен в Time
, снимите флажок Specify coefficients from input port. Просмотреть ответ фильтра, когда Numerator domain установлен в Frequency
, снимите флажок Specify frequency response from input port.
Simulate using
— Тип симуляции, чтобы запуститьсяCode generation
(значение по умолчанию) | Interpreted execution
Code generation
— Симулируйте модель с помощью сгенерированного кода C. В первый раз, когда вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С снова используется для последующих симуляций, пока модель не изменяется. Эта опция требует дополнительного времени запуска, но обеспечивает более быструю скорость симуляции, чем Interpreted execution
.
Interpreted execution
— Симулируйте модель с помощью интерпретатора MATLAB®. Эта опция сокращает время запуска, но имеет более медленную скорость симуляции, чем Code generation
.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Сохраните перекрытие и наложитесь - добавляют, два частотных диапазона основанные на БПФ методы фильтрации этот алгоритм использование.
Метод сохранения перекрытие реализован с помощью следующего подхода:
Входной поток разделен в перекрывающиеся блоки размера FFTLen с фактором перекрытия NumLen – 1 выборка. FFTLen является длиной БПФ, и NumLen является длиной КИХ-числителя фильтра. БПФ каждого блока входных выборок вычисляется и умножается с БПФ длины-FFTLen КИХ-числителя. Обратное быстрое преобразование Фурье (IFFT) результата выполняется, и последний FFTLen – NumLen +, 1 выборка сохранена. Остающиеся выборки пропущены.
Задержкой сохранения перекрытие является FFTLen – NumLen + 1. Первый FFTLen – NumLen + 1 выборка равен нулю. Отфильтрованное значение первой входной выборки появляется как FFTLen - NumLen + 2 выборка выхода.
Обратите внимание на то, что длина БПФ должна быть больше, чем длина числителя и обычно устанавливается в значение, намного больше, чем NumLen.
Метод перекрытия-суммы реализован с помощью следующего подхода:
Входной поток разделен в блоки длины FFLen – NumLen + 1 без перекрытия между последовательными блоками. Подобно сохранению перекрытие БПФ блока вычисляется и умножается на БПФ КИХ-числителя. ОБПФ результата затем вычисляется. Первый NumLen + 1 выборка изменяется путем добавления значений последнего NumLen + 1 выборка от предыдущего вычисленного ОБПФ.
Задержка перекрытия - добавляет, FFTLen – NumLen + 1. Первый FFTLen – NumLen + 1 выборка равен нулю. Отфильтрованное значение первой входной выборки появляется как FFTLen - NumLen + 2 выборка выхода.
С длиной БПФ, которая является дважды длиной КИХ-числителя, задержка примерно равняется длине КИХ-числителя. Если импульсная характеристика очень длинна, задержка становится значительно большой. Однако КИХ-фильтрация частотного диапазона еще быстрее, чем фильтрация временного интервала. Чтобы смягчить задержку и сделать частотный диапазон, фильтрующий еще более эффективный, алгоритм делит импульсную характеристику в несколько коротких блоков и выполняет, сохраняют перекрытие или накладываются - прибавляют каждый блок. Результаты различных блоков затем объединены, чтобы получить окончательный результат. Задержка этого подхода имеет порядок длины блока, а не целую длину импульсной характеристики. Эта уменьшаемая задержка прибывает за счет дополнительного расчета. Для получения дополнительной информации см. [1].
[1] Stockham, T. G. "Скоростная свертка младшая и корреляция". Продолжения 1 966 компьютерных конференций по соединению Spring, AFIPS, 28 (1966): 229–233.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.