Contenido principal

label2rgb

Convertir una matriz de etiquetas en una imagen RGB

Descripción

RGB = label2rgb(L) convierte una imagen de etiqueta L en una imagen de color RGB con el fin de visualizar las regiones etiquetadas. La función label2rgb determina el color que debe asignarse a cada objeto en función del número de objetos de la matriz de etiquetas. La función label2rgb elige los colores de toda la gama del mapa de colores.

ejemplo

RGB = label2rgb(L,cmap) especifica el mapa de colores cmap que se utilizará en la imagen RGB.

RGB = label2rgb(L,cmap,zerocolor) especifica el color RGB de los elementos de fondo (píxeles etiquetados 0).

RGB = label2rgb(L,cmap,zerocolor,colorAssignment) controla cómo label2rgb asigna los colores a las regiones en la matriz de etiquetas.

RGB = label2rgb(___,OutputFormat=outputFormat) le permite especificar que la función devuelva una lista de colores únicos en lugar de una imagen RGB.

En las versiones anteriores a la R2021a, utilice la sintaxis equivalente RGB = label2rgb(__,"OutputFormat",outputFormat)

Ejemplos

contraer todo

Lea y muestre una imagen.

I = imread("rice.png"); 
imshow(I)

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

Cree una matriz de etiquetas a partir de la imagen.

BW = imbinarize(I); 
CC = bwconncomp(BW);
L = labelmatrix(CC);

Convierta la matriz de etiquetas en una imagen RGB utilizando los ajustes predeterminados. Los píxeles del fondo son blancos.

RGB = label2rgb(L);
imshow(RGB)

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

Convierta la matriz de etiquetas en una imagen RGB, especificando parámetros opcionales. Este ejemplo utiliza el mapa de colores "spring", establece los píxeles de fondo en el color cian, y aleatoriza la forma de asignar los colores a las etiquetas.

RGB2 = label2rgb(L,"spring","c","shuffle"); 
imshow(RGB2)

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

Argumentos de entrada

contraer todo

Imagen de la etiqueta de regiones contiguas, especificada como uno de los siguientes.

  • Una matriz de enteros no negativos. Los píxeles etiquetados como 0 son el fondo. Los píxeles etiquetados como 1 forman un objeto; los píxeles etiquetados como 2 forman un segundo objeto; y así sucesivamente. Puede obtener una imagen de etiqueta numérica a partir de funciones de etiquetado como watershed o labelmatrix.

  • Una matriz categórica.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical

Mapa de colores que utilizar en la imagen RGB en color generada, especificado con uno de los siguientes.

Valor

Descripción
Matriz de c por 3 del tipo de datos double

Matriz de mapa de colores que especifica c colores, cada uno como un triplete RGB. c debe ser mayor o igual que el número de etiquetas, numlabels, en la matriz de etiquetas L. Se puede calcular el número de etiquetas como numlabels = max(L(:)).

Si c es mayor que numlabels, label2rgb crea la imagen RGB utilizando solo las primeras numlabels filas de la matriz.

función de mapa de colores

Nombre de una función de mapa de colores de MATLAB®, como "jet" o "gray". Consulte colormap para ver una lista de mapas de colores compatibles.

identificador de mapas de colores

Identificador de una función de mapa de colores, como @jet o @gray.

Color de relleno, especificado como un vector de 3 elementos que representa un triplete RGB o una de las siguientes abreviaturas de color para imágenes de etiquetas numéricas. label2rgb aplica el color de relleno a la etiqueta 0 para las imágenes de etiquetas numéricas o a la etiqueta <undefined> para las imágenes de etiquetas categóricas.

Valor

Color

"b"Azul
"c"Cian
"g" Verde
"k"Negro
"m"Magenta
"r"Rojo
"w"Blanco
"y"Amarillo

Asignación de colores, especificada como uno de estos valores.

  • "noshuffle": asigna los colores del mapa de colores para etiquetar regiones de la matriz en orden numérico. Cada región tiene un color único.

  • "shuffle": asigna los colores del mapa de colores de forma pseudoaleatoria. Cada región tiene un color único.

  • "contrasting-neighbors" (desde R2025a): asigna un subconjunto de colores del mapa de colores para maximizar el contraste entre regiones adyacentes. Cada color puede corresponder a varias etiquetas.

Formato de salida de los datos RGB devueltos en RGB, especificado como uno de los siguientes.

  • "image": devuelve una imagen RGB. Si el tamaño de la matriz de etiquetas de entrada L es M por N, el tamaño de la imagen RGB de salida es M por N por 3.

  • "triplets": devuelve una lista de colores RGB. El tamaño de la salida es una matriz de C por 3 que contiene un triplete RGB para cada una de las etiquetas C de la matriz de etiquetas de entrada.

Argumentos de salida

contraer todo

Datos de RGB, devueltos como una matriz numérica.

Tipos de datos: uint8

Capacidades ampliadas

expandir todo

Historial de versiones

Introducido antes de R2006a

expandir todo