FIL Frame To Pixels

Преобразуйте видео на основе кадра в поток пикселей для цикл

  • Библиотека:
  • Интерфейсы Vision HDL Toolbox/I/O

  • FIL Frame To Pixels block

Описание

Блок FIL Frame To Pixels выполняет то же преобразование кадра в пиксель, что и блок Frame To Pixels. Кроме сложения, можно сконфигурировать ширину вектора выхода как один пиксель, линию или целую систему координат. Блок возвращает управляющие сигналы в векторах той же ширины, что и пиксельные данные. Эта оптимизация делает более эффективным использование ссылки связи между платой FPGA и вашим Simulink® симуляция при использовании цикл (FIL). Чтобы запустить FPGA-в - цикле, вы должны иметь лицензию HDL- Verifier™.

Когда вы генерируете файл программирования для цели FIL в Simulink, инструмент создает модель, чтобы сравнить симуляцию FIL с вашими проектами Simulink. Для проектов Vision HDL Toolbox™, блок FIL в этой модели наследует интерфейс потоковой передачи пикселей, чтобы отправить один пиксель за раз в FPGA. Можно изменить автогенерированную модель, чтобы использовать блоки FIL Frame To Pixels и FIL Pixels To Frame для улучшения полосы пропускания связи с платой FPGA путем отправки по одной системе координат за раз. Для того, как изменить автогенерированную модель, смотрите цикл.

Задайте тот же формат видео и размер вектора для блока FIL Frames To Pixels и блока FIL Pixels To Frame.

Порты

Вход

расширить все

Полное изображение задано как (Active pixels per line) -by- (Active video lines) -by- N матрица. Высота и ширина являются размерностями активного изображения, заданными в Video format. N - это Number of components, используемая для выражения одного пикселя.

Типы данных: single | double | int | uint | Boolean | fixed point

Выход

расширить все

Пиксели изображения, возвращенные как матрица M значений -by Number of pixels, где M - ширина Output vector format. Существует N порта данных, где N Number of components. Тип данных совпадает с типом данных frame.

Когда вы используете мультипиксельную потоковую передачу, FIL DUT имеет Number of pixels портов данных. Необходимо разделить выходную матрицу на Number of pixels векторов-строк длины M для портов входа FIL DUT. Для получения дополнительной информации смотрите Симуляцию цикл с мультипиксельной потоковой передачей.

Точно так же, когда вы используете многокомпонентно-мультипиксельную потоковую передачу, FIL DUT имеет Number of pixels × портов Number of components данных. Разделите выходную матрицу для каждого компонента на Number of pixels векторов-строк длины M для портов входа FIL DUT.

Типы данных: single | double | int | uint | Boolean | fixed point

Первый пиксель в горизонтальной линии системы координат, возвращенный как Boolean вектор M значений.

Для многопиксельной потоковой передачи hStartOut применяется к пикселю с самым низким индексом в соответствующем столбце.

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

Последний пиксель в горизонтальной линии системы координат, возвращенный как Boolean вектор M значений.

Для многопиксельной потоковой передачи hEndOut применяется к пикселю с самым высоким индексом в соответствующем столбце.

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

Первый пиксель в первой (верхней) линии системы координат, возвращенный как Boolean вектор M значений.

Для многопиксельной потоковой передачи vStartOut применяется к пикселю с самым низким индексом в соответствующем столбце.

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

Последний пиксель в последней (нижней) линии системы координат, возвращенный как Boolean вектор M значений.

Для многопиксельной потоковой передачи vEndOut применяется к пикселю с самым высоким индексом в соответствующем столбце.

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

Действительный пиксельный индикатор, возвращенный как Boolean вектор M значений.

Для многопиксельной потоковой передачи пиксели в соответствующем столбце либо все действительны, либо все недопустимы.

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

Параметры

расширить все

Количество значений, используемых для представления каждого пикселя. Каждый пиксель может иметь 1, 3 или 4 компонента. Установите этот параметр равным 1 для полутонового видео. Установите этот параметр равным 3 для цветного видео, например, {R, G, B} или {Y, Cb, Cr}. Установите этот параметр равным 4 использование цвета с альфа-каналом для прозрачности.

Чтобы обработать многокомпонентные потоки для блоков, которые не поддерживают многокомпонентный вход, реплицируйте блок для каждого компонента. The pixelcontrol шина для всех компонентов идентична, поэтому можно подключить ctrl выход блока Frame To Pixels к каждому реплицированному блоку.

Количество пикселей в каждом столбце выходной матрицы, заданное как 1, 4, или 8.

Каждый порт данных возвращает M -by - Number of pixels матрицу. Необходимо разделить эту матрицу на Number of pixels векторов-строк длины M для входа в FIL DUT. Для получения дополнительной информации смотрите Симуляцию цикл с мультипиксельной потоковой передачей.

