Modelli di colore
Un tocco di blu non guasta …
Todo

Come faccio a rappresentare i colori in una
immagine?
 Per


formati immagine raster e vettoriali
Come specificare che il mare della mia foto è di
colore blu?
Cerchiamo dei modelli per la rappresentazione
matematica dei colori
 RGB,


CMYK, HSV, Crominanza
Trasparenza
Applicazioni:
 HTML
 SVG
Un passo indietro

Nelle immagini raster ogni pixel
dell’immagine ha associato un
colore.

Nelle immagini Vettoriali ogni
forma geometrica ha un colore
associato.
Come rappresento un colore?
Modelli di colore

Vogliamo rappresentare il colore in modo
matematico
 Associare
ad ogni colore un numero?
 Insiemi di numeri?

Obiettivo
 Rappresentazioni
dei colori nei formati immagine
Sintesi additiva (RGB)
 Sintesi sottrattiva (CMYK)

Sintesi additiva/1
Fenomeno fisico: due fasci di luce colorata
(per esempio rossa e verde) proiettati sulla
parete bianca e riflessi
 il sistema visivo percepisce il colore risultante
dalla mescolanza dei due stimoli come giallo.
 Il giallo è, in questo caso, un colore prodotto
dalla mescolanza additiva del rosso e del
verde


Esempio classico: televisori e monitor.
Sintesi additiva/2

All’occhio arriva l’onda verde insieme a quella
rossa: l’occhio somma le due informazioni e
vede un unico colore: il giallo
Sorgente rossa
+
Sorgente verde
RGB/1

Scelta delle componenti
di colore

L’occhio umano e’
sensibile ai colori
 Rosso,verde
e blu
RGB/2
R(red) G(green) B(blu)
 Modello di colore derivato dalla sintesi additiva
 Ogni
colore è rappresentato dalla somma di tre
componenti: rossa, verde, blu

Ogni colore rappresentato tramite una terna di
numeri reali in [0, 1]
􀁺
(0, 0, 0): Nero
 􀁺 (1, 0, 0): Rosso
 􀁺 (0.5, 0.5, 0.5): Grigio
 􀁺 (1, 1, 1): Bianco
RGB/3

Usare numeri interi per ciascuna componente
k

bit  2k passi di discretizzazione
TrueColor: 8 bit a componente (256 passi)
 (0,
0, 0): Nero
 (255, 255, 255): Bianco
 Complessivamente: 3*8 = 24 bit
 224 ≈ 17 milioni di colori rappresentabili
 L’occhio più raffinato ne distingue 10 milioni!
8 bit
8 bit
8 bit
RGB/4

Colori in formato Hex
 Ogni
componente RGB viene rappresentata in
esadecimale con 2 cifre
 Si concatenano i valori per la componente rosso,
verde e blu
FF
 Esempio:
FF
Giallo: RGB(255,255,0)
 #FFFF00

00
Esercizio
Definire come terna e in formato Hex i
seguenti colori:
 Magenta
Ciano


Arancione
Rosa
esegui Paint
doppio click sulla palette
di colori
Soluzioni

Magenta
 FF00FF

Ciano
 00FFFF

(0, 255,255)
Arancione
 FFA043

(255, 0, 255)
(255, 160, 67)
Rosa
 FFC0FF
(255,192,255)
I colori in HTML




Colori rappresentati in forma esadecimale con un
cancelletto iniziale
Es: ciano:#FF00FF
Si può usare in tutti i tag che contengono attributi di
colore
Esempi:
 <font
color=“#FF00FF”>testo colorato</font>
 <body bgcolor=“#C0C0C0”>sfondo</body>
Vogliamo ricordarlo così …
Struttura base di una pagina HTML
 <html>
 <head>

<title>…</title>
 </head>
 <body>

…
 </body>

</html>
Esercizio 2

Realizzare la seguente pagina HTML:
Una riga magenta
Una riga ciano
Una riga arancione
Una riga rosa
 Usa notepad e salva come pippo.html e visualizza
con il browser
Soluzione 2

<html>
 <head>

<title>Colori</title>
 </head>
 <body>




<p><font color="#FF00FF">una riga magenta</font></p>
<p><font color="#00FFFF">una riga ciano</font></p>
<p><font color="# FFA043 ">una riga arancione</font></p>
<p><font color="# FFC0FF ">una riga rosa</font></p>
 </body>

</html>
Esempio di immagine RGB

Scomposizione nelle componenti RGB di una
immagine

Nota:
 Le
parti rosse del papavero
 Le parti gialle dei fiori
Sintesi sottrattiva/1

Le piante odiano la luce verde!
 Per
questo non la assorbono
La luce verde, riflessa dalle piante (e diffusa),
raggiunge e stimola i recettori dell’occhio
 Le piante amano (e assorbono) le altre
radiazioni luminose, che quindi non
raggiungono il nostro occhio

 Oggetto
nero: assorbe tutta la luce
 Oggetto bianco: riflette tutta la luce
Sintesi sottrattiva/2

Idea: sfruttare questo principio per produrre i colori
su carta
 Usare
