La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Filtro di smoothing Gaussiano Appartengono a questa categoria i filtri lineari di smoothing che definiscono i coefficienti della maschera di convoluzione.

Presentazioni simili


Presentazione sul tema: "1 Filtro di smoothing Gaussiano Appartengono a questa categoria i filtri lineari di smoothing che definiscono i coefficienti della maschera di convoluzione."— Transcript della presentazione:

1 1 Filtro di smoothing Gaussiano Appartengono a questa categoria i filtri lineari di smoothing che definiscono i coefficienti della maschera di convoluzione in accordo alla funzione gaussiana. Tali filtri si dimostrano molto efficaci per attenuare il rumore di tipo gaussiano presente nellimmagine. La funzione di trasferimento h(l,k) modellata dalla funzione gaussiana discreta con media zero e` data da: c fattore di normalizzazione che per semplicità` si assume uguale a 1

2 2 Filtro di smoothing Gaussiano è lunico parametro che modella la funzione di trasferimento e definisce larea di influenza del filtro gaussiano Il peso dei coefficienti della maschera è inversamente proporzionale alla distanza dei pixel rispetto a quello centrale (i pixel a distanza maggiore di circa 3 non avranno nessuna influenza per il filtraggio).

3 3 Filtro di smoothing Gaussiano Proprieta` del filtro gaussiano Simmetria circolare Monotono decrescente (nel dominio spaziale e delle frequenze) Separabile. SIMMETRIA CIRCOLARE Il filtro Gaussiano esegue loperazione di smoothing in modo identico in tutte le direzioni. Da cio` consegue che il filtro opera in maniera indipendente dallorientazione delle strutture presenti nellimmagine. Questa proprietà è dimostrata convertendo le coordinate cartesiane (l,k) in coordinate polari (r, ) nella funzione Gaussiana Dove il raggio polare è r 2 =l 2 +k 2

4 4 Filtro di smoothing Gaussiano Proprieta del filtro nel domino delle frequenze

5 5 Filtro di smoothing Gaussiano Proprieta di separabilita` del filtro gaussiano Siano h(i,j) e f(i,j) rispettivamente la funzione di trasferimento e limmagine da filtrare, segue:

6 6 Filtro di smoothing Gaussiano Proprieta di separabilita` del filtro gaussiano I passi essenziali sono cosi riassunti: 1.Eseguire la convoluzione con maschera orizzontale e salva il risultato in modo trasposto rispetto allinizio.(Convoluzione orizzontale) 2.Eseguire la convoluzione con la stessa maschera orizzontale. (Convoluzione verticale) 3.Eseguire la trasposizione dellimmagine per riportarla nella posizione originale.(Immagine filtrata)

7 7 Filtro di smoothing Gaussiano FILTRO GAUSSIANO DISCRETO I coefficienti della maschera di convoluzione sono calcolati analiticamente considerando la funzione di distribuzione gaussiana: E` noto che gli effetti del filtro sono controllati dai valori della varianza 2 e dalle dimensioni della maschera L×L. Per una maschera 7x7, varianza 2 =2 e normalizzando il valore massimo del picco uguale ad 1 nella posizione centrale (0,0) della maschera, i valori discreti prodotti da tale equazione sono:

8 8 Filtro di smoothing Gaussiano FILTRO GAUSSIANO DISCRETO In molti sistemi di elaborazione immagine e` comodo considerare i coefficienti del filtro con valori interi. Per tale scopo si calcola un adeguato valore della costante k Se si vuole far corrispondere una valore minimo (per esempio 1) ai vertici della maschera ed un valore massimo k in corrispondenza del coefficiente centrale, si ha:

