elaborazione digitale di immagini - leoausili.it · noi useremo gimp negli esempi e in laboratorio...

70
Elaborazione digitale di immagini Una volta codificata un'immagine con un numero (ovvero, una serie di numeri), possiamo elaborarla a nostro piacimento! Ovviamente, siamo interessati a elaborazioni che hanno senso dal punto di vista grafico Nel seguito faremo alcuni esempi; è indispensabile la sperimentazione in laboratorio!

Upload: phungtuong

Post on 15-Feb-2019

236 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Elaborazione digitale di immagini

● Una volta codificata un'immagine con un numero (ovvero, una serie di numeri), possiamo elaborarla a nostro piacimento!

● Ovviamente, siamo interessati a elaborazioni che hanno senso dal punto di vista grafico

● Nel seguito faremo alcuni esempi; è indispensabile la sperimentazione in laboratorio!

Page 2: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Elaborazione digitale di immagini

● Distinguiamo tre famiglie di elaborazioni:– trasformazioni geometriche– elaborazioni sul colore– filtri e convoluzioni

● Ogni elaborazione può essere applicata all'intera immagine o a una parte di essa– la selezione di parti è di per sé un argomento

interessante

Page 3: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Strumenti per l'elaborazione digitale

● In teoria, l'elaborazione digitale di immagini consiste solo di qualche operazione matematica...

● Ma in pratica, i dati in una qualunque immagine sono talmente tanti che è impossibile elaborarla senza usare un programma apposito

● Noi useremo GIMP negli esempi e in laboratorio● Molto diffuso (ma a pagamento) è anche

Photoshop (in varie incarnazioni)

Page 4: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

The GIMP

● GIMP: un programma open-source, gratuito, disponibile su tutte le piattaforme, potente quanto le alternative commerciali

● Esiste anche in versione per i film

Page 5: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Selezione di parti di immagine

● Data un'immagine, esistono diversi criteri per selezionare una sua parte– criteri geometrici

● la selezione è la parte di immagine compresa entro certi confini, indicati dall'utente

– criteri colore● la selezione è la parte di immagine il cui colore

soddisfa certi criteri, indicati dall'utente● Altri criteri sono di uso particolare

● es: la selezione è la regione corrispondente a un testo appena aggiunto all'immagine

Page 6: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Selezione geometrica

● Rettangolo ed elisse selezionano aree con forma geometrica regolare

● Il “lazo” seleziona un'area di formairregolare,disegnataa manodall'utente

Page 7: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Selezione per colore

● La “bacchetta magica” seleziona un'area contigua con colori simili

● La “palette” seleziona tutte le partidell'immaginecon lo stessocolore(o simile)

Page 8: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Selezioni combinate

● È poi possibile invertire, unire, rimpiazzare, intersecare selezioni diverse, fino ad ottenere il risultato desiderato

● Esistono funzioni per allargare o restringere l'area selezionata– per includere o escludere i dettagli del bordo

● La selezione può essere salvata e caricata indipendentemente dall'immagine– utile per lavorare su più immagini simili

Page 9: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni geometriche

● Le trasformazioni geometriche cambiano l'informazione spaziale dell'immagine

● Casi tipici:– ingrandimenti e riduzioni– spostamenti, rotazioni– ribaltamenti, riflessioni speculari– ritaglio

Page 10: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni geometriche● Esempio:

– selezioniamo la testa di Valentino con lo strumento Ellisse e un bordo sfumato

– lo spostiamo a destra (lasciando un buco)– lo ruotiamo di 30° in senso antiorario– lo incolliamo nella nuova posizione

Page 11: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni colore

● Le trasformazioni colore alterano i colori che compongono l'immagine, senza alterarne l'aspetto geometrico

● Possono essere applicate all'intera immagine (o selezione) oppure separatamente ad ogni piano colore

● Si tratta di elaborazioni di natura più “fotografica”

Page 12: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni colore

