Perché lo spazio colore xvYCC non vede assorbimento per la fotografia?


23

Negli ultimi quindici anni, sRGB è stato lo standard principale per i monitor dei computer (e per la stampa di livello consumer). Ora sta cambiando, poiché i monitor retroilluminati a LED di gamma più ampia diventano comuni. Di solito, i fotografi li usano con uno spazio colore come aRGB, che è semi-standard: la mia fotocamera può salvare i JPEG in quello spazio in modo nativo, per esempio.

Ma c'è un nuovo standard ampiamente spinto nel settore AV per sostituire sRGB. Questo è IEC 61966-2-4 - xvYCC (o "xvColor", per scopi di marketing). Questo spazio colore ha una gamma di 1,8 volte maggiore di sRGB, coprendo il 90% della gamma cromatica della visione umana (invece del poco interessante 50% coperto dal nostro attuale denominatore comune). Maggiori informazioni sul sito Web di Sony su xvYCC .

Il punto importante, tuttavia, è che questo non è teorico. Fa parte dello standard HDMI 1.3, insieme a una specifica per l'intensità del colore da 10 a 16 bit per colore ("Deep Color", che viene chiamato). A differenza di aRGB, che è fondamentalmente una cosa di nicchia professionale, c'è un ampio supporto nelle attrezzature a livello di consumatore.

Questo è lo sfondo. La domanda è: dato che questo sta prendendo piede e che probabilmente avremo hardware per computer (e TV!) In grado di supportarlo nei prossimi anni, perché questo viene venduto come praticamente solo un video? Sembra che l'industria delle macchine fotografiche sarebbe felice di salire a bordo.

Sony è entusiasta dell'idea e ha lanciato videocamere che la supportano quattro anni fa. La Playstation 3 lo supporta, per l'amor del cielo! Perché non inserirlo anche nelle dSLR Sony Alpha? E Sony non è sola: anche Canon ha videocamere che lo supportano.

Ovviamente, se stai scattando RAW, il supporto all'interno della fotocamera non è importante. È il software di conversione che le persone dovrebbero prendere a bordo - perché non c'è una spinta per questo? A quanto ho capito, xvYCC è un'estensione di YCbCr, che è già utilizzata nei file JPEG . Ma mentre leggo la letteratura, trovo molte menzioni di standard MPEG aggiornati, ma nulla di immagini fotografiche.

Perché non possiamo avere cose carine?

Risposte:


11

xvYCC è un modo particolarmente intelligente di codificare i dati di colore: abusa della rappresentazione YCC usando combinazioni di valori precedentemente proibite per rappresentare i colori al di fuori della gamma dello spazio RGB utilizzato nello schema YCC. Cioè, alcune tuple YCC vengono decodificate in colori con valori RG o B negativi. In precedenza questi erano semplicemente illegali; in xvYCC questi sono consentiti e gli schermi con gamme più grandi rispetto al sistema RGB sono invitati a renderli nel miglior modo possibile. Quindi è davvero un trucco intelligente per lo più compatibile ottenere una gamma extra senza cambiare molto il formato.

Ha senso usarlo nella fotografia fissa? Non credo proprio. Non c'è davvero la necessità di essere compatibili con YCC, quindi perché non utilizzare uno spazio ad ampia gamma come ProPhoto RGB? O meglio ancora, dal momento che l'utilizzo della profondità di bit extra non è costoso per le immagini fisse, perché non scegliere qualcosa come CIELAB in grado di coprire l'intera gamma percepibile umana? Hai abbastanza bit che la capacità di codificare tutti quei colori immaginari non ti costa una quantità apprezzabile di risoluzione del colore.

Naturalmente, la questione del supporto della fotocamera è un po 'irrilevante: se ti interessa davvero il colore, dovresti estrarre i valori del rilevatore grezzi dalla fotocamera e iniziare da quelli. E anche se lo fai, resterai comunque bloccato nella gamma percettibile della fotocamera. E l'accuratezza della tua rappresentazione del colore dipenderà anche da quanto bene i filtri della tua fotocamera si avvicinano alla risposta spettrale dei coni umani - sbagli e i colori che sembrano identici all'occhio appariranno diversi dalla tua fotocamera. Nessuna codifica lo risolverà. In effetti questo è accaduto con una fotocamera digitale economica che avevo - in questo caso la sua sensibilità IR ha reso le braci viola. Anche se schermate l'IR, le cose con spettri appuntiti come arcobaleni e luci fluorescenti o minerali (e forse alcuni coloranti) mostreranno questo effetto quando gli spettri continuum sembrano a posto.


