Analisi di Immagini e Dati Biologici Filtri L4-1 41.
-
Upload
ferdinanda-perego -
Category
Documents
-
view
217 -
download
0
Transcript of Analisi di Immagini e Dati Biologici Filtri L4-1 41.
Analisi di Immagini e Dati Biologici
Filtri
L4-141
Filtri
Trasformazione di un immagine che non si limita alla trasformazione di intensità di un pixel
Il singolo pixel è ricalcolato in funzione del suo valore e del valore dei pixel circostanti
La funzione che “modella” la trasformazione è detta kernel
Filtro di smoothing
Smoothing Filter
Un pixel della nuova immagine è ricalcolato come media dei pixel circostanti
Smoothing Filter
La stessa espressione resa per un pixel generico avente coordinate (u,v)
Smoothing Filter
Caratteristiche generali
Dimensione (size): numero di punti lungo righe & colonne coinvolti nel filtro
Forma: Il filtro di media è rettangolare. per filtri di dimensione maggiore si può cercare di approssimare la forma di un disco
Kernel: funzione che determina i valori dei coefficienti del filtro
Principale uso:
Limitazione del rumore luminoso scorrelato dall'oggetto
Filtri Lineari
Il filtro di media è un esempio di filtro lineare E' semplice rappresentare l'azione di un filtro lineare attraverso una matrice La matrice di un filtro di media:
Matrice di un filtro Quasi sempre le matrici hanno ordine dispari in modo
che sia univoco il loro centro Ogni matrice ha un “hot spot”, generalmente il centro
della matrice di un filtro (anche se non necessariamente)
Filtri lineari
Modello correlativo del calcolo di un filtro lineare
Filtri lineari
Rappresentazione matematica
Filtri Lineari Box filter: è il filtro di media.
Gaussian filter: i coefficienti di un filtro gaussiano non sono costanti, ma calcolati dalla funzione di Gauss in 2-D
Esempi di filtri lineari
Filtri lineari
octave:1> fspecial("average",3)ans =
0.11111 0.11111 0.11111 0.11111 0.11111 0.11111 0.11111 0.11111 0.11111
octave:2> fspecial("gaussian",3)ans =
0.011344 0.083820 0.011344 0.083820 0.619347 0.083820 0.011344 0.083820 0.011344
Filtro gaussiano
5x5,σ=2 3x3, σ=1 Originale
Smoothing
Smoothing
octave:1> cd Desktop/octave:2> ht=imread('halftone.tiff');octave:3> imshow(ht)octave:4> figureoctave:5> htf = imfilter(ht,fspecial("gaussian",7,1.5));octave:6> imshow(htf)octave:7>
Octave: fspecial
-> fspecial(type,arg1,arg2)
Ritorna una matrice basata su un kernel definito dalla stringa passata come primo argomento (type)
Controllata da 1,2 o 3 argomenti
1) Tipo di filtro da generare2) Parametro di controllo 13) Parametro di controllo 2
Octave: fspecial
Filtri di smoothing generati Average: filtro di media Gaussian: filtro con kernel gaussiano Disk: analogo del filtro di media ma con supporto
circolare
Octave: fspecial
→ type = “average” Filtro di media rettangolare. In assenza di altri argomenti genera un filtro
3x3 Se il secondo argomento è un intero = N ritorna il filtro di media
rettangolare NxN Se è un vettore di 2 elementi allora vengono interpretati per creare una
matrice NxM
octave:1> fspecial("average",5)ans =
0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000 0.040000
octave:2> 0.04*25ans = 1
Octave: fspecial
→ type = “gaussian” Il secondo argomento è interpretato come per il filtro di media “average” Il terzo argomento è la dispersione σ (“spread”) della funzione
octave:3> fspecial("gaussian",5)ans =
6.9625e-08 2.8089e-05 2.0755e-04 2.8089e-05 6.9625e-08 2.8089e-05 1.1332e-02 8.3731e-02 1.1332e-02 2.8089e-05 2.0755e-04 8.3731e-02 6.1869e-01 8.3731e-02 2.0755e-04 2.8089e-05 1.1332e-02 8.3731e-02 1.1332e-02 2.8089e-05 6.9625e-08 2.8089e-05 2.0755e-04 2.8089e-05 6.9625e-08
octave:4> sum(sum(fspecial("gaussian",5)))ans = 1
Octave: fspecial
Il signficato del terzo argomento (opzionale) dipende dal tipo di filtro che state generando Per il box-filter (“average”) è la dimensione del
supporto rettangolare del filtro (può essere un vettore di 2 elementi)
Per il filtro gaussiano il terzo argomento è la dispersione del filtro (default = 0.5)
Per il filtro circolare (“disk”) è il raggio del disco Provate a confrontare l'output di fspecial per un filtro
gaussiano di ordine 7 cambiando il valore della dispersione
Octave's filtering: imfilter(I, f)
Funzione di Octave che implementa un filtro lineare J = imfilter(I, f)
'I' immagine da filtrare 'f' matrice del filtro 'J' matrice dell'immagine di output
Preserva la classe dell'immagine di input Se l'immagine è RGB agisce separatamente su ogni
piano di colore
Filtri lineari
Convoluzione
Filtri lineari
Modello convolutivo
La funzione di correlazione con cui si rappresenta l'azione di un filtro viene più convenientemente espressa come convoluzione
Filtri lineari Passaggio da convoluzione a correlazione
Filtri Lineari e System identification
Impulse Response: filtro che lascia l'input intatto E' rappresentato dalla funzione δ
Point Spread Function Funzione di trasferimento ottico del sistema
Un modello lineare della funzione ottica può essere rappresentato matematicamente come convoluzione della PSF con una sorgente puntiforme
La PSF rappresenta il modello di tutte le alterazioni che avvengono nella formazione dell'immagine rispetto al modello teorico
Determinazione dell PSF
La funzione δ preserva una immagine, costituisce cioè l'identità del prodotto di convoluzione
Determinazione della PSF
Per correggere il comportamento di un sistema ottico si usano sorgenti puntiformi Si va ad osservare l'immagine che si forma che è una rappresentazione della PSF
Effetti della PSF
Aberrazione sferica
Convoluzione
Esempi di effetti della PSF
“Diffraction spikes” nei telescopi
Ogni stella è una sorgente approssimativamente puntiforme
Il risultato è la somma di sorgenti “tipo puntiforme”
Ogni sorgente riproduce la PSF del telescopio che crea l'effetto delle “diffraction spikes”
Filtri non lineari
I filtri lineari
Pixel di un immagine risultante funzione di NxM pixel Problema del 'blurring' (offuscamento)
Filtri non lineari: max e min
Filtro max e min
Filtro di mediana
Il median filter seleziona per ogni pixel dell'immagine di output il valore della mediana dei valori di un intorno
Filtro di Mediana
Filtro di Mediana
Filtro di Mediana
Filtro di Mediana