Profondità di colore

La profondità del colore, nota anche come profondità di bit, è il numero di bit utilizzati per indicare il colore di un singolo pixel, un’immagine bitmap o un frame buffer del video o il numero di bit utilizzati per ciascun componente di colore di un singolo pixel. Per gli standard video dei consumatori, come la codifica video ad alta efficienza (H.265), la profondità di bit specifica il numero di bit utilizzati per ciascun componente di colore. Quando si fa riferimento a un pixel, il concetto può essere definito come bit per pixel (bpp), che specifica il numero di bit utilizzati. Quando ci si riferisce a un componente di colore, il concetto può essere definito come bit per componente, bit per canale, bit per colore (tutti e tre i bpc abbreviati) e anche bit per componente pixel, bit per canale colore o bit per campione (bps). La profondità del colore è solo un aspetto della rappresentazione del colore, che esprime il modo in cui i livelli di colore possono essere espressi (ovvero la precisione del colore); l’altro aspetto è quanto ampia può essere espressa una gamma di colori (la gamma). La definizione di precisione e gamut del colore viene eseguita con una specifica di codifica del colore che assegna un valore di codice digitale a una posizione in uno spazio colore.

Colore indicizzato
Articolo principale: colore indicizzato
Con la profondità del colore relativamente bassa, il valore memorizzato è in genere un numero che rappresenta l’indice in una mappa colori o una tavolozza (una forma di quantizzazione vettoriale). I colori disponibili nella tavolozza stessa possono essere riparati dall’hardware o modificabili dal software. Le tavolozze modificabili sono a volte indicate come tavolozze pseudocolore. La palette stessa ha una profondità di colore (numero di bit per voce), mentre i migliori sistemi VGA offrono solo una tavolozza a 18 bit (262.144 colori) da cui è possibile scegliere i colori, tutto l’hardware video Macintosh a colori offre un 24 bit (16 milioni di colori) tavolozza.

Colore a 1 bit (21 = 2 colori): monocromatico, spesso bianco e nero, compatto Macintoshes, Atari ST.
Colore a 2 bit (22 = 4 colori): CGA, NeXTstation precoce su scala di grigi, Macintoshes a colori, Atari ST.
Colore a 3 bit (23 = 8 colori): molti primi computer domestici con schermi TV, inclusi ZX Spectrum e BBC Micro
Colore a 4 bit (24 = 16 colori): come utilizzato da EGA e dal minimo comune denominatore standard VGA a risoluzione più elevata, colori Macintoshes, Atari ST, Commodore 64, Amstrad CPC.
Colore a 5 bit (25 = 32 colori): chipset Amiga originale
Colore a 6 bit (26 = 64 colori): chipset Amiga originale
Colore a 8 bit (28 = 256 colori): la maggior parte delle workstation Unix a colori, VGA a bassa risoluzione, Super VGA, Macintoshes a colori, Atari TT, chipset AGA Amiga, Falcon030, Archimede Acorn.
Colore a 12 bit (212 = 4096 colori): alcuni sistemi Silicon Graphics, sistemi Color NeXTstation e sistemi Amiga in modalità HAM.
I vecchi chip grafici, in particolare quelli utilizzati nei computer di casa e nelle console per videogiochi, hanno spesso la possibilità di utilizzare una tavolozza diversa per sprite e tessere per aumentare il numero massimo di colori visualizzati simultaneamente, riducendo al minimo l’uso di memoria costosa (& amp; larghezza di banda). Ad esempio, in ZX Spectrum, l’immagine viene memorizzata in un formato a due colori, ma questi due colori possono essere definiti separatamente per ciascun blocco rettangolare di 8×8 pixel.

Colore diretto
Un tipico monitor per computer e scheda video può offrire 8 bit di precisione del colore (256 livelli di output) per canale colore R / G / B, per uno spazio colore a 24 bit complessivo (o spazio a 32 bit, con bit di trasparenza alfa, che hanno poca influenza sulla precisione del colore), sebbene gli standard precedenti offrissero 6 bit per canale (64 livelli) o meno; gli standard DVD-Video e Blu-ray Disc supportano video con una profondità di bit di 8 bit per colore YCbCr con sottocampionamento cromatico 4: 2: 0.

Colore a 8 bit
Un sistema a colori diretto molto limitato ma vero, ci sono 3 bit (8 possibili livelli) per ciascuno dei componenti R e G, e i due bit rimanenti nel pixel del byte al componente B (quattro livelli), consentendo 256 (8 × 8 × 4) colori diversi. L’occhio umano normale è meno sensibile al componente blu rispetto al rosso o al verde (due terzi dei recettori dell’occhio elaborano le lunghezze d’onda più lunghe), quindi viene assegnato un bit in meno rispetto agli altri. Utilizzato, tra gli altri, nella serie di computer del sistema MSX2 nei primi anni ’90.