20

Per iniziare semplicemente, la risposta è "Viene utilizzato per la fotografia fissa!" Spiegherò un po 'di più in un po', e il suo uso è abbastanza di nicchia al momento.

Le radici di xvYCC

La codifica xvYCC è, per quanto ne so, un moderno miglioramento della codifica YCC, o nella sua forma lunga, Y'CbCr (o YCbCr, che è leggermente diverso). La codifica YCC fa parte di una famiglia di luminanza / crominanza spazi colore, che sono tutti in gran parte radicati nello spazio colore L a b * ('Lab' in breve) formulato dalla CIE negli anni '30. Lo spazio colore Lab è anche uno spazio colore Luminanza / Crominanza, in cui la luminanza di un colore è codificata nel valore L * , mentre due assi di crominanza di un colore sono codificati nei valori a * e b * . Il valore a * codifica la metà della crominanza lungo l' asse verde / magenta , mentre il valore b * codifica l'altra metà della crominanza lungo il blu / gialloasse. Questi due assi di colore sono stati scelti per imitare e rappresentare le sensibilità primarie a quattro colori dell'occhio umano, che si trovano anche lungo una coppia di assi rosso / verde e blu / giallo (anche se la vera vista umana comporta una curva rossa a doppio picco, con il picco più piccolo che si verifica nel mezzo della curva blu, il che significa che l'occhio umano è direttamente sensibile al magenta, non al rosso ... da qui l'asse verde / magenta in Lab.)

La codifica YUV

