Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

mat2gray

Convertir una matriz en una imagen en escala de grises

Descripción

I = mat2gray(A,[amin amax]) convierte la matriz A en una imagen en escala de grises I que contiene valores en el intervalo 0 (negro) a 1 (blanco). amin y amax son los valores de A que corresponden a 0 y 1 en I. Los valores inferiores a amin se acortan a 0, y los valores superiores a amax se acortan a 1.

ejemplo

I = mat2gray(A) establece los valores de amin y amax a los valores mínimos y máximos de A.

Ejemplos

contraer todo

Lea una imagen y muéstrela.

I = imread('rice.png');
figure
imshow(I)

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

Realice una operación que devuelva una matriz numérica. Esta operación busca los bordes de la imagen.

J = filter2(fspecial('sobel'),I);
min_matrix = min(J(:))
min_matrix = -779
max_matrix = max(J(:))
max_matrix = 560

Tenga en cuenta que la matriz tiene un tipo de datos double con valores que se sitúan fuera del intervalo [0,1], incluidos valores negativos.

Muestre el resultado de la operación. Como el intervalo de datos de la matriz está fuera del intervalo de visualización por defecto de imshow, cada píxel con un valor positivo se muestra como blanco, y cada píxel con un valor negativo o cero se muestra como negro. Resulta difícil ver los bordes de los granos de arroz.

figure
imshow(J)

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

Convierta la matriz en una imagen. Muestre los valores máximos y mínimos de la imagen.

K = mat2gray(J);
min_image = min(K(:))
min_image = 0
max_image = max(K(:))
max_image = 1

Tenga en cuenta que los valores siguen siendo de tipo de datos double, pero que todos los valores están en el intervalo [0, 1].

Muestre el resultado de la conversión. Los píxeles muestran una gama de colores en escala de grises, lo que hace más evidente la ubicación de los bordes.

figure
imshow(K)

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

Argumentos de entrada

contraer todo

Imagen de entrada, especificada como matriz numérica.

Valores de entrada en blanco y negro, especificados como vector numérico de 2 elementos.

  • Los valores de la imagen de entrada A que son menores o iguales que amin se asignan al valor 0 de la imagen de intensidad, I.

  • Los valores de la imagen de entrada A que son mayores que o iguales que amax se asignan al valor 1 de la imagen de intensidad, I.

Argumentos de salida

contraer todo

Imagen de intensidad de salida, devuelta como matriz numérica con valores en el intervalo [0, 1].

Tipos de datos: double

Capacidades ampliadas

Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.

Historial de versiones

Introducido antes de R2006a

Consulte también

| | |