exponenta event banner

labeloverlay

Наложение областей матрицы меток на 2-D изображение

Описание

пример

B = labeloverlay(A,L) предохраняет входное изображение, A, с различным цветом для каждой ненулевой метки в матрице меток L. labeloverlay функция не предохраняет фоновые пикселы цветом.

пример

B = labeloverlay(A,BW) объединяет входное изображение с цветом, где маска BW является true. labeloverlay функция не предохраняет фоновые пикселы (помечены false ) с цветом.

B = labeloverlay(A,C) объединяет входное изображение с различным цветом для каждой метки в категориальной матрице C. labeloverlay функция не предохраняет пикселы <undefined> категория с цветом.

пример

B = labeloverlay(___,Name,Value) вычисляет конденсированное наложенное изображение, B, использование Name,Value пары для управления аспектами вычислений.

Примеры

свернуть все

Прочтите изображение, затем сегментируйте его с помощью суперпикселей.

A = imread('kobi.png');
[L,N] = superpixels(A,20);

Слияние результатов сегментации с исходным изображением. Отображение слитого изображения.

B = labeloverlay(A,L);
imshow(B)

Figure contains an axes. The axes contains an object of type image.

Прочтите изображение в оттенках серого и отобразите его.

A = imread('coins.png');
imshow(A)

Figure contains an axes. The axes contains an object of type image.

Создайте маску с помощью двоичного порогового значения.

t = graythresh(A);
BW = imbinarize(A,t);
imshow(BW)

Figure contains an axes. The axes contains an object of type image.

Соедините маску с исходным изображением. Отображение слитого изображения.

B = labeloverlay(A,BW);
imshow(B)

Figure contains an axes. The axes contains an object of type image.

Чтение изображения в градациях серого.

A = imread('coins.png');

Создайте маску с помощью двоичного порогового значения.

BW = imbinarize(A);

Создание категориальных меток на основе содержимого изображения.

stringArray = repmat("table",size(BW));
stringArray(BW) = "coin";
categoricalSegmentation = categorical(stringArray);

Соедините категориальные метки с исходным изображением. Отображение слитого изображения.

B = labeloverlay(A,categoricalSegmentation);
imshow(B)

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

figure
C = labeloverlay(A,categoricalSegmentation,'IncludedLabels',"coin", ...
    'Colormap','autumn','Transparency',0.25);
imshow(C)

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

свернуть все

Входное изображение, указанное как 2-D изображение в градациях серого или цветное изображение.

Типы данных: single | double | int8 | int16 | uint8 | uint16

Метки, заданные как матрица неотрицательных целых чисел.

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

Маска, заданная как логическая матрица.

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

Метки категорий, указанные как categorical матрица.

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

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: labeloverlay(myImage,myLabels,'Colormap','hot') отображает метки в цветах из 'hot' цветовая карта.

Цветовая карта, заданная как разделенная запятыми пара, состоящая из 'Colormap' и одно из этих значений:

  • Карта цветов «л на 3». Триплеты RGB в каждой строке карты цветов должны быть нормализованы до диапазона [0, 1]. l - количество меток в матрице меток L, двоичная маска BW, или категориальная матрица C.

  • Строковый или символьный вектор, соответствующий одному из допустимых входных значений colormap функция. labeloverlay переставляет заданную цветовую карту так, чтобы смежные метки были более четкими.

Пример: [0.2, 0.1, 0.5; 0.1, 0.5, 0.8]

Пример: 'hot'

Типы данных: single | double | char | string

Метки для отображения в слитом изображении, указанные как разделенная запятыми пара, состоящая из 'IncludedLabels' и одно из следующих:

  • Целое число или вектор целых чисел в диапазоне [0, max(L(:))]. По умолчанию labeloverlay отображает все ненулевые метки.

  • Строка или вектор строк, соответствующий меткам в категориальной матрице C. По умолчанию labeloverlay отображает все определенные категориальные метки.

Любая метка, не включенная в вектор, считается фоном. Например, в векторе [1,3,4]значение 2 будет считаться фоновым, если оно существует как метка.

Пример: [1,3,4]

Пример: ["flower","stem"]

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

Прозрачность отображаемых меток, заданная как разделенная запятыми пара, состоящая из 'Transparency' и число в диапазоне [0, 1].

  • Значение 0 делает цветные метки полностью непрозрачными.

  • Значение 1 делает цветные метки полностью прозрачными.

Типы данных: single | double

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

свернуть все

Конденсированное изображение, возвращаемое в виде цифровой матрицы того же размера, что и A.

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

См. также

| |

Представлен в R2017b