IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Signal Discussion :

ameliorer resolution fft


Sujet :

Signal

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    96
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 96
    Points : 45
    Points
    45
    Par défaut ameliorer resolution fft
    Bonjour à tous
    j'essais de faire la transformée de fourier d'un signal sinusoïdal avec la fonction fft de matlab .
    voici mon code
    n etant la longueur du signal que je veux
    fs : la fréquence échantillonnage
    nb:le nombre de poit que je veux représenter de ma fft
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function [ftp]=tft(signal,n,fs,nb)
    figure(1);
    signal=signal(1:n);
    subplot(2,1,1)
    plot(signal);         %longueur signal
    fn=hanning(n);
    s=signal'.*fn;% le fenetrage 
    w = 0:fs/(n):(fs/2);
    ft=fftshift(abs(fft(s,n)));
    ftp=ft(fix(length(ft)/2)+1:(length(ft)));
    subplot(2,1,2);
    plot(w(1:nb),ftp(1:nb));
    et voici ce que j'obtient quand j'applique cette fonction sur un signal sinusoïdal de fréquence 1 hz avec une fréquence échantillonnage de 1khz

    mon problème c'est que je veux obtenir un dirac normalement et non pas cette sorte de cone en la frequence fondamental de mon signal.
    qu'est ce que je dois modifier dans mon code pour obtenir celà
    Merci

  2. #2
    Membre régulier
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Juillet 2014
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Juillet 2014
    Messages : 46
    Points : 111
    Points
    111
    Par défaut
    Bonjour.

    C'est normal. Vous avez 'apodisé' (fenêtre de Hanning), le signal que vous analysez n'est plus une sinusoïde mais une sinusoïde modulée par la fonction de Hanning. Son spectre n'est pas un Dirac. Vous aurez un Dirac si et seulement si 1/ vous ne fenêtrez pas; 2/ la période est un sous-multiple de la fenêtre (ex: 16 points pour une FFT de 256).

    Ce que vous donne la FFT est le spectre de la fenêtre répétée à l'infini. Si vous ne remplissez pas la condition 2, la sinusoïde répétée est "cassée" (la phase n'est pas continue) et cette discontinuté a une signature spectrale. On utilise justement les fenêtres pour minimiser cette pollution, mais elles élargissent les pics spectraux.

    Par ailleurs, utiliser la fonction stem à la place de plot. Elle ne relie pas les points.

Discussions similaires

  1. Augmentation de resolution FFT
    Par christ0FF dans le forum Algorithmes et structures de données
    Réponses: 0
    Dernier message: 09/01/2014, 12h41
  2. [Débutant] Fenêtrage pour améliorer la fft
    Par savig dans le forum Signal
    Réponses: 3
    Dernier message: 02/08/2013, 12h34
  3. Algo de calcul de FFT
    Par djlex03 dans le forum Traitement du signal
    Réponses: 15
    Dernier message: 02/08/2002, 18h45
  4. FFT(Fast Fourier Transform)
    Par IngBen dans le forum Traitement du signal
    Réponses: 6
    Dernier message: 23/05/2002, 17h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo