colore digitale blog

Il blog di Mauro Boscarol sulla gestione digitale del colore dal 1998

Nella serie Spazi RGB celebri

Primari, punto bianco e TRC


Cromaticità dei colori primari

L’International Telecommunication Union ha pubblicato nel 1990 la raccomandazione Rec. 709, che standardizza il formato della HDTV (televisione ad alta definizione). Tra le altre cose la raccomandazione indica le cromaticità dei colori primari riportati nella tabella qui sotto. Lo spazio sRGB utilizza questi primari.

ITU-R BT.709 fosfòri P22
primario x y x y
R 0.64 0.33 0.661 0.332
G 0.30 0.60 0.310 0.594
B 0.15 0.06 0.148 0.062

 

Nella tabella sono indicati anche i fosfòri P22 a cui alcuni spazi RGB fanno riferimento.


Punto bianco

Il punto bianco di uno spazio RGB standard è definito mediante le coordinate di cromaticità di un illuminante standard CIE. Quelli utilizzati dagli spazi riportati in questi post sono elencati qui sotto, assieme ai valori di tristimolo e alle coordinate di cromaticità per l’osservatore standard CIE 1931 (fonte CIE 15:2004 Colorimetry).

X Y Z x y Temperatura colore correlata
D50 0.9642 1 0.8251 0.34567 0.35851 5002 K
E 1 1 1 0.33333 0.33333 5454 K
D65 0.9504 1 1.0888 0.31272 0.32903 6502 K
C 0.9807 1 1.1822 0.31006 0.31616 6774 K

 

Tutti gli spazi RGB standard hanno il punto bianco definito dall’illuminante D50 o dall’illuminante D65, eccetto lo spazio NTSC che ha come punto bianco l’illuminante C e lo spazio CIE RGB che è definito con l’illuminante E.


Funzione di risposta tonale

Questa funzione (TRC, tone response curve) mette in relazione il valore di ogni singolo canale RGB con il fattore di luminanza Y (che assume valori tra 0 e 1).

Sono utilizzati tre tipi di TRC:

  1. inversa della curva L* (chiarezza CIE)
  2. gamma (1, 1.8, 2.2)
  3. TRC di sRGB

1. Se i numeri dei singoli canali RGB rappresentano la chiarezza di un pixel (e questo è tipicamente il caso), poiché la chiarezza, secondo CIE, è legata al fattore di luminanza con la curva cosiddetta L*, la migliore funzione di trasferimento è l’inversa della curva L*, la cui definizione è la seguente (i valori di ogni canale P  sono normalizzati in  0-1):

Y = 0.1107 P             se P ≤ 0.08
Y = (0.8621 P + 0.1379)3 se P > 0.08

Nel diagramma più sotto questa curva è indicata con L* (anche se in realtà è l’inversa di L*).

2. Se non è possibile implementare questa formula si utilizza tipicamente la formula

Y = Pγ

Il valore di γ che meglio approssima la formula precedente è 2.2, ma è usato anche il valore 1.8. Le curve di risposta tonale che sono espresse in questo modo sono dette “curve gamma”. Nel diagramma qui sotto sono indicate le curve gamma per 1.8 e 2.2.

3. Le specifiche sRGB indicano un ulteriore tipo di curva di trasferimento la cui formula è

Y = P / 12.92              se P ≤ 0.04045
Y = ((P + 0.055)/1.055)2.4 se P > 0.04045

 

La quattro curve di risposta tonale utilizzate negli spazi descritti in questi post sono rappresentate nel diagramma qui sotto.

 

Visitato 370 volte, negli ultimi 7 giorni 1 visite

Torna all'indice di Spazi RGB celebri

Mauro Boscarol

7/8/2008 alle 12:48

Parole chiave , , , , , , ,

Visitato 370 volte, negli ultimi 7 giorni 1 visite

5 commenti

Abbonati ai commenti a questo post con RSS

  1. Scusi, perché è opinione comune il fatto che il valore gamma che approssima meglio l’inversa della L* sia 2,2?
    In realtà se utilizzo una cosa tipo minimi quadrati ottengo che un valore gamma pari a 2,5 (2,48 per essere più precisi) approssima la curva molto meglio (se vede anche se faccio il plot della curva).
    O forse l’andamento per P piccoli è molto importante e quindi è necessario che la la curva sia il più accurata possibile in questa zona?

    Inoltre le segnalo che l’espressione analitica della curva di risposta sRGB sopra riportata non è corretta (il grafico lo è)

    alastri

    20/4/09 alle 17:28

  2. Non ho mai provato a fare i calcoli, può essere che sia come dici tu. Appena ho un attimo ci provo.

    Per la formula di sRGB, spero che adesso sia corretta. Grazie per avermelo segnalato.

    Mauro Boscarol

    20/4/09 alle 18:01

  3. Infatti i calcoli darebbero 2.5 ma leggo da qualche parte che

    As a practical matter, due to viewing conditions, this 2.5 value is typically under corrected as 2.2 (for NTSC, other video standards are different)

    Ciao, grazie.

    Mauro Boscarol

    20/4/09 alle 18:12

  4. Grazie per il chiarimento sulla Gamma.

    In realtà Lindbloom riporta per la curva di risposta di sRGBla formula seguente:
    Y = P / 12.92 se P ≤ 0.04045
    Y = ((P + 0.055)/ 1.055)^2.4 se P > 0.04045
    che è quella che ho usato io per fare il plot

    Mi scusi la pedanteria… 🙂 Comunque splendido blog, pieno di informazioni utilissime, che sto studiando accanitamente

    alastri

    21/4/09 alle 10:08

  5. Giusto, quella era la formula inversa. Al terzo tentativo dovrei avercela fatta 🙂

    Grazie.

    Mauro Boscarol

    21/4/09 alle 10:22

Vuoi fare un commento a questo post?

Devi essere collegato per scrivere un commento.