(iad-ps-indexaudio 2012 [mode de compatibilité])
TRANSCRIPT
Master IAD Module PS: « Parole et Sons »
Indexation Audio
Gaël RICHARDTELECOM ParisTechDépartement Traitement des signaux et des imagesJanvier 2012
« Licence de droits d'usage" http://formation.enst.fr/licences/pedago_sans.html
Contenu
� Indexation des signaux musicaux• Intérêt et Applications • Quelques dimensions du signal musical• Petits rappels de traitement du signal• Analyser le tempo, le rythme• Analyser les hauteurs, l’harmonie,..• Analyser le timbre, les instruments,..
2 Gaël RICHARD Indexation Audio
• Analyser le timbre, les instruments,..• Analyser des signaux polyphoniques…
� Conclusion
Préambule
� Le cours indexation des signaux audio est assez lar gement basé sur : • M. Mueller, D. Ellis, A. Klapuri, G. Richard « Signal Processing for
Music Analysis, IEEE Trans. On Selected topics of Signal Processing, Oct. 2011
� Avec, pour les transparents, l’aide de:
3 Gaël RICHARD Indexation Audio
• O. Gillet, • A. Klapuri • M. Mueller
Indexation audio : intérêts
� Nouveaux challenges pour la société de l’informatio n:
• Volume considérable de données numériques multimedia disponibles
• L'accroissement rapide et continu de ces données numériques (qu'elles se trouvent sur le réseau Internet ou dans des bases personnelles)
• Généralisation de leur utilisation pour de nombreuses applications
4 Gaël RICHARD Indexation Audio
• Généralisation de leur utilisation pour de nombreuses applications
���� Diminution de « l’accessibilité » des données���� Un fort besoin pour de nouvelles méthodes efficaces d'indexation, de
classification et d'accès par le contenu.
� L'indexation automatique vise ainsi à extraire du f lux numérique multimedia des descripteurs de haut niveau permetta nt de réaliser par la suite une classification ou un accès à l'inf ormation par son contenu.
Recherche par le contenu …..
5 Gaël RICHARD Indexation Audio
Pourquoi analyser le signal musical ?
� Rechercher par le contenu• À partir d’un morceau …• À partir d’un chantonnement…• De nouveaux morceaux à partir de ce que j’aime….• Une nouvelle version d’un air connu ..• Une vidéo qui « va bien » avec l’audio
Nouvelles applications• Playlist « sémantiques » (jouer des
morceaux de plus en plus rapide…)• Karaoké « intelligent »
(l’accompagnement suit le chanteur…)• Prédire le potentiel succès d’un titre• Aide au mixage, Djing, • Ecoute active,..
6 Gaël RICHARD Indexation Audio
• … • Ecoute active,..
Jogging musical
Modifications synchrones Playlist, « espace musical »
Recherche à la voix
Partition automatique
L’indexation audio…
� … un domaine multi-disciplinaire.
Acoustique
Perception
Indexation
Informatique
7 Gaël RICHARD Indexation Audio
Sémantique
Traitement de la paroleTraitement du signal
Indexation Audio
Statistiques
Musique
Quelques rappels de traitement du signal…..
8 Gaël RICHARD Indexation Audio
Quelques rappels de traitement du signal…..
Représentation du signal
� Soit un signal x(t) à valeurs continues dans le tem ps:
x(t)
t
9 Gaël RICHARD Indexation Audio
� Soit x(nT) le signal échantillonné à des valeurs di scrêtes t=nT
x(n)=x(nT)
t
T
Représentation temps-fréquence
� Transformée de Fourier discrête
10 Gaël RICHARD Indexation Audio
xn |Xk| Spectrogramme
Paramétrisation: paramètres spectraux
� Paramétrisation spectrale: analyse d’un signal audi o (d’après Laroche)
11 Gaël RICHARD Indexation Audio
Représentations du signal audio
� Exemple sur un signal audio: note Do (262 Hz) jouée par un piano et un violon.
12 Gaël RICHARD Indexation Audio
Signal temporel
Spectrogramme
D’après M. Mueller & al. « Signal Processing for Music Analysis, IEEE Trans. On Selected topics of Signal Processing, oct. 2011
Modèle source-filtre
� enveloppe spectrale, source
M odèle de Sou rce
M odèle du résonateu r
S ou rce F iltre
f0 xn yn
16 Gaël RICHARD Indexation Audio
S ou rce F iltre
f0
f0
Quelques dimensions du signal musical…
Hauteurs, Harmonie,.. Tempo, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
Quelques dimensions du signal musical…
Hauteurs, Harmonie,.. Tempo, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
Un son quasi-périodique
T0 Comment estimer la hauteur d’une note
ou
19 Gaël RICHARD Indexation Audio
F0=1/T0
ou
comment estimer la période (T0) ou la fréquence fondamentale (F0) ?
Modèle de signal
•
• est la fréquence fondamentale réduite
• H est le nombre d’harmoniques du signal
• Les amplitudes {Ak} sont des réels > 0
• Les phases {φk} sont des v.a. indépendantes de loi uniforme sur [0, 2π [
• w est un bruit blanc centré de variance σ2, indépendant des phases {φk}
• x(n) est un processeur SSL centré d’autocovariance
Méthodes temporelles
� Autocovariance biaisée
Méthodes temporelles
� Autocorrélation
Estimation d’une fréquence fondamentale
� Une méthode temporelle• Average magnitude difference function (AMDF)
23 Gaël RICHARD Indexation Audio
• De nombreuses méthodes spectrales ou cepstrales existent aussi
Approche par le maximum de vraisemblance
• Modèle de signal:
- a est un signal déterministe de période T0
- w est un bruit blanc gaussien de variance σ2
• Vraisemblance des observations• Vraisemblance des observations
• Log-vraisemblance
• Méthode: maximiser successivement L par rapport à a, puis σ2 et enfin T0
Approche par le maximum de vraisemblance
• On peut montrer que la maximisation de L par rapport à revient à maximiser la somme spectrale
Produit spectral
• Par similitude avec la somme spectrale on peut définir le produit spectral (souvent plus robuste)
Hauteurs de note
Hauteurs de note
Modèle: gamme tempérée � Notes MIDI: � Notes piano: � La du diapason: � Fréquence fond. (Hertz):
Hauteurs de note
A2 A3 A4
Les fréquences des octaves sont réparties logarithmiquement… doublement de la fréquence fondamentale à chaque octave
A2110 Hz
A3220 Hz
A4440 Hz
Vers une représentation plus spécifique
Idée: regroupement de bins fréquentiels
• Diviser l‘axe fréquentiel en “régions“ logarithmiquement espacées et,
• Combiner les coefficients spectraux (e.g. ) de chaque région en un nouveau coefficient moyenné
Vers une représentation plus spécifique
Vers une représentation temps-fréquence à Q constant
Fenêtrage dans le domaine temporel
Fenêtrage dans le domaine
fréquentiel
Vers une représentation plus spécifique
32 Gaël RICHARD Indexation Audio
D’après M. Mueller & al. « Signal Processing for Music Analysis, IEEE Trans. On Selected topics of Signal Processing, oct. 2011
Vers une représentation plus spécifique
� En pratique:• Solution peu satisfaisante
� Solution souvent retenue: Utiliser des tailles de f enêtres différentes pour chaque nouveau bin fréquentiel k’
Bin kN’
33 Gaël RICHARD Indexation Audio
Bin kN’
Bin k2’
Bin k1’
J. Brown and M. Puckette, An efficient algorithm for the calculation of a constant Q transform, JASA, 92(5):2698–2701, 1992.J. Prado, Une inversion simple de la transformée à Q constant, technical report, 2011, http://www.tsi.telecom-paristech.fr/aao/en/2011/06/06/inversible-cqt/
Représentation temps-fréquence
Example: gamme chromatique: (Crédit M. Mueller)
Fre
quen
cy (
Hz)
Spectrogramme
Time (seconds)
Fre
quen
cy (
Hz)
Inte
nsity
(dB
)
Représentation temps-fréquence
Example: gamme chromatique
Log-frequency spectrogram
MID
I pitc
h
Inte
nsity
(dB
)
Time (seconds)
Quelques dimensions du signal musical…
Hauteurs, Harmonie ,.. Tempo, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
L‘harmonie: les paramètres de “Chroma“
� Les notes séparées par une (ou plusieurs) octave(s) ont le même nom (e.g. perçues comme liées ou similaires ?)
construire des paramètres regroupant cette information „similaire“
� On considère les 12 notes traditionnelles de la gamme tempérée.
� Les chromas sont obtenus, pour une note donnée, en sommant les contributions de chacune de ses octaves
Obtention d‘un vecteur de dimension 12 (les chromas)
Paramètres de chroma
Paramètres de chroma
C2 C3 C4C2 C3 C4
Chroma C
Paramètres de chroma
C#2 C#3 C#4C#2 C#3 C#4
Chroma C#
Paramètres de chroma
D2 D3 D4D2 D3 D4
Chroma D
Paramètres de chroma
Hélice de Shepard‘s (perception de la hauteur)
Cercle chromatique
http://en.wikipedia.org/wiki/Pitch_class_space
[Bartsch/Wakefield, IEEE-TMM 2005] [Gómez, PhD 2006]
Paramètres de chromas
Example: gamme chromatique
Spectrogramme log-fréquentiel
MID
I pitc
h
Inte
nsity
(dB
)
Time (seconds)
Paramètres de chromas
Example: gamme chromatique
Représentation en chromas
Chr
oma
Inte
nsity
(dB
)
Time (seconds)
Paramètres de chromas
Example: gamme chromatique
Inte
nsity
(no
rmal
ized
)
Représentation en chromas (normalisée)
Inte
nsity
(no
rmal
ized
)
Time (seconds)
Chr
oma
Paramètres de chromas
Spectrogramme log-fréquence
Example: Friedrich Burgmüller, Op. 100, No. 2M
IDI p
itch
Inte
nsity
(dB
)
Time (seconds)
Paramètres de chromas
Représentation en chromas
Example: Friedrich Burgmüller, Op. 100, No. 2
Inte
nsity
(dB
)
Chr
oma
Time (seconds)
Traiter le signal globalement …
� Un exemple avec la reconnaissance d’accords• Reconnaissance des accords
- Utilisation de templates (Exemples de chromagrams théoriques)
Do Majeur (1 harmonique) Do Majeur (6 harmoniques)
49 Gaël RICHARD Indexation Audio
Do Majeur (1 harmonique) Do Majeur (6 harmoniques)
Applications des chromas
� La reconnaissance des accords, de la tonalité,…
blah2_mono.mpg
50 Gaël RICHARD Indexation Audio
• Autres applications:- L’alignement Audio/Audio ou Audio/partition- L’audio fingerprint, ….
D’après Oudre, PhD. 2010
Quelques dimensions du signal musical…
Hauteurs, Harmonie,.. Tempo , beat, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
Intéret de l’information rythmique
� Le rythme: une composante essentielle du signal mus ical
� Nombreuses applications:• Aide au mixage, au DJing : synchronisation du tempo, du rythme, des
textures
53 Gaël RICHARD Indexation Audio
• Karaoké “intelligent”• Génération automatique de playlists (podcast,…)…• Reconnaissance du genre• Syncrhonisation musique / vidéo• Les chaussures de footing « intelligentes ? »• ..
Extraction du rythme ou du Tempo
� Le rythme: concept musical intuitivement simple à comprendre mais difficile à définir !!
54 Gaël RICHARD Indexation Audio
� Handel (1989): « The experience of rhythm involves movement regularity, grouping and yet accentuation and diffe rentiation »
� le rythme d’un signal écouté n’a pas nécessairement une interprétation unique !!
� On définit fréquemment la pulsation (beat en anglai s)
Extraction du rythme ou du Tempo
� Principe Général
Descriptionrythmique
55 Gaël RICHARD Indexation Audio
Extraction du rythme ou du Tempo
Autocorrélation
Signal + Onsets Suivi du tempo (« tempogramme»)
56 Gaël RICHARD Indexation Audio
« Fonction de détection »
Tempo « à la noire »
Importance des bancs de filtres
� Décomposition en 16 bandes (signal échantillonné à 16 kHz)
• Bandes 8-16 (3500 – 8000 Hz)
Bande 7 (3000 – 3500 Hz)
Bande 6 (2500 – 3000 Hz)
Musical signal in different bands (Fs=16kHz)
Bande 4 (1500 – 2000 Hz)
Bande 5 (2000 – 2500 Hz)
Bande 3 (1000-1500 Hz)
Bande 2 (500 – 1000 Hz)
Bande 1 (0 – 500 hZ)
Extraction du rythme
� Approche par banc de filtres (Scheirer, 1998)
58 Gaël RICHARD Indexation Audio
Découvrir l’information rythmique
� Décomposition « harmoniques » + bruit
• Original = Somme de sinusoïdes + Bruit
59 Gaël RICHARD Indexation Audio
Exemples fournis par R. Badeau
Découvrir l’information rythmique
� Un exemple pour l’extraction robuste du tempo�Utilisation d’un banc de filtres
�Utilisation d’une décomposition harmoniques / bruit
60 Gaël RICHARD Indexation Audio
�Utilisation d’un suivi dynamique du tempo (programmation dynamique)
M. Alonso, G. Richard, B. David, “Accurate tempo estimation based on harmonic+noise de composition”, EURASIP Journal on Advances in Signal Processing, vol. 2007, Article ID 82795, 14 pages, 2007
video_tracking.mp4
Exemples de résultats
Rank Participant Score (std. deviation)
At Least One Tempo Correct
Both Tempos Correct
At Least One Phase Correct
Both Phases Correct
� Evaluation international réalisée à MIREX’05 (http://www.music-ir.org/evaluation/mirex-results/audio-tempo/index.html )� 13 different algorithms compared on the same database, using the same
protocol� Database of 140 wav files manually annotated (cross annotation by over 20
listeners)
61 Gaël RICHARD Indexation Audio
Rank Participant deviation) Tempo Correct Correct Phase Correct Correct 1 Alonso, David, & Richard 0.689 (0.231) 95.00% 55.71% 25.00% 5.00% 2 Uhle, C. (1) 0.675 (0.273) 90.71% 59.29% 32.14% 7.14% 4 Gouyon & Dixon 0.670 (0.252) 92.14% 56.43% 40.71% 7.86% 5 Peeters, G. 0.656 (0.223) 95.71% 47.86% 27.86% 4.29% 8 Eck, D. 0.644 (0.300) 86.43% 53.57% 37.14% 5.71% 9 Davies & Brossier 0.628 (0.284) 86.43% 48.57% 26.43% 4.29%
11 Sethares, W. 0.597 (0.252) 90.71% 37.86% 30.71% 0.71% 12 Brossier, P. 0.583 (0.333) 80.71% 51.43% 28.57% 2.14% 13 Tzanetakis, G. 0.538 (0.359) 71.43% 50.71% 28.57% 3.57%
Extraction du rythme
�Le rythme: un indice intéressant pour la classification des styles musicaux
62 Gaël RICHARD Indexation Audio
Histogramme de la position des attaques sur un sign al de musique techno (Laroche2001)
Extraction du rythme: un indice intéressant
� Recherche de musique par similarité (ou classificat ion par genre) genre classification)
� Recherche de contenus audio adaptés à la vidéo
63 Gaël RICHARD Indexation Audio
� ReferenceO. Gillet and G. Richard, « On the Correlation of Au tomatic Audio and Visual Segmentations
of Music Videos » I EEE Trans. on CSVT, 2007
Demo
Quelques dimensions du signal musical…
Hauteurs, Harmonie,.. Tempo, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
� Une définition possible: « l’attribut de la sensation auditive qui permet de différencier 2 sons de même hauteur et de même intensité »
� Lié à l’identification de sources sonores
Qu‘est-ce que le “Timbre“
� Examples de sons avec la même hauteur et le même niveau sonore (en terme d‘énergie globale) mais avec des timbres différents:
� Quelques thèses récentes sur la reconnaissance des instruments de musique: [Essid06], [Kitahara-07], [Eronen-09]
� Fait référence au timbre global (the „global sound“) d‘unepièce de musique [Alluri-10]
� Principalement porté par l‘instrumentation� Example
� “Bohemian rhapsody” par Queen
Le Timbre „polyphonique“
� “Bohemian rhapsody” par Queen� “Bohemian rhapsody” par le London Symphony
Orchestra
� Retrouver automatiquement le timbre est une tâcheproche de celle pour retrouver le genre musical [Scaringella-06] ou les tags musicaux [Scaringella-06] and music tagging [Turnbull-08]
� Le timbre est un concpet multidimensionel � De nombreux paramètres (spectraux et temporels) sont
nécessaires pour le décrire � Schouten [1968] avait listé 5 paramètres majeurs:
1. Position sur une échelle tonal vs bruité
Différentes facettes du timbre
1. Position sur une échelle tonal vs bruité 2. Enveloppe spectrale 3. Enveloppe temporelle 4. Changement dynamique de l’enveloppe spectrale et
du pitch5. Différence entre l’attaque et la partie tenue
Dimensions perceptuelles du timbre
� Quelques paramètres acoustiques importants ( Krumhansl-89, McAdams-95, Peeters2004)
• Le Centre de Gravité Spectral (CGS)
• CGS élevé: son brillant
69 Gaël RICHARD Indexation Audio
• CGS élevé: son brillant• CGS faible: son chaud, rond
• Le flux spectral (« variation temporelle du contenu spectral »)
• Quelques paramètres acoustiques importants (suite.. )
� Temps d’attaque: “Log attack time”: log(tmax–tthresh)� L’irrégularité spectrale (différence moyenne entre les amplitudes
de partiels adjacents)
Dimensions perceptuelles du timbre
� A propos de la perception du timbre polyphonique� Peu d’études [Cogan-84, Kendall-91, Alluri-10]� Reliée aux modulations spectro-temporelles [Alluri-10]
Le timbre des instruments de musique
� « Espace » de timbre
71 Gaël RICHARD Indexation Audio
Le timbre des instruments de musique
� Espace 3D (Krumhansl, 1989, McAdams, 1992 )
� BSN = basson� CAN = cor anglais� CNT = clarinet� GTR = guitar� HRN = cor
72 Gaël RICHARD Indexation Audio
� HRN = cor� HRP = harpe� TPT = trompette� PNO = piano� VBS = vibraphone
� Illustration du timbre (représenté ici comme le niveau d’énergie dans les bandes critiques en fonction du temps)
� Flute (Gauche) et violon (droite)
Variations temporelles de l‘enveloppeM
agni
tude
(dB
)
Time (s)Frequency (CB)(CB = critical band)
� D’autres exemples : vibraphone (gauche) et piano (droite)� Cela couvre les critères 2 (spectral envelope), 3 (time envelope),
en partie part of 4 (fluctuations) et une grande partie de 5 (onset vs. steady) dans la liste de Schouten.
Variations temporelles de l‘enveloppeM
agni
tude
(dB
)M
agni
tude
(dB
)
Frequency (CB)(CB = critical band)
Time (s)
Comment reconnaître automatiquement le timbre ?
� Utiliser un système de classification� Objectif de la classification:
• Permettre de retrouver la classe (i.e l’instrument) à partir des paramètres extraits du signal
Preprocessing
75 Gaël RICHARD Indexation Audio
d’après G. Richard, Audio Indexing in "Encyclopedia of Data Warehousing and Mining-2nd Edition"
Principe des systèmes de classification
� Définition du problème• Objets décrits par un vecteur de paramètres x de et par une
classe y dans [1,C].• Ensemble d’apprentissage (exemples),
� Apprentissage• Associe à un ensemble d’apprentissage une fonction de
76 Gaël RICHARD Indexation Audio
• Associe à un ensemble d’apprentissage une fonction de décision
- Couvrant les exemples, ie - Généralisant, si x est associé au même
phénomène que xi .
• La fonction de décision f va permettre de classer de nouveaux objets qui ne figurent pas parmi les exemples.
Exemple d’algorithme de classification Algorithme des k-plus proches voisins
� Choix d’une distance dans l’espace de description• Ex: une distance euclidienne
� Choix du nombre de voisins K à considérer
77 Gaël RICHARD Indexation Audio
� Choix du nombre de voisins K à considérer
� Algorithme: Soit xk le vecteur à classer, X l’ensemble des vecteurs de la base d’apprentissage:
• Chercher p1 .. pk les K plus proches voisins de xk
• La classe reconnue est donnée par:
Classifieurs: Décision bayésienne
� Idée générale• On aimerait pouvoir calculer P(y = c|x), c’est à dire la probabilité que
l’objet à classifier appartienne à une classe donnée c, connaissant son vecteur de paramètres x.
• Il serait alors possible d’effectuer une décision avec la règle suivante : on associe la classe la plus probable, conditionnellement aux paramètres observés :
79 Gaël RICHARD Indexation Audio
paramètres observés :
• Question: Comment calculer P(y = c|x) ?
Classifieurs: décision bayésiennes
� Règle de Bayes
� Simplifications• Comme on veut maximiser P(y=c|x), on peut ignorer p(x).• On suppose les classes équiprobables:
- P(y=c) = constante
80 Gaël RICHARD Indexation Audio
• Le problème se résume donc à calculer p(x|y=c), c’est à dire à estimer la densité de probabilité du vecteur de paramètres pour chacune des classes
Classifieurs: approche paramétrique
� Approche paramétrique:• On suppose que p(x|y = c) suit une loi connue, dont on va déterminer
les paramètres.
� Loi Gaussienne
81 Gaël RICHARD Indexation Audio
Approche par Mélanges de Gaussiennes (Voir Cours O. Cappé http://tsi.enst.fr/~ocappe/em_t ap.pdf)
� Modèle de mélange� Exemple à 2 dimensions avec 1, 2 puis 3 gaussiennes
5000
6000
5000
6000
5000
6000
5000
6000
82 Gaël RICHARD Indexation Audio
-4 -2 0 2 4 6 8 10 120
1000
2000
3000
4000
value
likel
ihoo
d
-4 -2 0 2 4 6 8 10 120
1000
2000
3000
4000
value
likel
ihoo
d
-5 0 5 10 150
1000
2000
3000
4000
value
likel
ihoo
d
-4 -2 0 2 4 6 8 10 120
1000
2000
3000
4000
value
likel
ihoo
d
Approche par Mélanges de Gaussiennes (GMM)
� Exemple de modèles à 2 composantes
83 Gaël RICHARD Indexation Audio
Approche par Mélanges de Gaussiennes (GMM)
� Exemple de modèles à 2 composantes
84 Gaël RICHARD Indexation Audio
Exemple de résultats
� Bases de solos instrumentaux• 10 instruments, différentes sources et pistes• Fréquence d’échantillonnage de 32 kHz
� Paramètres• Nombre de Gaussiennes entre 8 et 256 pour chaque classe • Fenêtre d’analyse : 32 ms ou 960 ms avec 50% overlap• À partir de 160 features , sélection d’environ 19 features par classe
86 Gaël RICHARD Indexation Audio
• À partir de 160 features , sélection d’environ 19 features par classe• Décision toutes les 30 fenêtres (≈ 0.5 s)
� Résultats:• Taux de reconnaissance de 51% (hautbois) à 89% (piano)
Systèmes de classification
� Remarque: Une même approche peut être utilisée pour plusieurs autres problèmes …
• Reconnaissance automatique du genre musical.• Reconnaissance des instruments utilisés dans un morceau.• Classification d’échantillons sonores.• Etiquetage d’une bande son (dialogues, scènes d’action,
87 Gaël RICHARD Indexation Audio
• Etiquetage d’une bande son (dialogues, scènes d’action, musique, effets spéciaux).
• Organisation d’une collection musicale selon les habitudes d’écoute.
• Détection de ”hits” potentiels.
Quelques dimensions du signal musical…
Hauteurs, Harmonie,.. Tempo, beat, rythme,…
Timbre, instruments,… Polyphonie, mélodie, ….
Comment analyser des signaux polyphoniques ?
� Traiter le signal globalement • Ex: reconnaitre le timbre “violon + violoncelle”
� Exploiter des principes de séparation de sources pl us ou moins sophistiquésou moins sophistiqués• Ex: le banc de filtres utilisé en détection de tempo
Traiter le signal globalement …
� Un exemple avec la reconnaissance d’accords• Reconnaissance des accords
- Utilisation de templates (Exemples de chromagrams théoriques)
Do Majeur (1 harmonique) Do Majeur (6 harmoniques)
90 Gaël RICHARD Indexation Audio
Do Majeur (1 harmonique) Do Majeur (6 harmoniques)
Traiter le signal globalement …
Preprocessing
� Un exemple avec la reconnaissance d’instruments
91 Gaël RICHARD Indexation Audio
� Reconnaître globalement• Utiliser des classes mixtes (par exemple classe « violon+violoncelle »,…)• Pour plus d’instruments, on peut suivre une approche hiérarchique…..• Mais aussi apprendre automatiquement les classes intermédiaires…
Traiter le signal globalement …
� Exemples de classes pour quartet de Jazz• Bs= Basse ; Dr = Drums ; Pn = Piano ; Eg= Electric Guitar; Tr =
Trompette; V= Voix ; ….
92 Gaël RICHARD Indexation Audio
S. Essid, G. Richard, B. David. Instrument recognition in polyphonic music based on automatic taxonomies. IEEE Trans. on Audio, Speech, and Language Proc. 14 (2006), no. 1
Exploiter des principes de séparation de sources …
� Un exemple avec la transcription polyphonique…
• Reconnaître la note la plus forte …• La soustraire de l’accord• Reconnaître la note suivante• La soustraire de l’accord
93 Gaël RICHARD Indexation Audio
• La soustraire de l’accord• Etc… tant qu’il y a des notes dans l’accord
transcription polyphonique…
Détecter la note prépondérante (en rouge)Accord de deux notes de synthèse Do – Fa#
Soustraire la note détectée Détection la note suivante….
94 Gaël RICHARD Indexation Audio
Soustraire la note détectée Détection la note suivante….
Il n’y a plus de plus de notes…l’accord do Fa# a été reconnu
Exploiter des principes de séparation de sources …
� Utilisation de méthodes de décomposition parcimonie use (ou séparation de sources)
• Décomposition atomique des signaux polyphoniques
• On représente le signal comme une combinaison linéaire d’atomes
95 Gaël RICHARD Indexation Audio
• On représente le signal comme une combinaison linéaire d’atomes pris dans un dictionnaire fixe:
Exploiter des principes de séparation de sources …
� La décomposition atomique est obtenue par exemple par “matching pursuit” :
• L’atome le plus proéminent (i.e. le plus corrélé avec le signal) est extrait et soustrait du signal
96 Gaël RICHARD Indexation Audio
extrait et soustrait du signal original.
• Itérer la procédure tant qu’un nombre prédéfini d’atomes n’a pas été extrait (ou qu’un rapport signal à bruit prédéfini a été atteint)
Figure d’après L. Daudet: Audio Sparse Decompositions in Parallel, IEEE Signal Processing Magazine, 2010
Découvrir l’information tonale / timbrale
• Utiliser des atomes informés: e.g. caractéristiques d’une hauteur tonale et d’un instrument
• Introduction de contraintes de continuité pour construire des “molécules” (note jouée par un instrument )
97 Gaël RICHARD Indexation Audio
Demo from P. Leveau
Testflcl.mov
P. Leveau, E. Vincent, G. Richard and L. Daudet, « Instrument-Specific Harmonic Atoms for Mid-Level Musical Audio Representation » IEEE Trans. on ASLP, Volume 16, N°1 Jan. 2008 Page(s):116 - 128
� Utilisation de méthodes de décomposition non supervisées (par exemple par factorisation en matrices non-négatives : NMF)
� Principe de la NMF :
Exploiter des principes de séparation de sources …
98 Gaël RICHARD Indexation Audio
Image d’après R. Hennequin
Quelques exemples de séparation de voix musicales….
� Extraction de la ligne de basse…..
1400
1600
1800
2000
−20
−10
0
1400
1600
1800
2000
−20
−10
0
99 Gaël RICHARD Indexation Audio
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
200
400
600
800
1000
1200
level/dB−60
−50
−40
−30
−20
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
200
400
600
800
1000
1200
level/dB−60
−50
−40
−30
−20
M. Ryynanen and A. Klapuri, “Automatic bass line transcription from streaming polyphonic audio,” in IEEE InternationalConference on Acoustics, Speech and Signal Processing (ICASSP), Hawaii, USA, 2007.
Quelques exemples de séparation de voix musicales….
� Extraction de la mélodie principale (trompette)…..
4000
4500
5000
5500
−20
−10
4000
4500
5000
5500
−20
−10
original trompetteAccomp.
100 Gaël RICHARD Indexation Audio
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
500
1000
1500
2000
2500
3000
3500
level/dB−60
−50
−40
−30
−20
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
500
1000
1500
2000
2500
3000
3500
level/dB−60
−50
−40
−30
−20
J-L Durrieu, G. Richard, B. David, C. Févotte, Source/Filter Model for Unsupervised Main Melody Extraction From Polyphonic Audio Signals, IEEE Transactions on ASLP, March 2010.
Quelques exemples de séparation de voix musicales….
� Extraction de la piste de batterie…..
4000
4500
5000
5500
−20
−10
0
4000
4500
5000
5500
−20
−10
101 Gaël RICHARD Indexation Audio
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
500
1000
1500
2000
2500
3000
3500
level/dB−60
−50
−40
−30
−20
Time (s)
Fre
quen
cy (
Hz)
0 1 2 3 4 5 60
500
1000
1500
2000
2500
3000
3500
level/dB−60
−50
−40
−30
−20
O. Gillet, G. Richard. Transcription and separation of drum signals from polyphonic music. in IEEE Trans. on Audio, Speech and Language Proc. , Mars 2008
Quelques References…� Estimation du rythme/Tempo
• M. Alonso, G. Richard, B. David, “Accurate tempo estimation based on harmonic+noise decomposition”, EURASIP Journal on Advances in Signal Processing, vol. 2007, Article ID 82795, 14 pages, 2007.
• Scheirer E., 1998, "Tempo and Beat Analysis of Acoustic Musical Signals", Journal of the Acoustical Society of America (1998), Vol. 103, No. 1, pp. 588-601. 50
• Laroche, 2001] J. Laroche. Estimating Tempo, Swing, and Beat Locations in Audio Recordings. Dans Proc. of WASPAA'01, New York, NY, USA, octobre 2001
� Statistiques, apprentissage
• R. Duda, P. Hart and D. Stork, Pattern Classification, Wiley-Interscience, 2001• B. Schölkopf and A. Smola, Learning with kernels. The MIT Press, Cambridge, MA, 2002• L. Rabiner, Fundamentals of Speech Processing, Prentice Hall Signal Processing Series, 1993• T. Hastie and R. Tibshirani Classification by pairwise coupling, in Advances in Neural Information Processing Systems, vol 10, The MIT Press,
1998.
102 Gaël RICHARD Indexation Audio
1998.
� Reconnaissance des instruments de musique
• S. Essid, G. Richard, B. David. Instrument recognition in polyphonic music based on automatic taxonomies. IEEE Trans. on Audio, Speech, and Language Proc. 14 (2006), no. 1
• Eronen, « comparison of features for musical instrument recognition », Proc of IEEE-WASPAA’2001.• Eronen-09]A. Eronen, “Signal processing method for audio classification and music content analysis,” Ph.D. dissertation, Tampere University of
Technology, Finland, June 2009.• S. Essid, G. Richard, B. David. Musical Instrument recognition by pairwise classification strategies. IEEE Trans. on Audio, Speech and
Language Proc. 14 (2006), no. 4• O. Gillet et G. Richard , « Extraction and Remixing of Drum tracks from polyphonic music signals », IEEE-WASPAA’05, New Paltz, NY, 2005• O. Gillet et G. Richard , « Drum loops retrieval from spoken queries », Journal of Intelligent Information Systems, 24:2/3, pp 159-177, Springer
Science, 2005• O. Gillet, G. Richard. Transcription and separation of drum signals from polyphonic music. accepted in IEEE Trans. on Audio, Speech and
Language Proc. (2008)• [Barbedo-11] J. Barbedo and G. Tzanetakis, "Musical instrument classification using individual partials," IEEE Trans. Audio, Speech and
language Processing, 19(1), 2011.• [Leveau-08]: P. Leveau, E. Vincent, G. Richard, and L. Daudet, “Instrument-specific harmonic atoms for mid-level music representation,” IEEE
Trans. Audio, Speech and Language Processing, vol. 16, no. 1, pp. 116–128, 2008.• [Kitahara-07] T. Kitahara, “Computational musical instrument recognition and its application to content-based music information retrieval,” Ph.D.
dissertation,
Quelques References� Indexation audio, paramètres
• A. Klapuri A. M. Davy, Methods for Music Transcription M. Springer New York 2006• G. Peeters, “Automatic classification of large musical instrument databases usign hierarchical classifiers with inertia ratio maximization, in 115th
AES convention, New York, USA, Oct. 2003.• G. Peeters. A large set of audio features for sound description (similarity and classification) in the cuidado project. Technical report, IRCAM
(2004)
� Estimation des accords, Alignement audio/midi, chro mas, séparation de sources
• M. A. Bartsch and G. H. Wakefield, "Audio thumbnailing of popular music using chroma-based representations," IEEE Transactions on Multimedia,2005
• L. Oudre. Template-based chord recognition from audio signals. PhD thesis, TELECOM ParisTech, 2010. • M. Ryyn¨anen and A. Klapuri, “Automatic bass line transcription from streaming polyphonic audio,” in IEEE International• Conference on Acoustics, Speech and Signal Processing (ICASSP), Hawaii, USA, 2007.
103 Gaël RICHARD Indexation Audio
� Estimation multipitch
• A. Klapuri, “Multiple fundamental frequency estimation based on harmonicity and spectral smoothness,” IEEE Transactions on Audio, Speech, and Language Processing, vol. 11, no. 6, pp. 804–816, 2003.
• V. Emiya, PhD thesis. Telecom ParisTech.
� Perception• [Alluri-10] V. Alluri and P. Toiviainen, “Exploring perceptual and acoustical correlates of polyphonic timbre,” Music Perception, vol. 27, no. 3, pp. 223–241, 2010.
• [Kendall-91] R. A. Kendall and E. C. Carterette, “Perceptual scaling of simultaneous wind instrument timbres,” Music Perception, vol. 8, no. 4, pp. 369–404, 1991.
• [McAdams-95] McAdams, S., Winsberg, S., Donnadieu, S., DeSoete, G., and Krimphoff, J. “Perceptual Scaling of synthesized musical timbres: Common dimensions, specificities and latent subject classes,” Psychological Research, 1995.
• Schouten’s [1968] J. F. Schouten, “The perception of timbre,” in 6th International Congress on Acoustics, Tokyo, Japan, 1968, pp. GP–6–2.
Une autre application: l’audiofingerprint
104 Gaël RICHARD Indexation Audio
Une autre application: l’audiofingerprint
Audio Identification ou AudioID
� Audio ID = retrouver des métadonnées haut niveau à partir d’un son/morceau
Audio identification
Information sur l’extrait (e.g. Pour la musique: titre, artiste,
…)
� Challenges:• Efficacité en conditions adverses (distorsion, bruits,..)• Passage à l’échelle (bases > 100.000 titres)• Rapidité / Temps réel
� Example de produit: Shazam
…)
Audio fingerprinting
� Audio Fingerprinting: une approche pour l’Audio-ID� Le principe :
• Pour chaque référence, une empreinte audio unique. • Identification d’un son: calculer son empreinte et comparaison
avec une base d’empreintes de références.
Identify
Fingerprint ProcessingExcerpt ID
result
Information about the excerpt (e.g. for a music: title, album,
artist, …)
Database CreationFingerprint
Data BaseData BaseFingerprints of the references
DB query
Reference Reference audio tracks
DB answer
Schéma d’après Sébastien Fenêt
Modèle de signal utilisé
� ‘Binarisation’ du spectrogramme (2D -peak-picking):
2D
picking
2D peak
picking
Stratégie de recherche efficace
� Extrait inconnu à identifier dans une base de 100.000
� Stratégies possibles• Comparaison directe avec chaque référence de la
base (avec tous les décalages temporels possibles)• Utiliser la localisation des points blancs comme index • Utiliser les paires de points comme index
Trouver la meilleure référence
� Pour chaque paire, une requête à la base: “quelle référence possède cette paire, et à quel instant cette paire apparaît”
� Si la paire apparaît à T1 dans l’extrait inconnu et à T2 dans la référence, on définit le décalage temporel :
∆T(pair)=T2 -T1temporel :
∆T(pair)=T2 -T1
� Algorithme pour trouver la meilleure référence:For each pair:
Get the references having the pair;For each reference found:
Store the time-shift;
Look for the reference with the most frequent time-shift;
Rejet d’un extrait hors-base:Fusion de décisions locales
� L’extrait inconnu est divisé en sous-segments � Pour chaque segment, l’algorithme retourne un meill eur candidat
UNKNOWN EXCERPT
� Si une référence apparaît de manière prépondérante (ou un nombre de fois supérieure à un seuil), l’extrait es t identifié
� Sinon, la requête est jugée hors-base � Taux de bonne détection proche de 90% (pour base de 7500
references)
Best match #1
Best match #2
Best match #3
Best match #4
Best match #5
Best match #6