ROI Selector

Выберите видимую область (ROI) из пиксельного потока

  • Библиотека:
  • Vision HDL Toolbox / Утилиты

  • ROI Selector block

Описание

Блок ROI Selector выбирает фрагмент активной системы координат от видеопотока. Размер неактивной системы координат остается то же самое. Сигналы элемента управления выводом указывают на новую активную область системы координат. Можно использовать этот блок со скаляром, мультипикселем или многокомпонентным мультипикселем пиксельным потоком. Эта схема отображает неактивные пиксельные области синим и требуемую выходную область, обрисованную в общих чертах в оранжевом.

Specified region of the input frame returned as a pixel stream with pixels outside of the region marked as inactive.

Можно задать фиксированный размер и местоположение для ROI, или можно выбрать местоположение области динамически при помощи входного порта. Можно выбрать больше чем одну область. Задайте каждую область путем определения ее координат верхнего левого угла и размерностей. По умолчанию блок возвращает один набор пикселей и управляющих сигналов для каждой области, которую вы задаете. Блок устанавливает неактивные пиксели в выходной системе координат обнулять.

Области независимы друг от друга, таким образом, они могут перекрыться. Если вы задаете область, которая включает ребро активной системы координат, блок возвращает только активный фрагмент области. Эта схема показывает выходные системы координат для трех требуемых областей. Вторая выходная область не включает неактивную область выше изображения.

Three regions (one partially falling outside of the active frame, and one overlapping another), returned as three pixel streams.

Блок также обеспечивает режим для вертикального повторного использования. В этом режиме необходимо задать области, которые не имеют никакого вертикального перекрытия и выравниваются в столбцах. Каждый столбец областей совместно использует один поток выходного пикселя. Управляющие сигналы задают каждую область в потоке. Это расположение включает параллельную обработку каждого столбца и повторное использование нисходящей логики обработки для каждой области в столбце. Чтобы использовать этот режим, выберите параметр Reuse output ports for vertically aligned regions. Используйте visionhdlframetoregions функционируйте, чтобы разделить систему координат на мозаичные области для вертикального повторного использования.

Eight tiled regions returned as two output pixel streams that each contain four vertically-aligned regions.

Порты

Это изображение показывает дополнительные порты на блоке, когда вы конфигурируете три необходимых области от входных портов.

ROI Selector block with optional ports.

Этот блок использует пиксельный интерфейс потоковой передачи с шиной для сигналов управления кадром. Этот интерфейс позволяет блоку действовать независимо от размера изображения и формата. Порты pixel на этом блоке поддерживают одну пиксельную потоковую передачу или мультипиксельную потоковую передачу. Одна пиксельная потоковая передача принимает и возвращает одно пиксельное значение каждый такт. Мультипиксельная потоковая передача принимает и возвращает 4 или 8 пикселей за такт, чтобы поддержать высокую частоту кадров или форматы с высоким разрешением. Наряду с пикселем, блок принимает и возвращает pixelcontrol соедините шиной, который содержит пять управляющих сигналов. Управляющие сигналы указывают на валидность каждого пикселя и их местоположения в системе координат. Для мультипиксельной потоковой передачи один набор управляющих сигналов применяется ко всем четырем или восьми пикселям в векторе. Чтобы преобразовать систему координат (пиксельная матрица) в последовательный пиксельный поток и управляющие сигналы, используйте блок Frame To Pixels. Для полного описания интерфейса смотрите Пиксельный Интерфейс Потоковой передачи.

Этот блок также поддерживает многокомпонентные мультипикселем потоки, где пиксельный вход является матрицей значений M на n, где M является количеством пикселей, и N является количеством компонентов. Эти значения соответствуют Number of pixels и параметрам Number of components блока Frame To Pixels.

Входной параметр

развернуть все

Для скалярных пиксельных потоков задайте pixel как скаляр или вектор из 1 Number of components значениями. Для мультипиксельных потоков задайте pixel как матрицу Number of pixels-by-Number of components значения интенсивности пикселей.

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Типы данных: fixed point | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | double | single

pixelcontrol шина содержит пять сигналов. Сигналы описывают валидность пикселя и его местоположения в системе координат. Для получения дополнительной информации смотрите Пиксельную Шину управления.

Для мультипиксельной потоковой передачи каждый вектор из пиксельных значений имеет один набор управляющих сигналов. Поскольку вектор имеет только один valid сигнал, пиксели в векторе должны быть или всеми допустимыми или всеми недопустимыми. hStart и vStart сигналы применяются к пикселю с самым низким индексом в векторе. hEnd и vEnd сигналы применяются к пикселю с самым высоким индексом в векторе.

Типы данных: bus

Необходимая область в виде вектора-строки из четырех положительных целых чисел, которые задают координаты верхнего левого угла и размерности каждой желаемой выходной системы координат. Вектор должен иметь форму [hPos vPos hSize vSize] . Блок имеет порты области R, где R является значением параметров Number of regions.

