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