imilarit es et´ isualisation - ircam
TRANSCRIPT
Rapport de stage ATIAM
SIMILARITES ET VISUALISATION
DE TIMBRE POUR L’ACOUSMOGRAPHE
Sebastien GULLUNI
05 Mars - 30 Aout 2007
Encadrant : Emmanuel FAVREAU
IRCAM GRM UPMC
1 pl. Igor Stravinsky Av. du pdt Kennedy 1 pl. Jussieu
75004 Paris 75016 Paris 75005 Paris
1
Table des matieres
Introduction 3
1 Etat de l’art 7
1.1 Definition et perception du timbre . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Les approches sur la reconnaissance de similarite . . . . . . . . . . . . . . . 8
1.2.1 Descripteurs de bas niveau . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.2 Recherche par similarites dans des bases de donnees . . . . . . . . . 10
1.2.3 Mesures de distance entre des documents sonores . . . . . . . . . . 10
1.3 Visualisation de donnees multidimensionnelles . . . . . . . . . . . . . . . . 12
1.3.1 La famille des glyphes . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2 Les techniques de projection . . . . . . . . . . . . . . . . . . . . . . 14
1.3.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 Presentation du systeme existant 18
2.1 Le travail de recherche deja effectue . . . . . . . . . . . . . . . . . . . . . . 18
2.1.1 Extraction de descripteurs . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.2 Recherche de similarites . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Les implementations realisees . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1 Implementation dans Matlab . . . . . . . . . . . . . . . . . . . . . . 20
2.2.2 Implementation dans l’Acousmographe sous forme de plugin . . . . 20
3 Choix des descripteurs 22
3.1 Les descripteurs pertinants . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.1 Descripteurs frequentiels . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.2 Autre descripteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Validation experimentale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.1 Tests effectues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.2 Observations des resultats . . . . . . . . . . . . . . . . . . . . . . . 26
1
4 Reduction de l’espace et visualisation du timbre 30
4.1 Analyse par composantes principales . . . . . . . . . . . . . . . . . . . . . 30
4.2 Visualisation : extraits musicaux commentes . . . . . . . . . . . . . . . . . 31
4.3 Quelque mots sur les tests de similitude avec ACP . . . . . . . . . . . . . . 33
Conclusion 36
Bibliographie 37
2
Introduction
J’ai effectue mon stage de Master 2 au Groupe de Recherche Musicale “GRM”. Ce
stage conclut mon annee passee a l’IRCAM en “Acoustique Traitement du signal et Infor-
matique Appliques a la Musique”. J’ai particulierement apprecie ce lieu ou, tout comme
a l’IRCAM, les sciences et la culture fusionnent en parfaite harmonie. Ce savant melange
ainsi que la possibilite de rencontrer des compositeurs font de ces deux lieux des endroits
privilegies pour la recherche scientifique et ses applications creatives. Je profite de ce rap-
port pour preciser que c’etait pour moi un honneur de pouvoir effectuer une partie de mes
etudes ainsi que mes premieres recherches en ces lieux.
Le sujet
Le sujet de mon stage gravite principalement autour du timbre et s’inscrit dans la
problematique de “Music Information Retrieval” (MIR). En effet, il s’agit bien ici de
retrouver une information musicale a partir du signal pur sans complement d’informations
semantiques. Voici l’enonce du sujet de stage tel qu’il a ete definit par Emmanuel Favreau :
Le GRM de l’INA developpe l’Acousmographe, un outil de representation et d’annotation
de documents sonores. Des capacites de visualisations du signal, d’ecoutes en modes ra-
lentis ou filtres, et de nombreux outils graphiques permettent de realiser une presentation
elaboree en vue de l’enseignement ou l’analyse musicologique des musiques non ecrites.
Afin d’aider l’utilisateur dans son annotation, differents outils d’analyse doivent etre
implementes (sonagramme, ondelettes, detection de similarites, de discontinuites, etc...)
Un prototype de detection de similarites a deja ete realise en matlab et partiellement en
C++. Le but de ce stage est double :
– Terminer l’integration de l’algorithme de detection de similarite dans l’acousmo-
graphe, ce qui permettra a l’etudiant de se familiariser avec l’environnement de
developpement et l’architecture plugin de l’application.
– Mettre en evidence puis implementer d’autres criteres de bas-niveau utiles a la
detection de similarite, puis experimenter differentes methodes de visualisation de
ces criteres significatives pour des musiciens et des musicologues
3
Le timbre, qui etait il y a encore quelques siecles de faible importance dans le domaine
musical occupe de nos jours une place centrale dans toute creation sonore. En effet, comme
chacun sait, on pouvait lire sur certaines partitions de Bach qu’une partie consideree pou-
vait etre jouee soit par un violon alto, soit par un hautbois. Ainsi, on remarque que les
deux instruments etant dans la meme tessiture, Bach considerait que les arrangements
rythmico-melodiques de ses notes a eux seuls etaient une matiere suffisante pour capti-
ver l’auditeur. Cependant, ce qui etait vrai a l’epoque de Bach a ete fortement remis en
question par des orchestrateurs de genie tel Hector Berlioz qui formalisa ses recherches
sur la matiere sonore dans son “Traite d’instrumentation et d’orchestration moderne”.
Des la periode romantique, le timbre est utilise comme un outil au service de l’expres-
sion musicale. De nos jours, il est l’element qui guide la creation dans la plupart des
musiques, qu’elles soient savantes ou populaire. Le langage de certains styles musicaux
tel les musiques spectrales ou concretes est base principalement sur des recherches de
timbres que ce soit au niveau macroscopique ou microscopique. Ainsi, on comprend la de-
mande importante des musicologues ayant besoin d’outils nouveaux pour l’analyse. Une
premiere pierre a l’edifice est l’objet de ce travail : comment trouver automatiquement des
similarites entre les timbres d’un document sonore ? Quels sont les criteres pertinents a
extraire du signal pour realiser cette recherche de similarite ? Dans un second temps, nous
chercherons a representer graphiquement ces criteres ainsi que leurs combinaisons pour
aider les musiciens et musicologues utilisant l’acousmographe a visualiser ces similarites.
Nous nous limiterons pour ce travail aux sons polyphoniques de l’ordre de la seconde.
Autrement dit, il s’agit de trouver des similarites entre des unites sonores dans un meme
document.
Presentation du GRM
C’est dans les studios d’essai de la RTF (Radio Television Francaise), en 1948, que
Pierre Schaeffer invente la musique concrete. Dans ce cadre, Pierre Schaeffer et Pierre
Henry creent leurs premieres oeuvres (Symphonie pour un seul homme, Orphee). En
1951, Schaeffer fonde le “Groupe de Recherche de Musique Concrete” dans le cadre de
ses recherches sur la perception des objets sonores. Puis, le GRMC devient “Groupe de
Recherche Musicale” en 1958 et integre le ”Service de la Recherche de la Radio Television
Francaise” (RTF) deux ans plus tard. Les compositeurs principaux sont alors : Luc Ferrari,
Francois-Bernard Mache, Bernard Parmegiani, Ivo Malec et Francois Bayle. Les premiers
concerts sont alors proposes en la presence de compositeurs tel Karl Heinz Stockhausen
et Luciano Berio qui y presenteront leurs oeuvres : Omaggio a Joyce en 1959 et Kontakte
en 1961. A partir de 1966, Schaeffer confie la direction du groupe a Francois Bayle. En
1975, apres l’eclatement de l’ORTF, le GRM rejoint l’INA et recentre ainsi ses activites
4
sur la conservation du patrimoine sonore.
L’activite de recherche du GRM est importante des le debut des annees 60 et s’illustre
principalement par l’elaboration d’outils de traitements du son, concus principalement
par Pierre Schaeffer, Jaques Poullin et Francis Coupigny. Ainsi sont nes le “phonogene” a
coulisse et a claviers utilises pour les transpositions continues ou chromatiques, le “mor-
phophone” destine a modeler l’enveloppe dynamique par surimpression ou encore le pho-
nogene dit universel permettant des transpositions temporelles et/ou spectrales.
Mis a part l’acousmographe qui fait l’objet de la section suivante, le GRM n’est pas
en reste dans la production de logiciels destines au traitement sonore. L’exemple le plus
courant est celui des GRM tools qui est derive de concepts et d’outils concus sur le systeme
Syter (processeur developpe au GRM dans les annees 80). Il s’agit d’outils de traitement
sonore qui sont maintenant disponibles aux formats de plugin courants supportes par la
majorite des sequenceurs. Ces outils sont de renommee mondiale et largement utilises
dans le domaine de la production de musiques electroniques. Ils se distinguent de leurs
concurrents par des concepts novateurs et un systeme de controle par interpolation de
parametres tres utiles pour les prestations live.
L’acousmographe
L’acousmographe est l’environnement dans lequel a ete integre mon travail de re-
cherche. Il s’agit d’un logiciel d’annotation musicale concu initialement, a partir de 1991,
par Hugues Vinet, Olivier Koechlin et Didier Bultiauw entre autres. La troisieme version
(version actuelle) a ete repensee par Emmanuel Favreau et Yann Geslin dans le cadre
d’une collaboration avec l’education nationale. Le code principal a ete realise par Adrien
Lefevre.
Les buts principaux du logiciel sont musicaux et pedagogiques. En effet, l’acous-
mographe doit permettre a des musiciens et musicologues d’annoter et de mieux com-
prendre les musiques non ecrites ou de tradition orale. Il s’inscrit dans une demarche de
comprehension de la musique par le contenu. Ainsi, il est particulierement bien adapte
aux oeuvres electroacoustiques et autre musiques contemporaines dont l’observation du
timbre permet souvent de tirer des conclusions analytiques. L’acousmographe est utilise
principalement pour analyser et annoter des oeuvres. Il est egalement possible de lire un
fichier en mode accelere ou ralentis a la maniere d’un magnetophone. De plus le logi-
ciel dispose d’un filtre passe-bande precis represente par une selection sur l’axe vertical
permettant d’isoler des portions du spectre. De plus, il dispose d’outils de visualisation
de l’oeuvre tel le sonogramme. Un systeme de calques permet d’ajouter des annotations
personnalisees a l’aide d’outils de dessin : formes geometriques colorees et autres elements
symboliques redimensionnables que l’on peut composer. Il existe egalement depuis peu des
5
Fig. 1 – l’Acousmographe.
objets de type marqueurs temporels et frequentiels que l’on peut ponderer. L’architecture
logicielle de l’acousmographe est basee sur des entites de type plugin. Cette architecture
est indispensable car elle seule permet l’extension non restrictive de la symbolique uti-
lisee. De plus, les plugins sont de veritables programmes autonomes pouvant utiliser des
librairies de calculs leur etant propres et donc sans alourdir l’application principale. Dans
le cadre de ce stage, il s’agit justement d’intervenir sur un plugin pour implementer les
recherches de similarites.
6
Chapitre 1
Etat de l’art
Nous verrons dans ce chapitre les differentes methodes utilisees dans la litterature
pour effectuer des recherches de similarite sur le timbre. Nous aborderons egalement, la
representation des donnees multidimensionnelles que nous prendrons comme modele pour
aborder la visualisation du timbre.
1.1 Definition et perception du timbre
La perception du timbre est complexe dans la mesure ou il est de nature multidi-
mensionnelle. De nombreuses etudes ont tentes d’en percer les mysteres, cependant il est
difficile d’en trouver une definition standard. On peut citer celle enoncee au 20eme siecle
par l’American Standards Association (definition acceptable tout du moins dans la com-
munaute des acousticiens) : “Ce qui differencie deux sons de meme hauteur, de meme
duree et de meme intensite”. Autrement dit, en considerant cette definition, pour distin-
guer les differences entre les timbres, nous percevons des caracteristiques autres que la
hauteur, la duree ou l’intensite. Le probleme est qu’on ne peut pas denombrer toutes ces
caracteristiques, c’est dans cette approche que le caractere multidimensionnel du timbre
s’exprime. Il en resulte que l’etude de la perception du timbre repose sur la mise en
evidence de criteres complementaires et ayant pour propriete de resumer au mieux l’infor-
mation sur le timbre. Pour cette etude, on constitue en premier lieux un espace multidi-
mensionnel dont chacun des axes mesure un critere choisi. Il existe de nombreuses etudes
sur ce sujet qui mettent en evidence des combinaisons de criteres pertinentes. Pour un
resume des differentes combinaisons utilisees, on pourra se referer a [14] qui reprend dans
son travail plusieurs etudes du meme type. Une combinaison repandue est constituee du
centroıde spectral, du temps d’attaque et du flux spectrale. On remarque que les com-
posantes de cet espace a trois dimensions representent des aspects differents du son. Le
centroıde spectrale est un critere frequentiel, le temps d’attaque est temporel, le flux spec-
tral qui mesure l’evolution du spectre represente les deux aspects. Ces trois criteres sont
7
complementaires. Une autre etude propose d’etudier des instruments de nature differentes
avec des criteres differents En effet, dans [16], les instruments a vents et a cordes sont
etudies sur deux axes qui mesurent le centroıde spectral et le temps d’attaque alors que
les instruments a percussions sont etudies sur deux autres axes pour lesquels on prend en
compte leur sonorites bruite. Les criteres ont etes choisis de facon a pouvoir separer au
mieux les instruments de chaque categorie. Sur ces deux espaces a deux dimensions, la
distinction entre les timbres sont optimisees puisque nous partons deja avec une hypothese
forte : la connaissance de la famille instrumentale. Dans la suite de cette etude, l’auteur
essaie de creer un espace plus general pour pourvoir caracteriser un ensemble d’instrument
constitue de l’union des deux familles etudiees precedemment. Les criteres retenus sont les
deux criteres spectraux des deux espaces precedents et l’information temporelle est donnee
par un critere plus generaliste : l’enveloppe d’amplitude. Le nouvel espace considere est
donc plus generaliste mais egalement plus complexe car il est sur trois dimensions. On
remarque que ces etude ont etes faites sur des timbres monophoniques connus. Ce type
d’etude donne une idee du mecanisme utilise pour caracteriser un timbre. Cependant,
l’objet de ce travail ce situe dans un contexte bien different, il s’agit ici de caracteriser
des unites sonores de l’ordre de la seconde.
Le terme “unite sonore” necessite que l’on precise sa definition dans ce contexte. Par
unite sonore, on entend un melange de sources ayant des timbres propres et pouvant
apparaıtre dans le temps a des instants differents tout en etant percu comme un tout par
l’auditeur. Autrement dit, une unite sonore est une composition polyphonique de timbres
que l’on percoit comme un ensemble. La figure 1.1 represente une version simplifiee de
la definition d’unite sonore : chaque source occupe une bande de frequence pendant un
certain temps et la composition des timbres constitue l’unite. En realite la bande ainsi
que le contenu frequentiel d’une source varient d’un instant a l’autre. De plus, on ne peut
pas considerer un continuum sur l’axe frequentiel car les relations entre les composantes
sinusoıdales ne sont pas previsibles : il peut s’agir d’une source harmonique, inharmonique
ou bien encore bruitee mais generalement, pour des sources reelles (non electroniques)
c’est une mixture des trois dont les proportions evoluent au cours du temps. Le contexte
d’etude etant pose, il semble clair que nous ne pouvons pas faire d’hypothese sur le signal
observe. Nous devons donc rester le plus generaliste possible lors de la description d’un
timbre etudie.
1.2 Les approches sur la reconnaissance de similarite
La plupart des systemes de ce type reposent sur une extraction prealable de descrip-
teurs de bas niveau a partir du signal afin de pouvoir le caracteriser. Des methodes de
nature differentes peuvent par la suite etre utilisees pour calculer des distances entre des
8
Fig. 1.1 – Unite sonore a plusieurs sources.
documents sonores. Le systeme Soundspotter qui est la base de ce travail sera presente
plus en details dans le chapitre suivant.
1.2.1 Descripteurs de bas niveau
Les systemes visant a retrouver de l’information a partir d’un signal sonore utilisent
des descripteurs de bas niveau qui sont la base de la description du signal. Des articles
tel [15] ayant un lien avec le projet CUIDADO en denombrent plus de 60 pour un total
de 166 composantes. On les distingue en plusieurs categories :
– Descripteurs temporels.
– Descripteurs d’energie.
– Descripteurs spectraux.
– Descripteurs harmoniques.
– Descripteurs perceptifs.
9
Le standard MPEG7 egalement definit un bon nombre de critere audios de bas niveau
qu’il utilise pour la description des documents multimedias. On peut noter que certains
systemes de classification utilisent un grand nombre de descripteurs et selectionnent au-
tomatiquement les plus pertinents pour discriminer differente classes [11].
1.2.2 Recherche par similarites dans des bases de donnees
Un des premiers systeme connu a avoir vu le jour traitant de la similarite entre les
sons est Soundfisher [9]. Le systeme pretend pouvoir retrouver des sons similaires a un
prototype dans une base de donnees. Dans ce travail, des informations issues du signal ainsi
que des informations semantiques sont utilisees. Des trajectoire sont calcules pour chaque
son : on segmente le signal en frames regulieres puis on extrait pour chaque frame un
certain nombre de descripteurs. Les descripteurs utilises sont : loudness, hauteur, brillance,
largeur de bande, harmonicite. Derriere ces mots referant au vocabulaire perceptif se
cache souvant un critere de bas niveau tel ceux definis dans [15] (par exemple la brillance
correspond au centroıde spectral). L’originalite de cette approche est de ne pas comparer
directement les trajectoires de descripteurs mais de stocker pour chacune d’elle leurs
moyennes, variance, coefficient d’autocorrelation. Le calcul de ces trois coefficients est
pondere par la trajectoire d’amplitude pour se focaliser sur les parties perceptivement
importantes du son. Les matrices de donnees pour chaque sons peuvent etre comparees
par distance Euclidienne mais l’article precise qu’il est egalement possible d’avoir recours
a des distances plus simple (Manhattan). Le systeme Soundfisher a ete implemente sous
la forme d’une interface web et la societe MuscleFish a egalement edite une application
autonome payante.
1.2.3 Mesures de distance entre des documents sonores
Un grand courant des recherches en MIR est de comparer des morceaux de musique
entiers uniquement a partir de criteres spectraux. L’enjeu est de pouvoir classer les mu-
siques du commerce automatiquement selon des criteres de similitudes spectrales. Pour
donner un sens a cette demarche, on fait une hypothese forte sur l’auditeur : on considere
que si il apprecie un morceau A, il appreciera egalement un morceau B spectralement
similaire a A. Selon cette hypothese, deux morceaux de piano pourtant differents musi-
calement mais qui sont tres proches spectralement auront a peu pret le meme impact sur
l’auditeur. L’inconvenient de cette approche est de ne pas prendre en compte le contenu
musical et par consequent on pourra retrouver par exemple des morceaux de Bach et de
Debussy classes dans une meme categorie.
10
Le travail de Logan et Salomon
De nombreux travaux ont etes realises dans ce domaine, on peut citer entre autres [13]
qui est base sur les sur les Mel Frequency Cepstrum Coefficients (MFCC). Les MFCC ont
etes utilises avec succes en traitement de la parole et semblent applicables a des sources
sonores de maniere generale. Dans [13], on decrit la musique par des enveloppes spectrales
dont chacune est caracterisee par 19 MFCC. Le premier coefficient relatif a l’energie est
ignore. En consequence, il semble impossible au systeme de localiser les temps forts. Un
morceau de musique est caracterise par 16 enveloppes spectrales typiques obtenues par
clustering avec l’algorithme des k-means. Pour calculer la distance entre deux morceaux,
on utilise la methode de Earth Mover’s Distance [19] issue de la programmation lineaire.
Le travail d’Aucouturier et Pachet
D’autres articles tel [4] [3] sont egalement bases sur les MFCC. La difference principale
se situe dans le nombre de coefficients extraits qui n’est ici que de 8 mais cette fois, il a
ete choisi de garder le premier coefficient. Ces differences impliquent qu’il est maintenant
possible de localiser les temps fort. De plus, l’approximation de l’enveloppe spectrale
obtenue est plus lisse. Pour resumer l’information des enveloppes spectrales d’un morceau
de musique, la meme idee que dans [13] est utilisee mais avec des techniques differentes. On
utilise des modeles de melanges de gaussiennes (GMM) a la place de l’algorithme k-means
pour obtenir trois enveloppe spectrales au lieu de 16. Les enveloppes spectrales etant
representes avec moins de details, un nombre inferieur d’enveloppes caracteristiques est
necessaire pour decrire les variations. Les GMM representant la musique sont comparees
en echantillonant une distribution et en calculant la probabilite que les echantillons soient
generes par l’autre distribution (voir [3] pour des details).
Histogrammes de Spectre
Les histogrammes de spectre (HS) [8] sont une approche simplifiee pour resumer l’en-
veloppe spectrale. L’idee est d’obtenir le meme resultat que le travail precedent mais avec
un model plus simple. Dans cette methode, on utilise la representation en Sone/Bark
du signal audio (voir [15] pour des details). Le HS resume un morceau de musique en
comptant combien de fois un niveau d’energie est atteint ou depasse dans une bande de
frequences. Les valeurs sont stockees dans un histogramme a deux dimensions. La somme
des histogrammes est normalisee a 1. Deux HS sont compares en les interpretant comme
des vecteurs a 1000 dimensions dans un espace euclidien. Combinee avec une compres-
sion par analyse en composantes principales, cette approche est plus rapide que les deux
methodes precedentes.
11
Histogrammes de Periodicite
L’idee est de decrire la periodicite des temps forts sans tenir compte de leurs frequences
[12]. Les Histogrammes de Periodicite (HP) utilisent egalement l’echelle de Bark. Dans
un premier temps, un filtre est applique sur chaque bande de Bark pour faire resortir
les sons percussifs. Ensuite, le signal est sequence en segments de 12 secondes traites
individuellement. Chaque sequence est ponderee par une fenetre de Hann avant de passer
par un banc de filtre pour chaque bande de Bark avec une resolution de 5bpm entre 40 et
240bpm. Ensuite, un model de resonance est applique a l’amplitude obtenue en sortie du
banc de filtre. Pour faire resortir les cretes a des periodes specifiques, le signal est filtre
avant que l’on somme les amplitudes pour chaque periodicite sur l’ensemble des bandes
de frequence. Les segments de 12 secondes sont resumes en utilisant un histogramme a
2 dimensions avec 40 colonnes regulierement espacees representant differente frequences
et 50 lignes representant les niveaux effectifs. Les histogrammes comptent pour chaque
periodicite combien de fois un seuil a ete atteint ou depasse. La distance entre deux HP
est calculee de la meme facon que pour les HS.
Fluctuation de Patterns
Une des principales differences entre un systeme a base de Fluctuation de Patterns
(FP) [7] et ceux utilisant les HP est que les FP utilisent une transformee de Fourier a
la place d’un banc de filtre plus couteux pour trouver des periodicites. Alors que les HP
utilisent un model de resonance accusant un maximum a 120bpm, les FP utilisent un
modele de fluctuation ayant une crete a 4Hz(240bpm). La plus grande difference reside
dans le fait que les FP incluent des informations sur le spectre alors que les PH negligent
cette information.
1.3 Visualisation de donnees multidimensionnelles
Comme nous l’avons vu precedemment, le timbre est de caractere multidimensionnel.
Ainsi, les modes de representation classiques ne sont pas les plus adaptes pour visualiser
l’etat de l’ensemble des composantes. Pour ameliorer la lisibilite de l’information sur le
timbre, nous avons recours une visualisation multidimensionnelle. Comme cela est decrit
dans [17], il existe plusieurs familles de representations. Nous en verrons egalement un
autre type deja adopte par des logiciels ([2], [1]) qui sont particulierement adaptes aux
representations audio.
12
1.3.1 La famille des glyphes
Les glyphes sont des icones qui changent d’apparence selon les donnees qu’elles representent.
Pour un point multidimensionnel, on associe un glyphe et les differences entre eux sont
utiles pour voir apparaıtre la structure d’un document.
Les figures de Chernoff
Le mode de representation de donnees multidimensionnelles par des figures de Cher-
noff tel qu’il est decrit dans [6] repose sur le principe d’associer les composantes des
donnees aux proportions d’un visage simpliste. Ainsi, on peut par exemple decrire une
composante par la grosseur des yeux, une autre par l’orientation des sourcilles et ainsi de
suite pour tous les criteres importants qui definissent l’expression d’un visage 1.2. On
peut noter qu’il existe des versions animees des figures de Chernoff permettant de suivre
l’evolution des donnees. La force de cette representation repose sur le fait qu’elle se base
sur un objet dont nous pouvons saisir les subtiles variations puisque nous sommes tous
les jours amenes a decoder les expressions de nos proches pour saisir leurs emotions. Par
contre, il a ete montre que les differents traits d’un visage n’ont pas le meme poids sur la
perception globale. Par consequent, certaines composantes associees a des traits auxquels
nous sommes plus sensibles pourraient avoir plus d’impact sur la visualisation. Les figures
de Chernoff ont ete utilisees dans le domaine des statistiques pour exprimer entre autres
les caracteristiques d’une region par rapport aux autres dans un meme pays.
Fig. 1.2 – Figures de Chernoff
13
La representation en coordonnes etoilees
L’idee principale de cette methode est de disposer les axes de mesure des composantes
sur un cercle. Nous somme donc sur un plan a deux dimensions avec des angles egaux
entre chaque axe et une origine au centre du cercle. Initialement, tous les axes ont la
meme taille et les points sont mis a l’echelle de la longueur de l’axe avec un minimum se
trouvant a l’origine et un maximum a l’autre extremite de l’axe comme le montre la figure
1.3. Les vecteurs unitaires sont calcules en consequence. Le systeme de coordonnees etoiles
est avant tout un systeme de coordonnees curviligne qui peut etre facilement converti en
un systeme de coordonnees cartesiennes. Ce systeme a pour avantage d’etre facilement
comprehensible par l’utilisateur. On peut noter que comme pour la representation a trois
dimensions en coordonnes cartesiennes, des ambiguıtes existent. En effet, il existe une
meme representation pour plusieurs points differents.
Fig. 1.3 – Representation en coordonnes etoilees.
1.3.2 Les techniques de projection
Les techniques de projection consistent a projeter les donnees dans un sous espace plus
petit. Le nouvel espace compte generalement une a trois dimensions. On attend d’une telle
reduction que les ensembles de donnees se revelent sur le nouvel espace plus petit.
Revue des differentes methodes
Une technique simple consiste a projeter les donnees sur un plan en deux dimensions,
les vecteurs directeurs de chaque axe etant orthogonaux. Cette methode est tres utilisee
14
pour representer des ensembles de donnees dont les points n’ont pas de relations directes
entre eux. La projection vise justement a rassembler les points qui sont proches pour faire
apparaıtre des clusters. Cependant, cette technique de visualisation , qu’elle soit utilisee a
deux ou trois dimensions ne prend pas en compte l’evolution temporelle d’un ensemble de
donnees. En effet, dans le cas du timbre, on peut voir l’ensemble des donnees comme un
vecteur dont les composantes evoluent a chaque instants. Cette representation ne prend
pas en compte l’ordre temporel des donnees et donc elle semble inadaptee a notre cas.
Une autre methode de visualisation est la projection en coordonnees paralleles. Comme
son nom l’indique, il s’agit de projeter chacune des composantes sur un axe. On dispose
donc n axes qui ont pour particularites d’etre parallele les uns aux autres 1.4. Les points
sont visualises en tracant une ligne entre chacune des composantes. Il en resulte que
l’on obtient une ligne brisee pour chaque point. Il existe egalement une extension a cette
technique pour les donnees variant dans le temps qui consiste a animer la ligne brisee :
chaque trame de l’animation represente donc un etat du point.
Fig. 1.4 – Representation en coordonnes paralleles.
Representation par codage de couleurs
La couleur peut etre un indicateur utile pour representer l’evolution d’un parametre.
En effet, si il n’existe pas d’ordre trivial sur l’ensemble des couleurs, on peut trouver
une certaine hierarchie par l’utilisation de degrades (niveaux de gris et autres). Ainsi,
l’evolution d’un parametre peut facilement etre vue selon que la zone coloree est plutot
claire ou sombre.
Une telle methode est utilisee par Freesound ([1]) Pour colorer une forme d’onde
en fonction de la valeur courante du centroıde spectrale. Par exemple, en prenant une
sinusoıde dont la frequence instantanee varie lineairement en fonction du temps (effet de
“sweep”) on obtient egalement un balayage des teintes utilisees pour la representation (cf.
15
1.5). Cette methode de representation permet de voir les differences de timbre visuellement
sans passer par l’ecoute.
Fig. 1.5 – Sweep d’une sinusoıde avec suivi du centroıde spectral
La societe Comparisonics ([2]) utilise une variante de cette methode pour visualiser les
similitudes entre les sons. En effet, avec cette representation, on peut facilement identifier
les sons ayant des timbres similaires car ils sont representes dans les meme teintes. La
difficulte reside dans le mapping des composantes du timbre sur l’espace des couleurs.
Comparisonics n’a d’ailleurs publie aucun article scientifique a ce sujet et on ne sait pas
quels criteres ont etes utilises pour la description du timbre. La figure 1.6 expose l’exemple
d’un document audio contenant des sons d’animaux et d’insects differents : dans l’ordre
d’apparition, il s’agit d’un chat, une mouche, un coq. Comme on le voit sur la figure les
timbres ont bien tous des teintes differentes.
Fig. 1.6 – Representation par codage de couleurs des differents timbres
1.3.3 Conclusion
Les modes de representation par glyphes, de par leurs nature non continue, semblent
assez peu exploitables dans notre cas car il ne permettent pas de voir directement les
differences entre les divers aspects du timbre ainsi que les evolutions. Pour exploiter les
glyphes dans le cas du timbre il semblerait plus judicieux d’avoir recours a des animations.
Cette solution n’est pas la plus pratique. Dans notre cas, puisqu’il s’agit avant tout de
considerer des melanges complexes de sources, il semble plus judicieux d’avoir recours
16
a une reduction de l’espace afin de pouvoir representer plus facilement les differences
globales entre les unites sonores.
17
Chapitre 2
Presentation du systeme existant
Dans cette section nous allons presenter le travail qui a ete effectue au GRM sur la
recherche de similarites du timbre : le projet SoundSpotter.
2.1 Le travail de recherche deja effectue
Les implementations realisees s’appuient sur un article d’Emmanuel Favreau et Chris-
tian Spevak [18] presente a la cinquieme conference du DAFX qui s’est tenue a Hambourg
en Septembre 2002. Plusieurs algorithmes ont etes essayes afin de trouver celui propo-
sant les meilleurs resultats. Pour pouvoir realiser les tests un programme Matlab a ete
implemente. Ce programme propose tous les algorithmes decris dans l’article et permet
de comparer facilement les resultats. Le but de ce travail est d’implementer la methode
presentant le meilleurs rapport performance/temps de calcul dans l’Acousmographe sous
la forme d’un plugin.
Toute les methodes essayees distinguent deux grandes phases : on procede d’abord
a l’extraction des descripteurs, ensuite on realise la recherche de similarites a partir des
donnees precedemment extraites.
2.1.1 Extraction de descripteurs
L’extraction des descripteurs dans SoundSpotter procede par segmentation du signal
en frames de 20ms sans pas de recouvrement. Chaque segment est ensuite multiplie par
une fenetre de Hanning pour eliminer les discontinuites au debut et a la fin de la frame. On
calcule les Mel Frequency Cepstral Coefficient (MFCC) pour chacune des frames. Les co-
efficients cepstraux ont etes retenus pour leur capacite a donner une bonne approximation
de l’enveloppe spectrale a partir d’un nombre reduit de coefficients (voir la partie selection
des descripteurs pour plus de details). L’extraction standard des MFCC souvent utilisee
en traitement de la parole a ete adaptee pour la recherche d’information dans un signal
18
musical : la bande de frequence de la Transformee de Fourier et du spectre de Mel ont
etes augmentes, l’echelle d’amplitude a ete modifiee. De plus la conversion logarithmique
qui est supposee donner une approximation de la perception de loudness a ete remplacee
par une conversion a la puissance 0,23. Ce choix a ete retenu par rapport a des travaux
fait en perception ([20]). La lois de puissance est plus plausible psychoacoustiquement et
donne une representation continue du signal a partir du silence (magnitude de 0) jusqu’au
niveau maximal. Ainsi, on garde les 13 premiers coefficients cepstraux de chaque frame
afin de constituer une sequence de vecteurs de parametres que l’on nommera par la suite
matrice de parametres. Par convention, la matrice a pour dimensions 13 ∗ n avec n le
nombre de frames.
2.1.2 Recherche de similarites
Plusieurs methodes ont etes etudiees et les resultats attestent que la meilleure methode
est celle dite de “Trajectory Matching”. L’origine de cette denomination vient de la com-
paraison avec la trajectoire d’un point dans un espace multidimensionnel. La distance
entre deux sequences de vecteurs de meme taille est calculee en comparant un par un
chacun de leurs elements respectifs. L’algorithme prend en entree la sequence de reference
(prototype) et la compare avec toutes les sequences de meme taille dans le document.
Autrement dit, on peut voir l’algorithme comme une fenetre glissant sur l’ensemble du
document par pas de 20ms (taille d’une frame) et calculant une distance entre le contenu
de la fenetre et le prototype a chaque iteration. La fonction de distance employee est
la moyenne des distances Euclidiennes entre les frames correspondantes de la sequence
prototype et de la sequence de test.
On obtient donc une fonction de distance comme celle de la figure 2.1 a partir de
laquelle on doit retrouver les M meilleurs resultats qui sont censes etre les plus similaires
au prototype. A la base, le systeme SoundSpotter demande a l’utilisateur de donner un
nombre maximum de resultats souhaites M et le programme retourne les M premiers
resultats de l’algorithme classes selon l’ordre des distances croissantes au prototype. Dans
un premier temps, l’algorithme produit une liste de resultats potentiels a partir des mini-
mums locaux de la fonction de distance puis une regle heuristique de distance minimale
est introduite : les elements consecutifs de le liste doivent etre separes par une distance
minimale de 0.8 ∗ L (avec L egal au nombre de frames du prototype). La liste poten-
tielle est donc filtree par cette regle heuristique et les elements de la liste resultante sont
classes par valeurs de distances croissantes. A partir de cette liste, on retourne les M
premiers resultats ou bien la liste complete dans le cas ou M est plus grand que le nombre
d’elements de la liste.
19
0 200 400 600 800 1000 1200 1400 16000
0.2
0.4
0.6
0.8
1
1.2
1.4Distance function (pf.wav, Alg. 1)
Fig. 2.1 – Courbe de distance calculee sur un document sonore.
2.2 Les implementations realisees
2.2.1 Implementation dans Matlab
Le premier prototype d’implementation de SoundSpotter a ete realise en Matlab. Il
permet a l’utilisateur d’executer une recherche a partir d’un exemple sonore en utili-
sant un des algorithmes de l’article reference [18]. Une fonction d’extraction des descrip-
teurs est appelee automatiquement a l’ouverture du fichier sonore. Ainsi, l’utilisateur peut
selectionner les instants de debut et de fin du prototype a la souris puis lancer la recherche
apres avoir choisi l’algorithme. Le programme affiche ensuite la fonction de distance, in-
dexe la forme d’onde par des marqueurs temporels, et propose a l’utilisateur d’ecouter les
resultats dans l’ordre.
2.2.2 Implementation dans l’Acousmographe sous forme de plu-
gin
L’algorithme de “trajectory maching” etant performant et raisonnable en temps de
calculs, il a ete partiellement adapte en C++ dans le but d’une integration future a
l’Acousmographe sous forme de plugin. Cette integration etait justement l’objet de mon
20
pf.wav (31.8 s)
Fig. 2.2 – Prototype d’implementation de soundspotter en matlab
premier travail. En effet, l’algorithme et les calculs etaient deja traduits en C++, le travail
d’integration consistait donc dans un premier temps a adapter le programme pour en faire
un plugin. Dans un second temps, pour plus de facilite de debogage, il m’a ete demande
de realiser un affichage de la fonction de distance dans l’Acousmographe.
La premiere partie de l’integration n’etait pas la plus difficile puisqu’un exemple de
code m’a ete fourni (il s’agit du plugin d’affichage de la forme d’onde). Le travail a consiste
a deplacer certaines variables afin qu’elles deviennent membre de certaines classes ainsi
qu’a adapter certaines structures de donnees.
L’affichage dans l’acousmographe est realise sous forme d’un systeme de calques syn-
chronises temporellement que l’on peut superposer afin d’obtenir des points de vue differents.
Par exemple, un affichage standard est de superposer un spectrogramme pour representer
le contenu frequentiel avec la forme d’onde qui donne des informations interessantes sur la
dynamique du signal. L’affichage de la distance est donc un calque de debug. La difficulte
principale etait de s’adapter au systeme de coordonnes de l’acousmographe.
21
Chapitre 3
Choix des descripteurs
Ce chapitre presente les descripteurs selectionnes pour etre ajoutes dans Sound Spotter
ainsi que les resultats des tests realises pour valider l’utilite de ces derniers.
3.1 Les descripteurs pertinants
3.1.1 Descripteurs frequentiels
Les MFCC
Les “Mel Frequency Cepstral Coefficiants” (MFCC) sont a l’origine les seuls descrip-
teurs implementes dans le systeme Soundspotter. Ils constituent une notion importante
dans le domaine de la similitude de timbre dans la mesure ou ils sont les descripteurs les
plus courant dans ce type de taches. En effet, issus du monde de la parole, ils sont le plus
souvent utilises pour approximer l’enveloppe spectrale de facon compacte. Comme nous
l’avons suggere dans le chapitre precedant, l’enveloppe spectrale d’un son peut constituer
un modele perceptif de bonne qualite.
On peut voir le systeme auditif humain comme un ensemble de filtres a bandes critiques.
Les bandes de Mel constituent un tel systeme : il se base sur l’echelle des frequences de
Mel qui est lineaire pour les les frequences inferieures a 1000 Hz et logarithmique pour les
frequences superieures a 1000Hz. La conversion de l’echelle des Hertz a l’echelle des Mel
est donnee par les formules suivantes :
– pourf < 1000Hz,M = f
– pourf > 1000Hz,M = fc ∗ (1 + log10(f
fc))
Ici, on a M est la frequence exprimee en Mel et f celle en Hz. fc est la frequence
de changement de loi de calcul et est donc egale a 1000Hz. L’axe des frequences lineaire
est d’abord converti en echelle de Mel qui sera par la suite divisee en 20 bandes de
frequences egalement espacees. Apres avoir pondere le signal par des fenetres triangulaires,
les energies d’indexes k correspondant a chaque bande de Mel z (debut(z) < k < fin(z))
22
sont ajoutes pour former la contribution a la bande z :
Amp(z) =fin(z)∑
k=debut(z)
A2k
Les MFCC representent la forme du spectre avec un petit nombre de coefficients. Le
cepstre est la transformee de Fourier (ou bien la transformee en Cosinus) du logarithme du
spectre. Le cepstre de Mel est calcule a partir des bandes de Mel a la place du spectre de
Fourier. L’utilisation des bandes de Mel permet de mieux prendre en compte les frequences
situees dans le medium. Les MFCC sont les coefficients du spectre de Mel. Le premier
coefficient etant proportionnel a l’energie n’est pas tout le temps garde. Le cepstre est
donne par la formule suivante :
C(τ) = DCT (ln(TF (x(t))))
On a DCT est la transformee en Cosinus discrete, TF la Transformee de Fourier et
x(t) le signal temporel.
Les Delta-MFCC
Les coefficients de Delta-MFCC correspondent aux derivees temporelles des coefficients
MFCC :
∆MFCC =δ
δtMFCC(t)
Comme nous l’avons vu dans le paragraphe precedent, les coefficients de MFCC
donnent une approximation de l’enveloppe spectrale instantanee. Par consequent, la derivee
temporelle de premier ordre decrit les variations du spectre. Ce choix se justifie par le
fait qu’il s’agit d’un critere souvent utilise en perception dans des etudes comme celles
abordees dans l’etat de l’art.
3.1.2 Autre descripteurs
L’energie
Ce critere est justifie par le fait qu’il modelise en quelque sorte l’enveloppe temporelle
du signal. L’evolution de l’amplitude d’un son est une composante fondamentale qui in-
fluence grandement sa perception. Pour chaque frame definie sur N echantillons, l’energie
est calculee de la facon suivante :
E =N∑
n=1
x[n]2
23
Spectral Flatness Measure
Une des faiblesses des MFCC est de ne pas caracteriser le bruit eventuellement present
dans un signal. On a donc choisi d’extraire ce coefficient pour completer l’information de
l’enveloppe spectrale. Le descripteur Spectral Flatness Measure (SFM) calcule les propor-
tions de l’aspect bruite (donnees decorrelees) et sinusoıdal du spectre. Il est calcule par
un rapport entre les moyennes geometriques et arithmetiques de l’energie du spectre :
SFM(bande) =(∏
k∈bande a(k))1
K
1K
∑k∈bande a(k)
Ici, on a a(k) est l’amplitude dans la kieme bande de frequence. Un signal purement tonal
a un SFM proche de 0 alors que pour un signal fortement bruite, ce coefficient est proche
de 1. Pour des raisons perceptive, ce descripteur a quatre composantes qui correspondent
aux SFM de quatre bandes de frequence distinctes :
– de 250 a 500Hz
– de 500 a 1000Hz
– de 1000 a 2000Hz
– de 2000 a 4000Hz
Spectral Crest Measure
Un autre descripteur lie a la platitude du spectre est le Spectral Crest Measure (SCM)
qui vaut 1 pour un signal totalement plat. Il est calcule par le rapport du maximum et de
la moyenne arithmetique du spectre d’energie. Le SCM est calcule sur les memes bandes
de frequences que le SFM.
SCM(bande) =(max(a(k ∈ bande)))
1K
∑k∈bande a(k)
Zero Crossing Rate
Ce critere definit le taux de passage par zero du signal. Le Zero Crossing Rate (ZCR)
peut etre interprete de plusieurs facons differentes. Il est utilise en traitement de la parole
pour distinguer le voise du non voise, en classification de sons percussifs [10]. On peut
egalement l’associer a une approximation de la hauteur car les signaux contenant des
hautes frequences ont un taux eleve de passage par zero. Il est calcule pour chaque frame
de N echantillons sur le signal temporel de la facon suivante :
Zcr = 0.5 ∗N∑
n=1
|sign(x[n])− sign(x[n− 1])|
La fonction sign(x) renvoie -1 si x < 0 et 1 le cas echeant.
24
3.2 Validation experimentale
3.2.1 Tests effectues
Afin de valider le choix qui a ete effectue, nous avons realise un jeu de fichiers sons
tests. Ces derniers reposent tous sur le meme principe : un son cible est considere comme
prototype et il est melange progressivement avec un signal “parasite”. Le but est de
retrouver le signal prototype dans le signal “parasite”. Tous les signaux sont normalises
et d’amplitudes relativement constantes. On a realise des mixages des deux signaux en
faisant varier uniquement l’amplitude du signal parasite de -20dB a +5dB par pas de 5dB
pour un signal cible a 0dB. On considere plusieurs categories de sons cibles et parasites.
Sons cibles : instrument, percussion, voix. Sons parasites : bruit blanc, tenue large bande,
son evolutif (varie en frequence et en amplitude), son similaire. Ainsi, les croisements
coherents entre les signaux ont etes realises pour un total de 12 tests. Ces premiers tests
ne mettent pas vraiment en jeu des unites sonores mais ils permettent de mettre en
evidence certains problemes plus simplement.
Dans un deuxieme temps nous avons egalement realise des tests sur des morceaux
de musique de nature differentes afin de confronter l’algorithme a la realite. Principale-
ment, quatre morceaux differents ont etes consideres. D’autre tests ont etes effectues mais
les quatre presentes dans le rapport ont ete choisi car ce sont eux qui posent le plus de
problemes, ils permettent de rendre compte des faiblesses du systeme.
– Extrait 1 : C’est un extrait d’un morceau de musique electronique (Chemical Bro-
thers), le test consiste a retrouver un son synthetique caracteristique repete plusieurs
fois a l’identique mais mixe a chaque fois avec d’autres sons. Ce cas est a peu pres
equivalent au test instrument + son evolutif.
– Extrait 2 : Extrait des Pink Floyd dans lequel une courte sequence vocale/intrumentale
est repetee 12 fois mais avec des variations de texture instrumentale. Il s’agit de re-
trouver ces variations.
– Extrait 3 : Extrait d’une piece de Francois Bayle (l’Oiseau moqueur). On cherche
dans cet exemple a reconnaıtre une sequence de rire qui apparaıt plusieurs fois avec
des timbres proches mais pas rigoureusement identiques.
– Extrait 4 : On cherche a reconnaıtre le mot ”Guimmick” prononce plusieurs fois et
mixe avec des instruments differents dans un morceau de musique “pop” (Mathieu
Chedid).
On a ensuite effectue d’autre tests en gardant uniquement les informations des des-
25
cripteurs donnant les meilleurs resultats de reconnaissance. Ces test on ete realises par
concatenation des matrices de descripteurs retenus pour chaque morceaux. L’ensemble
des tests a ete effectue sous Matlab en completant le programme Soundspotter deja exis-
tant. On a remarque lors de tests sur les MFCC avec les 13 coefficients que le premier
coefficient qui est proportionnel a l’energie avait une variance beaucoup plus importante
que les 12 autres. Il en resulte que certains resultats sont errones a cause de ce coefficient.
Nous avons donc decide (et c’est d’ailleurs souvent le cas dans certains articles) de ne pas
le prendre en compte et de calculer un coefficient d’energie a part qui sera integre par la
suite.
Pour pouvoir evaluer les tests effectues nous avons utilise des formules standard sou-
vent exploites dans ce type de travaux. Le recall est souvent utilise en MIR, il indique la
fraction des resultats coherents ayant etes retrouves. Le recall R est definit par la formule
suivante :
R =TP
TP + FN
TP designe les True Positive, c’est a dire les sons consideres comme similaires ayant ete
retrouves. FN designe les False Negative c’est a dire les sons consideres comme similaires
au prototype et n’ayant pas ete retrouves. On accompagne souvent le Recall d’une mesure
de precision P :
P =TP
R
3.2.2 Observations des resultats
Nous avons calcule une courbe de distance de similarite pour chacun des descripteurs
comme celles presentes dans la figure 3.1, puis les resultats de l’algorithme ont ete ecoutes
individuellement. Pour l’ensemble des tests, etant donne que l’algorithme demande a l’uti-
lisateur de saisir le nombre de resultats renvoyes par le systeme, on a pris pour convention
de limiter l’ecoute a 2 ∗M resultats ou M est le nombre total de sons similaires effecti-
vement present dans l’extrait sonore. Chaque descripteur est considere comme une entite
coherente ayant un certain nombre de composantes.
Test 1 : recherche d’un son cible dans un signal parasite
La figure 3.2, resume les resultats des differents tests. Les chiffres compris entre 0 et
7 designent les True Positive (TP), (il y a donc 7 sons a retrouver). Le tableau presente
egalement les valeurs de recall moyen par descripteur. En observant les valeurs de TP,
on remarque que les differents descripteurs choisis peuvent donner de bon resultats. Le
test “Percussion+Tenu” par exemple montre que les MFCC ne donnent pas forcement de
bons resultats avec des signaux de percussions qui sont de nature “bruitee”. Dans ce cas,
le SFM peut aider a retrouver le signal plus facilement. De plus, pour chacun des tests,
26
100 200 300 400 500 6000
2
4
6
8
10
12
Instru+Bruit
MFCCDelta MFCCMoments spectrauxSFMSCMEnergieZero Crossing RateDistance totale
Fig. 3.1 – Courbes de distances pour la recherche de similarites
on remarque qu’il existe un ensemble de descripteurs donnant de meilleurs resultats que
les autres. On remarque egalement que les MFCC ont le meilleur recall moyen, ce n’est
pas surprenant vu que les extrait sonores utilises sont majoritairement composes d’ins-
truments de type harmonique et ayant des enveloppes spectrales caracteristiques. Chacun
des descripteur essaye a son “heure de gloire” et obtient un nombre de TP satisfaisant au
moins une fois.
Test 2 : Resultat des differents descripteurs sur des extraits musicaux
La figure 3.3 presente les resultats de la deuxieme serie de tests qui ont etes realises
dans les memes conditions que la serie precedente. On remarque que les valeurs de recall
sont moins bonnes que dans les tests precedents qui constituaient des cas ideaux. L’extrait
3 issu de l’“Oiseau moqueur” presente des resultats mitiges du fait de la nature iterative
du prototype : il s’agit d’une sequence de 3 rires dont chacun est espace par un silence.
La difficulte principale est que les signaux similaires ont la meme structure globale mais
si la periode des iterations du rire est legerement differentes, l’algorithme risque d’avoir
des difficultes de detection. L’extrait 4 presente les moins bon resultats : dans cette chan-
son pop, l’algorithme renvoie bien une bonne partie des iteration du mot “Guimmick”,
cependant, on remarque de nombreuses fausses detections. Les erreurs sont souvent dues
27
MFCC ∆MFCC SFM SCM ZCR Energie
instru + bruit 7 6 6 6 7 3
instru + evolutif 5 6 6 5 4 4
instru + instru 7 6 7 7 6 5
instru + tenue 5 6 3 7 6 5
perc + bruit 6 3 4 6 4 3
perc + evolutif 6 4 3 4 5 6
perc + perc 6 5 4 5 4 5
perc + tenu 4 4 7 5 7 4
vocal + bruit 7 6 5 6 3 3
vocal + evolutif 7 5 6 7 7 4
vocal + tenu 7 7 5 6 5 4
vocal + vocal 7 5 7 7 7 5
Recall moyen 0.88 0.76 0.75 0.85 0.77 0.61
Fig. 3.2 – Resultats des tests de sons parasites.
au fait qu’il existe dans cet extrait de nombreux mots de structure similaires. De plus
les phrases ne sont pas chantes mais plutot parlee et donc il n’y a pas de mouvement
melodique caracteristique dans le prototype.
MFCC ∆MFCC SFM SCM ZCR Energie
Extrait 1 0.89 0.89 0.89 0.78 0.67 0.56
Extrait 2 0.75 0.33 0.5 0.58 0.92 0.42
Extrait 3 0.6 0.2 0.6 0.8 0.2 0.8
Extrait 4 0.5 0.43 0.21 0.21 0.36 0.14
Recall moyen 0.69 0.46 0.55 0.6 0.54 0.48
Fig. 3.3 – Resultats des descripteurs sur des extraits sonores.
Test 3 : Concatenation des descripteurs presentant les meilleurs resultats.
Dans cette derniere serie de tests (figure 3.4), on a realise une concatenation des
matrices de chacun des descripteurs presentant les meilleurs resultats. La matrice de
parametre obtenue par concatenation est ensuite normalisee afin que chacune des compo-
santes de descripteurs aient le meme poids. On remarque des ameliorations significatives
dans la majorite des cas due a l’apport d’informations des differents descripteurs calcules.
Les resultats montrent qu’il semble difficile de masquer totalement a l’utilisateur les
28
Extraits Extrait1 Extrait2 Extrait3 Extrait4
Recall 1.0 1.0 0.83 0.5
Fig. 3.4 – Resultats des meilleurs descripteurs sur des extraits sonores.
descripteurs mis en jeu. En effet, il est necessaire de trouver les combinaisons de descrip-
teurs qui fonctionnent bien pour une recherche donnee.
29
Chapitre 4
Reduction de l’espace et
visualisation du timbre
Nous avons finalement retenu pour la visualisation du timbre musical un systeme de co-
dage de couleurs de la forme d’onde qui permet de visualiser les parties similaires d’un do-
cument sonore. Comme nous l’avons vu dans la section precedente, une detection necessite
l’extraction d’une combinaison de descripteurs dont chacun d’entre eux possede un cer-
tain nombre de composantes. Cet ensemble de donnees multidimensionnel ne peut pas etre
visualise facilement a moins d’avoir recours a une des techniques vue dans la premiere
partie. Cependant, une visualisation naturelle ne deroutant pas l’utilisateur semble dif-
ficile a mettre en oeuvre. Afin d’utiliser les espaces de couleurs a trois dimensions, nous
avons procede a une reduction de l’espace multidimensionnel en utilisant l’analyse par
composantes principales (ACP). Ainsi nous presenterons les resultats de cette reduction
en affichant directement les couleurs obtenues dans la forme d’onde.
4.1 Analyse par composantes principales
Le but de cette analyse est de reduire la dimension de l’espace des parametres en
conservant le meilleur resume des donnees. En effet, dans notre cas, nous cherchons a
visualiser efficacement des donnees definies sur un grand nombre de dimensions (les MFCC
a elles seules atteignent 12 composantes). Comme nous l’avons vu dans l’etat de l’art, les
techniques de representation des donnees a base de glyphes sont utiles dans le sens ou elles
permettent de representer un grand nombre d’information sur un petit espace. Cependant
ces representations ne permettent pas directement de rendre compte de donnees evoluant
dans le temps. Nous avons donc prefere utiliser l’ACP qui permet de reduire la dimension
de l’espace des parametres et ainsi pouvoir afficher les donnees a l’interieur de la forme
d’onde qui a pour avantage d’etre une representation bien connue des utilisateur.
Dans un premier temps, on va reduire la matrice de parametres en soustrayant la
30
moyenne et en divisant par l’ecart type. Effectuer ou non cette reduction est un choix de
modele : si on ne la reduit pas, une variable a forte variance va entraıner tout l’effet de
l’ACP a elle mais une matrice reduite implique qu’un bruit se retrouvera avec une variance
apparente egale a celle d’une variable informative. Dans notre cas, on a choisi de reduire
la matrice afin de mettre a egalite l’ensemble des descripteurs. L’ACP utilise la matrice de
correlations pour realiser un resume pertinent car on analyse principalement la dispersion
des donnees considerees. La matrice de correlations C est obtenue par multiplication de la
matrice de parametres M par sa transposee M t. On effectue ensuite une diagonalisation
de cette matrice pour en extraire des vecteurs propres. Le vecteur qui explique le plus
d’inertie du nuage est le premier vecteur propre. De meme le deuxieme vecteur qui explique
la plus grande part de l’inertie restante est le second vecteur propre etc... Cette nouvelle
base dont les axes sont les vecteurs propres que nous avons obtenu sera utilisee par la
suite pour projeter les donnees. Ainsi, on garde autant d’axes que l’on souhaite et pour un
jeu de donnees a n dimensions on peut avoir une reduction par ACP de 1 a n dimensions
(dans notre cas nous avons reduit a 3 dimensions).
Les valeurs propres de la matrice de covariance decrivent les variances exprimees sur
chaque axe. Ainsi, on obtient le pourcentage de donnees exprimees Pi sur l’axe i par la
formule :
Pi = 100 ∗λi∑n
i=1 λi
Pour plus de details sur l’ACP, on pourra se referer a [5].
4.2 Visualisation : extraits musicaux commentes
Dans cette partie, nous allons commenter les affichages obtenus dans matlab pour
plusieurs extraits de musique. Nous avons utilise l’espace de couleurs RVB a trois compo-
santes qui donnait les resultats les plus visibles. De plus, nous avons utilise la combinaison
de descripteurs la plus efficace pour chaque extrait, c’est a dire la meme que celle retenue
pour les tests de concatenation. Il convient de preciser que les couleurs obtenues n’ont
de sens que dans le cadre relatif a un document donne. En effet, ces teintes ne donnent
pas d’informations absolues sur la nature des timbres mais sont utiles pour reperer les
similarites a l’interieur d’un meme document. Dans des implementations futures du plu-
gin, il sera possible de comparer des documents entre eux en sauvegardant la matrice
de projection d’un des documents et en projetant les matrices de parametres des autres
documents sur la base sauvegardee.
La figure 4.1 correspond a l’extrait 2 que nous avons utilise dans les tests precedents
(extrait de Pink Floyd). Dans cet extrait, l’information apportee par la visualisation est
31
Fig. 4.1 – Visualisation d’un morceau d’orchestre.
caracterisee par des couleurs nettement distinguables. Les tests ayant etes effectues dans
la section precedente ont etes realises sur un des segments en rouge de la figure 4.1. Le but
pour l’algorithme etait donc de retrouver toutes les parties rouges. L’ACP a conserve des
resultats coherents avec l’algorithme malgre la reduction (perte d’information) puisque les
zones rouges sont celles retrouvees par l’algorithme. On voit que ce type de representation
donne a l’utilisateur une idee des segments similaires dans le document.
Le deuxieme exemple de representation (figure 4.2) est extrait d’un morceau de piano.
Le graphique obtenu laisse apparaıtre des zones de couleurs qui sont globalement uni-
formes. La forme de l’extrait est de type [A A’ B B’]. Nous avons annote ces zones sur la
figure 4.2 :
– Zone1 : Cette partie expose un theme (A) ainsi que des accords dans le medium .
– Zone2 : Le theme (A) est repris a l’octave en gardant les accords a l’identique.
– Zone3 : Les accords et le theme changent (B) pour atteindre une tessiture plus
elevee.
– Zone4 : La polyphonie (B) de la zone precedente est reprise a l’identique mais dans
le medium (transposition a l’octave inferieure).
Dans ce cas, on voit que l’information visualisee est celle de la tessiture globale des notes
jouees sur l’instrument. En effet les formes d’onde des zones 1 et 2 sont similaires car les
polyphonies de ces deux zones sont les memes mais la melodie placee a l’octave dans la
zone 2 change la teinte globale. Dans la seconde partie, presque le meme phenomene est
visualise : les zones 3 et 4 ont des formes d’onde similaires mais des teintes differentes
32
Fig. 4.2 – Visualisation d’un morceau de piano.
car l’ensemble de la polyphonie (B) en zone 3 est transposee a l’octave inferieure en zone
4. On remarque egalement que les teintes des zones 1 et 4 sont similaires car ces deux
zones sont dans la meme tessiture. Cette similarite de tessiture (teinte) entre les zones 1
et 4 permet au compositeur d’assurer un retour a (A) en souplesse. On voit que pour une
oeuvre tonale, cette representation peut donner une vision differente complementaire aux
analyses classiques de type harmonique.
Le dernier exemple de representation ( 4.3) est extrait de l’Oiseau Moqueur. L’infor-
mation qui est represente dans cet exemple est difference entre les timbres utilises par le
compositeur. Les timbres les plus distinguables apparaissent dans des couleurs differentes :
– Bleu : Son electronique + oiseaux.
– Rouge : Hautbois.
– Vert : Cor.
On remarque egalement d’autre zones de couleurs qui sont moins remarquables, ces zones
correspondent la plupart du temps a des melanges complexes de timbres.
4.3 Quelque mots sur les tests de similitude avec
ACP
Comme nous l’avons evoque dans la presentation de l’ACP, cette methode a pour
bonne propriete de decorreler les donnees. L’ACP peut donc etre vue comme une technique
33
Fig. 4.3 – Extrait de l’oiseau moqueur.
elementaire de fusion de donnees. En effet, l’inconvenient majeur de la concatenation des
matrices de descripteurs tel que nous l’avons vu dans la section precedente est de ne
pas prendre en compte la redondance des donnees. Certes, nous avons pris soin dans
ce travail de choisir des criteres complementaires pour limiter ce probleme, de plus le
nombre de descripteurs extraits n’etant pas grand, on limite la redondance des donnees.
Pour ces tests, on a realise une ACP sur le prototype afin d’obtenir une nouvelle base de
dimension inferieure. L’ensemble des donnees est ensuite projete sur cette nouvelle base
par multiplication matricielle.
Malgre des resultats encourageants sur les tests son cible/ son parasite (figure 4.4),
les resultats sur les extraits musicaux demeurent identiques a ceux obtenus par simple
concatenation. Dans la figure 4.4, on realise une reduction de l’espace en considerant
le pourcentage de donnes conserves. On a donc realise plusieurs ACP sur un meme jeu
de donnees pour des pourcentages allant de 20 a 80 par pas de 20%. On voit ici que la
courbe a 20% est la meilleure et permet de retrouver tous les sons similaires. Malgre ces
resultats, on obtient des performances identiques sur l’ensemble des extraits musicaux
au classement pret (il arrive parfois que l’ACP supprime certaine fausse detection). Ces
ameliorations ne sont pas significatives et nous aurions sans doute mieux ressenti les effets
de l’ACP avec un plus grand nombre de descripteurs. Par consequent, il ne semble pas
necessaire d’integrer cette methode pour ameliorer les recherches de similarite.
34
50 100 150 200 250 300 350 400 450 5000
1
2
3
4
5
6
7
8
9
10Vocal+Evolutif
ACP à 20%ACP à 40%ACP à 60%ACP à 80%Concaténation
Fig. 4.4 – Courbes de distances apres ACP a divers niveaux.
35
Conclusions et perspectives
On voit d’apres ce travail que les MFCC sont la plupart du temps un modele efficace
et suffisamment generaliste pour decrire une unite sonore. Cependant, l’ajout d’autre des-
cripteurs peut ameliorer la recherche si ils sont choisi judicieusement et adaptes a la nature
du prototype. Les resultats de ce travail nous amenent a considerer une utilisation semi-
automatique du systeme : il s’agit de choisir des criteres pertinents selon la recherche que
l’on veut effectuer. Pour ce faire, on peut imaginer une interface graphique dans laquelle
il serait possible de cocher des cases pour designer les descripteurs a extraire et a utiliser
dans la recherche. Pour ne pas derouter l’utilisateur, on utiliserait des mots emprunts
au vocabulaire electroacoustique courant. Voici une liste d’associations (descripteur, mot
courant) provisoire qui pourrait etre utilisee :
– MFCC ⇐⇒ Spectre
– ∆MFCC⇐⇒ Evolution Spectrale
– SFM et SCM ⇐⇒ Proportions de bruit
– Energie ⇐⇒ Enveloppe temporelle
Actuellement, les extensions qui concernent les recherches de similarite et la visuali-
sation ont etes implementes dans le plugin sound spotter en C++ (mis a part l’affichage
de la forme d’onde coloree qui a ete realise en matlab). Pour l’algorithme d’ACP, on a
utilise les librairies matricielles JAMA et TNT. En ce qui concerne la partie modelisation
de l’unite sonore, il pourrait etre interessant de considerer une segmentation intelligente
du prototype afin d’obtenir un resume de l’evolution de son contenu. Une telle methode
permettrait egalement de gerer les differences d’echelles temporelles.
Pour la visualisation, il serait sans doute interessant de considerer une implementation
qui sauvegarde la matrice de projection obtenue par ACP afin de pouvoir comparer plu-
sieurs documents sur une meme echelle de couleurs. Le but ultime d’une representation
analytique serait d’avoir recourt a des techniques de separations de sources (Analyse
par Composantes Independantes ou autre) pour pouvoir dissocier les timbre sur l’axe
frequentiel au lieu de considerer uniquement l’axe temporel. En consequence, une telle
separation necessiterait une nouvelle representation.
36
Bibliographie
[1] http ://freesound.iua.upf.edu.
[2] http ://www.comparisonics.com.
[3] J.-J. Aucouturier and F. Pachet. Finding some songs that sound the same. Proc
IEEE Workshop on Model Based Processing and Coding of Audio, 2002.
[4] J.-J. Aucouturier and F. Pachet. Music similarity measures : What’s the use ? Proc
Intl Conf on Music Information Retrieval (ISMIR), Paris, France, 2002.
[5] Alain Baccini and Philippe Besse. Data mining 1 exploration statistique. 2005.
[6] Herman Chernoff. The use of faces to represent points in k-dimensional space gra-
phically. Journal of the American Statistical Association, 68 :361–368, 1973.
[7] A. Rauber E.Palmpalk and D.Merkl. Content-based organisation and vizualisation
of music archives. Proc ACM Multimedia, Juan les Pins, France, 2002.
[8] S. Dixon E.Palmpalk and G. Widmer. Exploring music collections by browsing dif-
ferent views. Proc Intl Conf on Music Information Retrieval (ISMIR), Washington
DC, 2003.
[9] Douglas Keislar James Wheaton Erling Wold, Thom Blum. Content-based classifi-
cation, search, and retrieval of audio. IEEE Multimedia, pages 27–36, 1996.
[10] Francois Pachet Fabien Gouyon and Olivier Delerue. On the use of zero-crossing rate
for an application of classification of percussive sounds. Proc COST G-6 Conference
on Digital Audio Effects (DAFX-00), Verona, Italy, 2000.
[11] Xavier Rodet Geoffroy Peeters. Automatically selecting signal descriptors for sound
classification, paris, france.
[12] G.Tzanetakis and P. Cook. Musical genre classification of audio signals. IEEE
Transactions on Speech and Audio Processing, 2002.
[13] B. Logan and A.Salomon. A music similarity function based on signal analysis. Proc
IEEE Intl Conf on Multimedia and Expo (ICME), Tokyo, Japan, 2001.
[14] Stephen McAdams. A meta-analysis of acoustic correlates of timbre dimensions.
[15] Geoffroy Peeters. A large set of audio features for sound description (similarity and
classification) in the cuidado project. 2003.
37
[16] Lakatos S. A common perceptual space for harmonic and percussive timbres. Pierce
Laboratory, New Haven, Connecticut, USA, 2000.
[17] William M. Spears. An overview of multidimensional visualization techniques. Pro-
ceedings of the Genetic and Evolutionary Computation Conference.
[18] Christian Spevak and Emmanuel Favreau. Sound spotter - a prototype system for
content-based audio retrieval. DAFX-02, 2002.
[19] C. Tomasi Y. Rubner and L. Guibas. A metric for distributions with applications to
image databases. Proc IEEE Intl Conf on Computer Vision, 1998.
[20] Erberhard Zwicker and Hugo Fastl. Psychoacoustics : Facts and models. Springer,
1990.
38