Y'CbCr è probabilmente riconosciuto soprattutto nella forma della codifica video YUV. La codifica YUV è stata appositamente progettata per ridurre la quantità di spazio necessario per codificare il colore per la trasmissione video, ai tempi in cui la larghezza di banda era un prodotto piuttosto scarso. La trasmissione di informazioni sul colore come triplette RGB è dispendiosa, poiché le triplette R, G, B codificano il colore con una discreta ridondanza: tutti e tre i componenti includono informazioni di luminanza e crominanza e la luminanza viene ponderata su tutti e tre i componenti. YUV è una forma a bassa larghezza di banda della codifica colore luminanza / crominanza Y'CbCr che non ha la ridondanza dispendiosa della codifica RGB. YUV può consumare ovunque da 2/3 fino a 1/4 della larghezza di banda di un segnale RGB completo a seconda del formato di sottocampionamento (e, inoltre, memorizza l'immagine di dettaglio completo nel canale di luminanza distinto Y, che supporta comodamente sia il B&W che il come segnali TV a colori con un unico formato di codifica.) Va notato chiaramente che YCC non è in realtà uno spazio colore, piuttosto è un modo per codificare le informazioni sul colore RGB. Penso che un termine più accurato sarebbe amodello di colore di uno spazio colore e il termine modello di colore può essere applicato sia a RGB che a YUV.

Dal riferimento collegato alla domanda originale, sembra che xvYCC sia una forma avanzata di codifica Y'CbCr che memorizza informazioni di colore di luminanza / crominanza codificate con più bit di YUV. Invece di codificare la luminanza e la crominanza in set interlacciati di 2-4 bit, xvYCC codifica il colore in moderni valori a 10 bit.

Utilizzare in fotografia

Curiosamente, esiste un marchio di fotocamere DSLR che utilizza qualcosa di molto simile. Negli ultimi anni Canon ha aggiunto un nuovo formato RAW alle loro fotocamere, chiamato sRAW. Mentre un'immagine RAW normale contiene un dump bayer diretto di dati sensore completi, sRAW non è in realtà un vero formato immagine RAW. Il formato sRAW non contiene dati bayer, contiene contenuto Y'CbCr elaborato interpolato dai dati pixel RGBG bayer sottostanti. Simile ai giorni della TV, sRAW mira a utilizzare informazioni di segnale più originali per codificare i dati di luminanza e crominanza in un formato di immagine ad alta precisione (14 bpc), ma salvaspazio. Un'immagine SRAW può avere una dimensione compresa tra il 40 e il 60% di un'immagine RAW,

Il vantaggio di sRAW è di mantenere un'elevata accuratezza del colore percettivo-umano in un formato di file compatto e di sfruttare meglio i pixel RGBG sul sensore bayer (piuttosto che campionamenti sovrapposti che producono brutti colori moiré, sRAW esegue campionamenti di crominanza non sovrapposti e campionamento della luminanza sovrapposta / distribuita.) Lo svantaggio è che non è un vero formato RAW e le informazioni sul colore sono interpolate e sottocampionate dal sensore bayer completo. Se non hai bisogno della piena risoluzione RAW della fotocamera (ovvero intendi stampare solo 8x10 o 11x16), sRAW può essere un vero vantaggio, in quanto può risparmiare molto spazio (fino al 60% di risparmio su RAW ), consente di risparmiare più velocemente del raw fornendo un frame rate più elevato e fa un uso migliore delle informazioni sul colore acquisite dal sensore rispetto alla RAW a piena risoluzione.


Molto interessante e informativo - grazie! Ma sono ancora sorpreso che questo utilizzo di nicchia sia l'unica cosa finora.
Mattdm,

1
Immagino, tecnicamente parlando, potresti considerare JPEG come un altro formato di immagine che codifica i dati in modo compatibile con YCC. Parte del risparmio di spazio in JPEG è dovuto al fatto che codifica i dati RGB in un formato di luminanza / crominanza, sul quale i dati vengono ulteriormente compressi tramite compressione con blocco a perdita. Mentre la codifica specifica xvYCC non è comune nella fotografia fissa, a pensarci bene, la codifica luminanza / crominanza è in realtà il formato più diffuso.
jrista

7

Hai cose quasi completamente all'indietro. Questo non è un caso in cui la fotografia potrebbe / dovrebbe "recuperare il ritardo" con il video - al contrario, è una questione di video che ha finalmente raggiunto (approssimativamente) le capacità che TIFF (per esempio) fornisce un paio di decenni fa (o giù di lì).

Anche se sicuramente non hai visto molti TIFF a 16 bit / canale 20 anni fa, la capacità era già lì e 16 bit / canale (in TIFF e vari altri formati) ora sono abbastanza comuni. Allo stesso tempo, mi sento in dovere di sottolineare che la maggior parte delle persone sembra trovare 8 bit / canale del tutto adeguati. Solo per un esempio ovvio, JPEG2000 supporta 16 bit / canale e una migliore compressione rispetto al JPEG originale, ma non ha nemmeno vicino all'utilizzo delle specifiche JPEG originali.

Più o meno nello stesso periodo (in realtà, un po 'prima) xvYCC stava lavorando (approssimativamente) al passo con le capacità di TIFF, il formato di file openEXR era in fase di sviluppo. Supporta fino a 32 bit / canale. Anche se non è ancora così ampio, mi aspetto che sarà un po 'come il TIFF e alla fine diventerà più ampio.

Per quanto riguarda lo spazio colore, è vero che il numero maggiore di bit / pixel se xvYCC supporta una gamma più ampia di sRGB. Ancora una volta, tuttavia, ProPhotoRGB (per un esempio) offre una gamma molto più ampia - e (in tutta onestà) è aperto ad una domanda se c'è molto bisogno di uno spazio colore più ampio di quello che ProPhotoRGB già fornisce (circa il 13% dei colori che è possibile rappresentare in ProPhotoRGB sono fondamentalmente immaginari - vanno oltre ciò che la maggior parte delle persone può percepire).

Il vantaggio di xvYCC consiste nel ridurre la quantità di dati necessari / utilizzati per rappresentare un determinato livello di qualità. Per i video HD (in particolare), ridurre al minimo la larghezza di banda è estremamente importante. Per le fotocamere digitali, tuttavia, la larghezza di banda è una preoccupazione molto più piccola - mentre sarebbe certamente bello se (per esempio) potessi adattare il doppio delle immagini su una particolare dimensione della scheda CF, non è un problema particolarmente grave. Relativamente poche persone usano la più grande capacità di schede CF disponibili, né il costo delle schede CF è una parte sostanziale del budget di un tipico fotografo.

In conclusione: in termini di capacità tecniche, xvYCC fornisce poco che non sia già disponibile.

Modifica: probabilmente dovrei aggiungere un altro punto. Gli LCD hanno iniziato a sostituire i CRT per la maggior parte dei monitor nel momento in cui le fotocamere digitali sono state ampiamente utilizzate, ma solo ora i monitor LCD di livello consumer stanno iniziando a superare (o addirittura avvicinarsi) alla risoluzione del colore a 8 bit / canale. Era difficile preoccuparsi di avere 10 o 12 bit / canale quando un monitor tipico poteva visualizzare solo circa 6.

C'è anche il dettaglio minore che a molte persone semplicemente non importa. Per loro, la qualità fotografica rientra in un criterio pass / fail. Tutto ciò che la maggior parte delle persone chiede davvero è che un'immagine sia ragionevolmente riconoscibile. Sospetto che le persone stiano lentamente iniziando ad aspettarsi di meglio, ma dopo anni di Walgreens (o chiunque) che trasforma la loro figlia dai capelli rossi in una bionda (ecc.) Ci vuole un po 'di tempo per abituarsi all'idea che il colore può essere accurato.

Modifica: in realtà c'è un altro passo oltre JPEG 2000: JPEG XR . Questo supporta fino a 32 bit / canale (virgola mobile) HDR. Specifica inoltre un formato file che può includere tutti i normali dati di tipo EXIF ​​/ IPTC, il profilo colore incorporato, ecc. Rilevante alla domanda qui, che include un valore per specificare che un file deve utilizzare lo spazio colore xvYCC (un valore di 11nell'elemento di TRANSFER_CHARACTERISTICSsintassi, tabella A.9, nel caso qualcuno se ne frega). Questo non sembra essere ampiamente utilizzato (almeno ancora) ma supporta direttamente lo spazio colore xvYCC per le immagini fisse.


Grazie; questo è sicuramente un modo di vederlo. So che esistono quei formati di file e spazi colore più ampi. Immagino che ciò a cui sono veramente interessato sia il motivo per cui c'è una spinta per una maggiore profondità di colore nel mondo A / V, ma non nella fotografia di livello consumer.
mattdm,

1
@mattdm: penso che la ragione per cui c'è una spinta perché non era prima. L'ampia gamma di colori / profondità di colore elevata è disponibile per la fotografia fissa da almeno un decennio e, per quanto ne so, le fotocamere digitali hanno supportato Adobe RGB (che ha una gamma più ampia di sRGB, sebbene non supporti del 98% di la gamma Lab) per un certo numero di anni. Lo sRAW di Canon è stato disponibile nelle loro reflex digitali e di livello medio per almeno un paio di anni. Concordo con Jerry ... il video è il dominio che sta "recuperando".
jrista

4

Quindi, per rispondere alla mia domanda un po 'dopo alcune ricerche:

Anche se non è xvYCC, per ragioni che davvero ancora mi sfuggono (dal momento che la codifica JPEG utilizza uno schema più vecchio simile), ci fa sembra essere alcuni incoraggianti si muove su "noi possiamo avere cose belle!" davanti, perché sembra che almeno Microsoft si preoccupi di una gamma cromatica più ampia e di una profondità di bit migliore nella fotografia fissa, almeno un po '.

Sono stati, lentamente ma sicuramente, alla ricerca di un nuovo standard di formato di file chiamato JPEG XR (precedentemente chiamato Windows Media Photo e poi HD Photo). È un interessante passo avanti rispetto al JPEG "tradizionale", che offre una migliore compressione con la stessa qualità dell'immagine e (al punto di questa discussione) un supporto di profondità in bit più elevato.

Anche JPEG 2000 lo fa, ma è stato in gran parte un flop, probabilmente a causa delle preoccupazioni sui brevetti che coprono la compressione wavelet che usa, o forse qualcos'altro. Il punto importante è: Microsoft sta promuovendo JPEG XR ora, presentandolo in molti dei suoi software, incluso Internet Explorer 9 . A partire dal 2009, è un vero standard internazionale ufficiale ed è coperto dalla "Community Promise" di Microsoft per non far valere i propri brevetti in modo ostile contro le implementazioni. Quindi è abbastanza buono per il futuro utilizzo.

E, insieme a quella, che stanno spingendo l'idea di più bit per canale come " high color ", (che è divertente per me, dal momento che nella mia mente che è ancora il vecchio a 16 bit-per- tutti -channels modalità scheda video). Come parte di questo, hanno uno spazio cromatico "intermedio" possibilmente grande chiamato scRGB - leggete qui un bel resoconto dettagliato - che è supportato da JPEG XR, se volete. Potrebbe non essere particolarmente utile come spazio colore finale , poiché la maggior parte dei suoi colori si trova nell'area "immaginaria" al di fuori della percezione umana . Ma in ogni caso, il punto è, Microsoft sta integrando standard-profondità di bit più alto nel sistema operativo Windows, e la fotografia èparte di quello. Da un'intervista CNET un po 'vecchia : "Mi aspetto assolutamente che il supporto scRGB nelle fotocamere accompagni JPEG XR."

Ma è stato nel 2007. Quattro anni e mezzo dopo, non vediamo ancora fotocamere che supportano JPEG XR, per non parlare di fantasiosi spazi cromatici ad ampia gamma di colori. Ma forse sono solo impaziente. Come notano le altre risposte qui, l'hardware di visualizzazione che supporta un'ampia gamma è appena disponibile, il supporto nel sistema operativo più popolare al mondo è piuttosto recente e il primo browser Web a supportarlo è stato rilasciato questo mese . Man mano che ciò accadrà e, si spera, alla fine verrà raccolto da Chrome e Firefox , i programmi di elaborazione delle immagini (inclusi i convertitori RAW) otterranno supporto e seguirà l'effettivo output diretto dalle telecamere.

O tutto fallirà. Il tempo lo dirà. :)