Размер вектора, используемого для связи с подсистемой FPGA. Блок возвращает входные пиксели и сигналы управления в векторах той же длины. Блок вычисляет длину векторов на основе параметра Video format.

  • Pixel - Возвращает скалярные значения для пиксельных и управляющих сигналов.

  • Line - Возврат (Total pixels per line) векторов -by-1 .

  • Frame - Возвращает (Total pixels per line × Total video lines) -на-1 векторы.

Большее значение приводит к более быстрой связи между платой FPGA и Simulink. Выберите самую большую опцию, которую могут поддержать ресурсы ввода-вывода и памяти на вашей плате.

Для многопиксельной потоковой передачи задайте один из следующих опций размера выхода.

  • Pixel - Возвращает 1-бай- (Number of pixels) вектор пиксельных значений и скалярных управляющих сигналов, которые применяются ко всем пикселям в каждом векторе.

  • Line - Возвращает (Total pixels per line/ Number of pixels) -by - Number of pixels матрицу значений пикселей и вектор сигналов управления длины (Total pixels per line )/( Number of pixels ).

  • Frame - Возвратитесь (Total pixels per line × <reservedrangesplaceholder5> / Number of pixels) - Number of pixels матрицей пиксельных значений и вектором управляющих сигналов длины (Total pixels per line × <reservedrangesplaceholder1>) / Number of pixels.

Зависимости

Когда Number of pixels и Number of components больше 1, вы должны задать Output vector format Frame.

Размерности активных и неактивных областей в видеокадре. Чтобы выбрать предопределенный формат, выберите из списка Video format. Фактические размерности системы координат отображаются в разделе Video Format Parameters. Для пользовательского формата выберите Custom, а затем задайте размерности как целые числа.

Размерности определены в схеме.

Примечание

Значение шага расчета источника видео должно совпадать с общим количеством пикселей в систему координат блока Frame To Pixels. Общее количество пикселей Total pixels per line × Total video lines, поэтому установите шаг расчета на это значение.

Video FormatActive Pixels Per LineActive Video LinesTotal Pixels Per LineTotal Video LinesStarting Active LineEnding Active LineFront PorchBack Porch
240p320240 40232412404438
480p6404808005253651516 144
480pH7204808585253351216122
576p7205768646254762212132
720p1280720165075025744110260
768p102476813448061077724296
1024p128010241688106642106548360
1080p (по умолчанию)192010802200112542112188192
1200p160012002160125050124964496
2KCinema204810802750112542112163963
4KUHDTV384021604400225042220188472
8KUHDTV7680432088004500424361881032
CustomПользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный
Пользователь -
определенный

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

  • Для горизонтального направления Total pixels per line должны быть больше или равны Front porch + Active pixels per line. Блок вычисляет Back porch = <reservedrangesplaceholder2> − <reservedrangesplaceholder1> − <reservedrangesplaceholder0>.

  • Для вертикального направления Total video lines должны быть больше или равны Starting active line + Active video lines − 1. Блок вычисляет Ending active line = Starting active line + Active video lines − 1.

При использовании блока Line Memory, или блоков, которые используют внутреннюю линию память, с пользовательским форматом видео, применяются дальнейшие требования:

  • Active pixels per line должно быть больше 1.

  • Горизонтальный интервал гашения, или Back porch + Front porch, должен соответствовать следующим рекомендациям:

    • Общее количество Back porch + Front porch должно быть как минимум в 2 раза больше, чем самый большой размер ядра алгоритма в блоках, следующих за блоком Frame To Pixel. Если размер ядра меньше 4, общее крыльцо должно быть не менее 8 пикселей.

    • Значение Back porch должно быть не менее 6 пикселей. Этот параметр является количеством неактивных пикселей перед первым допустимым пикселем в системе координат.

    Дополнительные сведения об интервалах гашения см. в разделе Настройка интервалов гашения.

При использовании многопиксельной потоковой передачи (Number of pixels > 1) эти требования применяются.

  • Формат видео должен иметь горизонтальные размерности, делящиеся на Number of pixels значение параметров. Горизонтальные размерности заданы следующими параметрами: Active pixels per line, Total pixels per line, Front porch и Back porch. Стандартные видеопротоки 480p, 720p, 1080p и поддержка 4k UHD Number of pixels равны 4 или 8.

  • Минимальный размер входного кадра для многопиксельной потоковой передачи (4 или 8 пикселей) составляет 18 строк на 32 столбца.

  • Выберите размер ядра и Active pixels per line таким образом, чтобы (Active pixels per line )/( Number of pixels) была хотя бы ширина ядра.

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

.
Введенный в R2015a
Для просмотра документации необходимо авторизоваться на сайте