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 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
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 spaziali nelle direzioni Orizontali, Verticali, Oblique,
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
Le operazioni di elaborazione di immagini locali o globali che alterano il contenuto informativo di una immagine sono chiamate operatori di filtraggio numerico che possono essere: spaziale se si manipolano le strutture di base nel dominio spaziale (operatori locali); nel 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 sharpening) nell’immagine, per migliorare la qualità dell’immagine per esempio, livellando opportunamente (smoothing) forti variazioni locali dei valori di livello di grigio
Filtraggio Numerico Spaziale I filtri spaziali sono implementati attraverso il processo di convoluzione 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
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 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
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 O 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
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 I(l,k) indica il fattore peso della funzione impulsiva del pixel (l,k) dell’immagine
Risposta Impulsiva e Funzione di Trasferimento cont. Se l’output di un sistema lineare è definito come Poichè l’operatore O è lineare, per la sovrapposizione delle componenti di output, possiamo scrivere Inoltre I(l,k) è indipendente da i e j, dalla proprietà di omogeneità segue 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
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 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 L’operatore O è completamente caratterizzato dalla risposta impulsiva k l I(i,j) j i
L’operatore lineare O{} con la relazione di input-output: Invarianza Spaziale L’operatore lineare O{} con la relazione di input-output: I0(i,j) = O{I1(i,j)} è chiamato spazialmente invariante oppure invariante alla traslazione (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 è detto variante spazialmente
I0(i,j)=h(i,j)*I(i,j) Invarianza Spaziale cont. Considerando valide congiuntamente le due proprietà, invarianza spaziale e sovrapposizione, si ha il seguente operatore lineare 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)
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
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 pesata) 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
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), il segnale di output g(i) é dato dalla convoluzione
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
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)
Convoluzione Spaziale bidimensionale 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
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
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
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
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
h5 h4 h3 h2 h1 h0 -2 -1 1 2 Convoluzione Spaziale bidimensionale h0=1 h0 1 2 h0=1 h1=0.78 h2=0.61 h3=0.37 h4=0.28 h5=0.13
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
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
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
FIR Finite Inpulse Response 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 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 Response I filtri ricorsivi, sono chiamati: IIR Infinite Inpulse Response
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 trasformate Tali trasformate, quella di Fourier è 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 modulo La trasformata inversa di frequenze, converte una immagine strutturata con frequenze, ricostruendo all’indietro le strutture spaziali
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
Trasformata di Fourier Le basi della trasformata sono rappresentate da funzioni seno e coseno, e la trasformata dell’immagine I(k,l) è data da L’ampiezza spettrale è definita da che specifica quanto dell’immagine base è presente nell’immagine di input, L’informazione circa l’orientazione dell’oggetto è definita dalla fase
Trasformata di Fourier Dal momento che possiamo riscrivere la trasformata Per una migliore visualizzazione dello spettro, conviene visualizzare il logaritmo, ossia dove c serve a scalare l’intervallo di variabilità di (u,v) tra 0 e 255
Trasformata di Fourier Modulo Log del modulo Fase
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
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
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.
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
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
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 indica col primo termine l’immagine mediata 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
Se la finestra considerata è di 3×3 pixel si ha: 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: 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: . in questo caso, l’operatore di media risulta essere un caso particolare dell’operatore di convoluzione spaziale, che ha come maschera di convoluzione:
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:
FILTRO MEDIA 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
FILTRO MEDIA 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
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: 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)
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
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
FILTRI NON LINEARI Filtri non lineari basati sul valore assoluto: 1. dove T è un valore di soglia definito sperimentalmente 2. con c costante di normalizzazione definito come ed h(l,k)>0 per ogni valore di l e k 3. 4. in questo caso le forti transizioni non vengono sempre livellate
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:
FILTRO MEDIANO
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
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).
FILTRO IDEALE PASSA-BASS0 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.
FILTRO IDEALE PASSA-BASS0 Un 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%: al variare di l0
FILTRO DI BUTTERWORTH La funzione di trasferimento di questo filtro d’ordine n e con frequenza di taglio l0 è data da: dove l(u,v) rappresenta lo spettro definito in precedenza
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:
FILTRO DI BUTTERWORTH Immagine originale l0= 1/3 . l0= 1/2 .
FILTRO ESPONENZIALE La funzione di trasferimento di tale filtro è la seguente: 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:
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: 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