labeloverlay

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

Описание

пример

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)

Считайте полутоновое изображение и отобразите его.

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

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

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

Плавьте маску с оригинальным изображением. Отобразите сплавленное изображение.

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

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

A = imread('coins.png');
t = graythresh(A);
BW = imbinarize(A,t);

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

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

Плавьте категориальную сегментацию с оригинальным изображением. Отобразите сплавленное изображение.

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

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

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

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

свернуть все

Введите изображение, заданное как 2D полутоновое или цветное изображение.

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

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

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

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

Типы данных: логический

Подписи категорий, заданные как categorical матрица.

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

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

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

Пример: labeloverlay(myImage,myLabels,'Colormap','hot') отображения помечают в цветах от 'hot' палитра.

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

  • l-by-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