Demosaic Interpolator

Создайте пиксельные данные RGB из пиксельного потока шаблона Байера

  • Библиотека:
  • Vision HDL Toolbox / Преобразования

  • Demosaic Interpolator block

Описание

Блок Demosaic Interpolator обеспечивает фильтр интерполяции шаблона Байера для данных о потоковом видео. Блок реализует вычисления с помощью эффективных оборудованием, алгоритмов без множителей для генерации HDL-кода. Можно выбрать билинейную интерполяцию низкой сложности или умеренную сложность откорректированная градиентом билинейная интерполяция.

  • Когда вы выбираете билинейную интерполяцию, блок работает с 3х3 пиксельным окном с помощью только сложения и сдвиги разряда.

  • Когда вы выбираете коррекцию градиента, блок работает с пиксельным окном 5 на 5. Вычисление выполняется с помощью сдвига разряда, сложения и умножения канонической цифры со знаком (CSD) младшего разряда.

Порты

Этот блок использует пиксельный интерфейс потоковой передачи с pixelcontrol соедините шиной для сигналов управления кадром. Этот интерфейс позволяет блоку действовать независимо от размера изображения и формата. Все блоки Vision HDL Toolbox™ используют тот же интерфейс потоковой передачи. Блок принимает и возвращает скалярное пиксельное значение и шину, которая содержит пять управляющих сигналов. Управляющие сигналы указывают на валидность каждого пикселя и его местоположения в системе координат. Чтобы преобразовать систему координат (пиксельная матрица) в последовательный пиксельный поток и управляющие сигналы, используйте блок Frame To Pixels. Для полного описания интерфейса смотрите Пиксельный Интерфейс Потоковой передачи.

Этот блок также поддерживает мультипиксельные потоки. В этом случае пиксельный вход является вектором из M-by-1 значения, где M является количеством пикселей. Пиксель выход является матрицей M-by-3 значения. Значение M соответствует параметру Number of pixels блока Frame To Pixels, и каждый выходной пиксель имеет три компонента в цветовом пространстве RGB.

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

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

Для одного пиксельных потоков задайте pixel как скаляр. Для мультипиксельных потоков задайте pixel как вектор из Number of pixels-by-1 пиксельные значения. Изображения в формате Байера имеют один компонент цвета для каждого пиксельного местоположения. Выберите последовательность R, G, и пиксели B при помощи параметра Sensor alignment.

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

Типы данных: single | double | uint8 | uint16 | uint32 | uint64 | fi(0,N,0)

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

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

Вывод

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

Для одного пиксельных потоков выход pixel является трехэлементным вектором из значений RGB. Для мультипиксельных потоков выход pixel является матрицей Number of pixels-by-3 значения RGB. Блок вычисляет значения компонентов отсутствующего цвета для каждого пикселя, с помощью метода, который вы задаете в параметре Interpolation algorithm.

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

Типы данных: single | double | uint8 | uint16 | uint32 | uint64 | fi(0,N,0)

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

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

Параметры

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

Алгоритм раньше вычислял недостающие пиксельные значения в виде одного из следующего:

  • Gradient-corrected linear — Билинейное среднее значение, откорректированное для градиента интенсивности

  • Bilinear — Среднее значение пиксельных значений в окружающем 3х3 окружении

Выберите последовательность R, G, и пиксели B, которые соответствуют блоку 2 на 2 пикселей в верхнем левом углу входного изображения. Задайте последовательность в слева направо, порядок от начала до конца. Например, последовательность по умолчанию RGGB представляет изображение этим шаблоном.

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

Выделенный размер общей памяти зависит от вашего выбора Interpolation algorithm:

  • Bilinear: 2 Line buffer size ячейками памяти

  • Gradient-corrected linear: 4 Line buffer size ячейками памяти

Советы

  • Когда вы используете блок с внутренним буфером линии в Enabled Subsystem (Simulink), разрешать шаблон сигнала должен обеспечить синхронизацию пиксельного потока, включая минимальные интервалы гашения. Если разрешать шаблон повреждает синхронизацию пиксельного потока, вы можете видеть частичные выходные системы координат, поврежденные пиксельные потоковые управляющие сигналы или несоответствия между Simulink® и результаты симуляции HDL. Вы, возможно, должны расширить интервалы гашения, чтобы вместить для циклов, когда разрешение является низким. Для получения дополнительной информации смотрите, Конфигурируют Интервалы гашения.

Алгоритмы

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

Блок заполняет ребра изображения с симметричными пиксельными значениями. Для получения дополнительной информации смотрите, что Ребро Дополняет.

Когда вы используете мультипиксельную потоковую передачу, блок использует однострочную память и реализует demosiac алгоритм интерполяции для каждого из входных пикселей M, параллельно. Это увеличение аппаратных ресурсов является компромиссом для увеличения пропускной способности по сравнению с потоковой передачей одно пикселя.

Ссылки

[1] Malvar, Хенрик С., Литий-wei Он и Росс Катлер. “Высококачественная Линейная интерполяция для Demosaicing Цветных изображений с рисунком Байера”. Microsoft Research, май 2004. http://research.microsoft.com/pubs/102068/Demosaicing_ICASSP04.pdf.

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

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

Блоки

Объекты

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