Università degli Studi di Modena e Reggio Emilia Dipartimento di Ingegneria dell’Informazione http://imagelab.ing.unimo.it Il colore nelle immagini digitali Prof. Ing. Rita Cucchiara Dipartimento di Ingegneria dell’Informazione Università di Modena e Reggio Emilia, Italy Modena, 2 marzo 2004 Agenda l l l l Elaborazione digitale del colore: contesti applicativi Acquisizione e rendering del colore Spazi colore Elaborazione del colore Elaborazione digitale del colore Dove si applica? Computer graphics Imaging Computer Vision Multimedia Spettroscopia Misurazione del colore tramite opportuni strumenti Non elaborazione digitale del colore ma di valori numerici Rappresentanti il colore Misurazione del colore Spettroscopia l l l l l La misurazione del colore si basa sulla spettroscopia ottica, con processi d’interazione luce-materia (assorbimento, riflessione, luminescenza..). sistema di illuminazione; camera o spettrofotometro Sistema di sistema di rivelazione; illuminazione oggetto sotto esame. ε1 ε2 l Diverse tecniche: Direzione del moto l Spettrofotometriche misura lo spettro di potenza della luce riflessa con un un dispersore di luce, (monocromatore), un rivelatore di luce, (fotomoltiplicatore), fotodiodo, lineari o matriciali (Charge Coupled Device). l Tricromatriche l consente una misura diretta delle coordinate di cromaticità l senza misurare lo spettro della radiazione. l la misurazione strumentale del colore deve essere rapportata al sistema visivo dell'uomo Elaborazione digitale del colore Dove si applica? Computer graphics Imaging Computer Vision Sintesi di immagini A partire da modelli • matematici (forme 2D e 3D) • fisici (rendering del colore, shadowing) • cinematici (movimento) •Produzione grafica •Animazione •Video art Multimedia Elaborazione digitale del colore Dove si applica? Computer graphics Imaging Computer Vision Elaborazione e miglioramento della qualità dell’immagine per una fruizione umana elaborazione del pixel eliminazione del rumore fotoritocco correzione del colore Multimedia Elaborazione digitale del colore Dove si applica? Computer graphics Imaging Computer Vision Multimedia Emulazione al computer dei modelli •percettivi •cognitivi alla base della visione umana •Analisi dell’immagine •Classificazione e localizzazione •Riconoscimento della scena •Visione robotica…. Sistema di visione artificiale Elaborazione digitale del colore Dove si applica? Computer graphics Imaging Computer Vision Multimedia Gestione e fruizione delle immagini •Compressione •Annotazione manuale-automatica •Indicizzazione •Ricerca per contenuto Elaborazione digitale del colore Acquisition and digitalization Pixel-level processing A priori Knowledge models ImageDB image analysis compression transcoding scene recognition internet|/ intranet internet|/ intranet display Remote clients Human/robot interface Acquisizione del colore Dipende dalla •Illuminazione •Dalla natura dell’oggetto •Dall’osservatore Osservatore umano e’ diverso dall’osservatore digitale l tre tipi di colori: l l l colori spettrali (prodotti da radiazioni contenenti una stretta fascia di lunghezze d’onda), magenta o porpora (radiazioni contenenti una combinazione degli estremi dello spettro visibile, cioè blu-viola e rosso-giallo), bianco (radiazioni a spettro continuo) l La teoria di Young-Helmholtz (1801) ipotizza che per riprodurre la sensazione di un colore si possano combinare opportunamente tre radiazioni primarie (sistemi tricromici) Sensibilità relativa dei coni l Tre tipi di coni (circa 6-7 milioni rispetto ai 120 milioni di bastoncelli) l I coni-S (S-cone, ovvero short-wavelength sensitive cone) picco di assorbimento 437 nm; l la loro massima sensibilità è per il colore blu-violetto; il pigmento in essi contenuto è detto cianolabile. Il fatto che la loro curva di assorbimento sia molto più bassa di quella degli altri due tipi di coni dipende dal ridotto numero di coni-S presenti nella retina: costituiscono meno del 10% del totale complessivo e sono quasi del tutto assenti dalla fovea, che è la parte della retina più sensibile alla visione del colore. l I coni-M (in inglese M-cone: middle-wavelength sensitive) picco di assorbimento 533 nm; l sono sensibili principalmente al colore verde; il pigmento in essi contenuto è detto clorolabile . l I coni-L (L-cone: long-wavelength sensitive) picco di assorbimento 564 nm; l sono sensibili principalmente nella gamma dei rossi; il pigmento in essi contenuto è detto eritrolabile Teoria tricromatica l Il nostro occhio, a differenza dell’orecchio, non è in grado di effettuare un’analisi spettrale, ma riporta una sensazione risultante dalla combinazione di tutte le lunghezze d’onda visibili Sensazione e percezione del colore l Teoria tricromatica l non e’ necessario duplicare una data distribuzione spettrale per generare una sensazione di colore esattamente uguale l due osservatori possono avere sensazioni di colore diversi l due strumenti di acquisizione possono avere sensazioni di colore diverse Metameria L’osservatore puo’ vedere uguali colori che sono diversi Metameria Il sistema di acquisizione puo’ vedere diversi colori uguali … o uguali colori che sono diversi Acquisizione Moltre trasformazioni di colore necessita’ di filtri digitali per la correzione del colore Elaborazione del colore l Retinex Retina and cortex system l Modello Retinex (Land 1977) l I recettori della retina sono 3 sistemi che creano tre immagini indipendenti dagli altri come tre immagini a livello di grigio l Algoritmi per la correzione del colore basati sulla color constancy l ACE (Marini Rizzi 2000) l Automatic color equalization Rendering del colore l Restituzione del colore: l veritiera o piacevole all’occhio umano? l …..Studi sulla psicologia della percezione Riproduzione del colore l Un colore può essere riprodotto con tre tecniche fondamentali in grado di riprodurre lo stesso stimolo: l sintesi adittiva: miscela di luci di differente cromaticità l (es monitor) l sintesi sottrattiva: miscela o sovrapposizione di mezzi che assorbono diversamente alcune componenti spettrali l (es printer) l integrazione spaziale: punti diversamente colorati e vicini che nell’occhio vanno a sovrapporsi producendo un risultato analogo alla sintesi addittiva (questo processo si ha nella stampa di inchiostri mediante retinatura) Color management systems l I problemi di riproduzione fedele del colore l Trasformazione del colore l International Color Consortium (ICC) 1993 HP, Kodak, Microsoft, Apple, Sony, AGFA… l www.color.org l l l l Color management system 1) descrizione del colore indipendente dal dispositivo 2) profili colore 3) trasformazioni colore Spazi colore l Come rappresentare il colore al calcolatore: l Spazi tridimensionali in cui ogni colore rappresenta un punto l l l l l Modelli percettivi CIE (CIELab, XYZ) Modelli orientati all’hardware RGB, CMY Modelli orientati alla trasmissione YUV, YIQ Modelli orientati alla compressione YCbCr Modelli alla elaborazione “intuitiva” HSI, HSV Color RGB sRGB CIE XYZ CIE L*a*b* CIE L*u*v* Spherical LAB HSV HSI YCbCr Meaning Generic Red, Green, Blue unspecified primaries Standard RGB; http://www.srgb.com/ Virtual positive primaries, direct relation to spectral power distributions. (also CIELAB) standard; http://www.cie.co.at (also CIELUV) standard; http://www.cie.co.at L Luminance, AB angular space; [10] Hue, Saturation, Value components Hue, Saturation, Intensity components Luminance and chrominance separation for digital video transmission Acquisizione standard l RGB: lo spazio RGB e’ legato alla nostra percezione del colore? CIE e colorimetria l Nel 1931 CIE Commission Internationale d’Eclairage l Definisce l’osservatore colorimetrico standard (media di 18 osservatori) l Spazio RGB λb = 435.8nm, λg = 546.1nm, λr = 700.0nm Spazio XYZ (1931) l Le coordinate RGB devono essere anche negative per riprodurre gli stimoli corrispondenti a tutte le componenti dello spettro. Inoltre manca una evidenziazione della componente relativa alla luminanza dello stimolo. l Nasce così il sistema XYZ nel quale la Y rappresenta la componente luminanza e le funzioni colorimetriche sono tutte positive. l Questo spazio è il riferimento per tutti gli studi successivi sulla colorimetria X 0.4900 0 .3100 0.2000 R Y = 0.1770 0 .8124 0.0106 G Z 0 0 .0100 0.9900 B l I primari XYZ sono immaginari (non riproducibili) Spazio XYZ l Diagramma CIE XYZ 1931 Email [email protected] Diagramma XYZ Diagramma XYZ SPAZIO CIELAB l A tutt’oggi lo spazio CIEXYZ è considerato il riferimento assoluto per tutte le definizioni di colore, ma ha un grande difetto: descrive la natura fisica del colore e non la sua percezione da parte dell’osservatore. l Vengono quindi definiti nel 1976 una serie di spazi colore tra i quali il CIELAB è diventato lo standard de-facto nella pratica colorimetrica industriale. l La prima coordinata di questo spazio può essere ottenuta dalle seguenti formule: 1 L* L* Y 3 = 116 Y n Y = 903 . 3 Yn − 16 Y Yn Y Yn > 0 . 008856 ≤ 0 . 008856 l questa è chiamata Chiarezza(Lightness) CIE 1976 e riproduce la percezione della luminosità dell’Osservatore Standard, riferito ad un illuminante le cui caratteristiche sono (Xn,Yn=100,Zn) l Questa scala è con ottima approssimazione uniforme ed è definita nell’intervallo [0,100] SPAZIO CIELAB l l l Le altre due coordinate sono a* e b * definite come: a * = 500 b * = 200 dove X Y f − f X n Yn Y Z − f f Yn Z n x 3 f (x ) = 7 . 787 x + 1 16 116 x > 0 . 008856 x ≤ 0 . 008856 Su ogni piano a chiarezza costante si possono definire angolo di tinta (hue) e croma (saturazione). La differenza tra colori può essere espressa come distanza euclidea tra i vettori dei colori. Teoria di Hering: colori opponenti Red-Green Blu-Yellow MONITOR CRT l Il sistema televisivo è concepito partendo dalla struttura del tubo a raggi catodici (CRT) che sintetizza il colore tramite integrazione spaziale di fosfori RGB disposti a mosaico sullo schermo. l Lo spazio colore che utilizziamo è quindi costruito in base alle cromaticità delle luci emesse dai tre tipi di fosfori l Si ottiene dunque uno spazio RGB in cui sono realizzabili solo i colori racchiusi in un cubo, i cui vertici rappresentano le coordinate colorimetriche dei fosfori. L’intersezione di questo spazio con il piano R+G+B=1 produce un triangolo che può essere rappresentato nello spazio CIEXYZ e si chiama gamut del monitor SPAZIO RGB AL CALCOLATORE l La rappresentazione del colore nei calolatori è tipicamente pensata in funzione delle schede video che dovranno pilotare un monitor CRT e si basa sull’RGB l Tipica rappresentazione è il cosiddetto truecolor che utilizza tre valori a 8 bit per ogni pixel, per comandare i tre segnali che vanno al monitor. l E’ logico supporre, in mancanza di altre informazioni, che quando si lavora con immagini digitali al calcolatore si stia lavorando con valori acquisiti e corretti con un fattore gamma. Lv Lv , max l E = E max γ Al contrario, nel generare immagini sintetiche nelle quali sia importante la percezione umana, è importante conoscere le trasformazioni operate dalla scheda video, che possono introdurre altre correzioni. Spazi RGB l Esistono circa 200 spazi RGB che dipendono dalle lunghezze d’onda e dagli illuminanti di riferimento l RGB NTSC l RGB PAL l RGB ITU-R BT.709 (piu’ saturato e usato monitor) l Spazio S-RGB standard 1996 HP e Microsoft l http://www.w3.org/hgraphics/color/sRGB Utilizza un monito rvirtuale con adattamento dei fosfori, correzione gamma e punto di bianco come standard ITU-RBT-709 Monitor e stampanti Le stampanti e il video non riproducono gli stessi colori Gamut mapping Gamut mapping R. Schettini Milano Bicocca (2003) Spazi di Colore trasmissivi e di compressione l Quando venne creato, il segnale video doveva essere visibile anche a televisioni in bianco e nero, quindi si pensò di separare la componente luminanza (Y) da altre due, dette di crominanza. l Nasce una serie di standard tra i quali ricordiamo: l l l l YIQ YUV YCC YCBCR (NTSC) (PAL) (Kodak PhotoCD) (Digital Video, JPEG, MPEG) l Mentre gli standard YIQ e YUV hanno importanza nel mondo dei segnali analogici (video composito), nel digitale ha assunto un ruolo dominante lo standard YCBCR. l Le formule di conversione nel caso di valori RGB [0..255] tipici del calcolatore sono: Y C B C R 16 = 128 128 1 + 256 65 . 738 − 37 . 945 112 . 439 129 . 057 − 74 . 494 − 94 . 154 25 . 064 112 . 439 − 18 . 285 R G B l Y ha un range [16..235], mentre CB e CR variano in un range [16..240] Esempio YCBCR l In questo esempio è possibile vedere l’effetto di una scomposizione YCBC R JPEG e MPEG JPEG nato per comprimere con perdita di informazioni immagini fotografiche a colori, dai contorni generalmente piu’ sfumati delle immagini sintetiche: immagine convertita in luminanza Y e crominanza CbCr l’occhio e’ piu’ sensibile a Y e quindi si riduce solo la crominanza ( es per 2 o 4 pixel adiacenti si sostituisce la loro crominanza media) Formato 4:2:2 Spazi ordinati per la grafica l Oltre allo standard RGB questi spazi vengono usati per introdurre un qualche tipo di specificazione numerica del colore. l Questo tipo di trasformazione è utile se si esegue una elaborazione di immagini per una interfaccia con l’operatore umano. l Non hanno alcuna pretesa di precisione e vengono ricavati come trasformazione da uno spazio RGB indefinito per coordinate e per gamma. l Rappresentazione con luminanza e crominanza (A.H. Munsell) l Tutti caratterizzati da due concetti di base: l H l S = Hue = Saturation “Tinta” “Purezza” Hue Saturation Spazio HSV l HSV (hue, saturation, value): H è un angolo tra 0 e 360 gradi, S e V sono valori tra 0 ed 1. E’ una trasformazione dello spazio 0 ≤ R,G,B ≤ 1, dove si definiscono per ogni punto = max Max = min Min (R , G , B ) (R , G , B ) l Le coordinate sono allora date dalle seguenti formule: = Max (Max − Min S = Max G − B (Max − Min ) B − R 2 + (Max − Min ) R − G 4 + (Max − Min ) V H π = 6 ) Max = R Max = G Max = B Spazio HLS l Introdotto dalla TEKTRONIX come suo “color standard” l Non è altro che una versione rielaborata del sistema HSV dove al “value” viene sostituita la “lightness”: L = Max + Min 2 l Cambia solo la definizione di S: − Min Max S = MaxMax+ Min − Min 2 − (Max + Min L ≤ 0 .5 ) L > 0 .5 l La struttura a piramide dell’HSV viene raddoppiata come mostrato nello schema qui accanto. l Questo, ad esempio, è il sistema usato nella dialog box standard per la selezione dei colori di Windows Quantizzazione cromatica l La risoluzione cromatica è un compromesso costo prestazioni. l Non sempre è necessario avere a disposizione tutti i colori delle immagini truecolor (24 bit per pixel,8 per ogni canale), specie in applicazioni tipiche della grafica. l E’ quindi possibile risparmiare spazio di memorizza-zione e ridurre il carico computazionale, riducendo il numero di colori. l Per ridurre il numero di livelli di colore: l si usano meno bit per banda (es. 5-5-5 o 5-6-5 nel caso dell’hicolor a 15 e 16 bit rispettivamente) l si usa una look-up table (mappa di colori): si sceglie un numero finito di colori (es. 256) memorizzati su una tabella ed il valore del pixel e’ un puntatore a tale tabella che contiene terne RGB l L’elenco dei colori disponibili è chiamato palette (più comune dell’italiano paletta, comunque corretto) l “Anticamente” la scheda CGA aveva una palette a 4 colori, l’EGA a 16 colori e la “rivoluzione” si ebbe con la scheda VGA che consentiva una palette a 256 colori! Esempio Immagine bitmap a 256 colori Vediamo il contenuto del rettangolo alle coordinate x=100..104, y=100..104 190 190 182 167 158 190 188 182 170 158 191 188 187 170 158 188 188 183 174 170 186 188 186 182 173 valori puntatori alla mappa RGB Palette: ... 186 187 188 189 190 191 ... 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 0.6118 0.5490 0.5686 0.6353 0.6118 0.6471 0.3216 0.3529 0.4000 0.3255 0.4510 0.4196 Valori RGB [0.0,1.0] Selezione della Palette l Nell’operazione di quantizzazione dei colori ha un ruolo fondamentale la scelta della palette l E’ possibile utilizzare una palette standard che contenga un sottoinsieme dei possibili colori, scelto dividendo il cubo RGB in un numero standard di passi per ogni canale.Questa operazione può essere fatta scegliendo un passo pari a: N = 3 Elem l dove Elem indica il numero di elementi da inserire nella palette. E’ facile verificare come nel caso di 256 elementi il numero di passi debba essere 6, che porta ad una palette di 216 elementi equispaziati, mentre i restanti possono essere scelti a piacere (ad esempio tonalità di rosa per meglio rappresentare la pelle). Palette ottimizzata l E’ possibile ottimizzare la riduzione dei colori scegliendo una palette che rappresenti al meglio lo spazio dei colori dell’immagine. l Paul Heckbert (1980), Median Cut Algorithm: l si calcola l’istogramma tridimensionale dei colori contenuti nell’immagine; l si trova il minimo parallelepipedo orientato come gli assi che contenga tutti i colori l si sceglie la direzione più lunga del box e si taglia nel punto che lascia (circa) lo stesso numero di elementi nelle due metà (taglio mediano) l si ripete il taglio del box con più elementi (o il più grande come volume) fino a quando non si sono ottenuti tanti box quanti i colori richiesti. I colori rappresentativi saranno dati dalla media dei colori inclusi nel box. l Solitamente i programmi di graficano utilizzano come metrica la distanza euclidea nello spazio RGB, anche se questo non è percettivamente così significativo. Confronto tra Palette l Immagine originale a 24 bit l Immagine a 8 bit con palette standard l Immagine a 8 bit con palette ottimizzata Elaborazione dell’immagine basata sul colore l Feature visuali in computer vision l l l l Movimento Colore Tessitura Forma (shape) Operatori Computer vision Multimedia ( es standard MPEG-2 MPEG-4) l Segmentazione del colore l Algoritmi di color clustering l Segmentazione di colore e movimento l Background suppression and Shadow removal l Clustering l Mosaicatura e blending l Istogrammi di colore per indicizzazione l Riconoscimento sul colore Riduzione del colore- PCA l Riduzione dello spazio colore nelle due componenti dominanti l Tecnica di Principal Component Analysis l Le prime componenti contengono la maggiore informazione RGB 1 2 3 Segmentazione del colore l Ricerca di zona con colore “simile” l Algoritmo di Recursive fuzzy c-means R. Cucchiara, C. Grana, S. Seidenari, G. Pellacani, in Machine Graphics and Vision, vol. 11, n. 2/3, pp. 169-182, 2002 Analisi delle relazioni tra zone del colore l l l l Estrazione di zoni di colore “ simile” Operazioni di clustering Analisi delle relazioni spaziali tra immagini Descrittori di immagini Analisi del colore e del movimento l Color clustering e Markof Random Field R. Cucchiara, A. Prati, R. Vezzani, Real time Imaging (2004) Analisi del colore: shadow removal l Shadow analysis in HSV space Prati, Mikic, Trivedi Cucchiara IEEE Trans PAMI 2003 http:// imagelab.ing.unimo.it Esempio Conclusioni Per informazioni … http://Imagelab.ing.unimo.it Prof. Rita Cucchiara Ing. Costantino Grana Si ringrazia il Prof. Raimondo Schettini dell’Universita’ di Milano Bicocca Per la disponibilità del materiale digitale