La réponse courte est que vous avez besoin de beaucoup plus d'un algorithme. Bon d'accord des méthodes de reconnaissance serait plus juste de qualifier de "systèmes", mais en général ils sont en effet fondés sur une première transformation à la fréquence de domaine (le plus souvent DFT).
Si vous souhaitez un accord representaton de la chanson similaire à ce
C G Am F7 F6 C ...
puis ce est en fait un problème qui est un peu en retrait de la reconnaissance de la note dans un morceau de audio. En fait, il y a deux problèmes (en gros):
- pour trouver les emplacements sont présents à tout moment
- le regroupement de ces terrains de plus de temps pour être en mesure d'assigner une corde sur l'étiquette d'un intervalle de temps.
Il s'avère que la méthode de transformation à partir du moment de domaine (audio normal) pour le domaine de fréquence (représentation spectrale) n'est que de peu d'importance. C'est très important ce que vous faites par la suite, et souvent sophistiqués des modèles probabilistes (similaires à ceux de la reconnaissance vocale: Hmm, DBNs, ...) sont utilisées pour lutter contre ce problème.
Essayez google scholar "accord de transcription", ou "détection d'accords", ou "corde d'étiquetage" pour la recherche de pointe dans ce domaine.
La plupart de ces approches utilisent une transformée de Fourier discrète (DFT) pour créer la première spectrogramme. Au cours de la poursuite du traitement, trop, ils ont tendance à ne diffèrent que légèrement, bien que les différents temps de la série les techniques de lissage ont été utilisés: les modèles de Markov cachés, Bayésien dynamique des réseaux, des machines à vecteurs de support (SVMstruct) et à la condition de champs aléatoires, entre autres.
Le plus avancé des transcripteurs utiliser le réglage automatique, clé de l'information, note de basse de l'information, et l'information de la position métrique pour améliorer les résultats. Ma thèse (Chapitre 2) donne un bon aperçu.
Open source d'accord algorithmes de détection:
Espérons que cette aide.