Gamma e lineare

Ora, la situazione di cui parliamo quando trattiamo di teoria è quella che chiameremmo “linear”. Ciascun incremento della luminosità ha lo stesso valore. Gli occhi umani non lo percepiscono in modo lineare. Troviamo più facile, piuttosto, distinguere tra grigi più scuri che non tra grigi più chiari.

Dato che gli utilizzatori dei computer sono umani, è stato fatto in modo che i computer diano più spazio ai valori più scuri all’interno del sistema di coordinate dell’immagine. Chiamiamo questo “codifica di gamma” perché si applica una funzione di gamma alla TRC, o funzione di trasferimento di un’immagine. La TRC, che in questo caso è la «curva di risposta del tono» (Tone Response Curve), o «curva di riproduzione del tono» (Tone Reproduction Curve), o ancora funzione di «trasferimento» (perché gli specialisti di gestione dei colori odiano loro stessi), dice al tuo computer o alla tua stampante quanto colore corrisponde a un certo valore.

../../_images/Pepper_tonecurves.png

Uno dei problemi più comuni che le persone hanno con la gestione dei colori di Krita è l’assegnazione del corretto spazio dei colori alla TRC codificata. Sopra, l’immagine corretta è la Pepper del centro, in cui la TRC codificata e assegnata è la stessa. Alla sinistra abbiamo una Pepper codificata in sRGB ma assegnata a un profilo lineare, mentre alla destra una Pepper codificata con una TRC lineare e assegnata a una TRC sRGB. Immagine da Pepper & Carrot.

La tabella seguente mostra come un sacco di spazio sia utilizzato dai valori più chiari in uno spazio lineare rispetto alla TRC sRGB predefinita dei nostri moderni computer e ad altre TRC disponibili nei nostri profili riportati:

../../_images/trc_gray_gradients.svg

Se osservi la lineare delle TRC Rec. 709 puoi notare proprio un salto tra le sfumature più scure e quelle più chiare, mentre la TRC Lab L* o quella sRGB sembrano persino più distanziate. Ciò deriva dalla sensibilità dei nostri occhi ai valori più scuri. Questo significa anche che, se non abbiamo sufficiente profondità di bit, un’immagine in uno spazio lineare apparirà con un brutto effetto di bande (banding). Ecco perché quando creiamo immagini per la visualizzazione in un schermo utilizziamo sempre qualcosa di simile a TRC Lab L*, sRGB o Gamma 2.2 TRC per codificare l’immagine.

Questa modifica per attribuire più spazio ai valori più scuri porta, però, a calcoli instabili durante la miscelazione dei colori.

Possiamo osservare questo fenomeno nel seguente esperimento:

../../_images/Krita_2_9_colormanagement_blending_1.png

Sinistra: cerchi colorati sfuocati in un normale spazio sRGB. Destra: cerchi colorati sfuocati in uno spazio lineare.

Cerchi colorati, mezzo sfuocati. In un ambiente con correzione di gamma, ciò restituisce uno strano bordo nero. In un ambiente lineare restituisce una sfumatura piacevole.

Questo vale anche per il pennello Sfumino a colori di Krita:

../../_images/Krita_2_9_colormanagement_blending_2.png

È vero: la «confusione» di colori, che è una lamentela comune tra artisti digitali di qualsiasi latitudine, è, di fatto, uno spazio dei colori con correzione di gamma che contamina i colori. Se stai lavorando in LAB per evitare questo effetto, assicurati di provare uno spazio dei colori RGB lineare.

Cosa succede «dietro le quinte»

Immagina di voler miscelare rosso e verde.

Per prima cosa abbiamo bisogno delle coordinate del rosso e del verde all’interno del modello di colore dello spazio dei colori. Che dovrebbe essere…

Colore

Rosso

Verde

Blu

Rosso

1,0

0,0

0,0

Verde

0,0

1,0

0,0

Quindi facciamo la media di queste tre coordinate sulle tre miscelazioni:

Rosso

Mix1

Mix2

Mix3

Verde

Rosso

1,0

0,75

0,5

0,25

0,0

Verde

0,0

0,25

0,5

0,75

1,0

Blu

0,0

0,0

0,0

0,0

0,0

Ma per capire come questi colori appaiono sullo schermo, inseriamo prima i valori individuali attraverso la TRC dello spazio dei colori con cui stiamo lavorando:

../../_images/Basicreading3trcsv2.svg

Quindi riempiamo i valori all’interno del punto corretto. Confronta questi valori con quelli della tavola di miscelazione sopra riportata!

../../_images/red_green_mixes_trc.svg

E questo è il motivo per cui le miscele di colori sono più chiare nello spazio lineare. Lo spazio lineare è fisicamente più corretto, ma sRGB è più efficiente in termini di spazio, ed è la ragione per la quale molte immagini possiedono una TRC sRGB codificata al loro interno. Nel caso in cui tutto ciò non abbia ancora senso: sRGB restituisce valori ampiamente più scuri dello spazio lineare per le medesime coordinate.

Dunque TRC differenti restituiscono miscelazioni diverse tra i colori. Nell’esempio che segue, ogni gruppo di sfumature è una miscela che utilizza, nell’ordine: TRC lineare, TRC sRGB e TRC Lab L*.

../../_images/3trcsresult.png

Ti starai chiedendo: come attivo questa opzione? La trovo da qualche parte nelle impostazioni? La risposta è che abbiamo diversi profili ICC utilizzabili per questo tipo di lavoro:

  • scRGB (lineare)

  • Tutti i profili «elle» che finiscono con «g10», tipo sRGB-elle-v2-g10.icc.

Infatti, in tutti i profili «elle» l’ultimo numero indica la gamma. 1,0 è lineare, più alto è con correzione di gamma e «srgbtrc» è una speciale correzione di gamma per il profilo sRGB originale.

Se usi il navigatore dello spazio dei colori, puoi definire la TRC dalla «gamma stimata» (se è 1,0 è lineare), oppure dall’oggetto TRC in Krita 3.0, che appare esattamente come i grafici delle curve sopra riportati.

Anche se non dipingi molto ma crei, per esempio, trame per videogiochi o rendering, l’uso dello spazio lineare è molto utile e aumenterà un pochino la velocità del motore di resa in quanto non dovrà convertire le immagini per proprio conto.

L’aspetto negativo dello spazio lineare è che, ovviamente, il bianco sembra sopraffatto quando è miscelato col nero, poiché in uno spazio lineare i grigi chiari hanno più spazio. Sebbene lo spazio lineare sia fisicamente corretto e una manna quando lavori con motori di resa che seguono le leggi della fisica per videogiochi e ray tracing, in fondo Krita è uno strumento e, se al suo posto avrai preferito la miscelazione scura della TRC sRGB, nessuno ti condannerà.