| Home > Gestione digitale del colore > Tecnologia ICC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Profili ICC a tabella | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I profili di input e display possono contenere tabelle (invece di matrici). I profili di output devono contenere tabelle. Le tabelle possono essere:
I tag che fanno riferimento a tabelle sono i seguenti: A2B0, A2B1, A2B2 B2A0, B2A1, B2A2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Quanti e quali intenti di rendering sono supportati? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I profili a tabella di input (scnr) e display (mntr), secondo le specifiche ICC devono avere rispettivamente una e due tabelle (ma il costruttore del profilo può aggiungerne altre). Nei profili di input (scnr) è richiesta un unico tag A2B0 che punta ad una unica tabella nella direzione da periferica a PCS: questa tabella, anche se non è esplicitamente detto dalle specifiche ICC, implementa generalmente un intento colorimetrico relativo (e quindi assoluto); ma alcuni costruttori implementano un intento percettivo, ed eventualmente altri tag. Nei profili di display (mntr) sono richiesti due tag A2B0 e B2A0 che puntano a due tabelle, una nella direzione da periferica a PCS, l'altra nella direzione opposta: anche in questo caso ICC non specifica, ma è normale che queste tabelle implementino il rendering colorimetrico relativo (e assoluto). Alcuni costruttori possono inserire altri tag di tipo A2B e B2A. Nei profili di output (prtr) come detto all'inizio di questa pagina, sono obbligatori tre tag, uno per ogni intento di rendering, in una direzione più altri tre nell'altra direzione. Ogni tag punta ad una tabella secondo questo schema:
Non è detto tuttavia che ogni tag punti ad una tabella diversa; quindi ci possono essere da una a tre tabelle in una direzione e da una a tre tabelle nell'altra direzione. Il caso ideale è quello in cui ad ogni singolo tag corrisponde una diversa tabella. Ma il tag e la tabella ad esso associata sono due cose separate e se un profilo contiene un tag per un determinato intento di rendering, non è detto che contenga effettivamente una tabella con quell'intento, la stessa tabella può essere richiamata da più tag. Normalmente ci sono più tag che tabelle: bisogna controllare nel caso specifico.
Per esempio, il profilo Euroscale Coated (versione 2) ha 5 tabelle effettive: manca quella diretta di saturazione (qui sotto). |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Quante righe ha una tabelle? |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Qui sopra, parte della finestra di Profile Manager dove sono visualizzate le informazioni sul profilo Euroscale Coated (versione 2). |
Una tabella in un profilo, se fosse completa, dovrebbe contenere un mucchio di righe. Per esempio una tabella con tutte le terne RGB dovrebbe contenere oltre 16 milioni di righe (precisamente 16.777.216). Non è pensabile che un profilo possa contenere una tabella (o più tabelle) con così tante righe: se ne mettono solo alcune. Le specifiche ICC non impongono un numero di righe minimo, ma solo che
Per la costruzione delle tabelle si usa il concetto di griglia. Se per esempio una tabella da Lab a CMYK ha griglia 3x3x3 ciò significa che ha 27 righe (3 valori di L, per ognuno dei quali 3 valori di a, per ognuno dei quali 3 valori di b). Ecco una tabella con griglia 3x3x3:
Una tabella con griglia 32 x 32 x 32 ha 32768 righe. Per esempio Heidelberg PrintOpen 3.0 crea profili con tabelle con griglia 32x32x32. Le tabelle per le conversioni da periferica a PCS non necessariamente devono avere la stessa griglia delle tabelle inverse (da PCS a periferica). Le tabelle dirette del profilo Euroscale Coated, come si vede dalla schermata di Profile Manager qui sopra, hanno una griglia di 9 punti, mentre quelle inverse di 33. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Con quanti bit sono rappresentati i dati? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| I numeri in una tabella possono essere a 8 o a 16 bit.
I dati a 8 bit sono numeri interi da 0 a 255 (nel caso delle coordinate a e b di Lab, per avere il valore reale bisogna togliere 128). I dati a 16 bit sono numeri con la virgola: l'intervallo tra un numero intero e l'altro è diviso in 255 parti. I numeri RGB per esempio, in 16 bit, iniziano così: 0.00000 0.00392 0.00784 0.01176 0.01569 ... 0.99608 1.00000 1.00392 ... La L di Lab in 16 bit inizia così 0.00000 0.00154 0.00308 0.01845 0.02461 ... 0.39062 0.39216 0.39369 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Il tag A2B0 nel profilo Euroscale Coated, visto con ProfileInspector. | ![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Da questa finestra di ProfileInspector si può vedere che la tabella A2B0 del profilo Euroscale Coated, cioè la tabella da CMYK a Lab ha una griglia di 9x9x9x9 a 16 bit. Nella successiva finestra, qui sotto, i quattro canali CMYK sono raffigurati a sinistra, ognuno con i 9 punti di griglia. Si può posizionare ognuno dei quattro termometri su un punto di griglia e leggere a destra il risultato in due byte esadecimali.
In questo caso il colore è C: 3/8 di 100, cioè 37.5 e corrisponde ai valori L: 34764, cioè 53.25 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| La tabella di conversione corrispondente al tag A2B0 nel profilo Euroscale Coated, nell'interpretazione di ProfileInspector. | ![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Oltre alla tabella di conversione il tag ha anche ha anche delle tabelle di input e output che sono simili alle tabelle gamma del monitor, e una matrice che non viene quasi mai usata (e in tal caso ha una diagonale di 1 e il resto è 0): | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||