60
1 [email protected] [email protected] Verso gli operatori Locali e globali

Verso gli operatori Locali e globali

  • Upload
    saeran

  • View
    46

  • Download
    1

Embed Size (px)

DESCRIPTION

Verso gli operatori Locali e globali. Gli operatori puntuali omogenei e non omogenei descritti, trasformano essenzialmente i livelli di grigio di una immagine per migliorarne la qualità visiva e per attenuare in alcuni casi il rumore introdotto dalle irregolarità dei sensori - PowerPoint PPT Presentation

Citation preview

Page 1: Verso gli operatori Locali e globali

1 [email protected]@imm.cnr.it

Verso gli operatori Locali e globali

Page 2: Verso gli operatori Locali e globali

2 [email protected]@imm.cnr.it

Gli operatori puntuali omogenei e non omogenei descritti, trasformano essenzialmente i livelli di grigio di una immagine per migliorarne la qualità visiva e per attenuare in alcuni casi il rumore introdotto dalle irregolarità dei sensori

I valori di livello di grigio di ciascun pixel varia dal nero al bianco e viceversa sulla base delle strutture presenti nell’immagine

L’informazione intrinseca presente nell’immagine può essere associata alle strutture di base presenti che possono produrre spazialmente basse o alte variabilità nei livelli di grigio:

• Alte frequenze spaziali dominanti• Basse frequenze spaziali dominanti

Page 3: Verso gli operatori Locali e globali

3 [email protected]@imm.cnr.it

La presenza nell’immagine di alte frequenze spaziali presuppone l’esistenza di piccole strutture con le dimensioni di uno o più pixel in cui si verificano alte variazioni di livelli di grigio, normalmente causati dalla presenza di bordi, spigoli (Edge)

La ricerca della presenza di particolari strutture nell’immagine, non può essere realizzata con operatori puntuali, ma necessitano operatori locali o globali

Elaborano l’immagine di input per accentuare o rimuovere una banda di frequenze spaziali, così come per una particolare bassa o alta frequenza spaziale

Bisogna quindi eseguire una trasformata delle frequenze trasformata delle frequenze spazialispaziali nelle direzioni

• Orizontali, • Verticali, • Oblique,

Page 4: Verso gli operatori Locali e globali

4 [email protected]@imm.cnr.it

Tale trasformata converte l’informazione dell’immagine dal dominio spaziale dei livelli di grigio al dominio delle frequenze (espresse in termini di modulo e fase)

La più diffusa è la trasformata di Fourier insieme ad altre (Hadamard, Haar, seno, coseno) di minore utilizzo per esempio la trasformata alle componenti pricipali -o di Karhunen Loeve

Il vantaggio di tali trasformate consiste: • nel generare una nuova immagine che decompone

e visualizza in modo significativo tutte le frequenze spaziali presenti nell’immagine di input

• Analisi nel dominio delle frequenze per capire le strutture geometriche presenti nell’immagine di origine

Page 5: Verso gli operatori Locali e globali

5 [email protected]@imm.cnr.it

Le operazioni di elaborazione di immagini locali o globali che alterano il contenuto informativo di una immagine sono chiamate operatori di filtraggio numerico operatori di filtraggio numerico che possono essere:

• spazialespaziale se si manipolano le strutture di base nel dominio spaziale (operatori locali);

• nel dominio delle frequenzenel dominio delle frequenze, se si manipolano direttamente nelle componenti delle trasformate (operatori globali)

Le tecniche di filtraggio, possono essere usate:

• per accentuare le caratteristiche presenti (estrazione di bordi, image sharpeningestrazione di bordi, image sharpening) nell’immagine,

• per migliorare la qualità dell’immagine per esempio, livellando opportunamente (smoothingsmoothing) forti variazioni locali dei valori di livello di grigio

Page 6: Verso gli operatori Locali e globali

6 [email protected]@imm.cnr.it

Filtraggio Numerico Spaziale

I filtri spaziali sono implementati attraverso il processo di convoluzioneconvoluzione spaziale che elabora il valore del pixel sulla base dei valori dei pixel compresi in un suo intorno Tale modello di elaborazione ha i fondamenti matematici derivanti dalla teoria dei sistemi lineari (operatori lineari) che assumono una importanza rilevante per l’analisi dei segnali ed immagini, e sono stati molto utilizzati nel campo delle telecomunicazioni Filtro e Operatore sono parole che nel seguito sono usate in modo intercambiabile per indicare una trasformazione di una immagine in un’altra

Page 7: Verso gli operatori Locali e globali

7 [email protected]@imm.cnr.it

Linearità

Tale trasformazione può essere modellata attraverso un sistema lineare bidimensionale del tipo

dove l’operatore O{} trasforma l’immagine di input I nell’immagine di output I0

Gli operatori lineari sono definiti con il principio della sovrapposizioneprincipio della sovrapposizione:Se I1(i,j) e I2(i,j) sono due immagini di dimensioni NxM pixel, Se a e b sono due costanti arbitrarie, e O rappresenta un operatore che trasforma una immagine in un’altra con le stesse dimensioni,

