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 :

Calcul de la fréquence centrale


Sujet :

Signal

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Par défaut Calcul de la fréquence centrale
    Bonjour,

    j'ai un signal auquel j'applique la FFT. J'aimerais calculer la fréquence centrale de ce spectre, c'est à dire ici, la fréquence pour laquelle la somme des amplitudes avant celle-ci soit identique à la somme après.



    mais je ne vois pas comment faire, , si quelqu'un a une idée? Je pourrais faire la somme de tout, la diviser par deux et voir approximativement vers quelle indice j'atteins cette valeur mais peut être y'a t il plus propre?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    idx = cumsum(amplitude) <= sum(amplitude)/2;
    frequence_centrale = frequence(idx)
    Non ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Par défaut
    Citation Envoyé par Dut Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    idx = cumsum(amplitude) <= sum(amplitude)/2;
    frequence_centrale = frequence(idx)
    Non ?
    Tiens pratique CUMSUM
    Euh disons que idx dans ce cas est le vecteur du 1 au dernier ! mais merci pour l'idée de base, je pense que comme ça c'est bon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    idx = find(cumsum(amplitude) <= sum(amplitude)/2 , 1 , 'last') ;
    frequence_centrale = frequence(idx)
    non?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 3
    Par défaut
    Il faut calculer la moyenne des fréquences pondérées par leur valeurs d'amplitudes.
    ex :
    f1=10hz amplitude du pic 1000
    f2=20hz amplitude du pic 200
    f3=30hz amplitude du pic 500

    frequence centrale : (1000*10+200*20+500*30)/(1000+200+500)=17.06hz

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 13
    Par défaut
    En gros tu veux calculer le centre de gravité spectral de ton signal, voici 1 code qui fait ce calcul, (je ne l'ai pas testé)

    http://www.mathworks.com/matlabcentr...exchange/11345

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Par défaut
    Citation Envoyé par Vince2505 Voir le message
    Il faut calculer la moyenne des fréquences pondérées par leur valeurs d'amplitudes.
    ex :
    f1=10hz amplitude du pic 1000
    f2=20hz amplitude du pic 200
    f3=30hz amplitude du pic 500

    frequence centrale : (1000*10+200*20+500*30)/(1000+200+500)=17.06hz
    en gros

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    freq_cent_pond = sum(spect.*freq)/sum(spect)
    Mais quel sens physique explique de donner plus d'importance aux amplitudes des fréquences les plus hautes?

    Merci

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Citation Envoyé par Newenda Voir le message
    Mais quel sens physique explique de donner plus d'importance aux amplitudes des fréquences les plus hautes?
    Si j'ai bien compris, ça revient à un simple calcul de barycentre

Discussions similaires

  1. [XL-2007] calcul d'une fréquence de sortie selon une matrice
    Par rch05 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/09/2011, 07h50
  2. Réponses: 3
    Dernier message: 29/05/2009, 11h04
  3. Calcul de fréquence via FFT
    Par jericho dans le forum MATLAB
    Réponses: 2
    Dernier message: 21/02/2008, 10h14
  4. Calculer une fréquence relative
    Par Ptinéwik dans le forum MATLAB
    Réponses: 9
    Dernier message: 16/01/2008, 15h18
  5. [Signal] FFT : calcul de la fréquence et du déphasage *exacts*
    Par ol9245 dans le forum Traitement du signal
    Réponses: 21
    Dernier message: 18/04/2007, 16h15

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