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 :

fréquence fondamentale et harmoniques (formants)


Sujet :

Signal

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut fréquence fondamentale et harmoniques (formants)
    bonjour tous le monde .....
    j'ai vraiment besoin de l'aide il me reste peu de temps pour achevez mon projet de fin d’Étude et je me trouve bloqué . Je travaille sur la reconnaissance vocale de mot isolé. J'ai enregistré ma base de données maintenant je doit extraire les paramètres je trouve une difficulté a avoir le triangle vocalique pour voir si ma classification donne des bon résultat ou pas donc je cherche un code matlab qui calcule la fréquence fondamentale et sur tous les deux 1er harmoniques F1 et F2 dans les plus bref délai je vous prie. je vous serai trés reconnaissante.
    Merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 11
    Points : 17
    Points
    17
    Par défaut
    Bonsoir Noa,
    je t'avoue ne pas avoir tout saisi à ton problème...
    Si j'ai bien compris, tu cherche à récupérer la fréquence fondamentale d'un signal numérique?
    As-tu essayé de trouver la FRF de ton signal se qui permet en trouvant les pôles du dénominateur d'extraire la fréquence fondamentale?

    Je ne suis pas totalement sur de moi donc si quelqu'un voit une bêtise sa sera avec plaisir d'avoir une correction de mon raisonnement.

    Yassine.

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    il s'agit d'un signal acoustique la fréquence fondamentale d'un enfant c entre 250 à 600 Hz une femme entre 200 et 300 Hz un homme entre 90 à 150 Hz j'ai trouvez un code qui donne des bon résultat je dois juste ajouté une partie qui me calcule F1 et F2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     [F0]= freqfond(signal)
    fs=8000;
    % signal=double(signal);
    ms1=fs/1000; % maximum speech F0 at 1000Hz
    ms2= fs/50;  % minimum speech F0 at 50 Hz
    %plot wave form
    t=(0:length(signal)-1)/fs; %time of sampling instants
    subplot(3,1,1);
    plot(t,signal);
    legend('Waveform');
    xlabel('Time (s)');
    ylabel('Amplitude');
    %
    % do fourier transform of windowed signal
    X= fft(signal.*hamming(length(signal)));
    %
    % plot spectrum of bottom 5000 Hz
    hz5000=5000*length(X)/fs;
    f= (0:hz5000)*fs/length(X);
    subplot(3,1,2);
    plot(f,20*log10(abs(X(1:length(f)))+eps));
    legend('Spectrum');
    xlabel('Frequency (Hz)');
    ylabel('Magnitude (db)');
    %
    % cepstrum is DFT of log spectrum
    % C=fft(log(abs(X)+eps));
    C=fft(log(abs(X)+eps));
    % plot between 1ms (=1000Hz) and 20ms (=50Hz)
    freqfond=(ms1:ms2)/fs;
    subplot(3,1,3);
    plot(freqfond,abs(C(ms1:ms2)))
    legend('Cepstrum');
    xlabel('Quefrency (s)');
    ylabel('Amplitude');
    [c,f0]=max(abs(C(ms1:ms2)));
    fprintf('F0=%Hz\n',fs/(ms1+f0+1));
    F0=fs/(ms1+f0+1);
    le rapport de F1 sur F2 donnant le triangle vocalique



Discussions similaires

  1. Réponses: 2
    Dernier message: 21/01/2009, 22h47
  2. Réponses: 15
    Dernier message: 12/01/2008, 22h26
  3. Réponses: 9
    Dernier message: 24/05/2007, 23h34
  4. Déterminer la fréquence fondamentale d'un signal vocal
    Par payetonbob dans le forum Signal
    Réponses: 2
    Dernier message: 30/11/2006, 15h44

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