2
Una buona caratteristica di JPEG XR è che è computazionalmente economica, quindi sarebbe fattibile implementare per la codifica interna alla fotocamera, ad esempio. JPEG 2000 è costoso. Questo è certamente un fattore, sebbene forse con la marcia in avanti della potenza di calcolo non così importante.
PeterT

3

Aggiungerò un paio di note intorno a Jon ...

  1. Lo spazio colore è significativo nel contesto di una fotocamera solo quando si parla di JPEG perché, per le immagini Raw, lo spazio colore è una scelta nella fase di "sviluppo". Alcune fotocamere (semi-professionisti Pentax per certi) consentono la scelta di sRGB o aRGB per lo sviluppo JPEG, quindi forse possono aggiungere un terzo (o un quarto per ProPhoto). Inoltre, per la maggior parte dei professionisti, inseriranno l'immagine nello spazio colore desiderato per il supporto di output previsto.

  2. Il visualizzatore (e / o il dispositivo) deve anche essere consapevole dello spazio colore ed essere in grado di gestirlo. Mentre i monitor ad ampia gamma stanno diventando più comuni, sono probabilmente ancora una massiccia minoranza e ci vorrà un po 'per recuperare. Cavolo, conosco un bel po 'di persone che hanno ancora vecchi monitor CRT collegati a computer decenti.


