Полутоновое закрытие

Морфологическое закрытие полутоновых пиксельных данных

Описание

Блок Grayscale Closing выполняет морфологическое расширение, сопровождаемое морфологической эрозией, с помощью того же окружения для обоих вычислений. Блок работает с потоком значений интенсивности пикселей. Можно задать окружение или элемент структурирования, до 32×32 пиксели. Для строки, квадрата или прямоугольных элементов структурирования больше чем 8 пикселей шириной, блок использует алгоритм Ван Херка, чтобы найти максимум и минимум. Для структурирования элементов меньше чем 8 пикселей шириной, или которые содержат нулевые элементы, блок реализует конвейерное дерево сравнения, чтобы найти максимум и минимум.

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

Атрибуты сигнала

ПортНаправлениеОписаниеТип данных
pixelВвод/выводОдин пиксель изображения, заданный как скалярное значение.
  • uint8, uint16, uint32

  • fixdt(0,N,M)

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

ctrlВвод/вывод

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

pixelcontrol

Параметры

Neighborhood

Пиксельное окружение, заданное как матрица или вектор единиц и нулей.

Блок поддерживает плоские окружения до 32×32 пиксели. Чтобы использовать элемент структурирования, задайте Neighborhood как getnhood(strel(shape)). Минимальный размер окружения 2×2 матрица, или 2×1 вектор-столбец. Если окружение является вектором - строкой, это должно быть по крайней мере 8 широкими столбцами и не содержать нули.

Значением по умолчанию является ones(3,3).

Line buffer size

Размер буфера памяти строки, заданного как целое число.

Выберите степень двойки, которая размещает количество активных пикселей в горизонтальной строке. Если вы задаете значение, которое не является степенью двойки, блок использует следующую самую большую степень двойки. Блок выделяет (neighborhood lines – 1)-by-Line buffer size ячейки памяти, чтобы сохранить пиксели. Значение по умолчанию 2048.

Алгоритм

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

Блок заполняет изображение, обнуляет для операции расширения, и единицами для операции эрозии. Смотрите, что Ребро Дополняет.

Задержка

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

Задержка ядра Ван Херка для окружения m ×n пиксели 2m + log2 (n). Блок реализует это ядро для строки, квадрата или прямоугольных элементов структурирования больше чем 8 пикселей шириной, без обнуленных пикселей.

Задержка ядра дерева сравнения для окружения m ×n пиксели является log2 (m) +log2 (n).

Примечание

Горизонтальный интервал гашения пиксельного потокового формата должен быть больше, чем задержка блока. Этот интервал позволяет блоку закончить обрабатывать одну строку, прежде чем это начнет обрабатывать следующее. Если вы используете пользовательский формат видео, установите горизонтальный интервал гашения с помощью Кадра Для Пиксельных параметров блоков. Горизонтальный интервал гашения равен Total pixels per lineActive pixels per line или, эквивалентно, Front porch + Back porch. Стандартные форматы потокового видео используют горизонтальный интервал гашения приблизительно 25% ширины кадра. Этот интервал намного больше, чем фильтры применились к каждому кадру.

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

Введенный в R2016a