Post on 15-Feb-2019
transcript
1
Trasformata di Fourier
Sistemi lineari
L Caponetti
Operatori localiGli operatori locali associano ad ogni pixel ( i,j) della immagine di output Q un valore calcolato in un intorno o finestra w centrata nel pixel P(i,j)
Q=f(P,w)
P(i,j)
2
L Caponetti
Operatori localiLa funzione f può essere lineare o non lineare:
Filtri lineari sono definiti tramite convoluzioneFiltri non lineari
P(i,j)
L Caponetti
Filtri lineari
Gli operatori locali che operano su una immagine mediante l’operazione di convoluzione - della immagine con una maschera di pesi - possono essere descritti mediante la teoria dei segnali ed in particolare dei sistemi lineari:
Trasformata di FourierProdotto di convoluzioneFiltri lineari
3
L Caponetti
Correlazione
Siano f(x,y) una immagine di dimensione NxNh(x,y) una maschera spaziale di dimensione LxLa= parte intera(L/2)
L’operazione di correlazione della immagine f(x,y) con h(x,y) con origine nel centro della maschera si esprime nel modo seguente:
1......0,
),(),(),(
−=
++=
∗=
∑ ∑−= −=
Nji
jyixfjihyxg
fhga
ai
a
aj
L Caponetti
Correlazione - convoluzione
L’operazione di correlazione èequivalente alla operazione di convoluzionenel caso in cui h(x,y) sia una matricesimmetrica
4
L Caponetti
Convoluzione
L’operazione di convoluzione è una operazione lineareche combina due funzioni h, f aventi ugualedimensionalità – continue o discrete:
∑∑
∑∑∞
−∞=
∞
−∞=
∞
−∞=
∞
−∞=
−−=
−−=
∗=
i j
i j
yxhjyixf
jifjyixh
yxfyxhyxg
),(),(
),(),(
),(),(),(
L Caponetti
ConvoluzioneIn pratica h( x, y ) è di “estensione finita”
Se ∆ è il più piccolo intorno in cui h è diversa da 0 - ∆ è detto supporto di h, si può scrivere:
),(),(
),(),(),(
),(;0),(
),(
jifiyixh
jifjyixhyxg
yxforyxh
a
ai
b
bj
ji
−−=
−−=
∆∉=
∑∑
∑
−= −=
∆∈
dove ∆ è didimensione(2a+1)x(2b+1) pixel
5
L Caponetti
ConvoluzioneSe ∆ è il più piccolo intorno in cui h è diversa da 0, di dimensione (2a+1)X(2b+1)
),(),(
),(),(),(
jihjyixf
jihjyixfyxg
a
ai
b
bj
a
ai
b
bj
−−++=
−−=
∑∑
∑∑
−= −=
−= −=
L’equazione è simile a quella della correlazione: differisce perché la funzione h(i,j) è invertita rispetto agli assi; cioè la maschera h è ruotata cioè di 180 gradi
L Caponetti
Correlazione
L’equazione è detta correlazione della maschera h e della immagine f
Quando h(x,y) è simmetrica l’operazione dicorrelazione è uguale a quella di convoluzione
∑∑−= −=
++=
∗=a
ai
b
bj
jyixfyxh
yxfyxhyxg
),(),(
),(),(),(
6
L Caponetti
Funzione immagine – dominio spaziale
Una immagine è una funzione digitale in due dimensioni: i valori rappresentano il livello di grigio di un determinato pixel di coordinate (x,y)y
x
O
L Caponetti
Immagine come segnale
Segnale: variazione di una grandezza fisica rispetto al tempo e/o allo spazio cioè
Valore della grandezza ad ogni istante di tempo (spazio)
Un segnale è una funzione dipendente da una o piùvariabili
Le immagini stazionarie dipendono dalle coordinate spaziali: siparla di analisi nel dominio dello spazioLa funzione immagine considerata un segnale bidimensionale può essere studiata anche nel dominio delle frequenze –tramite la trasformata di Fourier
7
L Caponetti
Dominio delle frequenzeAmpiezza della trasformata di Fourier nel dominio delle frequenze (u,v) con origine nel centro della immagine
u
vO
L Caponetti
Trasformata di Fourier
FondamentiSerie di Fourier: una funzione periodica puòessere rappresentata come somma di funzioniseno e coseno di differenti frequenze, moltiplicateper differenti coefficientiTrasformata di Fourier: le funzioni non periodiche possono essere rappresentate come integrale di funzioni seno/coseno moltiplicate per dei coefficienti
8
L Caponetti
1D Discrete Fourier Transform -DFTUn segnale digitale di estensione finita può essere rappresentato mediante la Trasformata Discreta diFourier - DFT
Sia f(x) -- {f (0), f (1), … , f (N - 1) } un segnalemonodimensionale di lunghezza N
Si definiscono la trasformata diretta e quella inversa
DFT diretta∑−
=
−=1
0
)2exp()()(N
x NuxjxfuF π u=0,1,…,N-1
DFT inversa ∑−
=
=1
0
)2exp()(1)(N
u NuxjuF
Nxf π x=0,1,…,N-1
L Caponetti
Nucleo della trasformata di FourierFormula di Eulero φφφ sincos je j +=
Nucleo o base della trasformata diretta - kernel
)2sin()2cos()2exp(2
Nuxj
Nux
Nuxje N
uxjπππ
π−=−=
−
Nucleo della trasformata inversa
Nuxj
eπ2 u=0,1,…,N-1
x=0,1,…,N-1
9
L Caponetti
Funzioni base di FourierL’equazione DFT inversa descrive la funzione f(x)come combinazione lineare di termini seno e coseno pesati con i coefficienti di Fourier F(u)
Ciascuna funzione coseno e seno è periodica di periodo N con frequenza u e frequenza angolare
∑−
=
=1
0
)2exp()(1)(N
u NuxjuF
Nxf π
)2cos(Nuxπ )2sin(
Nuxπ
Nuπ2
L Caponetti
Funzioni base – seno/coseno - M=8
10
L Caponetti
Funzioni base – seno/coseno
Funzioni base discrete: C coseno e S senoLunghezza del segnale M=8 - numero d’onda m=0,1,2,3Le altre funzioni sono uguali:
m=1 corrisponde a m=7m=2 a m=6m=3 a m=4
L Caponetti
Proprietà funzioni seno/coseno
12sin2cos
2cos
2cossin
=+
−=
+=
xx
xxx ππ
11
L Caponetti
2D Discrete Fourier Transform -DFT
Trasformata discreta di Fourier- 2-D DFT : un segnale digitale bidimensionale di estensione finita può essere rappresentato mediante la trasformatadiscreta di Fourier 2-D
Sia f(x,y) x= 0,1,…, M -1 , y= 0,1,…, N- 1una immagine di M x N pixel; si definiscono la
trasformata diretta e quella inversa bidimensionali
L Caponetti
2D Discrete Fourier TransformSia f(x,y) una immagine digitale di (MxN) pixel, si definisce
Trasformata discreta di Fourier:
( ) ( )
( ) ( )
1,...,2,1,0 e 1,...,2,1,0per
,,
1,...,2,1,0 e 1,...,2,1,0per
,1,
1
0
1
0
2
1
0
1
0
2
−=−=
=
−=−=
=
∑∑
∑∑
−
=
−
=
+
−
=
−
=
+−
NyMx
evuFyxf
NvMu
eyxfMN
vuF
M
u
N
v
Nvy
Muxj
M
x
N
y
Nvy
Muxj
π
π
DFT diretta 2-D
DFT indiretta -2D
u,v - dominio delle frequenze
12
L Caponetti
Considerazioni
Ogni termine della trasformata di Fourier F(u,v) èottenuto come combinazione lineare di tutti i valori della funzione f(x,y)I valori f(x,y) sono moltiplicati per le funzioni base seno e coseno di frequenze diverseIl dominio (u,v) è noto come dominio delle frequenze
I coefficienti F(u,v) sono detti componenti in frequenza della trasformata o coefficienti di Fourier
L Caponetti
Esponenziale complesso
)2sin()2cos()2exp(2
Nuxj
Nux
Nuxje N
uxjπππ
π−=−=
−
Parte reale Parte immaginaria
F(u,v) è una funzione complessa; si può quindi esprimere in coordinate polari
( ) ( ) ),(,, vujevuFvuF φ=
13
L Caponetti
Trasformata in 2D
La trasformata della funzione f(x,y) è una funzione complessa- si può esprimere in termini di ampiezza e fase:
Spettro o ampiezza
Angolo di fase
Spettro di potenza
Le variabili u e v vengono chiamate variabili di frequenza
( ) ( ) ( )
( ) ( )( )
( ) ( ) 2
22
,,
,,,
,,,
vuFvuP
vuRvuIarctgvu
vuIvuRvuF
=
=
+=
ϕ
( ) ( ) φjevuFvuF ,, =
L Caponetti
14
L Caponetti
Visualizzazione della trasformata di Fourier
La trasformata di Fourier non può essere visualizzata essendo una funzione complessaSi visualizzano separatamente l’ampiezza o la fase. Per l’ampiezza si utilizza la funzione logaritmica
( ) ( )( )u,vF1logu,vD +=
Infatti l’ampiezza decresce piuttosto rapidamente all’aumentare della frequenzaLe componenti di alta frequenza tenderebbero ad essere scure se visualizzate direttamente:
La funzione log è non negativa e preserva il valore 0
L Caponetti
Trasformata di Fourier diretta
I coefficienti F(u,v) di Fourier sono in relazione con alcune caratteristiche della immagine
F(0,0) è proporzionale al valore di brillanza medio della immagine f(x,y)
I coefficienti F(u,v) in corrispondenza di valori elevati di u,v–alte frequenze spaziali- sono in relazione alle brusche variazioni di livello di grigio – edge pixel
I coefficienti F(u,v) in corrispondenza di valori bassi di u,v, vicino all’origine –basse frequenze spaziali- sono in relazione a regioni abbastanza uniformi
15
L Caponetti
Esempio
inputfft
output
Smoothing filter
L Caponetti
ghepardo
16
L Caponetti
Ampiezza della trasformata del ghepardo
L Caponetti
Fase della trasformata del ghepardo
17
L Caponetti
Zebra
L Caponetti
Ampiezza della trasformata della zebra
18
L Caponetti
Fase della trasformata della zebra
L Caponetti
Curiosità sulla FT di immagini
Le ampiezze della FT delle immagini naturalisono abbastanza simili tra loro
L’informazione è elevata vicino alle bassefrequenze, si va attenuando verso le altefrequenze
La maggior parte della informazione è nellafase e non nell’ampiezza
Non è molto chiaro perchè sia quasi sempre così
19
L Caponetti
Ricostruzione con la fase della zebra e l’ampiezza del ghepardo
L Caponetti
Ricostruzione con la fase del ghepardo e l’ampiezza della zebra
20
L Caponetti
Relazione tra intervalli spaziali e in frequenza
Supponiamo che una funzione continua f(t,z) sia campionata per formare una immagine digitale f(x,y)- costituita da MxN campioni presi sull’asse t e z rispettivamenteSupponiamo che ∆T e ∆Z siano gli intervalli di campionamento lungo i 2 assiNel dominio delle frequenze gli intervalli di campionamento sono dati da
ZNv
TMu
∆=∆
∆=∆
1;1
L Caponetti
Relazione tra intervalli spaziali e in frequenza
Le distanze dei campioni nel dominio delle frequenze sono inversamente proporzionali al numero di campioni e all’intervallo di campionamento spaziale
ZNv
TMu
∆=∆
∆=∆
1;1
21
L Caponetti
Proprietà fondamentaliLa trasformata di Fourier gode delle seguenti
proprietà:
traslazione
separabilità
periodicità
simmetria
linearità
convoluzione/ correlazione
L Caponetti
Traslazione
Una traslazione effettuata sulla funzione originale comporta una modifica della fase per la trasformata, e viceversa:
( ) ( )
( ) ( ) Nvyuxj
Nyvxuj
evuFyyxxf
eyxfvvuuF
00
00
200
200
,,
,,
+−
+
⇔−−
⇔−−
π
π
22
L Caponetti
Traslazionef(x,y)exp[j2π(u0x+v0y)/N] ⇔ F(u-u0, v-v0)
Il prodotto di f(x,y) per un termine esponenziale produce nella trasformata F(u,v) una traslazione di (u0,vo). Si ha cioè che l’origine del piano (u,v) trasla nel punto (u0, v0)
In particolare se u0= v0 = N /2, si ha che l’origine (0,0) trasla al centro del piano
exp[j2π(u0x+v0y)/N] = e jπ(x+y) = (-1)x+y
f(x,y)(-1) x+y ⇔ F(u-N/2, v-N/2)
L Caponetti
Traslazione
E’ possibile traslare l’origine della trasformata di Fourier di f(x,y) nel centro del piano (u,v)moltiplicando f(x,y) per (-1)x+y ed effettuando quindi la trasformata di Fourier
È da notare che questa traslazione non influenza il modulo della trasformata:
( )[ ] ( )vuFNvyuxjvuF ,/2exp),( 00 =+− π
se u0= v0 = N /2
23
L Caponetti
Separabilità
La funzione esponenziale complesso si può esprimere come prodotto lungo le due direzioni
è possibile separare la Trasformata di Fourier lungo le due direzioni:
Nvyj
Nuxj
Nvyuxj
eeeπππ 2.2)(2 −−+−
=
( ) ( )∑ ∑−
=
−
=
−−
⋅=1
0
1
0
22
,,N
x
N
y
Nvyj
Nuxj
eyxfevuFππ
( )vxF ,Trasformata per colonne Trasformata per righe
L Caponetti
Separabilità
Vantaggio: la trasformata può essere calcolata mediante due successive applicazioni della trasformata monodimensionale
24
L Caponetti
Rotazione
Se f(x,y) è ruotata di un angolo θ anche F(u,v) è ruotata dello stesso angolo θ
In maniera analoga una rotazione della trasformata F(u,v) causa una rotazione della funzione f(x,y) dello stesso angolo
L Caponetti
Rotazione
25
L Caponetti
Rotazione
L Caponetti
Periodicità
La trasformata di Fourier è periodica.
( ) ( )( ) ( )NvMuFNvuF
vMuFvuF++=+=
=+=,,
,,
La traformata discreta di Fourier è periodica con periodo
M e N lungo i 2 assi, rispettivamente
26
L Caponetti
Simmetria coniugata
Se f(x,y) è una funzione reale. La trasformata equivale alla trasformata complessa coniugata
L’ampiezza della trasformata è simmetrica rispetto all’origine
( ) ( )( ) ( )vuFvuF
vuFvuF
, di coniugata complessa ,con
,,*
* −−=
( ) ( )vuFvuF −−= ,,
L Caponetti
Simmetria- ampiezza dello spettro
27
L Caponetti
Linearità
La Trasformata di Fourier è lineare:
Cioè l’ operatore TF – che genera la trasformata di Fourier - è lineare:
( ) ( )
( ) ( )vuFbvuFa
yxfbyxfa
,,
,,
21
21
⋅+⋅
⋅+⋅
c
( ) ( ) ( )2121 fbTfaTbfafT FFF +=+
L Caponetti
Teorema di convoluzioneNel dominio delle frequenze il prodotto di convoluzione può essere rappresentato come:
G(u, v ) = H (u, v) . F (u, v ) – prodotto pixel per pixel
Dove H (u, v) and F (u, v ) sono trasformate di Fourierottenute dopo operazioni di zero-padding – cornice di zeri
L’operatore . indica la moltiplicazione punto a punto delle 2 matrici
Molte operazioni LSI possono essere interpretate nel dominio delle frequenze come operazioni di filtraggio: ad esempio lasciare passare certe componenti di frequenza e non lasciare passare altre componenti
28
L Caponetti
Sistemi lineari – filtraggio lineare
Un processo che accetta un segnale I ( immagine ) in input e la trasforma mediante una convoluzione èdetto sistema lineare
Obiettivo: migliorare la qualità della immagine, enfatizzandooppure attenuando alcune caratteristiche
Filtro digitalecaratterizzato dallarisposta impulsiva H
Immagine IOutput -Image J = I*H
L Caponetti
Sistemi lineari
Un sistema lineare può essere caratterizzato in 2 modi equivalenti mediante
Risposta impulsiva: risposta del sistema all’impulso unitario – nel dominio originale (per le immagini nel dominio spaziale)
Risposta in frequenza: descrive come il sistema elabora ogni componente in frequenza in una immagine:
Le componenti in frequenza possono essere amplificate oppure attenuate
29
L Caponetti
Un filtraggio nel dominio spaziale può essere rappresentato mediante una funzione T:
essendo f(x,y) l’immagine inizialeT la trasformazione
g(x,y) l’immagine filtrata
Nei sistemi lineari la trasformazione T è lineare
)],([),( yxfTyxg =
Spatial filtering
L Caponetti
Linear Shift-Invariance
Una trasformazione T is Lineare se, essendo a,b costanti
Shift invariant se , nella ipotesi
),()],([
),()],([
0000 yyxxgyyxxfTrisulta
yxgyxfT
−−=−−
=
)],([)],([)],(),([ yxgbTyxfaTyxbgyxafTrisulta
+=+
30
L Caponetti
Come specificare TSe l’operatore T è lineare e invarianteper traslazione (LSI), caratterizzato dallarisposta impulsiva h, la risposta g puòessere ottenuta dal prodotto diconvoluzione ),(),(
),(),(),(
jihjyixf
jihjyixfyxg
a
ai
b
bj
a
ai
b
bj
−−++=
−−=
∑∑
∑∑
−= −=
−= −=
L Caponetti
Image Enhancement in the Frequency Domain
31
L Caponetti
Image Enhancement in the Frequency Domain
L Caponetti
Lowpass filter
Filtro che attenua le frequenze, meno quelle piùbasse
Utile in un processo di smoothing cioèattenuare il rumore o sfocare i dettagli di una immagine, in modo da conservare le caratteristiche più evidenti
32
L Caponetti
Highpass filter
Filtro che attenua le frequenze, meno quelle più alte
Utile per un processo di enhancement cioèevidenziare i dettagli di una immagine ed il contrastorimuovere lo sfocamento
L Caponetti
Bandpass filter
Filtro che attenua le frequenze e fa passare le frequenze in una paricolare intervallo di frequenze(banda di frequenze)
33
L Caponetti
Come si calcola il prodotto di convoluzione
L’output g è calcolato facendo scorrere la maschera su ogni pixel della immagine f Attenzione particolare richiedono i pixel del bordodella immagine f
1. L’immagine è estesa con degli zeriSia L la dimensione di h; in una dimensione si ha:
=0
)()(~ xf
xfNx <≤0
01)2/( <≤+− xL 1)2/( −+<≤ LNxN
L Caponetti
Prodotto di convoluzione
2. L’immagine è estesa aggiungendo ai bordi righe e colonne extra – cornice. L’estensione è fatta ripetendo la prima/ultima riga/colonna oppure mediante valori costanti (fixed boundary). In una dimensione si ha:
−=
)1()()0(
)(~
Nfxf
fxf
1)2/( −+<≤ LNxN
01)2/( <≤+− xL
Nx <≤0
34
L Caponetti
Prodotto di convoluzione
3. L’immagine è estesa in modo periodico (periodic boundary). In una dimensione si ha:
+
=)mod(
)()mod)((
)(~
Nxfxf
NNxfxf
1)2/( −+<≤ LNxN
01)2/( <≤+− xL
Nx <≤0
L Caponetti
Prodotto di convoluzione
In ogni caso l’output finale g èristretto al supporto dell’immagineoriginale f
35
L Caponetti
Low-pass, Band-pass, High-pass filters
low-pass
band-pass
L Caponetti
2D convolution theorem example
*
f(x,y)
h(x,y)
g(x,y)
|F(sx,sy)|
|H(sx,sy)|
|G(sx,sy)|
Slide by Steve Seitz