labelmatrix

Создайте матрицу метки из bwconncomp структура

Синтаксис

Описание

пример

L = labelmatrix(CC) создает матрицу метки, L, от связанной структуры компонентов CC возвращенный bwconncomp.

labelmatrix больше памяти, эффективной, чем bwlabel и bwlabeln потому что это возвращает свою матрицу метки в самом маленьком числовом классе, необходимом для количества объектов.

Примеры

свернуть все

Считайте двухуровневое изображение в рабочую область.

BW = imread('text.png');

Вычислите связанные компоненты с помощью bwconncomp.

CC = bwconncomp(BW);

Создайте матрицу метки использование labelmatrix.

L = labelmatrix(CC);

Для сравнения создайте вторую матрицу метки использование bwlabel.

L2 = bwlabel(BW);

Просмотрите обе матрицы метки в рабочей области. Обратите внимание на то, что labelmatrix использует самый маленький числовой класс, необходимый в количестве объектов, и поэтому больше памяти, эффективной, чем bwlabel .

whos L L2
  Name        Size              Bytes  Class     Attributes

  L         256x256             65536  uint8               
  L2        256x256            524288  double              

Отобразите матрицу метки как изображение RGB с помощью label2rgb. Чтобы облегчить дифференцировать различные связанные компоненты, переставьте последовательность цветов меток.

imshow(label2rgb(L,'jet','w','shuffle'));

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

свернуть все

Связанные компоненты, заданные как структура с четырьмя полями.

Поле Описание
ConnectivityВозможность соединения связанных компонентов (объекты)
ImageSizeРазмер двухуровневого изображения
NumObjectsКоличество связанных компонентов (объекты) в двухуровневом изображении.
PixelIdxList1 NumObjects массив ячеек, где k-й элемент в массиве ячеек является вектором, содержащим линейные индексы пикселей в объекте k-th.

Выходные аргументы

свернуть все

Матрица метки непрерывных областей, возвращенных как матрица неотрицательных целых чисел. Пиксели пометили 0 фон. Пиксели пометили 1 составьте один объект; пиксели пометили 2 составьте второй объект; и так далее.

Размер L CC.ImageSize. Класс L зависит от CC.NumObjects, как показано в таблице.

КлассОбласть значений
'uint8'

CC.NumObjects 255

'uint16'

256 CC.NumObjects 65535

'uint32'

65536 CC.NumObjects 2321

'double'

CC.NumObjects 232

Типы данных: double | uint8 | uint16 | uint32

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

| | | |

Представленный в R2009a