Beat- und Metrumsextraktionmit gaußifizierten Einsatzzeiten
Klaus FrielerUniversität Hamburg
Musikwissenschaftliches Institut
Seminar 56.803, SoSe 08
Klaus Frieler: Beat- und Metrumsinduktion
Motivation
• Ziel: Extrahiere Zeitbasis, Beat, Metrum und Phasenlage aus einer Liste von (nicht-quantisierten) Einsatzzeiten.
• Methode: Auto- und Kreuzkorrelation von gaussifizierten Einsatzpunkten, zusammen mit Heuristiken, die auf musikpsychologischer Rhythmusforschung beruhen.
Klaus Frieler: Beat- und Metrumsinduktion
Überblick über Algorithmus
1. Berechne Gaußifikation mit Akzentregeln aus einer Liste von Einsatzpunkten.
2. Berechne Autokorrelationsfunktion (AKF).
3. Bestimme Beat und Zeitbasis aus den Maxima der gewichteten AKF.
4. Bestimme Gewichte für mögliche Metren und Phase durch Mustervergleich mit Hilfe von Kreuzkorrelation (KKF).
Klaus Frieler: Beat- und Metrumsinduktion
Gaußifikation
• Zu einer Liste von Onsets {ti} ist eine Gaußifikation die Überlagerung von Gaußfunktionen mit Mittelwerten ti
• im Bereich 25-50 ms (Zeitliche Ordnungsschwelle).• Die Koeffizienten i werden mit einfachen (zeitlichen)
Akzentregeln bestimmt.
N
i
tt
iT
i
etG1
2
)(
2
2
2
2
1)(
Klaus Frieler: Beat- und Metrumsinduktion
Zeitliche Akzentregeln
Seien ti = ti-ti-1, die IOI‘s und amin, amaj > 0 zwei Akzentwerte.
• Initialisierung:i = 1, 1 = amin, N=amin
• Regel 1: Falls (ti+1-2)/ti>1 dann i = amin
• Regel 2: Falls (t+1+)/ti >2 dann i = amaj
Klaus Frieler: Beat- und Metrumsinduktion
Beispiel einer Gaussifikation
„Plauderei an der Linde“ (120 bpm , zeitlichem Rauschen = 50ms)
Klaus Frieler: Beat- und Metrumsinduktion
Autokorrelation
• Autokorrelation ist Standardmethode um Periodizitäten in einem Signal zu entdecken.
• Idee: Verschiebe das Signal jeweils um eine bestimmte Zeit und vergleiche das Signal mit sich selbst (Multiplikation und Integration).
• Existieren Perioden in dem Signal, fallen bei der Periodenverschiebung Maxima auf Maxima => Höhere Korrelation.
Klaus Frieler: Beat- und Metrumsinduktion
Beispiel einer Autokorrelation
• Korrelationen von Gaussifikationen können geschlossen integriert werden.
• AKF von „Plauderei an der Linde“:
Klaus Frieler: Beat- und Metrumsinduktion
Bestimmung von Beat und Zeitbasis
• Beatlevel ist am stabilsten -> Finde Beat zuerst.
• Seit w(t)=exp(-ld2(t/ts)) eine Tempopräferenzfunktion. ts ~ 500ms (spontanes Tempo.)
• Die Beatzeit TB ist das argmax der mit w gewichteten AKF. (argmax AKF(t)*w(t))
• Die Zeitbasis T ist das argmax der einfachen (binären/ternären) Unterteilungen des Beats.
Klaus Frieler: Beat- und Metrumsinduktion
Tempopräferenz
• Tempopräferenzfunktion w(t)=exp(-ld2(t/ts)) (Nach
Parncutt, 1984)
Klaus Frieler: Beat- und Metrumsinduktion
Bestimmung von Metrum und Phase
• Berechne Kreuzkorrelation mit Gaussifikationen von metrischen Schablonen für den bestimmten Beat , z.B. (2,0,0) für ¾, oder (2,0,1,0) für 4/4.
• Die Maximalpunkte der KKF sind Kandidaten für die Phase.
• Der entsprechende Wert der KKF ist der Passwert (match) dieser Phase.
• Das totale Gewicht für ein (Metrum, Phasen)-Paar ist das Produkt des Phasen-Passwerts mit dem AKF-Wert der Periode des Metrums.
Klaus Frieler: Beat- und Metrumsinduktion
Beispiel für Kreuzkorrelation
KKF für 2/4 Bester 2/4-Takt
(„Plauderei an der Linde“)
Klaus Frieler: Beat- und Metrumsinduktion
Beispiel „Plauderei an der Linde“
• Beat: 516 ms• Zeitbasis: 246 ms
Metrum Phase Passwert Gewicht
2/4 545ms 1.40 1.55
3/4 540ms 0.88 0.59
4/4 545ms 1.05 0.80
Klaus Frieler: Beat- und Metrumsinduktion
Evaluation
• Das Modell wurde mit 586 Luxemburgischen Volkslieder und ver-schiedenen Akzentwerten getestet.
• Alle Melodien hatten Tempo 120 bpm und das Metrum (2,3,4 oder 6) war bekannt. 80% der Stücke hatten einen Auftakt (1-3 Achtel)
• Beaterkennungsfehler war ~12% (auschließlich 2:3 und 2:1 Verwechs-lungen)
Klaus Frieler: Beat- und Metrumsinduktion
Evaluation
• Fehlerfunktionen: 1.cM1 = #Richtige Periode bis auf Vielfache/N
2.cM2 = # Richtige Periode /N
3.cM3 = # Richtige absolute Taktlänge/N
4.c = #Richtige absolute Phase/N
Klaus Frieler: Beat- und Metrumsinduktion
Evaluation: Fehlerfunktionen
(amin, amaj) cM1 cM2 cM3 C
(1,1) 78% 41% 48% 32%
(1,2) 82% 46% 55% 62%
(2,1) 80% 43% 50% 27%
(2,2) 81% 45% 55% 50%
(2,3) 80% 47% 58% 64%
(2,4) 77% 44% 57% 64%
Zufall 25% 25%
Klaus Frieler: Beat- und Metrumsinduktion
Zusammenfassung
• Vielversprechende erste Resultate• Beaterkennung ist recht stabil und verlässlich.• Oktav- und Quintfehler bei der Metrumserkennung
(d.h. 2/4 - 4/4, 6/8 – 3/4) sind das häufigste Problem. • Die Benutzung von Akzentregeln verbessert die
Phasenfindung signifikant• Vorteil: Modell kann mit Audio- und symbolischen
Daten arbeiten.• Nachteil: KKF ist rechnerisch recht aufwändig• Kulturelle Abhängigkeit der Akzentmuster