Espai de color sRGB

De Viquipèdia
Dreceres ràpides: navegació, cerca
Diagrama cromàtic xy de CIE 1931 mostrant l'espectre de l'espai sRGB i situació dels colors primaris. El punt blanc D65 és al centre.

L'espai de color sRGB, o estàndard RGB (Red Green Blue), és un espai de color RGB creat en cooperació per Hewlett-Packard i Microsoft Corporation. El van aprovar W3C, Exif, Intel, Pantone, Corel i molts altres actors de la indústria. És també ben acceptat pel Software lliure com el GIMP, i s'usa en formats gràfics propietaris i lliures com el PNG.

El sRGB defineix el vermell, el verd i el blau com colors primaris, on un dels tres canals és al seu valor màxim i els altres dos a zero. En la coordenades cromàtiques xy de l'espai de color CIE de 1931, el vermell és a [0.6400, 0.3300], el verd, a [0.3000, 0.6000] i el blau, a [0.1500, 0.0600]. El punt blanc és el punt blanc D65 situat en les coordenades [0.3127,0.3290]. La resta de valors produeixen el color obtingut de multiplicar cada color primari pel valor d'aquesta corba i sumant-los tots junts. L'espai sRGB ha estat criticat pel mal emplaçament d'aquests colors primaris. Si es limiten els valors del rang 0-1, no es podrà sortir fora de l'espectre de l'espai (el triangle produït per aquests), el qual sí que és dins del conjunt de colors visibles per l'ésser humà. Això no obstant, els valors d'aquests primaris són de menor importància que els d'aquesta corba de luminància en reproduir una imatge el millor possible.

Cal indicar que l'espai sRGB està dissenyat per coincidir amb l'utilitza actualment pels monitors CRT. Molts programes d'ordinador, tant professional com domèstic, assumeixen que una imatge de 8 bits disposada en una pantalla amb un circuit adaptador de 8 bits per canal es mostrarà correctament. Per aquesta raó es pot assumir que qualsevol imatge de 8 bits treta d'Internet és dins l'espai de color sRGB (en absència de qualsevol perfil de color inclòs en la imatge). De la mateixa manera, aquells dispositius no CRT, com pantalles LCD, cambres digitals o impressores, encara que no produeixen per naturalesa una corba sRGB, estan construïts amb sistemes de circuits o programes de compensació que al final obeeixen aquest estàndard (encara que això és menys cert en equips professionals). Per aquesta raó cal assumir que gairebé qualsevol imatge que es trobi amb 8 bits per canal és dins del sRGB.

Aquest espai de color a part ha estat criticat pels professionals del camp editorial, a causa del seu limitat espectre de color, cosa que significa que alguns colors que són visibles, fins i tot alguns colors que poden ser reproduïts en CMYK, no poden ser representats en sRGB. En aquest sentit l'espai Adobe RGB es prefereix com a estàndard.

Especificació de la transformació[modifica | modifica el codi]

La porció lineal de l'espai de color sRGB està dissenyada perquè la funció sigui inversa sense un pendent infinit en zero.


Càlcul de valors triestímuls sRGB en coordenades cromàtiques CIE xy.


\begin{bmatrix}
R\\G\\B\end{bmatrix}=
\begin{bmatrix}
3.2406&-1.5372&-0.4986\\
-0.9689&1.8758&0.0415\\
0.0557&-0.2040&1.0570
\end{bmatrix}
\begin{bmatrix}
X\\ 
Y\\ 
Z\end{bmatrix}

C pot ser R, G ó B. a=0.055 i γ=2.4

  • Si C>1\, llavors C=1\,
  • Si C <= 0.0031308\, llavors C'=12.92 C\,
  • Si C > 0.0031308\, llavors C'=(1+a)C^{1/\gamma}-a\,
  • C''=\textrm{round}(255 C')\,


La transformació inversa[modifica | modifica el codi]


\begin{bmatrix}
X\\Y\\Z\end{bmatrix}=
\begin{bmatrix}
0.412424&0.357579&0.180464\\
0.212656&0.715158&0.072186\\
0.019332&0.119193&0.950444
\end{bmatrix}
\begin{bmatrix}
g(R/255)\\ 
g(G/255)\\ 
g(B/255)\end{bmatrix}

on...

g(K)= \left(\frac{K+a}{1+a}\right)^\gamma per a K>0.04045\,

si no, g(K)= \frac{K}{12.92}\,


Teoria de la transformació[modifica | modifica el codi]

La part no lineal de la transformació es va dissenyar per aproximar-se a un gamma de 2.2, però sense tenir un pendent zero en K=0, cosa que pot ser causa de problemes numèrics. Això és més o menys cert per a la transformació sRGB. La condició que g(K) coincideixi en alguns K_0 és:


\left(\frac{K_0+a}{1+a}\right)^\gamma=\frac{K_0}{\phi}

on el valor estàndard de \phi=12.92 dit més amunt, ens dóna K_0=0.04045... i aquesta és la transformació utilitzada. Si imposem la condició que el pendent coincideixi també, llavors hem de tenir:

\gamma\left(\frac{K_0+a}{1+a}\right)^{\gamma-1}\left(\frac{1}{1+a}\right)=\frac{1}{\phi}

Ara tenim dues equacions. Si substituïm les dues incògnites a K_0 i \phi llavors podem resoldre a K_0=0.03928 i \phi=12.9232... Aquests valors s'usen a vegades per a l'especificació sRGB, encara que no són estàndard.

Altres espais de color RGB[modifica | modifica el codi]

Vegeu també[modifica | modifica el codi]

Enllaços externs[modifica | modifica el codi]