Traitement Du Signal - TP3
Traitement Du Signal - TP3
Traitement Du Signal - TP3
TP 3
Transformée de Fourier
Semestre II
2
Analyse spectrale
2. Domaine fréquentiel
- Un graphe dans le domaine temporel présentera les variations
dans l'allure d'un signal au cours du temps, un graphe dans le
domaine fréquentiel montrera quelle proportion du signal
appartient à telle ou telle bande de fréquence, parmi plusieurs
bancs. Une représentation dans le domaine fréquentiel peut
également inclure des informations sur le décalage de phase qui
doit être appliqué à chaque sinusoïde afin de reconstruire le signal
en domaine temporel.
3
Analyse spectrale
2. Domaine fréquentiel
- La représentation d’un signal temporal dans le domaine
fréquentiel s’appelle le spectre fréquentiel. Ce spectre peut
être généré par la transformée de Fourier du signal.
4
Analyse spectrale
3. Transformée de Fourier
Les séries de Fourier et transformées de Fourier permettent de
décomposer, dans le domaine fréquentiel, un signal en une
infinité ou un nombre fini de fréquences. L'idée de base de la
série de Fourier est que toute forme d'onde (signal périodique)
peut être décomposée en une somme de sinusoïdes.
5
Analyse spectrale
3. Transformée de Fourier
Pratiquement, nous n’avons pas le signal au complet mais un
ensemble fini de points. avec génavec généralement
6
Analyse spectrale
3. Transformée de Fourier
Nous calculons donc les coefficients des séries de Fourier
suivant :
(1)
(2)
7
Analyse spectrale
3. Transformée de Fourier
Pour Matlab le calcul de la transformé de Fourier se fait par la
commande fft, il reçoit comme argument le signal xn ainsi que
le nombre de point voulu N et il retourne un vecteur de la
transformé de Fourier. Il nous faut maintenant relier le
coefficient Xk à la fréquence correspondante. Pour cela il suffit
de remarquer que l’équation (1) peut s’écrire :
(3)
8
Analyse spectrale
3. Transformée de Fourier
La fonction fftshift réorganise la sortie de fft en déplaçant la
composante de fréquence zéro vers le centre du graphe. Il est utile
pour visualiser la transformée de Fourier avec la composante de
fréquence nulle au milieu du spectre.
9
Analyse spectrale
3. Transformée de Fourier
Fe = 1000; % Sampling frequency
T = 1/Fe; % Sampling period
L = 1500; % Length of signal
t = (0:L-1)*T; % Time vector
S = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
bruit = 2*randn(size(t));
X = S + bruit;
subplot(2,2,1)
plot(Fe*t(1:100),X(1:100)) % pour tracer les 100 premiers élements
title('Signal corrompu avec un bruit aléatoire de moyenne null')
xlabel('t (milliseconds)')
ylabel('X(t)')
10
Analyse spectrale
3. Transformée de Fourier
% La transformée de Fourier
Y = fft(X); % Y est un vecteur de N points contenant les coefficients de Fourier Xk
P1 = (abs(Y))/L; % estimation du spectre
subplot(2,2,2)
plot(P1)
title('le spectre de X non centrer')
xlabel('f (Hz)')
ylabel('|P1(f)|')
11
Analyse spectrale
3. Transformée de Fourier
% Pour centrer le spectre
P2 = fftshift(P1);
subplot(2,2,3)
plot(P2)
title('le spectre de X centrer avec fftshift')
xlabel('f (Hz)')
ylabel('|P1(f)|')
12
Analyse spectrale
3. Transformée de Fourier
% Calcul de la correspondance avec la fréquence
subplot(2,2,4)
f = (Fe/L)*(0:(L/2)); % on va prendre que la partie positif du spectre
plot(f,P2(L/2:end))
title('le spectre de X avec la correspondance de fréquence')
xlabel('f (Hz)')
ylabel('|P1(f)|'
13
Analyse spectrale
3. Transformée de Fourier
14
Analyse spectrale
4. Transformée de Fourier inverse
Pour faire la conversion d’un spectre dans le domaine fréquentiel à
un signal dans le domaine temporel on utilise la commande ifft.
Voici un exemple :
15
Analyse spectrale
4. Transformée de Fourier inverse
Il faut faire attention, si vous avez utilisé la commande fftshift
pour centrer le spectre, il faut utiliser la commande ifftshift avant
de procéder à la transformé inverse afin de rendre au spectre sa
nature initiale.
16