Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

grayslice

Convierta la imagen en escala de grises a imagen indexada utilizando umbrales multinivel

Descripción

ejemplo

X = grayslice(I,N) convierte una imagen en escala de grises en una imagen indexada mediante un enfoque de umbral multinivel. La función calcula automáticamente los valores de umbral en función de.N Para saber sobre el cálculo del umbral, consulte.Algoritmos

ejemplo

X = grayslice(I,thresholds) Devuelve una imagen indexada mediante un umbral multinivel de la imagen de entrada mediante un conjunto de umbrales.

Ejemplos

contraer todo

Leer la imagen en escala de grises en el espacio de trabajo.

I = imread('snowflakes.png');

Umbral de la imagen de intensidad, devolviendo una imagen indexada.

X = grayslice(I,16);

Visualice la imagen original y la imagen indexada, utilizando uno de los mapas de colores estándar.

imshow(I)

figure imshow(X,jet(16))

Lea una imagen en escala de grises en el espacio de trabajo. Visualice la imagen.

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

Especifique los valores de umbral para la triada multinivel.

thresholds = [45 65 84 108 134 157 174 189 206 228];

Convierta la imagen de escala de grises de entrada en una imagen indexada.

X = grayslice(I,thresholds);

Visualice la imagen indexada. Establezca el mapa de colores de la imagen indexada.jet La longitud de color Map, es el valor de intensidad máxima en la imagen indexada.m

m = double(max(X(:)));  figure imshow(X,colormap(jet(m)))

Argumentos de entrada

contraer todo

Imagen de escala de grises de entrada, especificada como a-by-Matrix.mn La imagen de escala de grises de entrada debe ser real y no dispersa.

Tipos de datos: single | double | int16 | uint8 | uint16

Número de valores de umbral, especificado como un escalar positivo. El valor representa el número total de umbrales que se utilizarán para el umbral multinivel.

Conjunto de umbrales, especificado como vector. El número de valores de umbral que se utilizarán para los umbrales multinivel es igual a.length(thresholds) Puede elegir los valores de umbral que se encuentran dentro del rango del tipo de datos de imagen. Si la imagen de escala de grises de entrada es de clase:

  • , los valores de umbral pueden estar dentro del intervalo [0 255].uint8

  • o, los valores de umbral pueden estar dentro del intervalo [0 65535].int16uint16

  • o, los valores de umbral pueden estar dentro del intervalo [0 1].singledouble

Argumentos de salida

contraer todo

Imagen indexada de salida, devuelta como una-por-matriz del mismo tamaño que la imagen de escala de grises de entrada.mn La clase de la imagen indexada de salida depende del número de valores de umbral utilizados para la triada de varios niveles.

  • Si el número de valores de umbral es menor que 256, entonces es de clase.Xuint8 En este caso, el rango de valores de intensidad en esX [0 N] O [0 length(thresholds)].

  • Si el número de valores de umbral es mayor o igual que 256, entonces es de clase.Xdouble En este caso, el rango de valores de intensidad en esX [1 N+1] O [1 length(thresholds)+1].

Tipos de datos: uint8 | double

Algoritmos

La función realiza un umbral multinivel de la imagen de escala de grises de entrada y devuelve una imagen indexada como salida. Si especifica el número de umbrales en la entrada, los valores de umbral para la triada multinivel se calculan comoN

máximointensity×.

máximointensity es el valor máximo de intensidad admisible para una clase determinada de la imagen de escala de grises de entrada. Si la imagen de escala de grises de entrada es de clase:

  • , el valor deuint8 máximointensity es 255.

  • o, el valor deint16uint16 máximointensity es 65535.

  • o, el valor desingledouble máximointensity es 1.

Puede ver la imagen con umbral utilizando un mapa de colores de longitud adecuada.imshow(X,map)

Consulte también

Introducido antes de R2006a