Non confondere con una profondità di colore indicizzata di 8bpp (anche se può essere simulato in tali sistemi selezionando la tabella adeguata).

Colore alto (15/16 bit)
Il colore elevato supporta 15/16-bit per tre colori RGB. Nel colore diretto a 16 bit, ci possono essere 4 bit (16 possibili livelli) per ciascuna delle componenti R, G e B, più opzionalmente 4 bit per l’alfa (trasparenza), consentendo 4096 (16 × 16 × 16) colori diversi con 16 livelli di trasparenza. O in alcuni sistemi ci possono essere 5 bit per componente di colore e 1 bit di alfa (32768 colori, solo completamente trasparente o no); oppure ci possono essere 5 bit per il rosso, 6 bit per il verde e 5 bit per il blu, per 65536 colori senza trasparenza. Queste profondità di colore vengono talvolta utilizzate in dispositivi di piccole dimensioni con display a colori, ad esempio telefoni cellulari.

Varianti con 5 o più bit per componente di colore sono talvolta chiamati colori alti, che a volte sono considerati sufficienti per visualizzare immagini fotografiche.

18-bit
Quasi tutti gli LCD meno costosi (come i tipici tipi di nematici ritorti) forniscono colori a 18 bit (64 × 64 × 64 = 262.144 combinazioni) per ottenere tempi di transizione dei colori più rapidi e utilizzano il controllo di dithering o frame rate per approssimare 24 bit -per vero colore del pixel o elimina completamente 6 bit di informazioni sul colore. Gli LCD più costosi (in genere IPS) possono visualizzare una profondità di colore di 24 bit o superiore.

True color (24 bit)
Il colore vero supporta 24 bit per tre colori RGB. Fornisce un metodo per rappresentare e archiviare le informazioni di immagine grafica (in particolare nell’elaborazione del computer) in uno spazio colore RGB in modo che un numero molto elevato di colori, sfumature e tonalità possa essere visualizzato in un’immagine, ad esempio in foto di alta qualità immagini o grafica complessa. Di solito, il vero colore è definito per indicare 256 sfumature di rosso, verde e blu, per un totale di 224, o alternativamente 2563 o 16.777.216 variazioni di colore. L’occhio umano può discriminare fino a dieci milioni di colori. L’elaborazione del colore nell’occhio avviene attraverso cellule del cono retinico di tre tipi, sebbene non corrispondenti alle tonalità del rosso, del verde e del blu.

“True color” può anche riferirsi a una modalità di visualizzazione RGB che non ha bisogno di una tabella di ricerca colore (CLUT).

Per ciascun pixel, generalmente viene utilizzato un byte per ciascun canale mentre il quarto byte (se presente) viene utilizzato come canale alfa, dati o ignorato. L’ordine dei byte è in genere RGB o BGR. Alcuni sistemi esistono con più di 8 bit per canale e spesso vengono definiti anche colori reali (ad esempio uno scanner a colori true a 48 bit).

Anche con il vero colore, le immagini monocromatiche, che sono limitate a 256 livelli, a causa del loro singolo canale, a volte possono ancora rivelare artefatti di banding visibili.

Il vero colore, come altri modelli di colori RGB, non può esprimere colori al di fuori della gamma del suo spazio colore RGB (generalmente sRGB).

I sistemi Macintosh si riferiscono a colori a 24 bit come “milioni di colori”.

Lo spazio colore RGBA, o colore a 32 bit, è una variante del vero colore in cui gli 8 bit aggiuntivi sono allocati alla trasparenza e indicano la trasparenza dell’elemento a cui è assegnato il colore, quando è sovrapposto ad altri elementi.

Colore profondo (30/36/48-bit)
Il colore profondo consiste di un miliardo o più colori. Gli spazi colore xvYCC, sRGB e YCbCr possono essere utilizzati con i sistemi di colore profondo.

Deep colour supporta 30/36/48 bit per pixel su tre colori RGB, detti anche 10/12/16 bit per canale / colore / componente / campione. Con un canale alfa della stessa precisione questo diventa 40/48/64 bit per pixel. Schede video a 10 bit per componente (colore RGB a 30 bit), introdotte sul mercato alla fine degli anni ’90. Un primo esempio era la scheda Radius ThunderPower per Macintosh, che includeva estensioni per i plugin QuickDraw e Adobe Photoshop per supportare l’editing di immagini a 30 bit.

