Main Content

Mostrar diferentes tipos de imágenes

Si necesita ayuda para determinar con qué tipo de imagen está trabajando, consulte .Tipos de imagen en el cuadro de herramientas

Mostrar imágenes indexadas

Para mostrar una imagen indexada, utilice o , especifique la matriz de imágenes y el mapa de colores.imshowimtool Esta documentación utiliza el nombre de la variable para representar una imagen indizada en el área de trabajo y para representar el mapa de colores.Xmap

imshow(X,map)

O

imtool(X,map)

Para cada píxel de , estas funciones muestran el color almacenado en la fila correspondiente de .Xmap Si los datos de la matriz de imagen son de clase , el valor 1 apunta a la primera fila del mapa de colores, el valor 2 apunta a la segunda fila, etc.double Sin embargo, si los datos de la matriz de imagen son de clase o , el valor 0 (cero) apunta a la primera fila del mapa de colores, el valor 1 apunta a la segunda fila, etc.uint8uint16 Este desplazamiento se controla automáticamente mediante las funciones.imtoolimshow

Si el mapa de colores contiene un mayor número de colores que la imagen, las funciones ignoran los colores adicionales del mapa de colores. Si el mapa de colores contiene menos colores de los que requiere la imagen, las funciones establecen todos los píxeles de la imagen sobre los límites de la capacidad del mapa de colores en el último color del mapa de colores. Por ejemplo, si una imagen de clase contiene 256 colores y la muestra con un mapa de colores que contiene solo 16 colores, todos los píxeles con un valor de 15 o superior se muestran con el último color del mapa de colores.uint8

Mostrar imágenes en escala de grises

Para mostrar una imagen en escala de grises, llame a la función o abra la aplicación Visor de imágenes.imshow Esta documentación utiliza el nombre de la variable para representar una imagen en escala de grises en el espacio de trabajo.I

Ambas funciones muestran la imagen por los valores de intensidad para que sirvan como índices en un mapa de colores en escala de grises.Escala

Si es , un valor de píxel de 0.0 se muestra en negro, un valor de píxel de 1.0 se muestra como blanco y los valores de píxel en el medio se muestran como tonos de gris.Idouble Si es , entonces un valor de píxel de 255 se muestra como blanco.Iuint8 Si I es , entonces un valor de píxel de 65535 se muestra como blanco.uint16

Las imágenes en escala de grises son similares a las imágenes indexadas en que cada una utiliza un mapa de colores RGB -by-3, pero normalmente no se especifica un mapa de colores para una imagen en escala de grises. muestra imágenes en escala de grises mediante un mapa de colores del sistema en escala de grises (donde R-G-B).mMATLAB® De forma predeterminada, el número de niveles de gris en el mapa de colores es 256 en sistemas con color de 24 bits y 64 o 32 en otros sistemas. (Consulte una explicación detallada.)Colores de pantalla

Mostrar imágenes en escala de grises con rangos no convencionales

En algunos casos, los datos de imagen que desea mostrar como una imagen en escala de grises podrían tener un rango de visualización que esté fuera del rango de caja de herramientas convencional (es decir, [0,1] para o matrices, [0,255] para matrices, [0,65535] para matrices, o [-32767,32768] para matrices).singledoubleuint8uint16int16 Por ejemplo, si filtra una imagen en escala de grises, algunos de los datos de salida podrían quedar fuera del intervalo de los datos originales.

Para mostrar datos de rango no convencionales como una imagen, puede especificar el rango de visualización directamente, utilizando esta sintaxis para las funciones y.imshowimtool

imshow(I,'DisplayRange',[low high])

O

imtool(I,'DisplayRange',[low high])

Si utiliza una matriz vacía ( ) para el rango de visualización, estas funciones escalan los datos automáticamente, estableciendo y a los valores mínimo y máximo de la matriz.[]lowhigh

En el siguiente ejemplo se filtra una imagen en escala de grises, lo que crea datos de rango no convencionales. El ejemplo llama para mostrar la imagen en el Visor de imágenes, utilizando la opción de escalado automático.imtool Si ejecuta este ejemplo, anote el rango de visualización especificado en la esquina inferior derecha de la ventana Visor de imágenes.

I = imread('testpat1.png'); J = filter2([1 2;-1 -2],I); imtool(J,'DisplayRange',[]);

Mostrar imágenes binarias

En , una imagen binaria es de clase .MATLABlogical Las imágenes binarias contienen solo 0 y 1. Los píxeles con el valor 0 se muestran en negro; los píxeles con el valor 1 se muestran en blanco.

Nota

Para que la caja de herramientas interprete la imagen como binaria, debe ser de clase .logical Las imágenes en escala de grises que contienen solo 0 y 1 no son imágenes binarias.

Para mostrar una imagen binaria, llame a la función o abra la aplicación Visor de imágenes.imshow Por ejemplo, este código lee una imagen binaria en el área de trabajo y, a continuación, muestra la imagen.MATLAB Esta documentación utiliza el nombre de la variable para representar una imagen binaria en el espacio de trabajoBW

BW = imread('circles.png'); imshow(BW)

Cambiar los colores de visualización de la imagen binaria

Es posible que prefiera invertir imágenes binarias al mostrarlas, de modo que los valores 0 se muestren como blancos y 1 valores se muestren en negro. Para ello, utilice el operador NOT (o) en .MATLAB (En esta figura, se dibuja un cuadro alrededor de la imagen para mostrar el límite de la imagen.) Por ejemplo:

imshow(~BW) 

También puede mostrar una imagen binaria mediante la sintaxis de mapa de colores de imagen indizada. Por ejemplo, el siguiente comando especifica un mapa de colores de dos filas que muestra 0 como rojo y 1 como azul.

imshow(BW,[1 0 0; 0 0 1])

Mostrar imágenes Truecolor

Las imágenes Truecolor, también denominadas imágenes RGB, representan valores de color directamente, en lugar de a través de un mapa de colores. Una imagen truecolor es una matriz -by- -by-3.mn Para cada píxel ( ) de la imagen, el color se representa mediante el triplete ( ).r,cr,c,1:3

Para mostrar una imagen truecolor, llame a la función o abra la aplicación Visor de imágenes.imshow Por ejemplo, este código lee una imagen truecolor en el área de trabajo y, a continuación, muestra la imagen.MATLAB Esta documentación utiliza el nombre de la variable para representar una imagen truecolor en el espacio de trabajoRGB

RGB = imread('peppers.png'); imshow(RGB)

Los sistemas que utilizan 24 bits por píxel de pantalla pueden mostrar imágenes truecolor directamente, ya que asignan 8 bits (256 niveles) cada uno a los planos de color rojo, verde y azul. En sistemas con menos colores, muestra la imagen utilizando una combinación de aproximación de color y tramado.imshow Consulte para obtener más información.Colores de pantalla

Nota

Si muestra una imagen en color y aparece en blanco y negro, compruebe si la imagen es una imagen indexada. Con las imágenes indexadas, debe especificar el mapa de colores asociado a la imagen. Para obtener más información, consulte .Mostrar imágenes indexadas