Поскольку мультипиксель, передающий области потоком, должен удовлетворить этим условиям, где M является Number of pixels.

  • mod(hPos, M) = 1 — Например, если ваш пиксельный поток имеет четыре пикселя за цикл, 129 допустимое значение hPos (mod(129,4) = 1), в то время как 128 недопустимо (mod(128,4) = 0).

  • mod(hSize, M) = 0 — Например, если ваш пиксельный поток имеет четыре пикселя за цикл, 120 допустимый hSize (mod(120,4) = 0), в то время как 118 недопустимо (mod(118,4) = 2).

Зависимости

Чтобы включить этот порт, очистите параметр Reuse output ports for vertically aligned regions и установите параметр Regions source на Input port.

Типы данных: int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Вывод

развернуть все

Выходной пиксель, возвращенный как скаляр или мультипиксельный поток. Выходные размерности и тип данных совпадают с теми из порта входа pixel. По умолчанию блок имеет R порты pixel выхода, где R является параметром Number of regions или количеством строк в матрице параметра Regions.

Когда вы выбираете Reuse output ports for vertically aligned regions, блок имеет один порт выхода pixel для каждого столбца вертикально выровненных областей.

Управляющие сигналы, возвращенные как pixelcontrol соедините шиной, который содержит пять сигналов. По умолчанию блок имеет R порты ctrl выхода, где R является параметром Number of regions или количеством строк в матрице параметра Regions.

Когда вы выбираете Reuse output ports for vertically aligned regions, блок имеет один порт выхода ctrl для каждого столбца выровненных областей.

Типы данных: bus

Параметры

развернуть все

Когда вы выбираете этот параметр, необходимо задать области, которые не имеют никакого вертикального перекрытия и которые выравниваются в столбцах. Блок имеет один поток выходного пикселя для каждого столбца областей. Это расположение включает параллельную обработку каждого столбца и повторное использование нисходящей логики обработки для каждой области в столбце. Используйте visionhdlframetoregions функционируйте, чтобы разделить систему координат на мозаичные области для вертикального повторного использования.

Зависимости

Чтобы включить этот параметр, установите параметр Regions source на Property.

Задайте местоположение выходных определений области. Можно установить Regions source на одно из этих значений:

  • Property — Задайте области при помощи параметра Regions.

  • Input port — Задайте области при помощи входных портов. Каждый входной порт соответствует одной области. Блок производит входные порты region когда vStart true в шине элемента управления вводом.

Зависимости

Чтобы включить этот параметр, очистите параметр Reuse output ports for vertically aligned regions.

Задайте прямоугольные ROI, чтобы выбрать из входного кадра как R-by-4 матрица.

R является числом регионов. Четыре элемента, которые задают каждую область, являются верхними левыми стартовыми координатами и размерностями области и должны иметь форму [hPos vPos hSize vSize] . Координаты рассчитывают от верхнего левого угла активной системы координат, заданной как [1,1]. hSize должен быть больше 1.

Поскольку мультипиксель, передающий области потоком, должен удовлетворить этим условиям, где M является Number of pixels.

  • mod(hPos, M) = 1 — Например, если ваш пиксельный поток имеет четыре пикселя за цикл, 129 допустимое значение hPos (mod(129,4) = 1), в то время как 128 недопустимо (mod(128,4) = 0).

  • mod(hSize, M) = 0 — Например, если ваш пиксельный поток имеет четыре пикселя за цикл, 120 допустимый hSize (mod(120,4) = 0), в то время как 118 недопустимо (mod(118,4) = 2).

Когда вы очищаете параметр Reuse output ports for vertically aligned regions, области могут перекрыться, и R не должен быть больше 16.

Когда вы выбираете Reuse output ports for vertically aligned regions, области в этой матрице не должны иметь никакого вертикального перекрытия и быть выровнены в столбцах. Эта схема показывает два примера недопустимых областей, обрисованных в общих чертах с синей пунктирной линией. Область на левых перекрытиях другая область вертикально. Эти две области в нижней части не выравниваются с другими областями в их столбцах. Области не должны покрывать целую систему координат. Пиксели за пределами мозаичных областей отмечены как неактивные пиксели. Количество столбцов не должно быть больше 16.

Зависимости

Чтобы включить этот параметр, установите параметр Regions source на Property.

Задайте количество входных портов области как целое число в области значений [1, 16].

Зависимости

Чтобы включить этот параметр, установите параметр Regions source на Input port.

Алгоритмы

развернуть все

Сгенерированный HDL-код для блока ROI Selector использует два 32-битных счетчика. Блок не использует дополнительные счетчики для дополнительных областей.

Расширенные возможности

Смотрите также

Блоки

Объекты

Функции

Введенный в R2016a