I sistemi che utilizzano più di 24 bit in un pixel a 32 bit per i dati di colore reali esistono, ma la maggior parte di essi opta per un’implementazione a 30 bit con due bit di padding in modo che possano avere anche 10 bit di colore per ogni canale, simile a molti sistemi HiColor. I display video professionali a 10 bit forniscono effettivamente 10 bit per canale colore e utilizzano un valore di 95 per il nero e 685 per il bianco; i valori da 685 a 1023 vengono utilizzati per immagini “più bianche di quelle bianche” come riflessi, luci speculari e dettagli simili.

Mentre alcuni sistemi di workstation grafiche high-end e gli accessori commercializzati per l’uso con tali sistemi, come da SGI, hanno sempre utilizzato più di 8 bit per canale, come 12 o 16 (colore a 36 o 48 bit), tale colore le profondità si sono fatte strada solo recentemente nel mercato generale.

Poiché le profondità di bit superano gli 8 bit per canale, alcuni sistemi utilizzano i bit aggiuntivi per memorizzare un intervallo di intensità maggiore rispetto a quello che può essere visualizzato contemporaneamente, come nell’immagine HDRI (High Dynamic Range Imaging). I numeri in virgola mobile sono numeri in eccesso di bianco “pieno” e nero. Ciò consente a un’immagine di rappresentare con precisione l’intensità del sole e le ombre profonde nello stesso spazio colore per una minore distorsione dopo un editing intensivo. Vari modelli descrivono queste gamme, molte delle quali utilizzano l’accuratezza di 32 bit per canale. Nel 1999 Industrial Light & amp; Magic ha rilasciato il formato di file di immagine OpenEXR come standard aperto che supporta numeri a virgola mobile a semicriturazione a 16 bit per canale.

HEVC (High Efficiency Video Coding) definisce il profilo Main 10, che consente una profondità di bit da 8 bit a 10 bit per campione con sottocampionamento cromatico 4: 2: 0. 8 bit per campione consente 256 tonalità per colore primario (per un totale di 16,78 milioni di colori) mentre 10 bit per campione consente 1024 sfumature per colore primario (per un totale di 1,07 miliardi di colori). Il profilo principale 10 è stato aggiunto alla riunione HEVC di ottobre 2012 in base alla proposta JCTVC-K0109 che ha proposto di aggiungere un profilo a 10 bit a HEVC per le applicazioni consumer. La proposta affermava che ciò era necessario per migliorare la qualità del video e supportare il Rec. Spazio colore 2020 che verrà utilizzato da UHDTV. La seconda versione di HEVC ha cinque profili che consentono una profondità di bit da 8 bit a 16 bit per campione.

Supporto del settore
La specifica HDMI 1.3 definisce profondità di bit di 30 bit (1,073 miliardi di colori), 36 bit (68,71 miliardi di colori) e 48 bit (281,5 trilioni di colori). A tale riguardo, le schede grafiche Nvidia Quadro prodotte dopo il 2006 supportano colori profondi a 30 bit come alcuni modelli della serie Radeon HD 5900 come la HD 5970. La scheda grafica ATI FireGL V7350 supporta colori a 40 e 48 bit.

Le specifiche DisplayPort supportano anche profondità di colore superiori a 24 bpp.

A WinHEC 2008, Microsoft ha annunciato che le profondità di colore di 30 bit e 48 bit sarebbero supportate in Windows 7, insieme all’ampia gamma di colori scRGB (che può essere convertita in output xvYCC).

Colore della televisione
Praticamente tutti i display televisivi e i display dei computer formano immagini variando la forza di soli tre colori primari: rosso, verde e blu. Per esempio, il giallo brillante è formato da contributi rossi e verdi approssimativamente uguali, con un contributo blu minimo o nullo.

Aumentare il numero di colori primari può aumentare la gamma di colori che un display può riprodurre, sebbene non sia ancora provato se ciò provochi una differenza per l’occhio umano, dal momento che gli esseri umani sono principalmente tricromatici, sebbene esistano i tetracromati. Le tecnologie recenti come il BrilliantColor di Texas Instruments aumentano i tipici canali rosso, verde e blu con fino a tre altri primari: ciano, magenta e giallo. Mitsubishi e Samsung, tra gli altri, utilizzano questa tecnologia in alcuni televisori per estendere la gamma di colori visualizzabili. La linea di televisori Sharp Aquos ha introdotto la tecnologia Quattron, che aumenta i normali componenti pixel RGB con un subpixel giallo. Vedi anche l’elenco delle tavolozze dei colori.

I CRT analogici, a colori o monocromatici, utilizzano segnali di tensione continua che non hanno un numero fisso di intensità.