Vous êtes sur la page 1sur 2

TP5: Transformations unitaires : Transformation de Fourrier 2-D

I. Transformée de Fourier

La transformée de Fourier est un outil mathématique de traitement du signal qui permet de


passer d'une représentation temporelle à une représentation fréquentielle du signal. Cette
théorie est basée sur le fait que toute fonction périodique est décomposable sur une base de
sinus et de cosinus. Ainsi, on peut passer d'une représentation temporelle du signal (dans le
repère temporel classique) à une représentation en fréquence sur une base de sinus et de
cosinus (dans le repère fréquentiel). La puissance de cet outil réside dans le fait que cette
transformée est réversible et qu'elle peut être étendue aux signaux non périodiques (qu'on
considère alors comme de période infinie).
L'exemple ci-dessous transforme une image dans l'espace de Fourier, fait la transformation
inverse pour voir si tout s'est bien passé (la transformée de Fourier est réversible). Ensuite, le
programme modifie les valeurs dans l'espace de Fourier et effectue la reconstruction avec
cette fois une nette différence.
------------------------------
» close all
» img=imread('blood1.tif');
» img=im2double(img);
» figure;subplot(1,3,1);imshow(img)
» fourier=fft2(img);
» subplot(1,3,2);imshow(real(fourier));
» subplot(1,3,3);imshow(imag(fourier));
» retour=ifft2(fourier);
» figure;imshow(real(retour));
» fourier(1:200,1:250) = 0;
» retour=ifft2(fourier);
» figure;imshow(real(retour));
» imgresult=abs(retour-img);
» figure;mesh(imgresult);

III. Manipulation

Faire help fft2 pour apprendre comment utiliser la transformée de fourrier a deux dimensions
2- Faire help fftshift aussi et apprendre comment fonctionne t-il.

1- Utilisant le toolbox Matlab, Créer une image 256*256 contenant un carrée de capacité
64*64 centré à l'origine (noir==1, fond==0). Utiliser les fonctions zeros et ones
4- Faites la transformée de Fourier discrète de cette image. Discuter les résultats en fonction
du largueur de la fenêtre.
5- Créer l'ensemble des figures ci dessous et faites la transformée de Fourier discrète de
chaque image. Les comparer. Déduire
6- Utiliser la fonction CHECKERBOARD pour créer une image. Tester la transformée de
Fourier de cette image.

1
7- Charger les figures: spine.tif et trees.tif. Faites les transformées de Fourier de chaque
image. Les reconstruire utilisant la TF inverse
8- Faire help imtransform et faire une transformation de l’image checkerboard.
Faire la TF et analyser les résultats.
scale = 1.2; % scale factor
angle = 40*pi/180; % rotation angle
tx = 0; % x translation
ty = 0; % y translation
sc = scale*cos(angle);
ss = scale*sin(angle);
T = [ sc -ss;ss sc ;tx ty];
t_lc = maketform('affine',T);
S = imtransform(I,t_lc,'FillValues',.3);
9- Tracer une image contenant un rectangle. Faire la TF de cette image. Faire tourner cette
image. Refaire sa TF et conclure.
10- Faire la TF d’une image couleur ‘peppers.tif’. Pour cela, on fera la TF de chaque image
correspondante a chaque couleur.
11- On pourra améliorer la qualité d’une image (contraste) en enlevant la module de la TF par
exposant alpha : F’(U,V)=|F(u,v| alphaexpphi(u,v) 0<alpha<1. Faites cette transformée sur
l’image pout et rice.tif. Conclure