Определите, является ли каждое значение входного сигнала локальным минимумом или максимумом
Операции сигнала
dspsigops
Блок Peak Finder считает количество локальных экстремальных значений в каждом столбце входного сигнала с действительным знаком. Блок выводит количество локальных экстремальных значений в порте Cnt. Можно также сконфигурировать блок, чтобы вывести экстремальные индексы, экстремальные значения и бинарный индикатор того, является ли экстремальное значение максимумами или минимумами.
Чтобы квалифицировать как экстремальное значение, точка должна быть больше (или меньшей), чем обе из ее соседних точек. Таким образом конечные точки никогда не рассматриваются экстремальным значением.
Если вы устанавливаете флажок Output peak indices, порт Idx появляется на блоке. Блок выводит экстремальные индексы в порте Idx. Если Index base установлен в Zero
, блок выходные параметры основанные на нуле экстремальные индексы. Если Index base установлен в One
, блок выходные параметры экстремальные индексы на основе один.
Если вы устанавливаете флажок Output peak values, порт Val появляется на блоке. Блок выводит экстремальные значения в порте Val. Если вы устанавливаете любой из этих флажков и устанавливаете Peak type(s) на Maxima and Minima
, порт Pol также появляется на блоке. Если значение сигналов является максимумом, блок выводит 1 в Политике ("Полярность") порт. Если значение сигналов является минимумом, блок выводит 0 в порте Pol.
Используйте параметр Maximum number of peaks to find, чтобы задать сколько экстремального значения, чтобы искать в каждом входном сигнале. Блок прекращает искать входной сигнал, если это максимальное количество экстремального значения было найдено.
Если вы устанавливаете флажок Ignore peaks within threshold of neighboring values, блок больше не обнаруживает peaks низкой амплитуды. Эта функция позволяет блоку игнорировать шум в пороговом значении, которое вы задаете. Введите пороговое значение для параметра Threshold. Теперь текущее значение является максимумом если (текущий – предыдущий)> порог и (текущий – затем)> порог. Текущее значение является минимумом если (текущий – предыдущий) <-порогом и (текущий – затем) <-порог.
Рассмотрите входной вектор
[9 6 10 3 4 5 0 12]
Приведенная ниже таблица показывает анализ, сделанный блоком Peak Finder. Обратите внимание на то, что первые и последние значения входного сигнала не рассматриваются:
Предыдущие, текущие, и следующие значения | 9 6 10 | 6 10 3 | 10 3 4 | 3 4 5 | 4 5 0 | 5 0 12 |
Текущее значение, если это - экстремум | 6 | 10 | 3 | — | 5 | 0 |
Индекс текущего значения, если это - экстремум | 1 | 2 | 3 | — | 5 | 6 |
Полярность текущего значения, если это - экстремум | 0 | 1 | 0 | — | 1 | 0 |
В данном примере выходные параметры в портах блока:
Cnt: 5
Idx : [1 2 3 5 6]
Val: [6 10 3 5 0]
Политик: [0 1 0 1 0]
Параметр Overflow mode может влиять на выход блока, когда вход является фиксированной точкой. Рассмотрите следующую модель:
В этой модели настройки в блоке Constant:
Constant value — [-1 0.5 -1]
Interpret vector parameters as 1–D — не выбранный
Sampling mode — Sample based
Размер шага 1
Output data type — <data type expression>
Режим Fixed point
Знак Signed
Масштабирование Binary point
Word length — 16
Fraction length — 15
Настройки в Пиковых блоках Средства поиска:
Peak type(s) — Maxima
Output peak indices — не выбранный
Output peak values — выбранный
Maximum number of peaks to find — 2
Ignore peaks within threshold of neighboring values — выбранный
'Порог' 0.25
Overflow mode — Wrap
поскольку пиковое средство поиска переносится, Saturate
поскольку пиковое средство поиска насыщает
Установка параметра Overflow mode блока Peak Finder Wrap к Wrap
заставляет вычисления (текущий – предыдущий)> порог и (текущий – затем)> порог переноситься на переполнении, таким образом, заставляя максимум быть пропущенным.
Задайте, ищете ли вы максимумы, минимумы или обоих.
Задайте основу экстремальных индексов как также:
Zero
(значение по умолчанию) – Первый индекс запускается с 0. Например, рассмотрите входной вектор [-1.5, 0.5, 0]. Пиковое значение этого вектора 0.5, и индекс этого пикового значения равняется 1.
One
– В этой установке первый индекс запускается с 1. Индекс пикового значения в [-1.5, 0.5, 0] равняется 2.
Установите этот флажок, если вы хотите, чтобы блок вывел экстремальные индексы в порте Idx.
Установите этот флажок, если вы хотите, чтобы блок вывел экстремальные значения в порте Val.
Введите номер экстремального значения, чтобы искать в каждом входном сигнале. Блок прекращает искать входной сигнал экстремальное значение, если максимальное количество экстремального значения было найдено. Значение этого параметра должно быть целым числом, больше, чем или равный одному.
Установите этот флажок, если вы хотите устранить обнаружение peaks, амплитуды которого в заданном пороге соседних значений.
Введите свое пороговое значение. Этот параметр появляется, если вы устанавливаете флажок Ignore peaks within threshold of neighboring values.
Когда вы устанавливаете флажок Ignore peaks within threshold of neighboring values, раздел Fixed-point operational parameters появляется.
Когда вы выбираете этот параметр, блок насыщает результат своей операции фиксированной точки. Когда вы очищаете этот параметр, блок переносит результат своей операции фиксированной точки. Для получения дополнительной информации на saturate
и wrap
, смотрите режим переполнения для операций фиксированной точки.
Порт | Поддерживаемые типы данных |
---|---|
Входной параметр |
|
Cnt |
|
Idx |
|
Val |
|
Политик |
|