● Fra le trasformazioni più comuni:– bilanciamento colore (viraggi e correzione)– tonalità e saturazione (colori più o meno vivi)– colore dominante (effetto “seppia”)– luminosità e contrasto (stile TV)– tagli con valori soglia (mette a 0 o al massimo certi colori)– regolazione dei livelli e curve colore (regolazione più fine con

ridistribuzione dei colori)– posterizzazione (riduzione numero colori)– desaturazione (elimina colori troppo accesi)– inversione (produce il negativo)– riscalatura (mappa range di colore su altri range)

Page 13: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni colore

● I tre concetti fondamentali per capire le trasformazioni colore:– canale: un piano dell'immagine in

organizzazione planare (di solito, R, G, B o C, M, Y, K; eventualmente trasparenza)

– istogramma: conteggio della frequenza dei colori (quanti pixel dell'immagine hanno un dato colore)

– mappatura: funzione matematica, a volte espressa graficamente, che trasforma un valore/colore di ingresso in uno di risultato

Page 14: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreCanali

● Abbiamo già visto ilconcetto di canali

Questi sono i canali R, G, B

Page 15: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreCanali

● La stessa immagine può essere divisa in canali di diverso tipo:

Questi sono i canali C, M, Y, K Y

K

MC

Page 16: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreCanali

● In realtà, ogni canale può essere visto come un'immagine a scala di grigi– indipendentemente dal fatto che a volte i programmi

“colorino” l'immagine di un canale con il colore a cui il canale si riferisce

● Alcune trasformazioni operano su un solo canale alla volta, oppure su n canali contemporaneamente – trattandoli però come n immagini distinte in scala di grigi

● Ogni pixel di un canale ha un'intensità– 0%-100%, ovvero 0.0-1.0, ovvero 0-255, ...

Page 17: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreIstogramma

● L'istogramma colore mostra visualmente la distribuzione dell'intensità all'interno di un canale– Asse x: intensità del “colore”– Asse y: percentuale dell'immagine coperta da

quel “colore”● Tipicamente, si guarda o modifica un

istogramma alla volta...● ... ma è anche possibile manipolare più

istogrammi in contemporanea

Page 18: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreIstogramma

● Esempio:

Page 19: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreMappatura

● Una mappatura è una funzione matematica arbitraria, che trasforma un valore di intensità (ingresso) in un'altro (uscita)– Entrambi i valori devono essere nel range delle

intensità (0%-100% o codifiche varie)● Esempi:

– m(x) = x lascia tutto come sta– m(x) = 1-x inverte i valori– m(x) = x/2 dimezza tutte le intensità

Page 20: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Trasformazioni coloreMappatura

● Spesso una mappatura è espressa graficamente tramite una curva:

mappa

tura

valore originale (ingresso)

valore mappato (uscita)

Page 21: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Bilanciamento

● Il bilanciamento consiste nell'effettuare una mappatura su tutti i piani colore per cambiare le dominanti colore

● In altre parole, si aumentano o diminuiscono i rossi, i verdi o i blu dell'immagine, in maniera uniforme

● +rosso = -ciano -rosso = +ciano● +verde = -magenta -verde = +magenta● +blu = -giallo -blu = +giallo

Page 22: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Bilanciamento

● Esempio:

Bilanciamento

Page 23: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Tonalità e saturazione

● Simile al bilanciamento, ma si può applicare a un solo colore primario alla volta anziché a tutta l'immagine

● Del colore selezionato possiamo regolare separatamente tonalità, luminosità e saturazione

Page 24: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Tonalità e saturazione● Esempio: schiariamo e sbiadiamo i gialli

Page 25: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Colore dominante

● Questa trasformazione riduce l'immagine ai soli valori (praticamente, a scala di grigi), impostando tutti i canali secondo una tonalità, luminosità e saturazione data

● Si applica all'intera immagine● Notare che l'immagine rimane strutturalmente a

pieni colori – semplicemente, i colori usati la rendono simile a una a scala di grigi

Page 26: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Colore dominante

● Esempio: cambiamo la tonalità (aggiungendo una dominante blu/violetta), la saturazione e la luminosità per simulare una vecchia foto Kodak, ormai quasi sbiadita:

Page 27: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Luminosità e contrasto

● Queste due trasformazioni funzionano come gli analoghi controlli sulle TV

α β

● Il contrasto cambia la forma di una mappatura a “S” (ripidità della parte centrale)

● La luminosità cambia l'angolo di una mappatura retta

Page 28: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Luminosità e contrasto● Esempio:

Luminosità e contrasto

Page 29: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Valori soglia

● Abbiamo già discusso l'effetto dei valori soglia nella conversione da scala di grigi a bianco e nero

● Si applica lo stesso metodo a immagini a colori (in base al canale di luminanza)

● È anche possibile applicare due soglie per effetti più complessi– tagli e negativi insieme

Page 30: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Valori soglia

● Esempio:

luminositàNero

Bianco

soglia

Page 31: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Livelli e curve colore

● Queste trasformazioni permettono di adottare una mappatura arbitraria su canali arbitrari

● Sono quelle che danno la massima libertà, ma richiedono anche una comprensione del meccanismo usato

● Adatte a elaborazioni più fini

Page 32: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Livelli e curve colore

● La regolazione dei livelli consente di esprimere mappature sull'istogramma di un canale– Si regolano il valore

minimo, il medio e il massimo

– I valori intermedi si distribuiscono di conseguenza

Page 33: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Livelli e curve colore

● Le curve colore consentono di disegnare a mano una mappatura arbitraria

● È possibile definire solo alcuni punti e lasciare che gli altri valori si adattino, oppure disegnare a mano l'intera curva

Page 34: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Livelli e curve colore

● Esempio:

Curve colore

Page 35: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Posterizzazione● La posterizzazione consiste nella riduzione del numero

di colori– più precisamente, riduce il numero di valori distinti presenti in

uno o più canali● L'effetto è parametrizzato dal livello di posterizzazione

che controlla quanti colori devono rimanere● Corrisponde a una

mappatura a gradini– il livello influenza il

numero e la dimensionedei gradini

intensità0%

100%

Page 36: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Posterizzazione

● Esempio:

Originale

livello=10 livello=5 livello=3 livello=2

poste

rizza

Page 37: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Desaturazione

● La desaturazione consiste nell'azzerare il canale della saturazione

● In pratica, tutti i colori diventano grigi● Notare che l'immagine rimane

strutturalmente a pieni colori – semplicemente, i colori usati la rendono simile a una a scala di grigi– comportamento analogo ad altre trasformazioni

Page 38: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Inversione

● L'inversione si limita a fare il “negativo” del canale o dei canali indicati

● Corrisponde a unamappatura a 45°invertita

intensità0%

100%

Page 39: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Inversione

● Esempio: negativo di un'immagine a colori

● Esempio: negativo di un'immagine in scala di grigi

Page 40: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Riscalatura

● Una serie di operazioni effettuano riscalature, ovvero mappature su vari piani che espandono o contraggono la gamma cromatica

● Si tratta in genere di operazioni automatiche o semi-automatiche, con pochi parametri

● Adatte ad usi particolari (per esempio, regolazione dei colori nelle foto, o adattamento ad usi televisivi)

Page 41: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Riscalatura

● Fra le operazioni di riscalatura citiamo:– Equalizzazione– Bilanciamento del bianco– Accentuazione colori– Aggiustamento contrasto– Aggiustamento HSV– Normalizzazione

Page 42: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Filtri e convoluzioni

● La terza e ultima famiglia di operazioni per l'elaborazione delle immagini è quella dei filtri e delle convoluzioni

● Le elaborazioni di questa famiglia modificano il valore (colore, trasparenza, ecc.) di un pixel in base a un calcolo sui valori dei pixel vicini

● Diversi tipi di calcolo producono effetti di tipo diverso

Page 43: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● In generale, la convoluzione è un'operazione matematica (simbolo: *) che, date due funzioni, ne produce una terza che è calcolata come segue:

f∗g t =∫f g t−d ● Nelle applicazioni grafiche, si usano

convoluzioni su funzioni bidimensionali– ogni funzione corrisponde a un canale– f e g possono anche essere lo stesso canale!

Page 44: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Nel caso della grafica, f e g saranno due (canali di) immagini, e quindi rappresentabili con funzioni a valori discreti (per esempio, 0-255) su domini limitati (pari alla risoluzione delle immagini)

● L'equazione precedente (su immagini di M×N pixel) diventa quindi:

f∗g x , y =∑i=0

M

∑j=0

N

f x , y g x−i , y− j

Page 45: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● L'applicazione delle convoluzioni in grafica può essere più facilmente spiegata graficamente come segue:

● consideriamo una matrice n×n (di solito n è dispari), il cui punto centrale viene fatto coincidere con un pixel dell'immagine

● moltiplichiamo i valori nella matrice con i valori dei pixel corrispondenti, e sommiamo tutti i risultati

● ll valore ottenuto è il valore del pixel centrale nel risultato● l'operazione viene ripetuta (spostando la matrice) per tutti

i pixel dell'immagine

Page 46: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Esempio:0 ¼ 0¼ 0 ¼0 ¼ 0

matrice di convoluzione

100 100 200 200120 120 220 100140 140 220 80160 200 252 40

100 100 200 200120 145 160 100140 170 173 80160 200 252 40

convoluzione

Page 47: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Esempio:0 ¼ 0¼ 0 ¼0 ¼ 0

matrice di convoluzione

100 100 200 200120 120 220 100140 140 220 80160 200 252 40

100 100 200 200120 145 160 100140 170 173 80160 200 252 40

convoluzione

100×0+100×¼+200×0+120×¼+120×0+220×¼+140×0+140×¼+220×0 =145

Page 48: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● La matrice che si usa per contenere i coefficienti della convoluzione è detta kernel (nucleo) della convoluzione

● Perché i valori numerici rimangano nel range dei valori ammissibili (per esempio, 0-255), occorre che la somma di tutti i coefficienti sia 1– altrimenti, l'immagine viene scurita o schiarita ad

ogni passaggio – può anche essere desiderabile...

Page 49: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Kernel diversi producono effetti grafici diversi● Esempio:

sostituisce ogni punto (il punto centrale del kernel) con la media dei quattro punti posti sopra, sotto, e ai lati

– il valore del punto centrale stesso viene ignorato...– in pratica, l'immagine viene un po' “sfumata” o

“sfocata”...

0 ¼ 0¼ 0 ¼0 ¼ 0

Page 50: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

0 ¼ 0¼ 0 ¼0 ¼ 0

matrice di convoluzione

convoluzione

Page 51: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Kernel diversi producono effetti grafici diversi● Esempio:

– esalta il valore originale del punto, aumentandolo tanto più quanto più i punti vicini sono diversi

– in pratica, si aumenta il contrasto puntuale dell'immagine

– si interviene infatti sui punti, non sui colori!– si aumenta il contrasto solo dove ci sono bordi

0 -1 0-1 5 -10 -1 0

Page 52: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

0 -1 0-1 5 -10 -1 0

matrice di convoluzione

convoluzione

Page 53: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Kernel diversi producono effetti grafici diversi● Esempio:

– la somma dei coefficienti è 0: l'immagine finale

sarà più scura dell'originale...– nelle zone di colore uniforme, i 4 coefficienti 1 e il

-4 si annullano a vicenda: verrà nero– nelle zone di colore non uniforme, avremo invece

un valore diverso da 0– risultato: si evidenziano i bordi!

0 1 01 -4 10 1 0

Page 54: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

0 1 01 -4 10 1 0

matrice di convoluzione

convoluzione

Page 55: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Kernel diversi producono effetti grafici diversi● Esempio:

– la somma dei coefficienti è 0: l'immagine finale sarà più scura dell'originale...

– non è detto che la matrice debba essere simmetrica: qui, per esempio, conta solo la differenza fra un pixel e il successivo

– se ho due pixel consecutivi dello stesso colore, il risultato è 0

– evidenziamo i soli bordi verticali!

0 0 0-1 1 00 0 0

Page 56: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

0 0 01 -1 00 0 0

matrice di convoluzione

convoluzione

Page 57: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Kernel diversi producono effetti grafici diversi● Esempio:

– la somma dei coefficienti è 1: l'immagine finale

sarà luminosa come l'originale...– anche questa matrice non ha simmetria centrale:

c'è però una simmetria diagonale– sfida: chi riesce a immaginare l'effetto?

2 1 01 1 -10 -1 -2

Page 58: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

2 1 01 1 -10 -1 -2

matrice di convoluzione

convoluzione

l'immagine appare come se fosse in rilievo!

Page 59: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

-2 -1 0-1 1 10 1 2

matrice di convoluzione

convoluzione

cambiando i segni, l'immagine appare come se fosse in bassorilievo

Page 60: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Convoluzioni

● Esistono moltissime matrici di convoluzione “classiche”, che hanno nomi che richiamano l'effetto grafico prodotto

● Spesso i programmi di grafica le mettono a disposizione come operazioni “base”, con un nome evocativo– ma sotto sotto, sono sempre convoluzioni!

● I programmi migliori consentono di definire le proprie matrici– È possibile ottenere così degli “effetti speciali”

Page 61: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

● Esistono poi altri filtri, che applicano tecniche analoghe alla convoluzione– per esempio: massimo e minimo dei pixel vicini

anziché somma pesata dei valori● I programmi di grafica offrono filtri per gli usi

più comuni● A volte è possibile definirne di propri, ma solo

scrivendoli in un qualche linguaggio di programmazione

Page 62: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

● Per esempio: i filtri dilata ed erodi allargano, rispettivamente, le parti chiare e quelle scure dell'immagine– ottenuti con calcoli di massimo e minimo fra i

vicini– utili per effetti da “macchiaioli”!

● Naturalmente, come per la maggior parte dei filtri, si perderà un po' di definizione dell'immagine...

Page 63: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

Dilata Erodi

Page 64: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

● Altri filtri ancora consentono di eliminare i pixel isolati– per esempio, un singolo pixel scuro su uno sfondo

tutto chiaro, o viceversa● Possono essere usati per “ripulire” un'immagine,

eliminando il disturbo o rumore sull'immagine– il disturbo può essere stato introdotto, per esempio,

da polvere sull'obbiettivo di una macchina fotografica digitale

Page 65: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

● Ci sono poi filtri che aggiungono rumore, o comunque manipolano l'immagine aggiungendo degli elementi casuali

Page 66: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri filtri

● Infine, esistono filtri di tipo programmativo: la loro azione è descritta da un programma in un qualche linguaggio di programmazione

● Si trovano spesso sul web raccolte di filtri di questo tipo per gli effetti più disparati

● Spesso simulano fenomeni fisici (lenti, fuoco, colori che colano) o tecniche artistiche (mosaico, vetrata, pastello, olio)

Page 67: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Esempi: filtri artistici

originale su tela cubistapennarello ad olio mosaico

Page 68: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Esempi: filtri fisici

originale lente bagliorisupernova stampa sfogliato

Page 69: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Altri strumenti per il ritocco di immagini

● I programmi di editing di immagini mettono spesso a disposizione altri strumenti

● Pennello, stampino, testo, riempimenti, sfumature, gomma, mascherature...

● Vedremo il loro uso a laboratorio!

Page 70: Elaborazione digitale di immagini - leoausili.it · Noi useremo GIMP negli esempi e in laboratorio ... Queste due trasformazioni funzionano come gli analoghi controlli sulle TV α

Riferimenti● Il manuale di GIMP, il programma di editing digitale di immagini che

usiamo, è (in Italiano) alla URL http://docs.gimp.org/it/index.html● La home page di GIMP è http://www.gimp.org, mentre quella di

Photoshop è http://www.adobe.com/products/photoshop/ – da entrambe si accede a numerosi link di approfondimenti

● Approfondimenti (di tipo soprattutto matematico) sulle principali trasformazioni sono reperibili (in Inglese) all'URL http://www.ph.tn.tudelft.nl/Courses/FIP/frames/fip.html, nella sezione “Algorithms”

● Un'applet interattiva consente di giocare con le convoluzioni: http://homepages.inf.ed.ac.uk/rbf/HIPR2/convolutiondemo.htm

● Un testo classico di riferimento è Digital Image Processing, di Rafael C. Gonzalez e Richard E. Woods, Prentice Hall, 2002