si dice che l’operatore O è lineare, se e solo se )},({)},({)},(),({ 2121 jiIObjiIOajiIbjiIaO

Page 8: Verso gli operatori Locali e globali

8 [email protected]@imm.cnr.it

La proprietà della sovrapposizione può essere estesa a n immagini e rende l’operatore lineare molto utile nei problemi reali

Infatti è possibile decomporre una immagine complessa in più componenti derivando in tal modo i risultati dell’operatore e successivamente ricomporre i risultati globali dai risultati delle singole componenti:

Se I2(i,j)=0 segue O{aI1(i,j)}=aO{I1(i,j)}

chiamata proprietà di omogeneità dell’operatore lineare proprietà di omogeneità dell’operatore lineare OO

che ha il seguente significato: moltiplicando l’immagine di input I1 per una costante a il sistema lineare risponde con il valore appropriato corrispondente all’input moltiplicato per la stessa costante a

Page 9: Verso gli operatori Locali e globali

9 [email protected]@imm.cnr.it

Risposta Impulsiva e Funzione di Trasferimento

Con la proprietà di sovrapposizione degli operatori lineari vediamo se è possibile avere informazioni sulla natura dell’operatore applicato ad una immagine osservando soltanto l’immagine di output ottenuta

Per tale dimostrazione pensiamo decomposta l’immagine di input I(x,y) in componenti elementari

In questo modo possiamo pensare I composta dalla somma di componenti di base ossia ottenuta dalla definizione di funzione impulsiva delta di Dirac

1

0

1

0

),(),(),(N

l

M

k

kjliklIjiI

01

0,00),(

kl

klkl

I(l,k) indica il fattore peso della funzione impulsiva del pixel (l,k) dell’immagine

Page 10: Verso gli operatori Locali e globali

10 [email protected]@imm.cnr.it

Risposta Impulsiva e Funzione di Trasferimento cont.

Se l’output di un sistema lineare è definito come

1

0

1

00 ),(),()},({),(

N

l

M

k

kjliklIOjiIOjiI

Poichè l’operatore O è lineare, per la sovrapposizione delle componenti di output, possiamo scrivere

l k

kjliklIOjiI ),(),(),(0

Inoltre I(l,k) è indipendente da i e j, dalla proprietà di omogeneità segue

1

0

1

0

1

0

1

00 ),;,(),(),(),(),(

N

l

M

k

N

l

M

k

kljihklIkjliOklIjiI

dove la funzione h(i,j;l,k) è la risposta impulsiva dell’operatore lineare O

In altre parole possiamo affermare che h(i,j;l,k) è la risposta impulsiva dell’operatore O in corrispondenza del pixel di input (impulso di input) alla posizione (l,k) dell’immagine di input

Page 11: Verso gli operatori Locali e globali

11 [email protected]@imm.cnr.it

Risposta Impulsiva e Funzione di Trasferimento cont.

Nei sistemi ottici la risposta impulsiva h(i,j;l,k) è chiamata funzione di trasferimento del sistema (PSF point spread functionpoint spread function)

Questo risultato della teoria dei sistemi lineari è fondamentale e suggerisce che se la risposta dell’operatore O ad un impulso è nota, può essere calcolata la risposta a qualunque pixel I(l,k) con la precedente equazione

1

0

1

0

1

0

1

00 ),;,(),(),(),(),(

N

l

M

k

N

l

M

k

kljihklIkjliOklIjiI

L’operatore O è completamente caratterizzato dalla risposta impulsiva

l k

i

j

I(i,j)

Page 12: Verso gli operatori Locali e globali

12 [email protected]@imm.cnr.it

Invarianza Spaziale

L’operatore lineare O{} con la relazione di input-output:I0(i,j) = O{I1(i,j)}

è chiamato spazialmente invariantespazialmente invariante oppure invariante alla invariante alla traslazionetraslazione (shift invariant) se la risposta dell’operatore non dipende esplicitamente dalla posizione nell’immagine

In altre parole, l’operatore O è invariante spazialmente se una traslazione in input causa anche una appropriata traslazione in output

Dai risultati precedenti considerando l’impulso di input all’origine (l,k)=0, segue:

h(i,j;l,k) = O{(i-l,j-k)} = h{i-l,j-k;0,0} = h(i-l,j-k)

dalla quale risulta che l’operatore O è spazialmente invariante se l’operazione eseguita sul pixel di input dipende solo dalle due traslazioni (i-l) e da (j-k) e non dalla posizione (i,j)Se l’ultima equazione non è soddisfatta l’operatore lineare è dettoSe l’ultima equazione non è soddisfatta l’operatore lineare è detto variante variante spazialmentespazialmente

Page 13: Verso gli operatori Locali e globali

13 [email protected]@imm.cnr.it

Invarianza Spaziale cont.

Considerando valide congiuntamente le due proprietà, invarianza spaziale e sovrapposizione, si ha il seguente operatore lineare

1

0

1

00 ),(),(),(

N

l

M

k

klIkjlihjiI

che risulta essere l’operatore di convoluzione nel dominio spaziale tra l’immagine di input e la funzione di risposta impulsiva:

I0(i,j)=h(i,j)*I(i,j)

Page 14: Verso gli operatori Locali e globali

14 [email protected]@imm.cnr.it

Invarianza Spaziale cont.

Pertanto il processo di elaborazione digitale dell’immagine (operatore di filtraggio) ed il processo di formazione (processo fisico) sono entrambi descritti come operazioni di convoluzione, ossia sono realizzati da un processo fisico modellabile con un sistema lineare spazialmente invariante

Nell’elaborazione dell’immagine, è possibile studiare la caratteristica di un operatore lineare applicandolo ad una immagine campione di cui si conosce a priori la sua struttura, e successivamente è analizzato se l’immagine di output presenta i risultati desiderati con quel particolare operatore

Le applicazioni reali, nel campo delle immagini, dei sistemi lineari, sono limitati a:•Flitraggio passa-alto, •Flitraggio passa-basso, •Flitraggio passa-banda

Page 15: Verso gli operatori Locali e globali

15 [email protected]@imm.cnr.it

Convoluzione Spaziale

Vediamo ora come il processo di convoluzione può essere realizzato

Primo aspetto, come combinare i valori dei livelli di grigio dei pixel vicini al pixel in elaborazione

Secondo aspetto, quanto deve essere grande l’area dei pixel di vicinanza interessati dall’operatore. Tale area è chiamata con uno dei seguenti nomi: finestra, kernel, maschera del filtro, maschera di convoluzione

Normalmente viene scelta una maschera di forma quadrata rappresentata in forma matriciale con dimensioni variabili, per esempio 3×3, 5 × 5, ecc., ed il pixel in elaborazione che riceve il risultato della convoluzione si trova posizionato al centro della finestra, di dimensioni dispari

L’operatore di convoluzione nel discreto opera come un processo lineare in quanto esegue la somma di elementi moltiplicati da valori costanti (somma somma pesatapesata)

Gli elementi sono i valori del livello di grigio in corrispondenza della maschera ed i valori costanti sono i pesi ossia i coefficienti di convoluzione meno remoti nella maschera

Page 16: Verso gli operatori Locali e globali

16 [email protected]@imm.cnr.it

Convoluzione Spaziale monodimensionale

Per un sistema lineare invariante spazialmente, caratterizzato con risposta impulsiva h(i),

in corrispondenza di un segnale di input monodimensionale f(i),

g i f i h i f l h i ll

( ) ( ) * ( ) ( ) ( )

il segnale di output g(i) é dato dalla convoluzione

Page 17: Verso gli operatori Locali e globali

17 [email protected]@imm.cnr.it

Convoluzione Spaziale monodimensionale

L’operazione di convoluzione é ripetuta analogamente per altri punti i per ottenere dal sistema lineare il segnale di output completo

Ogni valore g(i) del segnale di output, dipende dal grado di sovrapposizione tra il segnale di input e la funzione caratteristica del sistema lineare che viene traslata per ogni valore di i

Come evidenziato nel grafico, il risultato della convoluzione g(i) rappresenta l’area di sovrapposizione tra la funzione di input e la risposta impulsiva

Page 18: Verso gli operatori Locali e globali

18 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

La convoluzione tra funzioni bidimensionali é ottenuta in modo analogo.

Per convenienza l'immagine di input e di output sono scelte con identiche dimensioni, mentre la risposta impulsiva bidimensionale normalmente ha dimensioni limitate, a partire da finestre 3x3, e con valori dispari

Sempre per convenienza, il risultato della convoluzione nell'immagine di output g(i,j), si fa corrispondere con il pixel centrale della finestra quadrata in cui è definita la risposta impulsiva h localizzata nel pixel (i,j)

Il valore della convoluzione in corrispondenza del pixel (i,j) nell'immagine di output é ottenuta dalla somma dei prodotti pixel per pixel tra la funzione di input f(l,k) e la risposta impulsiva h(i-l,j-k), derivata da h(l,k) eseguendo prima una rotazione di 180° rispetto all'origine ottenendo h(0-l,0-k) e successivamente una traslazione dall'origine alla posizione (i,j)

Page 19: Verso gli operatori Locali e globali

19 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionaleg i j f l k h i l j k

k

N

l

N

( , ) ( , ) ( , )

0

1

0

1

considerando l'immagine di input f(i,j) e l'immagine di output g(i,j) di dimensioni N×N, mentre la risposta impulsiva h é sempre definita con una finestra quadrata di dimensioni limitate L × L

Page 20: Verso gli operatori Locali e globali

20 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Nelle zone di non sovrapposizione tra le funzioni f ed h, la sommatoria dell'operatore di convoluzione ha componenti nulle (prodotto f•g é zero)

Il dominio di interesse é definito dalle dimensioni della risposta impulsiva h

Per la proprietà commutativa dell'operatore di convoluzione, l'equazione precedente può essere espressa come segue

Queste ultime due equazioni, dell'operatore di convoluzione, suggeriscono che, prima del prodotto pixel per pixel, una delle due, l’immagine di input oppure la risposta impulsiva, puo’ essere ruotata di 180° e traslata indifferentemente

g i j f i l j k h l kk

N

l

N

( , ) ( , ) ( , )

0

1

0

1

Page 21: Verso gli operatori Locali e globali

21 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Per ragioni implementative è conveniente utilizzare operatori di convoluzione con equazioni della forma

con la finestra relativa alla risposta impulsiva h(l,k)

Indici l e k riferiti rispetto al pixel centrale h(0,0).

Le dimensioni LxL della finestra hanno valore dispari e con r =(L-1)/2

r

rl

r

rk

klhkjlifjig ),(),(),(

Page 22: Verso gli operatori Locali e globali

22 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Per semplicità consideriamo un esempio di convoluzione spaziale dove la risposta impulsiva é rappresentata da una finestra 3x3 con i pixel contenenti valori discreti di una funzione Gaussiana

In questo caso il pixel centrale h(0,0) coincide con il picco della gaussiana che essendo simmetrica rispetto all'origine l'eventuale rotazione della funzione di input non avrebbe nessun effetto

Page 23: Verso gli operatori Locali e globali

23 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Il valore della convoluzione g(i,j), applicata al pixel (i,j) è ottenuta posizionando il pixel centrale della maschera di convoluzione in (i,j), e la seguente espressione viene eseguita:

g(i,j) = Af(i-1,j-1) + Bf(i-1,j) + Cf(i-1,j+1) + Df(i,j-1) + Ef(i,j) + Ff(i,j+1) + Gf(i+1,j-1) + Nf(i+1,j) + If(i+1,j+1)

dove f(i,j) è l’immagine di input, le costanti da A ad I indicano i coefficienti della convoluzione ossia i valori discreti risultati dal campionamento della risposta impulsiva h(i,j) dell’operatore stesso, e g(i,j) è l’immagine ottenuta applicando il processo di convoluzione

L’operatore di convoluzione per l’intera immagine risulta

r

rl

r

rk

klhkjlifjig ),(),(),(

Page 24: Verso gli operatori Locali e globali

24 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

-2 h5 h4 h3 h4 h5

-1 h4 h2 h1 h2 h4

0 h3 h1 h0 h1 h3

1 h4 h2 h1 h2 h4

2 h5 h4 h3 h4 h5

-2 -1 0 1 2

2

22

2),( kl

eklh

h0=1

h1=0.78

h2=0.61

h3=0.37

h4=0.28

h5=0.132

5

4.1

r

L

Page 25: Verso gli operatori Locali e globali

25 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Applicare un filtro ad una immagine significa calcolare i coefficienti h(i,j) che rappresentano una buona approssimazione della funzione di trasferimento e quindi dell’operatore che si vuole applicare

La convoluzione è un’operazione invariante perchè i coefficienti della convoluzione (pesi del filtro) non cambiano da pixel a pixel durante il processo di convoluzione

L’operatore di convoluzione per una maschera 3x3 e per una immagine di 512x512 richiederebbe 226.400x9 2.037.000 moltiplicazioni e 2.037.000 addizioni

Vediamo alcuni aspetti implementativi della convoluzione

Page 26: Verso gli operatori Locali e globali

26 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Quando l’operatore di convoluzione è applicato ai bordi dell’immagine, la maschera di convoluzione non si sovrappone con i pixel dell’immagine, date le dimensioni finite della stessa

Un modo per risolvere il problema, quando si arriva ad elaborare pixel del bordo sinistro dell’immagine, è quello di pensare che l’immagine si replica in modo ciclico

Operando nello spazio di Fourier questa assunzione deve essere fatta se si vuole ridurre la convoluzione a semplice moltiplicazione

Nel dominio spaziale l’inconveniente dei bordi è risolto in modo libero adottando alcune soluzioni: Considerare a zero o uguale ad un valore costante tutti i

pixel mancanti dell’immagine. Considerare i pixel adiacenti dell’immagine come pixel

mancati. Applicare la convoluzione solo per i pixel dell’immagine che

non creano il problema della mancanza di pixel

Page 27: Verso gli operatori Locali e globali

27 [email protected]@imm.cnr.it

Page 28: Verso gli operatori Locali e globali

28 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Nella equazione di convoluzione, i pixel g(i,j) già elaborati non sono coinvolti durante il processo di convoluzione

Questo implica che la convoluzione produce come risultato una nuova immagine g(i,j) che dovrà essere salvata in un’area di memoria separata dall’immagine di input f

Nell’ipotesi che si operi su calcolatore sequenziale potrebbe comunque essere ottimizzata la memoria necessaria, salvando i pixel elaborati di r linee al di sopra della i-ma linea in elaborazione

Un approccio alternativo consiste nel salvare temporaneamente in un buffer, (r+1) linee dell’immagine di input in elaborazione, mentre il pixel in esame (i,j) è salvato nella stessa posizione dell’immagine di input

Page 29: Verso gli operatori Locali e globali

29 [email protected]@imm.cnr.it

Convoluzione Spaziale bidimensionale

Sono stati progettati filtri che durante il processo di convoluzione sono coinvolti pixel già elaborati dal convolutore stesso

Questo ha il vantaggio di ridurre i tempi di calcolo ma non sono facilmente realizzabili

Tali filtri sono chiamati filtri ricorsivifiltri ricorsivi e sono molto complicati da trattare in genere nel caso bidimensionale come necessita per le immagine digitali

I filtri basati sulla convoluzione spaziale che non utilizzano pixel già convoluti corrispondenti a filtri non ricorsivi, sono chiamati:

FIR Finite Inpulse ResponseFIR Finite Inpulse Response

I filtri ricorsivi, sono chiamati:IIR Infinite Inpulse ResponseIIR Infinite Inpulse Response

Page 30: Verso gli operatori Locali e globali

30 [email protected]@imm.cnr.it

Filtri nel Dominio delle Frequenze

In precedenza abbiamo introdotto l’utilità di studiare le componenti spaziali di una immagine nel dominio delle frequenze che descrivono in modo più efficace le strutture periodiche presenti nell’immagine stessa

Per passare dal dominio spaziale al dominio delle frequenze, sono disponibili diversi operatori chiamati normalmente operatori di trasformazione o semplicemente trasformatetrasformate

Tali trasformate, quella di FourierFourier è la più nota, quando applicata alle immagini, la decompongono dalle strutture di livello di grigio del dominio spaziale alle componenti in frequenze fondamentali nel dominio delle frequenze

Ciascuna componente in frequenza è espressa attraverso un valore di fase e modulofase e modulo

La trasformata inversa di frequenze, converte una immagine strutturata con frequenze, ricostruendo all’indietro le strutture spaziali

Page 31: Verso gli operatori Locali e globali

31 [email protected]@imm.cnr.it

Trasformata di Fourier

La trasformata generale di una immagine N×M è data da

Questi coefficienti ci indicano quantitativamente il grado di similarità dell’immagine rispetto alle basi B. Il processo di trasformazione quantifica la decomposizione dell’immagine di input I(k,l) nella somma pesata delle immagini base, in cui i coefficienti F(u,v) sono appunto i pesi

I valori delle frequenze vicino all’origine del sistema (u,v) sono chiamate basse frequenze mentre quelle più lontane dall’origine sono dette alte frequenze

L’immagine di input I(k,l) può essere ricostruita attraverso i coefficienti della trasformata F(u,v) con l’equazione della trasformata inversa

1

0

1

0

),;,(),(),(N

k

M

l

vulkBlkIvuF

1

0

1

0

11 ),;,(),()),((),(N

u

M

v

vulkBvuFvuFFlkI

Page 32: Verso gli operatori Locali e globali

32 [email protected]@imm.cnr.it

Trasformata di Fourier

Le basi della trasformata sono rappresentate da funzioni seno e coseno, e la trasformata dell’immagine I(k,l) è data da

1

0

1

0

2sin2cos),(1

),(N

k

M

l M

vl

N

ukj

M

vl

N

uklkI

NMvuF

),Im(),Re(),( vujvuvuF L’ampiezza spettrale è definita da

22 ),Im(),Re(),( vuvuvuF

che specifica quanto dell’immagine base è presente nell’immagine di input,

L’informazione circa l’orientazione dell’oggetto è definita dalla fase

),Re(

),Im(tan),( 1

vu

vuvu

Page 33: Verso gli operatori Locali e globali

33 [email protected]@imm.cnr.it

Trasformata di Fourier

Dal momento che possiamo riscrivere la trasformata xjxe jx sincos

1

0

1

0

2

),(1

),(N

k

M

l

M

lv

N

kuj

elkINM

vuF

Per una migliore visualizzazione dello spettro, conviene visualizzare il logaritmo, ossia

),(1log),log( vuFcvu

dove c serve a scalare l’intervallo di variabilità di (u,v) tra 0 e 255

Page 34: Verso gli operatori Locali e globali

34 [email protected]@imm.cnr.it

Trasformata di Fourier

Modulo Log del modulo Fase

Page 35: Verso gli operatori Locali e globali

35 [email protected]@imm.cnr.it

Page 36: Verso gli operatori Locali e globali

36 [email protected]@imm.cnr.it

Teorema di Convoluzione

Dal punto di vista teorico, il processo di convoluzione nel dominio spaziale è ottenuto tra immagine di input e la funzione di trasferimento,

Mentre nel dominio delle frequenze è ottenuto con l’operazione di moltiplicazione tra immagine trasformata F(u,v) e la maschera delle frequenze

Il filtraggio, nel dominio delle frequenze, risulta essere molto selettivo consentendo di rimuovere specifiche componenti di frequenze o bande di componenti in frequenza Questo è realizzato ponendo zero nella maschera in corrispondenza della frequenza che si vuole eliminare, ponendo valore 1 altrimenti

Page 37: Verso gli operatori Locali e globali

37 [email protected]@imm.cnr.it

Teorema di Convoluzione

Il filtraggio nel dominio delle frequenze risulta essere vantaggioso rispetto a quello spaziale soprattutto nei casi di immagini con rumore additivo di natura periodico (non casuale) facilmente descrivibile nel dominio delle frequenze

Ricordando il processo di convoluzione spaziale, considerando inalterati i simboli delle varie immagini, si ha:

g(m,n)=f(m,n)*h(m,n)

nel dominio delle frequenze la convoluzione risulta:

G(u,v)=F(u,v)H(u,v)

considerando G, F ed H le trasformate di Fourier delle immagini spaziali g ed f, e della funzione di trasferimento h

Page 38: Verso gli operatori Locali e globali

38 [email protected]@imm.cnr.it

Teorema di Convoluzione

Con quale criterio decidere se usare un filtro spaziale oppure un filtro nel dominio delle frequenze?

Tendenzialmente la convoluzione spaziale è computazionalmente costosa specialmente se la maschera di convoluzione è grande

In questo caso l’uso dell FFT e IFFT su hardware specializzato può essere una soluzione efficiente per l’elaborazione delle immagini

Nella visione artificiale diversi processi non sono riconducibili ad operatori lineari ed invarianti spazialmente

Questo limita molto l’uso della FFT e IFFT

Quando un processo di elaborazione dell’immagine può essere modellato o approssimato ad un sistema lineare e invariante spazialmente le maschere di filtraggio sono normalmente piccole (3x3) oppure (5x5) e conseguentemente la convoluzione spaziale risulta conveniente in alternativa all’uso della FFT

Questa è la ragione dell’uso diffuso dei filtri lineari.

Page 39: Verso gli operatori Locali e globali

39 [email protected]@imm.cnr.it

Teorema di Convoluzione

Ricordiamo infine le limitazioni sull’uso della FFT per gli errori di arrotondamento dovuti al calcolo numerico, stabilità del filtro inverso, molteplicità delle soluzioni ottenute, limitazioni del dominio dei valori di grigio

Page 40: Verso gli operatori Locali e globali

40 [email protected]@imm.cnr.it

OPERATORI LOCALI: SMOOTHING

Tali operatori hanno lo scopo di eliminare e attenuare il rumore additivo presente nei valori di grigio dell’immagine

Questo è realizzato attraverso operatori locali lineari e non lineari che essenzialmente tentano di smussare (livellare) le irregolarità presenti nella immagine senza alterare le strutture significative dell’immagine stessa

I filtri lineari di smoothing possono essere definiti nel dominio spaziale o nel dominio delle frequenze

Per i filtri spaziali, nella maschera di convoluzione sono opportunamente definiti i pesi che caratterizzano la particolarità del filtro

Per i filtri nel dominio delle frequenze analoghi effetti sull’immagine si ottengono rimuovendo le alte frequenze

Page 41: Verso gli operatori Locali e globali

41 [email protected]@imm.cnr.it

MEDIA ARITMETICA

Se sono disponibili n immagini di una stessa scena è possibile ipotizzare un modello di rumore stocastico con valore V in ciascun pixel

V rappresenta la variabile casuale indipendente con media zero e dev. standard .

L’operatore di smoothing in questo caso risulta dalla media aritmetica dei valori pixel per pixel per n immagini I1........In con corrispondente rumore V1..........Vn

La seguente espressione I I I

n

V V V

nn n1 2 1 2

....... .....

indica col primo termine l’immagine mediata

I i jn

I i jm kk

n

( , ) ( , )1

1

Il secondo termine risulta essere il rumore dell’immagine dopo l’operazione di media aritmetica che ha sempre media zero e deviazione standard con valore e pertanto il rumore risulta ridotto di un fattore

/ nn

Page 42: Verso gli operatori Locali e globali

42 [email protected]@imm.cnr.it

FILTRO MEDIA

Quando è disponibile una sola immagine, l’operatore di media aritmetica può essere usato, in cui ciascun pixel dell’immagine è riposto con il valore medio dei pixel vicini:

1,,1, ),(1

),(,

NjiklfM

jigijWkl

dove Wi,j indica l’insieme dei pixel nelle vicinanze del pixel (i,j) compreso lo stesso pixel (i,j), interessato al calcolo della media locale, ed M è il numero totale di pixel compresi nella finestra Wi,j.

Se la finestra considerata è di 3×3 pixel si ha:

g i j f l kk j

j

l i

i

( , ) ( , )

1

9 1

1

1

1

in questo caso, l’operatore di media risulta essere un caso particolare dell’operatore di convoluzione spaziale, che ha come maschera di convoluzione:

h 1

9

111

111

111

1 91 91 9

1 91 91 9

1 91 91 9

Page 43: Verso gli operatori Locali e globali

43 [email protected]@imm.cnr.it

FILTRO MEDIA

Con una maschera di piccole dimensioni, per esempio 3×3, l’effetto del filtro media è quello di attenuare il rumore (segnale uniforme) presente nell’immagine ed introdurre uno sfocamento accettabile sull’immagine

Con maschere di maggiori dimensioni, per esempio 5×5, 7×7, ecc., l’effetto dello sfocamento e la perdita di alcuni dettagli diventa sempre più evidente

È richiesto un compromesso tra attenuazione del rumore e la perdita dei dettagli.Un approfondimento degli effetti del filtro sono evidenziati come segue:

Page 44: Verso gli operatori Locali e globali

44 [email protected]@imm.cnr.it

FILTRO MEDIA

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

164164164164164

Filtropassa-basso

Regione senza strutture

Immagine a valore costante il filtro non produce nessun effetto e l’immagine è lasciata intatta

Questo è dipendente al fatto che in quella regione l’immagine non presenta nessuna struttura (nessun cambiamento di livelli di grigio) ossia la frequenza spaziale è zero. Questo è tipico di un filtro spaziale passa-basso che lascia intatte le componenti di frequenza spaziale basse

Page 45: Verso gli operatori Locali e globali

45 [email protected]@imm.cnr.it

FILTRO MEDIA

Filtropassa-basso

2314223142231

422314223142

422314223142

2314223142231

422314223142

2314223142231

422314223142

422314223142

2314223142231

422314223142

126147126147126

147126147126147

126147126147126

147126147126147

126147126147126

126147126147126

147126147126147

126147126147126

147126147126147

126147126147126

Regione con strutture

In questo caso, vi sono variazioni di livello di grigio dal bianco al nero e viceversa e l’effetto del filtro media attenua queste variazioni

In altre parole le transizioni bianco/nero che rappresentano le componenti di alte frequenze dell’immagine di input sono attenuate a transizioni con minime variazioni di livello di grigio

L’attenuazione delle alte frequenze spaziali è quello desiderato da un filtro passa-basso

Quando si progetta un filtro di smoothing, come criterio generale, conviene scegliere i pesi della maschera di convoluzione con valore alto quelli più vicini al pixel in esame mentre con valori sempre più bassi quelli più lontani

Page 46: Verso gli operatori Locali e globali

46 [email protected]@imm.cnr.it

FILTRO MEDIA

Questo porta ad avere un unico picco nella maschera, disposti anche seguendo una certa simmetria spaziale.Per esempio, una tipica maschera di convoluzione di un filtro di smoothing è la seguente:

121

242

121

16

1

16/18/116/1

8/14/18/1

16/18/116/1

Con tale maschera si attenuano i problemi dello sfocamento evidenziato in precedenza

Gli effetti introdotti dall’operazione di filtraggio su una immagine possono essere valutati qualitativamente osservando in modo soggettivo l’immagine filtrata Una stima quantitativa può essere ottenuta utilizzando una immagine campione di cui sono note alcune strutture geometriche (un esempio: immagini con anelli concentrici a profilo sinusoidale con lunghezza d’onda crescente a partire dal centro dell’immagine)

Page 47: Verso gli operatori Locali e globali

47 [email protected]@imm.cnr.it

FILTRO MEDIA

Il filtro media 7x7 e 9x9 introduce forti variazioni in alcune regioni dell’immagine. Questo mette in evidenza i limiti del filtro media utilizzato come filtro di smoothing passa-basso

Page 48: Verso gli operatori Locali e globali

48 [email protected]@imm.cnr.it

FILTRI NON LINEARI

Eseguono l’operazione di smoothing, essenzialmente per ridurre il rumore, livellando l’immagine solo nelle regioni con livelli di grigio omogenei, alterando le zone in cui si verificano forti variazioni di livelli di grigio

Da ciò consegue che i coefficienti della maschera di convoluzione devono variare in modo appropriato da regione a regione.

In particolare nelle zone dove le transizioni sono accentuate, si assume che i pixel appartengono a regioni diverse pertanto i coefficienti della convoluzione devono essere scelti piccoli

Page 49: Verso gli operatori Locali e globali

49 [email protected]@imm.cnr.it

FILTRI NON LINEARI

Filtri non lineari basati sul valore assoluto:

h l k( , )

1

0

se f i j f l k T

altrimenti

( , ) ( , )

dove T è un valore di soglia definito sperimentalmente

),(),(),( klfjifcklh

con c costante di normalizzazione definito come ed h(l,k)>0 per ogni valore di l e k

2.

1

),(

l k

klhc

3.

),(

),(1

),(

jif

klfLLjif l k

altrimenti

TklfLL

jifsel k

),(1

),(

l knm

klfLL

nmfjif ),(1

),(min),(),(

4.

1.

in questo caso le forti transizioni non vengono sempre livellate

Page 50: Verso gli operatori Locali e globali

50 [email protected]@imm.cnr.it

FILTRO MEDIANO

Il filtro mediano è non lineare

A differenza di filtri basati sulla media, il filtro mediano attenua la perdita di nitidezza dell’immagine e del livello di sfocamento

Il filtro ripone ogni pixel con il valore del pixel mediano ottenuto dopo che i pixel dell’intorno sono stati ordinati in modo crescente

Il pixel mediano ha il valore più alto di metà dei pixel dell’intorno e valore più basso dell’altra metà di pixel rimanenti

Per esempio, utilizzando finestre 3x3 il filtro opera come segue:

Page 51: Verso gli operatori Locali e globali

51 [email protected]@imm.cnr.it

FILTRO MEDIANO

Page 52: Verso gli operatori Locali e globali

52 [email protected]@imm.cnr.it

FILTRAGGIO PASSA-BASSO NEL DOMINIO DI FOURIER

Abbiamo già evidenziato come la presenza nell’immagine di ripetute transizioni di livello di grigio (dovute anche al rumore) costituiscono le componenti delle alte frequenze spaziali e conseguentemente inducono componenti di alte frequenze nel dominio di Fourier

Un filtro di smoothing può essere progettato operando nello spazio di Fourier, attenuando uno specificato intervallo delle componenti di alte frequenze

La relazione tra le immagini trasformate è riscritta:

G(u,v)=F(u,v)H(u,v)

dove F(u,v) è l’immagine di input trasformata e H(u,v) è la maschera del filtro da progettare

L’obiettivo è quello di progettare il filtro H(u,v) che attenua le componenti di alta frequenza di F(u,v) allo scopo di ottenere il risultato G

La trasformata inversa di G produrrà il risultato di smoothing voluto g

Page 53: Verso gli operatori Locali e globali

53 [email protected]@imm.cnr.it

FILTRAGGIO PASSA-BASSO NEL DOMINIO DI FOURIER

Un profilo dell’immagine dello spettro l(u,v) rappresenta la distribuzione dell’energia data dalla relazione:

Sono stati ideati diversi filtri passa-basso nel dominio delle frequenze. Sono diversi tra loro, e per tutti, l’effetto, è quello di ridurre il rumore, distribuito sulle alte frequenze

Tali filtri operano sia sulla parte reale che immaginaria della trasformata di Fourier e non alterano il valore della fase (zero fase).

l u v u v( , ) 2 2

Page 54: Verso gli operatori Locali e globali

54 [email protected]@imm.cnr.it

FILTRO IDEALE PASSA-BASS0

H u v( , )

1

0 0

0

l>v)l(u, se

lv)l(u, se

dove l0 rappresenta la frequenza di taglio Viene chiamato filtro ideale perchè tutte le frequenze comprese nell’intervallo tra 0 e la soglia l0, passano intatte mentre sono completamente eliminate quelle con valore superiore alla soglia

Il filtro è a simmetria circolare nell’ipotesi che la trasformata è stata centrata nell’immagine quadrata dello spettro

I risultati del filtro dipendono dal valore della soglia scelta che può attenuare il rumore, ma accentuare lo sfocamento dell’immagine.

Page 55: Verso gli operatori Locali e globali

55 [email protected]@imm.cnr.it

FILTRO IDEALE PASSA-BASS0Un modo efficace per verificare le prestazione dei vari filtri è quello di considerare il valore dello spettro di potenza dato da:

In corrispondenza di una frequenza di taglio l0 si definisce una quantità Pl che è lo spettro di potenza per tutti i valori u e v compresi dalla circonferenza di raggio l0 nel dominio delle frequenze (u,v)

È utile considerare come in corrispondenza delle varie frequenze di taglio si hanno le percentuali dello spettro di potenza che varia da zero sino ad un massimo del 100%:

),(Im),(Re),(),( 222vuvuvuHvuP

1

0

1

00 ),(

N

u

N

v

l vuPP

u v

lPvuP 0/),(100

al variare di l0

Page 56: Verso gli operatori Locali e globali

56 [email protected]@imm.cnr.it

FILTRO DI BUTTERWORTH

La funzione di trasferimento di questo filtro d’ordine n e con frequenza di taglio l0 è data da:

H u vl u v l n( , )

[ ( , ) / ]

1

1 02

dove l(u,v) rappresenta lo spettro definito in precedenza

Page 57: Verso gli operatori Locali e globali

57 [email protected]@imm.cnr.it

FILTRO DI BUTTERWORTH

L’effetto del filtro è sostanzialmente controllato ancora dal valore della frequenza di taglio l0 dal quale dipende la quantità di energia che viene conservata e quindi il livello di sfocamento introdotto nell’immagine

A differenza del filtro ideale comunque non si verifica una brusca discontinuità tra le frequenze filtrate e quelle passanti

Per un filtro di smoothing è importante definire una frequenza di taglio l0 tale che il valore della funzione H raggiunga un valore non superiore ad una frazione del suo massimo valore

Dall’equazione precedente, per H(u,v)=.5 (50% del massimo valore) segue che l(u,v)=l0

Un’altra frazione usata è del valore massimo di H

In questo caso, nelle condizioni che l(u,v)=l0, la funzione di trasferimento diventa:

1

2

nn lvullvulvuH

20

20 ]/),([414,01

1

]/),(][12[1

1),(

Page 58: Verso gli operatori Locali e globali

58 [email protected]@imm.cnr.it

FILTRO DI BUTTERWORTH

l0= 1/3 . l0= 1/2 .Immagine originale

Page 59: Verso gli operatori Locali e globali

59 [email protected]@imm.cnr.it

FILTRO ESPONENZIALE

La funzione di trasferimento di tale filtro è la seguente:

H u v e l u v l n

( , ) [ ( , ) / ] 0

Anche per questo filtro è conveniente scegliere una percentuale p del valore massimo di H per ottenere un valore l0 della frequenza di taglio.

In questo caso la funzione di trasferimento si modifica con:

H u v e p l u v l n

( , ) [ln ][ ( , ) / ] 0

Page 60: Verso gli operatori Locali e globali

60 [email protected]@imm.cnr.it

FILTRO TRAPEZOIDALE

Questo filtro produce un effetto intermedio tra il filtro ideale ed i filtri considerati in precedenza (esponenziale e butterworth). La funzione di trasferimento è la seguente:

H u vl u v l

l l( , )

( , )

1

0

1

0 1

l u v l

l l u v l

l u v l

( , )

( , )

( , )

0

0 1

1

In questo filtro l0 rappresenta la frequenza di taglio ed [l0,l1] rappresenta un intervallo della frequenza con variazione lineare di H, utile ad evitare le brusche variazioni tipiche del filtro ideale