Du son à la partition : transcription automatique de musique

Encadrants : 

Occurrences : 

2018

Nombre d'étudiants minimum: 

2

Nombre d'étudiants maximum: 

2

Nombre d'instances : 

1

Domaines: 

(Extrait d’une vidéo donnant les notes d’un morceau de musique en temps réel. Source : https://www.youtube.com/watch?v=DjoY1qhpvTk

Contexte

Ce projet propose de mettre au point un système de transcription automatique de musique. A partir d'un morceau donné, on cherche à en caractériser le contenu (hauteurs, moments d'activation, durées et intensités). Ces informations, une fois récupérées, peuvent être exportées au format MIDI et utilisées dans d’autres logiciels d’aide à la composition (Guitar pro, Garage band…) ou à la production musicale (Cubase…). Ce genre de système est très utile pour aider les musiciens, notamment en récupérant la partition d'un morceau (aide à la formation musicale), en générant un play-back pour s'accompagner, ou en corrigeant à postériori des erreurs d'interprétation.

 

Objectif et déroulement

L’objectif est donc de mettre au point une application qui fournisse, à partir d’un signal audio donné par l’utilisateur (essentiellement monophonique, c'est à dire un seul instrument : piano, guitare, voix...), une représentation symbolique du morceau sous la forme d'une matrice [hauteur ; moment d'activation ; durée ; intensité]. Pour ce faire, il sera possible de travailler dans le domaine temporel (où de nombreuses méthodes d'estimation de hauteur existent) ou dans le domaine Temps-Fréquence (adapté aux signaux de musique) : dans ce cadre, les méthodes de type Factorisation en Matrices Non-négatives (NMF) permettent de représenter le signal sous une forme que l'on peut interpréter intuitivement et donc obtenir des informations sur les notes et leur dynamique temporelle. Diverses méthodes seront donc être implémentées : elles pourront être comparées pour retenir la meilleure, ou, selon les résultats, être complémentaires les unes des autres...

L’application, développée en Matlab ou en Python, devra donc comporter, au minimum, les fonctionnalités suivantes :

  • Extraction de la partition (au format MIDI) à partir d’un signal audio
  • Un synthétiseur de signal musical à partir d'une partition

De multiples applications exploitant cette représentation musicale du signal peuvent être envisagées, selon les souhaits des candidats : calcul de tonalité, génération automatique d'accompagnement, remplacement d'un instrument par un autre, correction des erreurs d'interprétation (fausses notes)…

Ressources

  • Lee, D. D., & Seung, H. S. (1999). Learning the parts of objects by non-negative matrix factorization. Nature, 401(6755), 788.
  • Smaragdis, P., & Brown, J. C. (2003, October). Non-negative matrix factorization for polyphonic music transcription. In Applications of Signal Processing to Audio and Acoustics, 2003 IEEE Workshop on. (pp. 177-180). IEEE.