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.

rgb2gray

Convertir imagen RGB o colores a escala de grises

Sintaxis

I = rgb2gray(RGB)
newmap = rgb2gray(map)

Descripción

ejemplo

I = rgb2gray(RGB) convierte la imagen truecolor RGB en la imagen de intensidad de escala de grises I. La función rgb2gray convierte las imágenes RGB en escala de grises eliminando la información de matiz y saturación mientras conserva la luminancia. Si tiene instalado Parallel Computing Toolbox™ , rgb2gray puede realizar esta conversión en una GPU.

ejemplo

newmap = rgb2gray(map) devuelve un colores de escala de grises equivalente a map.

Ejemplos

contraer todo

Lea y visualice una imagen RGB y, a continuación, conviertala en escala de grises.

Lea el archivo de ejemplo, peppers.pngy muestre la imagen RGB.

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

Convertir la imagen RGB en una imagen en escala de grises y mostrarla.

I = rgb2gray(RGB);
figure
imshow(I)

Leer una imagen indexada con un colores RGB. A continuación, convierta el colores en escala de grises.

Lea el archivo de ejemplo, corn.tif, que es una imagen indizada con un colores RGB.

[X,map] = imread('corn.tif');

Mostrar la imagen.

imshow(X,map)

Convierta el colores RGB en un colores de escala de grises y remuestre la imagen.

newmap = rgb2gray(map);
imshow(X,newmap)

Argumentos de entrada

contraer todo

Imagen truecolor, especificada como matriz numérica 3-D.

Si tiene instalado Parallel Computing Toolbox , RGB también puede ser un gpuArray.

Tipos de datos: single | double | uint8 | uint16

Colores, especificada como una matriz numérica m-by-3.

Si tiene instalado Parallel Computing Toolbox , map también puede ser un gpuArray.

Tipos de datos: double

Argumentos de salida

contraer todo

Imagen en escala de grises, devuelta como una matriz numérica.

Si tiene instalado Parallel Computing Toolbox , I también puede ser un gpuArray.

Colores de escala de grises, devuelto como una matriz numérica m-by-3.

Si tiene instalado Parallel Computing Toolbox , newmap también puede ser un gpuArray.

Sugerencias

  • rgb2gray admite la generación de código C mediante MATLAB® Coder™.

Algoritmos

rgb2gray convierte los valores RGB en valores de escala de grises formando una suma ponderada de los componentes R, Gy B :

0.2989 * R + 0.5870 * G + 0.1140 * B 

Estos son los mismos pesos utilizados por la función rgb2ntsc para calcular el componente Y .

Los coeficientes utilizados para calcular los valores de escala de grises en rgb2gray son idénticos a los utilizados para calcular la luminancia (E'y) en REC. UIT-R BT. 601-7 después de redondearse a 3 posiciones decimales.

Rec. UIT-R BT. 601-7 calcula E'y utilizando la siguiente fórmula:

0.299 * R + 0.587 * G + 0.114 * B

Capacidades ampliadas

Generación de código C/C++
Generar código C y C++ utilizando MATLAB® Coder™.

Consulte también

| | | |