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

Algorithmes et structures de données Discussion :

reconnaissance locuteur en utilisant MFCC


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 30
    Points
    30
    Par défaut reconnaissance locuteur en utilisant MFCC
    bonjour à tous,
    voila je dois concevoir un systeme de reconnaissance du locuteur , j'ai opté pour l'utilisation de la méthode MFCC (Mel Frequency Cepstral Coefficient ) pour l'extraction des paramètres acoustiques et la dtw (Dynamic Time Warping) pour la comparaison, je me demandais si je pouvais utiliser cette combinaison vu que la dtw compare deux vecteurs (dans mon cas je dois comparer deux matrices résultantes de la mfcc) ou il va falloir utiliser les GMM ou HMM pour la comparaison , merci d'avance.

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par imene_t1 Voir le message
    je me demandais si je pouvais utiliser cette combinaison vu que la dtw compare deux vecteurs (dans mon cas je dois comparer deux matrices résultantes de la mfcc)
    DTW n'impose rien sur la dimension des 2 échantillons. L'algorithme construit une matrice des distances entre les 2 echantillos. Le calcul de la distance enter échantillon est laissé au choix de l'utilisateur. Ca peut etre une distance euclidienne ou tout autre distance.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  3. #3
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 30
    Points
    30
    Par défaut reconnaissance locuteur utilisant MFCC DTW
    merci pour ta réponse ,

    je sais que pour utiliser la dtw , il faut construire au préalable une matrice des distances , ayant 2 vecteurs X1 et X2 par exemples , on prend chaque point du vecteur X1 et on calcule la distance avec tous les points du vecteur X2, ainsi de suite .
    Comme moi je manipule des matrices (pas de vecteur) , je ne sais pas comment construire la matrice des distances , tu peux m'orienter un peu plus , merci

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par imene_t1 Voir le message
    Comme moi je manipule des matrices (pas de vecteur) , je ne sais pas comment construire la matrice des distances , tu peux m'orienter un peu plus , merci
    Tout dépend de ce que représente tes matrices de valeurs.

    -Si tes matrices sont une "liste" (une dimension) de valeurs (plusieurs dimensions), tu utilises l'algo DTW "standard" avec une distance inter-vecteur:

    d2(v1,v2)=racine( d1(v1.x,v1.y)² + d1(v1.y,v1.y)² + ...)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    for i := 1 to n
      for j := 1 to m
     
        cost := SQRT( distance(A[i,0],B[j,0])² + distance(A[i,1],B[j,1])² ) 
     
        DTW[i,j] := cost + minimum(DTW[i-1,j],DTW[ i, j-1 ],DTW[i-1, j-1])
     
      next j
    next i

    - Si tes matrices sont un espace (2 dimensions) de valeurs (1 dimension), tu as besoin de calculer une DTW "spatiale":

    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
     
    for i0 := 1 to n
    for i1 := 1 to n
     
      for j0 := 1 to m
      for j1 := 1 to m
     
        cost := distance([A[i0,i1],B[j0,j1]]
     
        DTW[i0,i1,j0,j1] := cost + minimum(
          DTW[i0-1,i1,j0,j1], DTW[i0,i1-1,j0,j1],DTW[i0-1,i1-1,j0,j1]
          DTW[i0-1,i1,j0-1,j1], DTW[i0,i1-1,j0-1,j1],DTW[i0-1,i1-1,j0-1,j1]
          DTW[i0-1,i1,j0,j1-1], DTW[i0,i1-1,j0,j1-1],DTW[i0-1,i1-1,j0,j1-1]
          DTW[i0-1,i1,j0-1,j1-1], DTW[i0,i1-1,j0-1,j1-1],DTW[i0-1,i1-1,j0-1,j1-1]
       ) 
     
      next j
    next i
    (NB: formules a vérifier. Le copier/coller/editer n'est pas une technique tres sure)
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 30
    Points
    30
    Par défaut reconnaissance locuteur utilisant MFCC DTW
    merci de m'avoir répondu ,

    Ma matrice est constituée de la manière suiante:
    chaque ligne (qui représente un segment du signal) de ma matrice est constituée des 13 coéfficients MFCC (en colonne) .
    Le nombre de ligne de ma matrice représente ainsi le nombre de segments du signal et les colonnes représentent les 13 coéfficints MFCC retenus pour chaque segment , je vais voir tes algorithmes , merci encore

  6. #6
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par imene_t1 Voir le message
    merci de m'avoir répondu ,

    Ma matrice est constituée de la manière suiante:
    chaque ligne (qui représente un segment du signal) de ma matrice est constituée des 13 coéfficients MFCC (en colonne) .
    Le nombre de ligne de ma matrice représente ainsi le nombre de segments du signal et les colonnes représentent les 13 coéfficints MFCC retenus pour chaque segment , je vais voir tes algorithmes , merci encore
    Tu es donc dans le cas numero 1.

    Ta matrice n*13 représente "n" echantillons, et chaque echantillon à 13 parametres. Il te faut donc créer une distance pour comparer deux vecteurs en dimension 13.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  7. #7
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 30
    Points
    30
    Par défaut reconnaissance locuteur utilisant MFCC DTW
    je vais suivre cette piste , merci de m'avoir accordé un peu de ton temps

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Administrateur réseau
    Inscrit en
    Octobre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur réseau

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Je recherche la même chose: utilisation de DTW pour comparer des fichiers son (en passant par la mfcc)... Est-ce que vous avez réussi?
    Cordialement
    Laurent

  9. #9
    Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    moi aussi je veu concevoir un systeme de reconnaissance de locuteur mais j'ai fai l'extraction des caracteristique du signal par LPC, et j me demande si qlq'un peu m'aider pour fair la comparaison par les GMM.
    merci

Discussions similaires

  1. Reconnaissance de formes en utilisant les moments
    Par sabrina6 dans le forum OpenCV
    Réponses: 3
    Dernier message: 19/04/2010, 14h13
  2. [Débutant] Reconnaissance vocale à base de mfcc
    Par wigglin dans le forum Signal
    Réponses: 26
    Dernier message: 31/05/2009, 20h18
  3. Réponses: 1
    Dernier message: 13/05/2009, 08h33
  4. Utilisation reconnaissance texte excel
    Par cedric59dk dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 29/02/2008, 09h55
  5. [Lomboz] Reconnaissance et utilisation de Jboss
    Par oami dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 03/06/2005, 01h10

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