La gamma è ancora importante da tenere in considerazione?


17

I diversi monitor (inclusi gli schermi mobili) utilizzano ancora funzioni gamma significativamente diverse quando si visualizzano immagini a colori? Esiste un modo standardizzato per rappresentare il colore che può quindi essere tradotto in base alla gamma del monitor, o sono tutti sufficientemente simili da escludere la necessità al giorno d'oggi?


5
Direi che questo post è in tema. Sembra essere fortemente correlato a GPU Gems 3: Chapter 24. The Importance of Being Linear http.developer.nvidia.com/GPUGems3/gpugems3_ch24.html
Alan Wolfe,

5
Se qualcosa è in tema altrove non è rilevante per questa decisione. Dobbiamo solo sapere se è in tema qui .
trichoplax,

1
Sto deliberatamente pubblicando domande borderline per misurare dove si trova il confine. Si prega di sollevare quante più incertezze possibili su Meta.
trichoplax,

3
Essere benvenuti altrove non è mai solo una ragione adeguata per dichiarare qualcosa di fuori tema qui .
Chris dice di reintegrare Monica il

2
@robobenklein da nessuna parte nell'ambito di questo stack afferma che questo stack è specifico per la grafica 3D.
Qix,

Risposte:


15

Sì, mentre molte schermate e operazioni del sistema operativo utilizzano una gamma di 2.2, i risultati dell'hardware e del calcolo devono ancora essere corretti. Ci sono anche mezzi speciali come le trasmissioni televisive che hanno una gamma diversa. Le apparecchiature di sensori come le fotocamere sono per lo più lineari, quindi devono essere regolate di conseguenza. Inoltre, l'utente può impostare il proprio sistema su qualunque gamma preferisca.

Nella computer grafica il motivo principale per tenere conto della gamma è che il calcolo viene probabilmente eseguito nello spazio lineare * o che sommare i contributi di luce diventa inutilmente complicato. In ogni caso la gamma è davvero una semplificazione delle cose, sarebbe molto meglio fare profilo per profilare le conversioni se fosse possibile investire il tempo di calcolo per farlo.

Spiegazione matematica

g(X)g(X)

un'+B+c+d

aBcdg(X)

g(g-1(un')+g-1(B)+g-1(c)+g-1(d))

Dovresti farlo ripetutamente per ogni elemento secondario. Pertanto, invece di eseguire la trasformazione ogni volta che trasformi tutto una volta in lineare e poi una volta indietro.

E infine una ragione artistica

Potrebbe solo apparire meglio con una gamma diversa. Molti giochi hanno una regolazione gamma per questo motivo.

* Il caso peggiore è che ritieni che i tuoi calcoli siano lineari ma non compensi le caratteristiche di uscita non lineari dei monitor.


Abbiamo ancora il lattice?
joojaa,

2
No, ma speriamo di farlo in futuro . Sentiti libero di aggiungere la tua risposta come esempio per la sua necessità, però.
Chris dice di reintegrare Monica il

Se vuoi mostrare come sarebbe la tua risposta se avessimo MathJax, per aiutare a risolvere il caso, puoi usare mathurl.com .
trichoplax,

11

Lo spazio cromatico standard di fatto per le immagini digitali in questi giorni è sRGB . sRGB è un buon presupposto predefinito se si lavora con uno schermo il cui spazio colore esatto non è noto (ovvero la maggior parte dei display casuali su cui qualcuno potrebbe eseguire l'app) o le immagini la cui codifica dello spazio colore non è nota (ovvero la maggior parte dei file immagine casuali che si possono incontrare) .

Lo standard sRGB definisce la cromaticità CIE dei primari rossi, verdi e blu puri e il punto bianco; in altre parole, definisce ciò che tali primari e bianchi dovrebbero percettivamente assomigliare rispetto alle lunghezze d'onda pure.

sRGB definisce anche una curva gamma che viene utilizzata per codificare i valori RGB. La curva gamma è la parte di cui i programmatori grafici si occupano di solito, poiché dobbiamo convertire i colori avanti e indietro tra sRGB e lineare per eseguire l'illuminazione fisica in modo corretto. Tutte le moderne GPU hanno il supporto sRGB integrato: possono applicare automaticamente le trasformazioni gamma nell'hardware quando campionano una trama o scrivono un valore di pixel su un target di rendering.

Per quanto riguarda i monitor, con uno di alta qualità dovrebbe essere possibile calibrare le sue impostazioni (o può essere pre-calibrato) in modo che il suo output corrisponda all'SRGB il più fedelmente possibile. Nel caso in cui il monitor stesso non riesca a farlo, una quantità limitata di correzione del colore può anche essere eseguita sulla GPU durante la scansione; ci sono alcune piccole tabelle di ricerca hardware attraverso le quali i valori RGB vengono mappati prima di essere inviati via cavo.

Potresti anche imbatterti in Rec. 709 , che è lo spazio colore standard per i televisori ad alta definizione; è molto simile a sRGB, usando gli stessi primari e punto bianco, ma una curva gamma leggermente diversa. Alcuni monitor di fascia alta usano lo spazio cromatico Adobe RGB , che ha una gamma leggermente più ampia di sRGB; i fotografi tendono a preferire quelli perché rappresentano più fedelmente come appariranno le foto quando stampate. La prossima generazione di TV HDR che uscirà (si spera) nei prossimi anni userà il Rec. 2020 , che ha una gamma enorme e richiede 10 o 12 bit per componente anziché 8.

Quindi, per tornare alla tua domanda se devi preoccuparti di diversi monitor con gamma diversa: non molto. Per i giochi e la grafica generale per PC puoi praticamente assumere sRGB e pensare che se l'utente si preoccupa davvero della precisione del colore, avrà un buon monitor calibrato. Se stai producendo software per fotografi o supporti di stampa o per standard video HDR di nuova generazione, potresti doverti preoccupare degli spazi colore di vasta gamma.


Anche i monitor di gamma più ampia inizieranno ad essere all'ordine del giorno nel prossimo futuro. Ad esempio, non eseguo la calibrazione su sRGB sulla mia stazione di lavoro artistica, ma il convertitore da profilo a profilo rende le immagini ancora uguali a quelle sulla mia macchina di sviluppo.
joojaa,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.