Voglio sottolineare ancora una volta che xvYCC non è uno "spazio colore", è davvero, nella migliore delle ipotesi, un formato di codifica per le informazioni sui colori RGB. Supporta una gamma più ampia non perché è uno spazio colore, ma perché memorizza le informazioni sui colori utilizzando più bit di informazioni e le memorizza in un formato più vicino al modo in cui gli umani percepiscono la luminosità e il colore.
jrista

@jrista, lo standard IEC lo chiama specificamente "Spazio colore YCC a gamma estesa per applicazioni video - xvYCC", il che implica fortemente che si tratta effettivamente di uno spazio colore. Avendo letto su YCC, vedo da dove vieni su questo, e non volendo pagare un centinaio di dollari per leggere lo standard, non posso essere sicuro, ma la mia ipotesi attuale è che specifica sia un modo esteso di specificare informazioni sul colore in YCC e un effettivo spazio colore RGB più ampio.
Mattdm,

1
Dovrò leggere più a fondo nelle specifiche. Non sono ancora sicuro di cosa significhi xv, quindi forse questo si riferisce a una sorta di ampio spazio cromatico di gamma. YCC però, anche se usano più bit, non è certamente una "gamma", è solo un encoding. Sarebbe come dire che RGB è uno spazio colore ... no, è solo un modo per codificare i dati colore. A color spacedefinisce i valori di luminanza e crominanza di ciascun colore tramite un insieme di mappature dei colori primari, un tasto gamma, un punto bianco e nero e alcune curve.
jrista