9 9 Filtro di smoothing Gaussiano FILTRO GAUSSIANO DISCRETO Con questi nuovi valori dei coefficienti, e` necessario normalizzare i valori della funzione di convoluzione con una costante, ossia

10 10 Estrazione dei bordi Edging

11 11 Loperazione di estrazione degli Edge di una immagine risulta ancora oggi essere una operazione fondamentale per lanalisi delle immagini In questo capitolo, saranno descritti gli algoritmi più comuni per determinare i bordi con operatori locali (Local Edge Detector - LED) Tali algoritmi assegnano un valore di bordo a ciascun pixel ma nessuna informazione è generata per legare insieme i vari pixel di bordo (Link Edge) per formare segmenti di bordo Gli algoritmi LED sono Operatori Locali che determinano le variazioni locali dei valori di livello di grigio dellimmagine oppure le variazioni locali della derivata prima della funzione intensità. Tali discontinuità locali nelle vicinanze dei bordi possono essere di vario tipo.

12 12 Discontinuità a gradino (Step-Edge) Discontinuità a linea Discontinuità lineare (Ramp Edge) Discontinuità lineare con salita e discesa (Roof Edge)

13 13 Gli algoritmi LED possono essere raggruppati nelle seguenti categorie: Operatori basati sulla differenziazione Operatori basati sull'approssimazione del modello di Edge

14 14 Filtro Gradiente Mentre i filtri di smoothing attenuano strutture in alta frequenza, quelli di edging devono esaltare le discontinuità Loperatore che assolve a tale compito è loperatore di derivata prima. Per una immagine bidimensionale f(x,y), le derivate parziali prime f/ x e f/ y definiscono le discontinuita` dellimmagine nella direzione degli assi coordinati x e y Lorientazione dei bordi nellimmagine non necessariamente coincide con gli assi coordinati. Da cio` consegue la necessita` di calcolare le derivate direzionali dellimmagine f per ogni punto (x,y) nella direzione r di massima discontinuita` dei livelli di grigio (massimo locale della derivata di f).

15 15 Loperatore che presenta queste caratteristiche e` il gradiente. Il gradiente di f(x,y) nel punto A nella generica direzione r con angolo e` dato da:

16 16 Siamo interessati a trovare il valore massimo da cui

17 17 Viene dora un poi chiamato vettore gradiente il valore massimo della derivata ( f/ r) gmx nella direzione di massima variazione, che in notazione differenziale e` definita da: Una misura quantitativa della massima variazione di f nella direzione definita dal gradiente f e` dato dal modulo del vettore gradiente definito come Il modulo e la direzione del gradiente sono indipendenti dalle coordinate (x,y) del sistema di riferimento.

18 18 Per ridurre la complessita` computazionale il modulo del gradiente puo` essere approssimato considerando i valori assoluti: oppure Il modulo | f| e la direzione gmx del gradiente sono indipendenti dalla scelta del sistema di riferimento, ossia sono invarianti con la rotazione degli assi coordinati.

19 19 APPROSSIMAZIONE DEL FILTRO GRADIENTE Per una immagine digitale di dimensione N N, il vettore gradiente può essere approssimato sostituendo la differenziazione in due direzioni ortogonali lungo i rispettivi assi coordinati con le differenze finite sempre nelle rispettive direzioni x ed y. Le seguenti approssimazioni sono date per le righe:

20 20 Queste approssimazioni conducono alle seguenti maschere di convoluzione h: R e C identificano le maschere per le righe e le colonne. Il simbolo indica il pixel in elaborazione nel caso di maschere asimmetriche I simboli (+, -, ed s) indicano maschere di convoluzione calcolate rispettivamente con la differenza in avanti, allindietro e simmetrica.

21 21 Il filtro simmetrico delle differenze si comporta come un filtro passa-basso e puo` essere pensato come la combinazione di un filtro di smoothing ed un filtro di esaltazione dei bordi: La maschere di convoluzione orizzontale e verticale trovate sono utilizzate solo per lestrazione dei bordi dominanti in direzione perpendicolare agli operatori stessi.

22 22 Per tale scopo possono essere applicati i seguenti operatori di convoluzione:

23 23 Applicazione dei due filtri orizzontali e verticali

24 24 Riassumendo, lestrazione dei bordi prevede diversi passi: 1.Filtraggio dellimmagine applicando in modo indipendente le maschere di convoluzione h R ed h C. 2.Calcolare il quadrato per ogni pixel delle due immagini ottenute al passo 1). 3.Somma i pixel omologhi delle due immagini del passo 2 4.Calcola la radice quadrata dellimmagine del passo 3. Limmagine risultante e` limmagine degli Edge 5.Calcola larcotangente per ogni valore di g C /g R (conponenti di gradiente orizzontale e verticale) calcolate nel passo 1). Limmagine risultante e` la mappa di orientazione dei bordi.

25 25 OPERATORE DI ROBERTS Un modo alternativo per approssimare la differenziazione e` quello suggerito da Roberts: Le maschere di convoluzione sono

26 26 MANIPOLAZIONE DELLIMMAGINE GRADIENTE A questo punto, ottenuta limmagine gradiente, vanno ricercati i bordi. Alcune definizioni per verificare se un pixel è di bordo sono: a) b) dove I T e` un valore di grigio da assegnare ai pixel classificati come bordi mediante la soglia T come in precedenza

