Th eorie de Fourier - Imagineimagine.enpc.fr/~marletr/enseignement/mathimage/TIVO...Si f est p...

Post on 08-Oct-2020

1 views 0 download

Transcript of Th eorie de Fourier - Imagineimagine.enpc.fr/~marletr/enseignement/mathimage/TIVO...Si f est p...

Theorie de Fourier

Guillaume Obozinski

LIGM/Ecole des Ponts - ParisTech

Traitement de l’information et vision par ordinateur

Ecole des Ponts

Une image

Image numerique

Une image numerique est une une application

f : Ω→ C,

ou Ω ⊂ R2 est le domaine de definition de l’image et C est l’ensemble decouleurs possibles.

On s’interessera dans ce cours au cas Ω = [0, a]× [0, b] d’undomaine rectangulaire.

Pour une image couleur, l’ensemble C est [0, 1[3.

Pour une image monochrome, C = [0, 1[.

Une image couleur s’obtient donc comme une superposition de troisimages monochromes.

Discretisation

D’un point de vu pratique et informatique, il est necessaire deremplacer la fonction f qui prend une infinite de valeurs en unnombre infini de points, par une fonction definie sur un ensemble finia valeurs dans un ensemble fini.

Discretisation : On definit une partition de Ω = [0, a]× [0, b],generalement engendree par une grille reguliere, et on remplace lafonction f par ses valeurs moyennes :

Ω =⊔i,j

Ωij , f (i , j) =1

|Ωij |

∫Ωij

f (x) dx .

Quantification

Quantification : On a egalement besoin de remplacer C par un ensemblefini, ce qui equivaut a utiliser un nombre fini de couleurs.

Si C = [0, 1[, on choisit un entier N et on remplace f (i , j) par

f Q(i , j) = [K × f (i , j)],

ou [x ] designe la partie entiere de x .

Pour des images monochromes, on utilise typiquement une quantificationavec K = 256, ce qui implique que les valeurs prises par une image sont0, 1, . . . , 255.

Problematiques

Restauration des imagesdegradees :

Debruitage,Deblurring (defloutage ?),Inpainting.

Compression :

Sans perte,Avec perte.

Segmentation.

Detection de contour.

Theorie de Fourier

Definition de la transformee de Fourier F

La transformee de Fourier en pulsation F ou Fω :

f (ω) = fω(ω) =

∫ +∞

−∞f (t) e iωtdt → F−1

ω (f ) =1

2πFω(f )

La transformee de Fourier en frequence Fν :

fν(ν) =

∫ +∞

−∞f (t) e2iπνtdt → F−1

ν (f ) = Fν(f )

I La pulsation ou vitesse angulaire est mesuree en radian par seconde(rad · s−1)

I La frequence est mesuree en Hertz (1Hz = 1s−1).

1Hz ←→ 2πrad · s−1.

Les resultats sont plus simples et plus elegants en Hz .

Operateurs lineaires stationnaires

Pour une fonction f on note fτ : t 7→ f (t − τ) la fonction avec un retardde τ . Un operateur est lineaire stationnaire s’il est lineaire et si

∀f , [Lf ](t) = g(t) ⇒ gτ (t) = [Lfτ ](t).

On peut ecrire f (t) =∫ +∞−∞ f (u)δ(t − u)du. Mais alors si L est continu

on a

(Lf )(t) =

∫ +∞

−∞f (u)Lδu(t)

= (f ∗ h)(t),

ou h est la reponse impulsionnelle de L.

Conclusion : un filtre lineaire stationaire est une convolution.

Pourquoi les convolutions ?

I Le floutage est une convolution

I Donc le defloutage est une deconvolution.

I Le calcul des gradients lisses est obtenu par convolution.

Fonctions propres des operateurs de convolution

Le iωt =

∫ +∞

−∞h(u) e iω(t−u)du

= e iωt

∫ +∞

−∞h(u) e−iωudu

= e iωt h(ω).

Les exponentielles complexes sontles vecteurs propres des operateurs de convolution.

(t 7→ e iωt) est la fonction propre associee a la valeur propre h(ω).

Transformee de Fourier dans L1(R)

En effet

f (ω) =

∫ +∞

−∞f (t) e−iωtdt

est convergente avec

|f (ω)| ≤∫ +∞

−∞|f (t)|dt = ‖f ‖L1 .

De plus on a alors f est continue (exercice).

Reconstruction quand f ∈ L1(R) et f ∈ L1(R)

Theoreme:Si f ∈ L1(R) et f ∈ L1(R) alors

f (t) =

∫ +∞

−∞f (ω) e iωtdω.

Voir cours d’analyse spectrale.

Theoreme de convolution

Theoreme:Soit f , h ∈ L1(R). La fonction g = f ∗ h est dans L1(R) et

g(ω) = f (ω) h(ω).

A quoi sert la transformation de Fourier ? La transformation deFourier transforme la convolution en multiplication.

Theoreme:

F :(L1(R),+, ∗, ‖ · ‖L1

)→(C0(R),+,×, ‖ · ‖L∞

)est un morphisme continu d’algebres de Banach.

Pourquoi la transformation de Fourier ?

I Equations aux derivees partielles

f (n)(ω) = (iω)n f (ω)

I Telecommunications (modulation/demodulation d’un signal enfrequence)

I Imagerie biomedicale : techniques IRM

I Traitement de donnees audio

I Traitement d’image

TF de L1(R) dans C0(R)

F : L1(Rn) → C0(Rn)

f 7→ f

F est une injection de L1(R) dans C0

I Si f ∈ L1(R) alors f (x) =∫∞−∞ f (ω)e iω tdω

Classe de Schwartz

S(R) :=

f ∈ C∞ | ∀α, β, ∃M, supx∈R|xαf (β)(x)| ≤ M

Fonctions :

I lisses

I a decroissance rapide

Les formes lineaires sur la classe de Schwartz sont les distributiontemperees qui constitue la classe de distributions qui herite par dualitedes bonnes proprietes de la classe de Schwartz vis-a-vis de latransformation de Fourier.

TF de S dans S

F : S(R) → S(R)

f 7→ f

F est un isomorphisme topologique

La transformation de Fourier dans L2(R)

Theoreme:

F :(L2(R),+, ∗, ‖ · ‖L2

)→(L2(R),+,×, ‖ · ‖L2

)est

I un automorphisme continu de L2(R).

I une isometrie de L2(R) dans lui-meme.

TF de L2(R) vers L2(R)

F : L2(Rn) → L2(Rn)

f 7→ f

F est une isometrie de L2

I Attention : la transformee de Fourier est definie au sens de laconvergence dans L2(R). La fonction n’est pas necessairementdefinie ponctuellement.

Formule de Parseval et theoreme de Plancherel

Soient f et h dans L2(R), on a

Formule de Parseval :

⟨f , h⟩L2(R)

=⟨fν , hν

⟩L2(R)

=1

2π〈fω, hω

⟩L2(R)

Theoreme de Plancherel :∫|f (t)|2dλ(t) =

∫|fν(ν)|2dλ(ν) =

1

∫|fω(ω)|2dλ(ω)

Phenomene de Gibbs

Oscillations de Gibbs

Soit f une fonction avec un discontinuite en t0 de sorte que

f (t) = fc(t) +[f (t+

0 )− f (t−0 )]u(t − t0) pour u(t) =

1 si t ≥ 0,

0 sinon.

Si on applique a f un filtre passe-bas ideal de TF hξ(ω) = 1[−ξ,ξ](ω),

on obtient fξ(t) = (fc ∗ hξ)(t) +[f (t+

0 )− f (t−0 )] (

u ∗ hξ)(t − t0).

Or (u ∗ hξ)(t) =1

π

∫ +∞

−∞u(τ)hξ(t − τ)dτ

=1

π

∫ +∞

−∞u(τ)

sin(ξ (t − τ))

ξ (t − τ)dτ

=1

π

∫ ξt

−∞

sin(v)

vdv

Comportement du Sinus Integral

On a

1

π

∫ +∞

−∞

sin(x)

x=

limx→∞

1

2+

1

πSi(x) = 1,

Si(x) atteint un maximumlocal en x = π.

Or, pour tξ = πξ ,

(u ∗ hξ)(tξ) =1

π

∫ π

−∞

sin(x)

x=

1

2+

1

πSi(π) = 1, 089490.

I 0, 089490 est la constante de Gibbs-Wilbraham.

I Ce pic ne decroit pas lorsque ξ → +∞

Diracs, peignes et echantillonnage...

Transformee de Fourier d’une fonction de Dirac

δ(ω) = 1

δt0(ω) = e−iωt0

F (e iω0·) = 2π δω0

Transformee de Fourier sur le tore et series de Fourier

Si f est periodique alors f est une somme pondere de Diracs dont lespoids sont les coefficient de la serie de Fourier :

f (t) =∑n∈Z

ane2iπnT alors f (ω) = 2π∑n∈Z

anδ2πnT .

Inversement, si f est une somme de fonctions de Dirac alors f estperiodique.

Transformee de Fourier d’un peigne de Dirac

Peignes de Dirac ⊂ Distrib. periodiques ⊂ Distrib. temperees

(∑k∈Z

δkT

)=

1

T

∑k∈Z

δkT

(∑k∈Z

δkT

)(ω) =

∑k∈Z

e−iωkT =2π

T

∑k∈Z

δ2πkT

(ω)

La transformee de Fourier en frequenced’un peigne de Dirac de periode T et d’amplitude 1

est un peigne de Dirac de periode 1T et d’amplitude 1

T .

Theoreme: (Formule sommatoire de Poisson)

∑k∈Z

f (kT ) =1

T

∑m∈Z

f(2πm

T

)

Echantillonnage regulier d’une fonction

Interpretation comme distribution...

f (t) →(f (nT )

)n∈Z

On peut interpreter la fonction echantillonnee comme une distribution

fd(t) = T∑n∈Z

f (nT ) δ(t − nT )

En effet fd converge vers f au sens des distributions.

... une distribution dont la transformee est periodique !

On a en effet fd(ω) =∑n∈Z

f (nT ) e−iωnT

qui montre que f est periodique de periode 2πT en pulsation (ou 1

T enfrequence).

Interpretation de l’echantillonnage en Fourier

fd(t) = T∑n∈Z

f (nT ) δ(t − nT ) = T f (t)∑n∈Z

δ(t − nT ) = T f (t) c(t)

avec c(t) =∑

n∈Z δ(t − nT ) le peigne de Dirac.

fd = T1

2πf ∗ c

=T

2πf ∗(

T

∑n∈Z

δ 2πnT

)= f ∗

(∑n∈Z

δ(· −2πn

T

))=

∑n∈Z

f(· −2πn

T

)fd est donc la “periodisee” de f de periode 2π

T en pulsation.

Theoreme d’echantillonnage (Whittaker-Kotel’nikov-(Nyquist)-Shannon)

On note supp(f ) le support 1 de la fonction f

Theoreme:

I Soit une fonction f telle que f ∈ L1loc(R).

I Soit (f (nT ))n∈Z un echantillonnage de f a la frequence 1T .

I Si supp(fω) ⊂ ]− πT ,

πT [ (i.e. si supp(fν) ⊂ ]− 1

2T ,1

2T [ ),

alors f peut etre reconstruit exactement a partir de l’echantillon et

f (t) =∑n∈Z

f (nT ) hT (t − nT ) avec hT (t) =sin(πt/T

)πt/T

.

1. i.e. le complementaire du plus grand ouvert sur lequel f = 0 p.p.

Le theoreme d’echantillonage graphiquement...

Preuve du theoreme d’echantillonnage

On a FhT = hT avec hT = T 1]−πT ,πT [.

Par hypothese on a

∀ω ∈]−π

T,π

T

[, fd(ω) = f (ω).

Et comme f est nulle hors de cet intervalle, on a f = 1T fd hT .

D’ou f (t) =1

T(fd ∗ hT )(t)

=1

T

∫R

T((∑

k∈Zf (nT ) δ(· − nT )

)∗ hT

)(t)

=∑k∈Z

∫R

1

TT f (nT )

(δ(· − nT ) ∗ hT

)(t)

=∑k∈Z

f (nT ) hT (t − nT ).

Frequence d’echantillonnage et aliasing

Echantillonnage de NyquistSi νmax est la frequence maximale presente dans un signal, il fautl’echantillonner a une frequence ν strictement superieure a 2νmax pourreconstruire le signal exactement.

I frequence de Nyquist : ν/2

I taux d’echantillonnage de Nyquist : 2 νmax

Repliement de spectre (Aliasing)

I Les signaux reels ne sont pas a spectre borne.

I Il y a repliement du spectre : un“alias” des hautes frequences est“recopie” sur les basses frequences.

I Il peut se traduire par du crenelage sur des bords ou contour francsou par la presence de moires.

Anti-aliasingUn filtre anti-aliasing est un filtre passe-bas analogique qui supprime ouattenue les frequences superieures a ν/2 avant l’echantillonnage a lafrequence ν.

Aliasing discretLe phenomene d’aliasing se produit egalement lorsqu’onsous-echantillonne un signal.

Vers les images : Fourier dans Rn

Transformee de Fourier dans Rn

Pour une fonction f ∈ R2, on a

f (ω1, ω2) =

∫ +∞

−∞

∫ +∞

−∞f (x1, x2)e−i(ω1x1+ω2x2) dx1 dx2

f (ω) =

∫R2

f (x) e−i〈ω,x〉dx

Si ρ = ‖ω‖2 et u = 1ρω, alors x 7→ e−i〈ω,x〉 est une onde plane qui se

deplace

I dans la direction u

I a la pulsation ρ

Cas des fonctions separables :

Si f (x1, x2) = g(x1) h(x2), alors f (ω1, ω2) = g(ω1) h(ω2).

Les proprietes de la TF se generalisent a Rn

Transformee de Fourier inverse si f , f ∈ L1(Rn)

f (x) =1

(2π)n

∫Rn

f (ω)e i〈ω,x〉dω

Produit de convolution :

g(x1, x2) =

∫∫f (u1, u2)h(x1 − u1, x2 − u2)du1du2

TF de la convolution :

g(ω1, ω2) = f (ω1, ω2) h(ω1, ω2)

Parseval et Pancherel∫Rn

f g =1

(2π)n

∫Rn

f g et

∫Rn

|f |2 =1

(2π)n

∫Rn

|f |2.

Le theoreme d’echantillonnage en dimension 2

L’image discrete peut se representer comme une somme de Diracs

fd(x1, x2) =∑

n1,n2∈ZT1T2f (n1T1, n2T2) δ(x1 − n1T1) δ(x2 − n2T2)

On montre que fd(ω1, ω2) =∑

k1,k2∈Zf(ω1 −

2k1π

T1, ω2 −

2k2π

T2

).

Theoreme: (Echantillonnage sur une grille 2D)Si f est a support dans ]−πT1

, πT1[×]−πT2

, πT2[ alors f peut-etre reconstruit

exactement a partir des echantillons pris sur une grille reguliere de pas T1

et T2, et

f (x1, x2) =∑

n1,n2∈Zf (n1T1, n2T2) hT1 (x1 − n1T1) hT2 (x2 − n2T2),

pour hT (t) = sin(πt/T )πt/T .

Signaux finis et tore discret...

Convolution pour les signaux finis

Soient f , h des signaux discrets f , h ∈ RZ. On peut definir la convolution :

(f ∗ h)[n] =∑k∈Z

f [p] h[n − p]

Pour des signaux finis f , h ∈ RN , on periodise :

f [n] = f [n mod N], h[n] = h[n mod N]

On definit la convolution circulaire :

(f ~ h)[n] =N−1∑p=0

f [n] h[p − n].

Vecteur propres de la convolution circulaire

Soit L un operateur de convolution circulaire :

Lf [n] = (f ~ h)[n]

Les exponentielles complexes discretes

ek [n] = exp(

2iπkn

N

).

sont les vecteurs propres de la convolution circulaire puisque :

(L ek)[n] = exp(

2iπkn

N

) N−1∑p=0

h[p] exp(−2iπk

p

N

)

= h[k] ek [n] pour h[k] =N−1∑p=0

h[p] exp(−2iπk

p

N

).

Transformation de Fourier discrete (TFD/DFT)

Les (ek)k∈0,...,N−1 forment une base orthogonale de Cn.

Par consequent

f =N−1∑k=0

〈f , ek〉‖ek‖2

2

ek .

Par definition

f [k] = 〈f , ek〉 =N−1∑n=0

f [n] exp(− 2iπk

n

N

).

On a ‖ek‖22 = N, ce qui donne la formule de reconstruction.

Theoreme: (Convolution)La TFD de g = f ~ h est la fonction g telle que g [k] = f [k]h[k].

Fourier : cas discret vs continu

A quoi nous servent les resultats sur la transformee de Fourier continue siles images sont discretes et finies ?

I Notion de continuite d’une fonction disparait en discret

I Phenomene de Gibbs bien reel

I Utiliser une recopie mirroir de l’image pour la rendre plus continue.

I Utile pour penser le zoom par Fourier

I Il existe une image a resolution infinie sous-jacente

La transformee de Fourier rapide (FFT)

Complexite naıve de la TFD : N2.

Un algorithme simple pour N = 2m

Termes pairs :

f [2k] =

N/2−1∑n=0

(f [n] + f [n + N/2]

)exp

(−2iπk

n

N/2

)Termes impairs :

f [2k + 1] =

N/2−1∑n=0

exp(−2iπ

n

N/2

)(f [n]− f [n + N/2]

)exp

(−2iπk

n

N/2

)

• La TFD peut donc etre calculee a partir de 2 TFD de taille N/2. •C (N) = 2C (N/2) + KN d’ou une complexite en O(N log(N)).

De nombreux algorithmes pour la FFT...

Un grand nombre d’algorithmes ont ete propose pour la FFT, base sur letheoreme des restes chinois, les polynomes cyclotomiques etc.

I Algorithme de Cooley-Tucker,

I algorithme de Brunn,

I QFT,

I de Winograd,

I de Rader,

I de Bluestein,

+ des algorithmes plus specialises.L’algorithme le plus utilise est la methode split-radix.

I Lorsque le signal d’entree est reel on a f [−k] = f [k].

I La FFT donne aussi une transformee de Fourier inverse rapide

Convolutions rapides via FFT

Une des applications principales de la FFT est le calcul de convolutionrapides. La complexite naıve de la convolution est N(N + 1) pour deuxsignaux de longueur N.

Pour calculer g = f ~ h

I On calcule f et h par FFT

I Puis g [k] = f [k]h[k]

I Finalement on calcule g par FFT inverse.

La complexite est en O(N log(N)).

Dans le cas de la convolution avec un signal plus court de longueur L, onpeut utiliser des convolutions par bloc.

La complexite est alors en O(N log(L))

Fourier pour l’image : le bilan

La theorie de Fourier permet

I de comprendre le phenomene d’aliasing

I de calculer des convolutions rapides avec la FFT

I de faire des zoom et rotations en “sub-pixellique”.

Cependant

I Approcher un signal avec Fourier donne lieu a des oscillations deGibbs au niveau des bords et discontinuites.

I Les images ne sont pas stationnaires

I Les images on une structure multi -echelle

I La transformee de Fourier est globale.

I Besoin d’un technique d’analyse locale de l’image.

I Idem en audio et dans d’autres domaines

pause

I Nous verrons que les ondelettes permettent dans une certainemesure de repondre a ces questions.