![]() |
Home > Gestione digitale del colore > Argomenti avanzati > Tecnologia ICC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Costruzione dei profili ICC a matrice | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Un profilo a matrice RGB (scanner, fotocamera, monitor) consiste di una matrice, di curve gamma e delle coordinate di un bianco.
L'algoritmo che viene applicato quando il profilo è di origine è appropriato solo se le condizioni di illuminazione e vista sono le stesse della destinazione, che secondo le specifiche ICC è XYZ con illuminante D50 che ha le seguenti coordinate XYZ
In altre parole, la "colorimetria" codificata in un profilo ICC è relativa al PCS, che è D50, osservatore 2 gradi.
Se i profili fossero codificati in modo assoluto spetterebbe al motore di colore applicare, se necessario, la trasformazione relativa, cioè un adattamento.
Ma non funziona in questo modo.
Così se si fotografa con una fotocamera digitale un quadro illuminato da una lampada al tungsteno con temperatura di colore di 2856 kelvin, l'algoritmo trasforma i numeri RGB della fotocamera digitale in valori XYZ relativi a quel bianco e, per esempio, all'osservatore 1931. Tuttavia le specifiche ICC ammettono esclusivamente l'uso dello spazio XYZ con (osservatore 1931 e) illuminante D50, che è diverso dalla lampada al tungsteno. E' necessario dunque adattare i valori XYZ da un illuminante all'altro. Questa adattamento tra l'altro fa corrispondere i due punti bianchi e quindi implementa una corrispondenza relativa, come prescritto dalle specifiche ICC. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Standard per la connessione dei profili |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Quindi nel costruire il profilo a matrice di un monitor basato su certi primari e su un determinato punto bianco diverso da D50, per esempio D65, i valori dei primari devono essere adattati da D65 a D50 e in modo relativo. Come metodo di adattamento del punto bianco (white point adaptation method), le specifiche ICC (nell'allegato A) ne indicano uno (detto per questo Annex A, oppure XYZ scaling, oppure trasformazione di von Kries). Il costruttore del profilo può tuttavia usare il metodo che preferisce (oggi si tende ad usare la trasformazione di Bradford). Nel profilo tuttavia non viene indicato il metodo seguito (non c'è alcun modo di conoscerlo), e ciò ha qualche inconveniente, il principale dei quali sta nel calcolo del rendering colorimetrico assoluto. Secondo le specifiche questo intento viene calcolato applicando il metodo di adattamento del punto bianco al contrario, ma non essendo noto il metodo, non è noto nemmeno il metodo contrario. Per ora non è prevista la possibilità di avere un illuminante diverso da D50 nel PCS, anche se nell'header dei profili ICC c'è uno spazio per indicare le coordinate dell'illuminante. Poiché tale illuminante per ora è obbligatoriamente D50, in questo spazio vanno obbligatoriamente inserite le coordinate XYZ sopra riportate. Se l'immagine originale e la riproduzione, fatta colorimetricamente, vengono viste nelle stesse condizioni, i colori appaiono uguali. Ma se l'immagine riprodotta viene presentata, per esempio, su carta diversa, e in diverse condizione di visibilità, la riproduzione colorimetrica dà risultati insoddisfacenti, a causa dell'adattamento cromatico. I nostri occhi, in qualche modo, si adattano all'illuminante, e quando questo viene modificato, i colori vengono visti in modo un po' diverso. Se le condizioni in cui viene vista una immagine sono diverse è dunque necessario apportare una correzione per l'adattamento cromatico. Se una immagine è pensata per essere vista sotto un certo illuminante (per esempio luce al tungsteno) e deve essere trasformata per essere vista sotto un altro illuminante (per esempio monitor CRT), il profilo di origine può contenere l'adattamento da tungsteno a D50, quello di destinazione da D50 a bianco del monitor. Le specifiche ICC indicano che, nella creazione del profilo, la matrice deve essere adattata in modo da fornire un adattamento del punto bianco. Ciò significa che il bianco RGB (255r 255g 255b) deve venir convertito nel bianco dello spazio XYZ, che lo secondo lo standard ICC è D50, cioè X = 0.9642, Y = 1, Z = 0.8249 (e tutti gli altri colori devono essere modificati di conseguenza).
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Trasformazioni per l'adattamento cromatico. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
L'adattamento al punto bianco può essere effettuata con diverse tecniche illustrate nelle pagine Adattamento e Trasformazioni per l'adattamento cromatico. Qui ricordo solo che il metodo di von Kries (Johannes von Kries, 1878) e il più approssimato ma spesso usato metodo wrong von Kries o di scalamento lineare che è descritto in dettaglio nell'Allegato A alle specifiche ICC ed è usato nei profili RGB dei monitor Apple che vengono installati con ColorSync, mentre Infine la trasformazione di Bradford (Lam and Rigg, Ph.D. thesis, University of Bradford, 1985) è indicata nelle specifiche ufficiali di sRGB (dove è descritto dettagliatamente), ed è utilizzato da Photoshop, a partire dalla versione 5. La differenza tra i risultati delle due trasformazioni wrong von Kries e Bradford è soprattutto nei blu e nei viola. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Rendering colorimetrico assoluto | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Se è necessario un intento assoluto il metodo di adattamento al punto bianco va applicato all'inverso. Cosa difficile se non si conosce il metodo applicato in senso diretto.
Dalla matrice memorizzata nel profilo non è possibile risalire alle coordinate cromatiche. Per farlo sarebbe necessario conoscere il metodo di adattamento al bianco usato dal costruttore del profilo, ma non c'è modo, esaminando il profilo, di conoscere questo dato. Si può solo andare per tentativi. Per esempio si può aprire il profilo con il programma di Apple CreateMonitorProfile, che utilizza il metodo di von Kries. All'apertura del profilo il programma "toglie" l'adattamento presente, ipotizzando che tale adattamento sia stato fatto con von Kries. Se il risultato sono coordinate cromatiche "strane" (oltre due o tre cifre decimali) significa che tale ipotesi è errata. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Esempio: il profilo sRGB |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Le specifiche colorimetriche dello spazio sRGB sono date rispetto all'illuminante D65, mentre i profili ICC sono fatti rispetto all'illuminante D50. Quindi i riferimenti ai primari sRGB devono essere adattati da D65 a D50. Le specifiche ICC non dicono con quale metodo va fatta questa conversione. Si può costruire un profilo sRGB basato sulla trasformazione di Bradford (come indicano le specifiche sRGB, e come è fatto nel profilo sRGB IEC61966-2.1 realizzato da HP) e un altro profilo sRGB basato sullo scalamento lineare (come era fatto il vecchio profilo sRGB della Apple, ora anche Apple usa Bradford: invece la differenza sta nel fatto che Apple usa gamma 2.2, per renderlo piccolo, mentre lo standard prevede che sia lineare nella parte più scura). I risultati saranno diversi, ma poiché le specifiche ICC non indicano un metodo preferito, entrambi, per le specifiche ICC, devono essere considerati corretti (per un profilo a matrice; esiste anche un profilo sRGB a tabella). Le specifiche sRGB indicano le seguenti coordinate di cromaticità dei fosfori e del bianco:
Da questi dati è possibile calcolare la matrice di tristimolo (con il metodo indicato in questa pagina):
e quindi applicare un metodo di adattamento del punto bianco; lo standard sRGB utilizza la trasformazione di Bradford (ridotta, cioè solo la parte lineare) la cui matrice, per il passaggio da D65 a D50 è
La matrice finale è il prodotto delle ultime due (l'ultima per la penultima, cioè la matrice di trasformazione di Bradford per la matrice di tristimolo) cioè
Ora XYZ in D50 è uguale alla matrice finale per RGB linearizzato. Per automatizzare questa procedura si possono usare gli eccellenti fogli Excel di Charles Cowens: il primo foglio, citato sopra, converte da xy a XYZ (primo passaggio qui sopra). Poi ci sono due fogli per applicare rispettivamente von Kries e Bradford. Si può anche usare il programma CreateMonitorProfile di Apple, tenendo conto che applica l'adattamento di von Kries. Tutti i profili Apple vecchi hanno questo tipo di adattamento. Da Mac OS X in poi Apple usa Bradford. Si può usare Photoshop 5 e 6. Viene applicato il metodo di adattamento di Bradford. Photoshop 4 applica von Kries. Si può anche aprire il profilo in Adobe Gamma credo (Bradford). |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||