Glossary
Gamma
La mappatura non lineare tra valori memorizzati e luce emessa
By Buğra SözeriPublished Updated
Gamma è la relazione non lineare tra i valori dei pixel memorizzati in un file immagine e l’intensità reale della luce emessa da un display. Matematicamente: output_intensity = input_valueγ, dove γ ≈ 2.2 per lo standard sRGB.
Perché non è semplicemente lineare: l’occhio umano è molto più sensibile alle differenze nei toni scuri che in quelli chiari. Una codifica lineare sprecherebbe la maggior parte dei 256 valori di un canale a 8 bit per i dettagli delle alte luci che nessuno può vedere, comprimendo i toni scuri in pochi valori a malapena distinguibili. L’applicazione della gamma alloca più codifica ai valori scuri dove l’occhio si preoccupa davvero.
In concreto: un valore pixel a 8 bit di 128 (a metà tra 0 e 255) non significa metà dell’intensità luminosa. Significa circa il 22% dell’intensità massima, perché 128/255 = 0,502 e 0,502² (la gamma 2.2 è ben approssimata dalla quadratura) ≈ 0,252, ma il trasferimento sRGB completo è leggermente più sfumato vicino allo zero. L’intuizione: i valori del grigio medio sono in realtà abbastanza scuri nella luce lineare.
Implicazioni pratiche: la fusione di due colori nello spazio sRGB “normale” produce risultati che appaiono troppo scuri — la media di nero e bianco in sRGB appare molto più scura del punto medio ottico. Software come Photoshop e Figma offrono opzioni di “blending lineare” che convertono in luce lineare, fanno la media lì, poi ricodificano. Il color-mix(in oklab, ...) di CSS lo fa automaticamente. Gli strumenti gamut-aware lo gestiscono in modo trasparente; la matematica manuale con i codici esadecimali di solito no.
Esempio pratico
Prendiamo il rosso puro sRGB #FF0000 (255, 0, 0) e il verde puro #00FF00 (0, 255, 0). Media ingenua nello spazio sRGB: ((255+0)/2, (0+255)/2, 0) = (127, 127, 0), un oliva fangoso. Convertire prima ogni componente in luce lineare (elevare a 2.2): R→1.0, G→1.0 ciascuno. Media in lineare: (0.5, 0.5, 0). Riconvertire in sRGB (elevare a 1/2.2): (188, 188, 0) — un giallo molto più luminoso e credibile. La differenza tra (127, 127, 0) e (188, 188, 0) su un display calibrato è la differenza tra “perché il mio gradiente sembra fangoso?” e “ah, questo sembra giusto.” Ogni strumento di editing delle immagini con una casella di controllo “blending lineare” sta offrendo esattamente questo compromesso. CSS ora supporta color-mix(in oklab, red, green) che esegue la conversione automaticamente, producendo un punto medio percettivamente uniforme indipendentemente dai colori iniziali.
Quando e perché è importante
La gamma è importante ogni volta che i colori vengono combinati, scalati o antialiasati — il che significa essenzialmente in ogni pipeline di rendering. Il motivo per cui i motori 3D producono output sbiadito e a basso contrasto a meno che non siano esplicitamente scritti per fare un rendering corretto della gamma: le intensità luminose si sommano linearmente in fisica, ma i valori dei pixel sono codificati con gamma; trattare l’uno come l’altro causa un effetto di quadratura dei contributi luminosi. I motori di gioco moderni (Unreal, Unity) eseguono tutto il lighting nello spazio lineare e convertono in sRGB alla scrittura finale del framebuffer. Il consiglio pratico per il web designer: usare oklab o oklch per qualsiasi gradiente che attraversa le tonalità, ed evitare il grigio medio (50% di luminosità) come mix al 50% puro — il punto medio ottico tra nero e bianco è più vicino a L*=50 in CIELAB, che corrisponde a RGB 188, non RGB 128. Riferimento: W3C — sRGB colour space.
Gamma del display vs gamma di codifica vs gamma di sistema: l’immagine sRGB codificata usa una funzione di trasferimento vicina a una potenza 1/2.2 (la curva sRGB formale è lineare a tratti per i valori più scuri e un esponente 2.4 sopra), il display applica una gamma inversa di circa 2.2 per convertire il valore di nuovo in luce, e il prodotto — la “gamma di sistema” che lo spettatore vede effettivamente — si assesta appena sopra 1.0 per compensare l’ambiente di visione in penombra che Rec. 709 e sRGB assumono. macOS prima di 10.6 (2009) usava una gamma di sistema di 1.8 ereditata dalle prime stampanti LaserWriter Apple, motivo per cui le immagini create su Mac più vecchi appaiono spesso sbiadite sui monitor PC; il macOS moderno usa 2.2 come tutti gli altri.
L’HDR rompe completamente questo modello: i formati HDR (Rec. 2100 PQ, HLG) usano curve del quantizzatore percettivo progettate per display che possono raggiungere 1.000-10.000 nit, non le CRT a ~80 nit per cui era calibrato sRGB. Mescolare contenuto sRGB con contenuto HDR richiede un tone mapping esplicito — un argomento che i compositori del sistema operativo ora gestiscono ma che le applicazioni storicamente gestivano male. Vedi sRGB, Display P3 e profili ICC per come gli spazi colore gestiscono gli stessi valori pixel in modo diverso. Riferimento: IEC 61966-2-1 sRGB specification.
Frequently asked questions
- Cos’è la gamma nella tecnologia dei display?
- La gamma è l’esponente nella relazione a legge di potenza tra i valori di pixel memorizzati e la luce emessa: output = input^γ. Una gamma del display di 2.2 significa che un valore pixel di 128 (a metà tra 0 e 255) emette solo circa il 22% della luminosità massima, non il 50% — corrispondendo alla sensibilità percettiva umana per i toni scuri.
- Come influisce la gamma sull’editing delle immagini?
- Se si applica una sfocatura o una regolazione dell’esposizione in luce lineare (gamma = 1.0), i bordi rimangono percettivamente nitidi e i colori si fondono correttamente. Applicando la stessa operazione in valori con correzione gamma codificata (sRGB) si creano aloni scuri attorno agli oggetti luminosi e una miscelazione di colori incorretta. Strumenti professionali come Photoshop offrono entrambe le modalità.
- Qual è la differenza tra codifica gamma e correzione gamma?
- La codifica gamma (o compressione gamma) viene applicata durante il salvataggio di un’immagine: i valori dei pixel luminosi vengono compressi per allocare più valori di codice ai toni più scuri. La correzione gamma (decodifica) viene applicata dal display per ripristinare l’output di luce lineare. sRGB usa una funzione di trasferimento gamma ≈ 2.2 per la codifica.
- Quale valore di gamma usano i monitor moderni?
- I monitor consumer puntano a una gamma di 2.2, che corrisponde agli standard sRGB e BT.709. Mac OS ha storicamente usato gamma 1.8 fino al 2009, quando Apple è passata a 2.2. I display HDR usano le curve PQ (Perceptual Quantizer) o HLG invece di una semplice legge di potenza.
Related
Published May 16, 2026 · Last reviewed May 31, 2026