27 27 c) dove I B e` un valore di grigio da assegnare ai pixel non classificati come bordi mediante la soglia T. Separazione dei bordi dallo sfondo. d)

28 28 OPERATORE DI SOBEL Gli operatori descritti basati sul gradiente generano bordi con spessore di almeno due pixel. Per attenuare questi inconvenienti, loperatore di Sobel esegue simultaneamente la differenziazione rispetto ad un asse coordinato e calcola una media locale in direzione ortogonale. Le componenti del gradiente con loperatore di Sobel sono calcolati nella direzione degli assi coordinati x ed y, coinvolgendo per ciascun pixel in elaborazione (i,j) i pixel nelle sue vicinanze incluse nella finestra 3x3 come mostrato in figura:

29 29 OPERATORE DI SOBEL dove la costante K e` scelta uguale a 2 ed i pixel vicini a quello in elaborazione (i,j) hanno una influenza in relazione ai corrispondenti pesi indicati con A,B,..,E. Scegliendo una finestra piu` grande 3 3 per la stima del gradiente, leffetto di smoothing aumenta rispetto alloperatore con finestra 2 2, diminuendo in tal modo la sensibilità delloperatore dalle fluttuazioni dei valori di intensità presenti nellimmagine

30 30 OPERATORE DI SOBEL Le convoluzioni discrete per le componenti orizzontale e verticale delloperatore di Sobel sono: Loperatore di Sobel definisce il modello del gradiente con la nota formula:

31 31 OPERATORE DI PREWITT Differisce dalloperatore di Sobel solo per il valore della costante K che e` dimezzato ossia posta uguale a 1. In questo modo, le maschere di convoluzione diventano: Diversamente dalloperatore di Sobel, i pixel piu` vicini (nord, sud, est, ovest) al pixel in elaborazione non hanno un peso maggiore ma contribuiscono alla stima del gradiente spaziale con lo stesso peso.

32 32 OPERATORE DI FREI&CHEN Questo operatore assegna alla costante K il valore 2 pesando i pixel vicini in modo omogeneo ed in tal modo il valore del gradiente e` uguale in presenza di bordi verticali, orizzontali ed obliqui.

33 33 OPERATORI A CONFRONTO

34 34 OPERATORI A CONFRONTO Il problema di mediare tra esaltazione delle alte frequenze per la ricerca dei bordi e lattenuazione del rumore La maschera di convoluzione combinata risulta la seguente: Se si considerano le maschere h R (i,j) delloperatore di Prewitt ed h SMOOTH (i,j)=1/9 il filtro media di smoothing di 3 3, si ottiene la maschera di convoluzione combinata delloperatore gradiente 5 5 nella forma:

