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.

im2gray

Convertir una imagen RGB en una imagen en escala de grises

Desde R2020b

    Descripción

    ejemplo

    I = im2gray(RGB) convierte la imagen de color real RGB especificada en una imagen de intensidad en escala de grises I. La función im2gray acepta imágenes en escala de grises como entrada y las devuelve sin modificar.

    La función im2gray convierte imágenes RGB en escala de grises eliminando la información de tono y saturación y conservando la luminosidad al mismo tiempo.

    Ejemplos

    contraer todo

    Lea una imagen de color real (RGB) en el área de trabajo desde un archivo y muéstrela.

    RGB = imread('example.tif');
    imshow(RGB)

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

    Convierta la imagen RGB en una imagen en escala de grises.

    I = im2gray(RGB);

    Muestre la imagen en escala de grises convertida.

    imshow(I)

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

    Argumentos de entrada

    contraer todo

    Imagen de color real, especificada como un arreglo numérico de m por n por 3. im2gray también acepta arreglos numéricos de m por n (imágenes en escala de grises) y los devuelve sin modificar.

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

    Tipos de datos: single | double | uint8 | uint16

    Argumentos de salida

    contraer todo

    Imagen en escala de grises, devuelta como un arreglo numérico de m por n. Si la entrada de im2gray es una imagen en escala de grises, la imagen de salida I es la misma que la imagen de entrada.

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

    Sugerencias

    • La función im2gray es idéntica a rgb2gray, excepto que puede aceptar imágenes de escala de grises como entradas y las devuelve sin modificar. La función rgb2gray devuelve un error si la imagen de entrada es de escala de grises. Si usa la función im2gray, no se necesita código como este bucle.

      if ndims(I) == 3
          I = rgb2gray(I);
      end
      
    • A diferencia de la función rgb2gray, im2gray no acepta mapas de colores como entrada. Para convertir un mapa de colores a escala de grises, utilice la función cmap2gray.

    Algoritmos

    La función im2gray convierte los valores RGB en valores de escala de grises formando una suma ponderada de los componentes R, G y B:

    0.2989 * R + 0.5870 * G + 0.1140 * B 
    

    Se trata de las mismas ponderaciones utilizadas por la función rgb2ntsc (Image Processing Toolbox) para calcular el componente Y.

    Los coeficientes utilizados para calcular valores de escala de grises en la función im2gray son idénticos a aquellos utilizados para calcular la luminosidad (E'y) en Rec.ITU-R BT.601-7 después de redondear a tres decimales.

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

    0.299 * R + 0.587 * G + 0.114 * B
    

    Capacidades ampliadas

    Historial de versiones

    Introducido en R2020b

    Consulte también

    (Image Processing Toolbox) | | (Image Processing Toolbox) | (Image Processing Toolbox) | | (Image Processing Toolbox) |