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.

rgb2lin

Linealizar valores RGB corregidos por gamma

Descripción

B = rgb2lin(A) deshace la corrección gamma de los valores sRGB en la imagen para que contenga valores RGB lineales.UnB

ejemplo

B = rgb2lin(A,Name,Value) deshace la corrección gamma utilizando pares nombre-valor para controlar opciones adicionales.

Ejemplos

contraer todo

Abra una imagen. El formato de archivo JPEG guarda las imágenes en el espacio de color sRGB corregido por gamma.

A = imread('foosball.jpg');

Muestre la imagen.

imshow(A) title('Scene With sRGB Gamma Correction')

Deshacer la corrección gamma y linealizar la imagen mediante la función.rgb2lin Opcionalmente, especifique el tipo de datos de los valores linealizados.

B = rgb2lin(A,'OutputType','double');

Muestre la imagen linealizada. Las sombras de la imagen linealizada son más oscuras que en la imagen original, como se esperaba.

imshow(B) title('Scene Without sRGB Gamma Correction')

Argumentos de entrada

contraer todo

Valores de color RGB corregidos por gamma, especificados como una matriz numérica en uno de los siguientes formatos.

  • -by-3 mapa de colores.c Cada fila especifica un valor de color RGB.

  • -by- -by-3 imagenmn

  • -por-3-por- pila de imágenesmnp

Tipos de datos: single | double | uint8 | uint16

Argumentos de par nombre-valor

Especifique pares opcionales separados por comas de argumentos. es el nombre del argumento y es el valor correspondiente. deben aparecer entre comillas.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como .Name1,Value1,...,NameN,ValueN

Ejemplo: linealiza la imagen corregida por gamma, de acuerdo con el estándar Adobe RGB (1998).B = lin2rgb(I,'ColorSpace','adobe-rgb-1998')I

Espacio de color de la imagen de entrada, especificado como el par separado por comas que consta de y o .'ColorSpace''srgb''adobe-rgb-1998'

Tipos de datos: char | string

Tipo de datos de los valores RGB de salida, especificado como el par separado por comas que consta de y , , , o .'OutputType''double''single''uint8''uint16' De forma predeterminada, el tipo de datos de salida es el mismo que el tipo de datos de .Un

Tipos de datos: char | string

Argumentos de salida

contraer todo

Valores de color RGB linealizados, devueltos como una matriz numérica del mismo tamaño que la entrada.Un

Algoritmos

contraer todo

Linealización Utilizando el estándar sRGB

Los valores de triestímulo sRGB se linealizan utilizando la siguiente curva paramétrica:

    f(u) = -f(-u),                u < 0

    f(u) = cu,                0 ≤ u < d

    f(u) = (au + b)ɣ,      ud,

donde representa un valor de color con estos parámetros:u

    1/1.055a

    0,055/1.055b

    1/12,92c

    0,04045d

    2,4ɣ

Linealización con Adobe RGB (1998) Estándar

Los valores de triesticulo de Adobe RGB (1998) se linealizan mediante una sencilla función de potencia:

    v = uɣ,

Con

    N.o 2.19921875ɣ

Referencias

[1] Ebner, Marc. "Gamma Correction." Color Constancy. Chichester, West Sussex: John Wiley & Sons, 2007.

[2] Adobe Systems Incorporated. "Inverting the color component transfer function." Adobe RGB (1998) Color Image Encoding. Section 4.3.5.2, May 2005, p.12.

Consulte también

Introducido en R2017b