35 35 OPERATORE DERIVATA DELLA GAUSSIANA (DroG) Loperatore gradiente basato sulla derivata della gaussiana e` ottenuto applicando prima loperatore di smoothing gaussiano e successivamente derivando rispetto agli assi coordinati.

36 36 OPERATORE GRADIENTE DIREZIONALE In diverse applicazioni è conveniente calcolare i bordi per un numero definito di direzioni Questo può essere realizzato mediante la convoluzione dellimmagine di input f(i,j) con diverse maschere h k i cui pesi modellano le risposte impulsive con gradiente direzionale. Il gradiente direzionale è espresso da dove h k è la risposta impulsiva del gradiente nella direzione dove k può assumere valori da 0 (per indicare la direzione nord) a

37 37 OPERATORE GRADIENTE DIREZIONALE Le maschere di convoluzione corrispondenti alle k direzioni sono ottenute partendo con k=0 e ruotando in modo circolare di /4 ogni elemento esterno della maschera 3 3. k=0,...,7

38 38 OPERATORE GRADIENTE DIREZIONALE

39 39 OPERATORE GRADIENTE DIREZIONALE La somma dei pesi di ogni maschera è zero Consegue che nelle zone omogenee loperatore sarà zero. Valore massimo si ha quando la configurazione dei livelli di grigio dei pixel meglio concordano con i modelli rappresentati dalle maschere. Altri operatori gradiente possono essere definiti con altre rotazioni: per esempio di /6 con maschere di dimensioni 5 5. Con maschere ancora più grandi si possono calcolare le direzioni dei bordi in modo più preciso con una buona riduzione del rumore ma con la necessità di notevole tempo di calcolo.

40 40 OPERATORE LAPLACIANO Uso della derivata seconda per accentuare ulteriormente i bordi Si usa loperatore di Laplace così definito Applicare loperatore Laplaciano ad una immagine f(i,j) per localizzare facilmente i pixel di bordo corrispondenti al pixel dove il fianco di salita o di discesa di 2 f passa per lo zero (da positivo a negativo e viceversa). Questa transizione di 2 f per lo zero è chiamato anche zero crossing e corrisponde al pixel di bordo

41 41 OPERATORE LAPLACIANO Più sensibile al rumore rispetto agli altri operatori, Non fornisce informazioni di direzione del bordo, e può generare doppi bordi Nel dominio spaziale discreto, loperatore laplaciano può essere approssimato considerando le differenze dei valori di intensità invece delle derivate. La componente orizzontale delloperatore laplaciano è approssimata come segue: differenza in avanti

42 42 OPERATORE LAPLACIANO Con la traslazione di un pixel in orizzontale, ottenuta sostituendo j con j-1 si calcola il valore approssimato del laplaciano nel punto (i,j) definito da: operando in modo analogo per la componente verticale si ottiene: Queste approssimazioni conducono alle corrispondenti maschere di convoluzione orizzontale e verticale: Dalla combinazione delle componenti orizzontali e verticali si ottiene una singola maschera di convoluzione del laplaciano:

43 43 LAPLACIANO DELLA GAUSSIANA Marr ed Hildreth hanno definito un operatore per lestrazione dei bordi, chiamato laplaciano della gaussiana (LOG) combinando leffetto del filtro gaussiano (smoothing) con quello delloperatore laplaciano (per esaltare i bordi).

44 44 LAPLACIANO DELLA GAUSSIANA

45 45 DIFFERENZA DI GAUSSIANE - DoG Una buona approssimazione al filtro di Marr-Hildreth è ottenuto con un operatore basato sulla differenza di due Gaussiane con differente valore di : dove con A>B e 1 < 2 Marr ed Hildreth hanno trovato che con 2 / 1 =1.6 si ha la migliore approssimazione al filtro Laplaciano della Gaussiana

46 46 DIFFERENZA DI GAUSSIANE - DoG

47 47 OPERATORE DI CANNY La presenza di discontinuità nellimmagine, causate dalla fluttuazione dei sensori e dalla elettronica associata della telecamera, producono valori di gradiente anche in zone dellimmagine che dovevano essere omogenee (bordi sparsi ed artefatti). Queste discontinuità dovute al rumore, possono non essere facilmente filtrate poichè spesso sono differenti rispetto alle caratteristiche del filtro Un operatore che approssima la misura di gradiente per estrarre i bordi deve risolvere due caratteristiche contrapposte: - attenuare il rumore -localizzare i bordi accuratamente quanto possibile.

48 48 OPERATORE DI CANNY Se si esagera con la prima caratteritica, si hanno problemi nel localizzare i bordi in quanto il processo di smoothing può aggiungere incertezza sulla posizione del valore di massima discontinuità Se si esagera con la seconda caratteristica, si ha linconveniente di aumentare la sensibilità delloperatore ed estrarre bordi che in realtà sono da attribuire al rumore Un operatore lineare basato sulla derivata prima della Gaussiana DroG risulta essere un buon compromesso tra localizzare i bordi e la non dipendenza del rumore Loperatore di Canny è risultato essere ottimale per risolvere il compromesso tra la localizzazione accurata dei bordi e linfluenza dal rumore.

49 49 OPERATORE DI CANNY Le caratteristiche delloperatore di Canny sono -Buona determinazione dei bordi, il rapporto segnale rumore (snr) del gradiente è massimizzato per ottenere la probabilità minore di errore nella determinazione di un bordo reale e di ottenere una probabilità minima nel considerare un falso bordo -Buona localizzazione, punti identificati come bordi sono il più vicino possibile al centro del bordo reale -Risposta singola, loperatore dovrebbe produrre una unica risposta per uno stesso bordo

50 50 OPERATORE DI CANNY Vediamo ora come possono essere descritte matematicamente le caratteristiche ottimali proposte da Canny La prima e la seconda caratteristica può essere soddisfatta considerando loperatore DroG, la Derivata della Gaussiana, come operatore che meglio approssima il rapporto segnale rumore e localizzazione Primo passo Il primo passo delloperatore di Canny è quello di convolvere limmagine f(i,j) con un filtro di smoothing Gaussiano h(i,j; ) producendo una immagine g(i,j) data da: dove controlla il livello di smoothing Secondo passo Successivamente sono stimate le derivate parziali g x e g y, il modulo ed orientazione del gradiente per ogni pixel (i,j) dellimmagine g.

51 51 OPERATORE DI CANNY Le derivate parziali sono approssimate, usando per ogni pixel (i,j) finestre 2 2, e considerando le prime differenze: Il modulo ed orientazione del gradiente sono calcolati dalle note formule:

52 52 OPERATORE DI CANNY Terzo passo Siamo ora interessati a calcolare la posizione del bordo, la sua orientazione e possibilmente considerare anche il modulo del bordo in relazione al modulo del gradiente M(i,j). Un modo per localizzare i punti di bordi potrebbe essere quello di considerare punti dellimmagine gradiente M(i,j) con valori alti Questo approccio non risulterebbe robusto per identificare i bordi poiché limmagine gradiente ha leffetto di accentuare le zone con discontinuità di livelli di grigio e conseguentemente nellimmagine gradiente M(i,j) il problema della localizzazione si ridurrebbe a trovare i punti di massimo locale.

53 53 OPERATORE DI CANNY Loperatore di Marr-Hildreth localizza in corrispondenza degli zeri nella derivata seconda globale (ricordiamo che non fornisce la direzione del bordo in quanto è usato loperatore laplaciano) Loperatore di Canny invece, annulla la derivata seconda direzionale per trovare lorientazione del gradiente e quindi la direzione ortogonale al bordo Questo è espresso dalla equazione:

54 54 OPERATORE DI CANNY La localizzazione dei bordi non risulta un compito molto semplice anche in presenza di bordi ben delineati perchè non sempre risulta con valore zero la derivata seconda dellimmagine smussata g Una buona strategia può essere quella di considerare landamento dei pixel localmente per cercare i valori a zero della derivata seconda. Si considera una finestra di dimensioni adeguate centrata sul pixel in elaborazione

55 55 OPERATORE DI CANNY Quindi si cercano i massimi locali nellimmagine gradiente (modulo) nella direzione perpendicolare al bordo dove la derivata seconda direzionale è nulla Questo processo è chiamato soppressione dei non massimi locali (non-maximal suppression-nms). Tale processo assottiglia i picchi in M(i,j) ponendo a zero tutti i punti di M(i,j) lungo la direzione (i,j) del gradiente che non sono valori di picco.

56 56 OPERATORE DI CANNY Quarto Passo Riduzione dei frammenti dei falsi bordi presenti in N(i,j), Tutti i valori di N(i,j) al di sotto di un certo valore di soglia sono impostati a zero

57 57 OPERATORE DI CANNY I passi essenziali delloperatore (algoritmo) di Canny sono così riassunti: 1-Limmagine originale f(i,j) è convoluta con il filtro Gaussiano h(i,j; ) ottenendo limmagine smussata g(i,j) 2-Calcola le seguenti informazioni (immagini) associate al gradiente per ciascun pixel dellimmagine smussata g(i,j): -g x (i,j) derivata prima parziale (componente orizzontale) -g y (i,j) derivata prima parziale (componente verticale) -M(i,j) modulo del gradiente - (i,j) direzione del gradiente 3-Non-maximal suppression (NMS) allimmagine modulo del gradiente M(i,j) ottenendo come risultato limmagine N(i,j)

58 58 OPERATORE DI CANNY 4-Attivare una procedura euristica che utilizza adeguate soglie per limmagine N(i,j) allo scopo di attenuare la presenza di falsi bordi e di collegare contorni interrotti 5-Ripetere eventualmente i 4 passi precedenti con valori crescenti di k ottenendo le immagini di bordo N(i,j; k ) per avere diversi risultati delloperatore di Canny 6-Possibilità di integrare i risultati conseguiti N(i,j; k ) a diverse scale in relazione al contesto applicativo.


Scaricare ppt "1 Filtro di smoothing Gaussiano Appartengono a questa categoria i filtri lineari di smoothing che definiscono i coefficienti della maschera di convoluzione."

Presentazioni simili


Annunci Google