1
Immagino che "xv" sia "valore esteso", ma può significare semplicemente "soudns cool".
Mattdm,

1

Lo spazio colore xvYCC probabilmente non sta vedendo un assorbimento per la fotografia, perché sono stati sviluppati nuovi standard che sono un miglioramento rispetto agli standard più vecchi, e nessun produttore vuole investire in uno standard che potrebbe deprezzarsi prima che venga sostituito dalla "prossima cosa più grande '. Hanno imparato da VHS vs. Beta.

Il formato immagine ad alta efficienza (HEIF), MPEG-H parte 12, è un formato file che specifica un formato strutturale, dal quale è possibile derivare formati immagine specifici del codec.

HEIF include anche le specifiche per l'incapsulamento di immagini e sequenze di immagini conformi alla codifica video ad alta efficienza (HEVC, ISO / IEC 23008-2 | ITU-T Rec. H.265 o MPEG-H Parte 2).

È menzionato nel Keynote Video Apple del WWDC 2017: https://youtu.be/oaqHdULqet0?t=58m49s .

L'iPhone 7 di Apple e successivi prende ciò che viene fotografato e lo salva in formato JPEG o HEIF. L'utilizzo di HEIF può fornire una soluzione incontaminata da Camera a Storage to Display: un'infrastruttura completa senza perdita o conversione da input a output (quando si utilizza HEIF non compresso).

Non è che supportano completamente tutte le funzionalità (tanto che MPEG è raramente "pienamente supportato") o come se non fosse abbastanza facile per chiunque lo faccia, è solo che sembrano essere i primi ad avere una soluzione completa per le immagini (per i video abbiamo avuto un sottoinsieme di HEVC H.264, H.265 e recentemente HikVision H.265 + per anni).

Se conosci altre fotocamere che supportano HEIF, commenta o modifica, grazie.

Le fotocamere che registrano immagini e video con una gamma dinamica particolarmente elevata (il sensore supera i 16 bit per colore) spesso non elaborano i dati (creano un file compresso) ma producono direttamente i dati grezzi, ad esempio: http: // www .jai.com / it / products / at-200ge - che la videocamera produce da 24 a 30 bit per pixel o http://www.jai.com/en/products/at-140cl - che la videocamera produce da 24 a 36 bit per pixel .

È possibile ottenere una videocamera con spazio colore CIE 1931 (e probabilmente altri spazi colore) se si cerca all'infinito o si è disposti a pagare un fornitore di fotocamere speciali per realizzare esattamente ciò che si desidera, probabilmente si sarà da soli a scrivere il software su converti dal tuo spazio colore a uno utilizzato da altri programmi.

Ecco un link alla videocamera Condor3 CIE 1931 di Quest Innovations: http://www.quest-innovations.com/cameras/C3-CIE-285-USB .

Le telecamere con 3,4,5 o 6 sensori possono dividere lo spettro in pezzi più piccoli e fornire più bit per canale, risolvendo il colore e l'intensità esatti in modo più preciso: http://www.optec.eu/en/telecamere_multicanale/telecamere_multicanale.asp .


Prisma per una telecamera a 3 canali 3CCD o 3MOS

Prisma per una telecamera a 4 canali 4CCD o 4MOS

Prisma per una telecamera a 5 canali 5CCD o 5MOS


Riferimenti:

https://developer.apple.com/videos/play/wwdc2017/503/

https://nokiatech.github.io/heif/technical.html

https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format

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.