AIV1 – Analyse d'Images et Vision 1
Semaine 1 : Transformée de Fourier d’une image Olivier Losson d'après B. Mathon
Unité AIV1 : https://link.infini.fr/aiv1
Supports : http://auto-ens.univ-lille.fr/Cours/AIV1
Fréquences dans une image
Outils d'analyse et applications
2 – Analyse fréquentielle en 1D
Signaux périodiques et série de Fourier Transformée de Fourier
3 – Analyse fréquentielle en 2D
Transformée de Fourier d'une image continue Échantillonnage spatial
Transformée de Fourier discrète Applications
Sélection de références
Fréquences dans une image (1/3)
Fréquence d'un signal temporel
Un signal s(x) est périodique s'il existe T tel que s(x+T) = s(x) Période fondamentale T
*: valeur minimale de T
Fréquence fondamentale f
*= 1 / T
*Fréquence angulaire fondamentale : ω
*= 2π / T
*= 2π f
*Fréquence spatiale d'une image
1 cycle 2 cycles
x
s1(x)
T1*
s2(x)
T2* = 0.5 T1* x
fréquences
Hautes
fréquences
Basse fréquence
...
Haute fréquence
Somme des 4 signaux
Fréquences dans une image (3/3)
Fréquences spatiales et contenu de l'image Basses fréquences
Changements d'intensité "lents" (graduels) Zones homogènes, floues
Hautes fréquences
Changements d'intensité "rapides" (brusques) Contours, zones texturées, bruit
Basses fréquences
Hautes fréquences
→ analyse possible de ses fréquences spatiales (analyse spectrale)
Outils d'analyse
Série de Fourier
Représentation d'une fonction continue périodique
en somme pondérée de cosinus et sinus ou d'exponentielles complexes Transformée de Fourier
Représentation d'une fonction continue
en une fonction continue dans le domaine fréquentiel Transformation basée sur une intégrale
Transformée de Fourier discrète (ang. DFT) Représentation d'une fonction discrète
en une fonction discrète dans le domaine fréquentiel Approximation de l'intégrale de Fourier
Transformée de Fourier rapide (ang. FFT) Implémentation efficace de la DFT
Analyse de Fourier (2/3)
Applications
Reconnaissance/classification de motifs/textures
Source : Lee & Chen. A New Method for Coarse Classification of Textures and Class Weight Estimation for Texture Retrieval, Pattern Recognition and Image Analysis, 12(4), 2002
DFT DFT DFT
Filtrage
Suppression du bruit
de speckle (interférences)
DFT IDFT
Filtrage
DFT IDFT
Filtrage
Filtrage passe-haut (détection de contours)
Série de Fourier (1/4)
Décomposition d'une fonction périodique
Une fonction s(x) de période T = 1/F peut s'écrire :
Ex. : F =1/2π, an=0, bn=4/nπ, n impair
Source : https://en.wikipedia.org/wiki/Fourier_series
Une fonction s(x) de période T = 1/F peut s'écrire :
Réécriture avec amplitude et phase :
Écriture complexe : où c0 = a0/2 et
représente le degré de présence de la fréquence nF dans le signal s.
Série de Fourier (3/4)
Spectre d'une fonction périodique
Le spectre S(f) d'une fonction périodique s(x) de période T = 1/F est défini par :
où δ est la
distribution de Dirac : Ex. :
Source : wikipedia
δ(x)
x
Signal triangulaire de période T :
Spectre :
Ex. pour T =1 ⇒ F =1 :
8 6 4 2 0 2 4 6 8
0.0 0.2 0.4 0.6 0.8 1.0
s(x)
8 6 4 2 0 2 4 6 8
0.0 0.1 0.2 0.3 0.4 0.5
S(f)
Transformée de Fourier (1/5)
Définitions
Extension des séries de Fourier aux signaux non périodiques Signal non périodique = signal périodique avec T → +∞
Si T → +∞ alors F → 0 ⇒ spectre continu
La transformée de Fourier S(f) d'un signal s(x) continu est définie par :
La transformée de Fourier inverse de S(f) est définie par :
s(x) et S(f) s'obtiennent mutuellement l'une de l'autre (paire de transformées) :
Remarques
S(f) converge (donc existe) ssi
S(f) représente le degré de présence de la fréquence f dans le signal s(x). Seules les fréquences f > 0 ont un sens physique
Module et phase
S(f), à valeurs complexes, est souvent représentée par La transformée inverse s'écrit alors
recombinaison de toutes les composantes fréquentielles de s(x) chaque composante est une exponentielle complexe
Le module A(f)=
|
S(f)|
ℝ représente l'importance de la composante de fréquence ∈ f pour construire s(x)La phase '(f)=arg
(
S(f))
[0, 2π[ représente le déphasage (décalage d'origine, en ∈ x=0) nécessaire pour que la composante de fréquence f construise correctement s(x)Transformée de Fourier (3/5) Interprétation du module de S(f)
Les basses fréquences correspondent aux variations lentes du signal Dans l'exemple : légère pente négative
Les hautes fréquences correspondent aux variations rapides du signal Dans l'exemple : succession de pics à décroissance exponentielle
hautes fréquences
|f| élevé
hautes fréquences
|f| élevé basses
fréquences
|f| faible
|
S(f)|
s(x)
Linéarité : Parité :
si s(x) paire alors S(f) réelle et paire
si s(x) impaire alors S(f) imaginaire et impaire
|
S(f)|
est toujours paire (donc souvent représentée seulement sur ℝ+)Translation : translater un signal revient à déphaser sa transformée de Fourier Dilatation : une dilatation de l'échelle du signal s(x) conduit à une contraction inverse de l'échelle des fréquences, et réciproquement
Convolution : une convolution dans le domaine du signal s(x) correspond à une multiplication dans le domaine des fréquences, et réciproquement
Master Informatique – Unité Analyse d'Images et Vision 1 17
Transformée de Fourier (5/5) : transformées usuelles
0.2 0.1 0.0 0.1 0.2
x 1.00
0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
s(x)s(x)=cos(2¼Fx) F=10
20 15 10 5 0 5 10 15 20
f 0.0
0.1 0.2 0.3 0.4 0.5
S(f)=Re{S(f)}
S(f)=
1/2 (±(f+F)+±(f−F))
0.2 0.1 0.0 0.1 0.2
x 1.00
0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
s(x)s(x)=sin(2¼Fx) F=10
20 15 10 5 0 5 10 15 20
f 0.4
0.2 0.0 0.2 0.4
S(f)=Im{S(f)}
S(f)=
i/2 (±(f+F)−±(f−F))
4 2 0 2 4
0.0 0.2 0.4 0.6 0.8 1.0
s(x)
s(x)=u [−a/2,a/2](x) a=2
0.5 0.0 0.5 1.0 1.5 2.0
S(f)=Re{S(f)}
S(f)=a sinc(af )
Image continue à 1 composante : fonction s : ℝ2 → ℝ, (x,y) → s(x,y) ℝ2 est appelé plan image
Exemple
Transformée de Fourier bidimensionnelle (1/6)
Définitions
Soit s(x,y) une image continue telle que :
La transformée de Fourier S(fx,fy) de s(x,y) est définie par :
La transformée de Fourier inverse de S(fx,fy) est définie par :
( 2¼ f
xx+f
yy )
Transformée de Fourier bidimensionnelle (3/6) : exemples simples
s(x,y)=1+cos(2¼fx0x) fx0=0.2
S(fx,fy)=±(fx,fy) +1/2 ±(fx+fx0,fy) +1/2 ±(fx−fx0,fy)
S(fx,fy) s(x,y)=
u [−a/2,a/2]£[−b/2,b/2](x,y)
Rotation d'angle θ dans le domaine spatial rotation de ⇒ θ dans le domaine fréquentiel S(f ,f ) contient une information structurelle sur la direction des fréquences spatiales
Transformée de Fourier bidimensionnelle (5/6)
Propriétés et interprétation fréquentielle
Moyenne de l'image à fx=fy=0 : Symétrie centrale :
|S(fx,fy)| représente l'importance des motifs périodiques de l'image s dans la direction du vecteur (0,0)–(fx,fy) et de fréquence proportionnelle à sa norme (donc de période pixels)
s(x,y) |S(fx,fy)| s(x,y)
Source : P. Maurel
|S(fx,fy)|
fy
fx
basses fréquences hautes fréquences
20 log10
(
|S(fx,fy)|)
s(x,y)
Source image :
https://fr.m.wikipedia.org/wiki/Cour_de_Marbre
Échantillonnage spatial (1/3)
Échantillonnage d'une fonction image continue
L'échantillonnage en x et y d'une image continue conserve seulement les valeurs aux points (x,y)=(c¢Tx,l¢Ty) où c,l ℕ et ∈ Tx£Ty taille d'un pixel L'image échantillonnée se(x,y) est obtenue par produit de s(x,y) et de la
« brosse » (ensemble d'impulsions) de Dirac associée aux pixels :
s(x,y)
Source : N. Thome
se(x,y) Ш(x,y)
x
s(x)
x
Ш(x)
x
se(x)
�
S(f) F{Ш}(f) Se(f)
�
x T
s(x)
x
Ш(x)
x
se(x)
�
T
S(f) F{Ш}(f) Se(f)
�
La TF du peigne de Dirac 1D de période T est un peigne de Dirac de période 1/T :
Le spectre d'un signal 1D s(x) échantillonné est donc :
Périodisation du spectre perte d'information
⇒
possible de s(x) à se(x) Théorème de Nyquist
Pas de perte si s à support fréquentiel borné tel que
Échantillonnage spatial (3/3) Spectre d'une image échantillonnée
Propriétés de TF 2D : les mêmes qu'en 1D, dont répétition du spectre Le spectre de l'image échantillonnée est le même que celui de l'image continue mais reproduit à intervalles réguliers (spectre « périodisé ») Périodes du spectre : inverses de celles d'échantillonnage (1/Tx et 1/Ty)
Théorème de Nyquist-Shannon (unité : cycle/mètre)
L'image continue projetée sur le capteur d'une caméra numérique ne doit pas comporter de fréquence spatiale au-delà de fmax=1/(2Tx) et 1/(2Ty) Autrement dit, la taille du plus petit motif périodique de l'image doit être supérieure à 2 fois le côté d'un pixel : Tmin⩾2Tx et Tmin⩾2Ty
Sinon, on observe un repliement de spectre et l'image est dégradée Étude de la TF dans le domaine
La TF d'une image échantillonnée est continue (avec reproduction aux multiples de (Fe,x , Fe,y)) et son calcul nécessite une infinité d'échantillons Dans un système numérique,
les fréquences doivent être discrétisées échantillons en nombre fini
Transformée de Fourier discrète (ang. DFT)
Image numérique I(c, l) de Nx×Ny pixels Transformée directe
Nx×Ny pixels (spatial) → Nx×Ny coefficients fréquentiels Transformée inverse (IDFT)
Transformée de Fourier discrète (2/4)
Théorème de Nyquist-Shannon (unité : cycle/pixel)
Fe,x = Fe,y = 1 cycle/pixel ⇒ fmax= 0.5 cycle/pixel
Le plus petit motif périodique dans une image est de Tmin=2 pixels
Étude de la DFT dans le domaine fréquentiel [– 0.5, 0.5] × [–0.5, 0.5]
Domaine spatial (pixel) Domaine fréquentiel (cycle/pixel)
00
l
v
Image u
I(c ,l)
Nx£Ny
Transformée (Image spectre) 20 log10(|F(u,v)|)
Nx£Ny
–0.5
–0.5
0.5 c 0.5
Ny – 1
Nx– 1
I(c,l) : 1024×1024 pixels, motif cyclique de période 10 pixels
Fe,x=Fe,y=0.3 cycle/pixel 307×307 pixels 20 log10(|F(u,v)|)
fmax=0.1cycle/pixel Shannon : Fe ⩾ 2fmax = 0.2
Transformée de Fourier discrète (4/4)
Sous-échantillonnage : repliement de spectre et phénomène de moiré
I(c,l) : 622×756 pixels,
motif cyclique de période verticale 6 pixels
Fe,x=Fe,y=0.33 cycle/pixel 205×250 pixels
Source : https://en.wikipedia.org/wiki/Aliasing
Dans le domaine spatial (plan image), le filtrage se fait par convolution Dans le domaine spectral (plan fréquentiel), il se fait par multiplication (ou masquage)
Image
initiale Plan de
Fourier
Image filtrée convolution
Plan de Fourier
Plan de Fourier filtré
*
multiplication×
Applications (2/3)
Filtrage passe-bas Filtrage passe-haut
Image initiale Image spectre Image initiale Image spectre
Image spectre transformée
Image transformée Image transformée
Principe : agrandissement d'une image I, ex. : Nx × Ny → 2Nx × 2Ny Idée naïve : copie de pixels →
Autre possibilité : zero padding
Comparaison
zero padding
copie de pixels zero padding
Cours en ligne
Outils et méthodes pour la physique : transformée de Fourier https://femto-physique.fr/omp/transformee-de-fourier.php Cours d’analyse de Fourier, É. Aristidi (Univ. Côte d'Azur) https://www-n.oca.eu/aristidi/Cours/analyse_fourier.pdf
Bases du traitement des images : transformée de Fourier, N. Thome (CNAM) http://webia.lip6.fr/~thomen/Teaching/BIMA/cours/Fourier_1.pdf
Tutoriels et démos
Utiliser et comprendre la FFT avec ImageJ : https://link.infini.fr/8Zdf3KDR ImageMagick v6 Examples–Fourier Transforms
https://legacy.imagemagick.org/Usage/fourier/
http://www.fmwconcepts.com/misc_tests/FFT_tests/index.html Online demo (« Fourifier »)
https://ejectamenta.com/imaging-experiments/fourifier/