dei pigmenti che assorbono solo un colore primario
(RGB).
 Si ottengono così i colori primari complementari ottenuti
dal colore RGB ed eliminando una componente



Assorbo il Rossosono Ciano (= Verde + Blu)
Assorbo il Verde  sono Magenta (= Rosso + Blu)
Assorbo il Blu  sono Giallo (= Rosso + Verde)
Sintesi sottrattiva /3

Mescolando colori primari complementari, si
sottraggono ancora più componenti alla luce
 Esempio:
mescolo Ciano e Magenta
il Magenta assorbe il Verde
 il Ciano assorbe il Rosso
 rimane soltanto il Blu  ottengo il Blu


E’ quello che fanno le stampanti a getto di
inchiostro!
Sintesi sottrattiva /4
Inchiostro ciano

Inchiostro magenta
Come ottengo il verde?
Inchiostro giallo
Sintesi sottrattiva /5

Per ottenere il verde concateno i filtri fino ad
eliminare tutti i colori tranne quello di
interesse
Pellicola d’inchiostro
Ciano (elimino il rosso)
Pellicola d’inchiostro
Giallo (elimino il blu)
4
4 = 1 - 2 - 3
1
2

3
Per gli altri colori si combinano in percentuale
CMYK/1
CMYK è l'acronimo per Cyan, Magenta,
Yellow, BlacK, è un modello di colore detto
anche di quadricromia
 colori ottenibili con la quadricromia (sintesi
sottrattiva) sono un sottoinsieme della
gamma visibile

 non
tutti i colori che vediamo possono essere
realizzati con la quadricromia,
 non tutti i colori realizzati con l'insieme RGB
(sintesi additiva) hanno un corrispondente
nell'insieme CMYK.
CMYK/2



Quindi: ogni colore rappresentabile tramite tre
componenti reali in [0, 1], ossia le quantità dei tre
colori primari complementari(CMY) che devo
mescolare per ottenerlo
Quando sono sovrapposti nelle diverse percentuali,
i primi tre possono dare origine quasi a qualunque
altro colore.
A che serve il nero?
 il
100% di tutte e tre le componenti (CMYK
100,100,100,0) non genera il nero, bensì il bistro, (simile
al marrone molto scuro).
 si è aggiunto l'inchiostro di un quarto colore per avere il
nero pieno (CMYK 0,0,0,100).
Esempio di immagine CMYK

Scomposizione nelle componenti CMYK di
una immagine

Nota:
 Le

parti rosse del papavero
Inchiostro magenta + giallo
Modelli Percettivi/1
Scopo: facilitare l’uso di programmi
 Colori disposti in modo intuitivo.
 Es HSV:
 Tinta
(Hue): colore principale
 Saturazione: grado di purezza del colore
Più saturo: solo il colore della tinta scelta
 Meno saturo: altre componenti cromatiche presenti

 Valore:
presenza di luce nelle altre component
cromatiche
Basso: altre componenti nere
 Alto: altre componenti bianche

Modelli Percettivi/2

Si sceglie un colore
fondamentale
 cerchio

esterno
se ne definiscono i
valori di saturazione e
valore
 rettangolo
interno
La crominanza/1

Torniamo al modello additivo
 Se
conosco la luminanza e due componenti
cromatiche (normalizzate) (es. verde e
rosso),posso ricavare la terza componente (es.
blu)

La TV in bianco e nero trasmetteva la
luminanza􀁺
 Come
colorare la TV? Aggiungendo 2
componenti cromatiche (normalizzate), la
crominanza
La crominanza/2

L’occhio è più sensibile alla luminanza che
alla crominanza!
 Quindi
posso risparmiare spazio rappresentando
meno accuratamente la crominanza
TV: poca “banda” dedicata alla crominanza
 JPEG: uso luminanza/crominanza per rappresentare il
file; sottocampiono la crominanza

Il canale Alpha/1

A volte le immagini TrueColor usano 32 bit
(invece di 24 bit).Perché?
 Aggiungono
un’informazione sulla trasparenza
 Non fa parte del modello di colore!

Dice come comportarsi quando si
“sovrappongono” diverse immagini
Il canale Alpha/2

Canale Alpha: ulteriore reale in [0, 1]
oggetto completamente trasparente –
invisibile!
 1: oggetto opaco – copre completamente ciò che
sta sotto
 0:

TrueColor: trasparenza rappresentata con 8
bit – discretizzata in 256 livelli
Esercizio 3

Aprire Inkscape
 Disegnare

rosso, verde e blu.
 Disegnare

3 cerchi parzialmente sovrapposti
3 cerchi parzialmente sovrapposti
magenta, verde, giallo
 Per
ognuno osservare le componenti RGB e
CMYK
 Modificare la trasparenza
Il colore nelle parti non sovrapposte cambia?
 E in quelle sovrapposte?

Esercizio 4

Aprire Inkscape
 Importare
una immagine Raster
 Applicare la trasformazione vettoriale

Tracciato  vettorizza bitmap riduzione luminosità
 Semplificare


il numero di poligoni
Tracciato  Semplifica
La figura ottenuta è uguale a quella di
partenza?
 Provare
con l’opzione scansione multipla  colori