music structure analysis - · • sequenz wird mit sich selbst verglichen mittels...
TRANSCRIPT
![Page 1: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/1.jpg)
Music Structure Analysis
Proseminar Computer und Musik WS 2017/2018
Imke Haverkämper
![Page 2: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/2.jpg)
Agenda
1. Begriffsklärung und Vorgehensweise
2. Segmentierung
3. Self-Similarity Matrizen
4. Fitness Measure
5. Audio Thumbnailing
2
![Page 3: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/3.jpg)
Was ist überhaupt diese Music Structure?
• Musik hierarchisch aufgebaut
• niedrigstes Level: einzelne Note
• nächst höheres Level: Motive, Sätze, Teilstücke
• höchstes Level (Music Structure) : Kombinationen von Motiven und
Sätzen
• je nach Musikrichtung variiert Struktur
• z.B. Popmusik: Intro, Refrain, Vers, evtl. Outro
3
![Page 4: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/4.jpg)
Wie wollen wir sie Analysieren?
• Erforschen, welcher Abschnitt einer Aufnahme welcher Strukturellen
Einheit entspricht
• Verschiedene Methoden: repetition-based, homogeneity-based und
novelty-based
• Folgend Fokus auf repetition-based und homogeneity-based
4
![Page 5: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/5.jpg)
Kurze Begriffsklärung
• Repräsentation ist eine Audioaufnahme
• Part ist ein Teil eines Stücks im abstrakten Sinne
• Segment ist zeitlicher Abschnitt einer Aufnahme
• Sequenz kann sowohl Part, als auch Segment sein
• Sequenzen meist mit Buchstaben und Indizes bezeichnet
5
![Page 6: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/6.jpg)
Beispiel:
6
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S.168
![Page 7: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/7.jpg)
Segmentierung
• Kann auf jedem Level der Struktur stattfinden
• Wir Segmentieren auf gröbstem Level
• Notwendig, um Relationen zwischen den einzelnen Parts zu erkennen
• Wonach Segmentiert wird muss auf Grundlage des Stückes und der
Repräsentation entschieden werden
• Wie bereits erwähnt im folgenden Fokus auf repetition-based und
homogeneity-based
7
![Page 8: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/8.jpg)
Was ist Self-Similarity?
• Zuerst muss eine Aufnahme in eine verwendbare Feature
Repräsentation umgewandelt werden
• Features können Instrumentation, Timbre, Tempo, Rhythmus, etc. sein
• Wir werden im folgenden mit Chroma Features arbeiten
• Hierbei wird jedes Element einer Sequenz mit jedem anderen darin
liegenden Verglichen und in Relation gesetzt
• Damit beschreibt der höchste Self-Similarity-Wert(=1) die Beziehung
einer Sequenz zu sich selbst
• Damit erstellt man Self-Similarity Matrizen (SSM)
8
![Page 9: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/9.jpg)
Chroma Feature
• Mensch erkennt Töne als
„gleichfarbig“, wenn diese
genau eine Oktave
auseinander liegen
• Wir erhalten einen
Chroma-Wert für jede
Tonhöhe
• Die Tonhöhe wird hier
anhand der
Farbintensität in Relation
zur Y-Achse signalisiert
9
Bildquelle:
https://en.wikipedia.org/wiki/Chroma_feature
![Page 10: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/10.jpg)
Self-Similarity Matrizen (SSM)
• Sequenz wird mit sich selbst verglichen mittels Similarity-Measure
• Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity-
Wert (zwischen 0 und 1) bezüglich einer beliebigen Eigenschaft
• Pfad- und Blockstrukturen werden erkennbar
• Pfade stehen für Wiederholungen (Problem: selten exakt)
• Blöcke stehen für hohe Homogenität in diesem Bereich
10
![Page 11: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/11.jpg)
Wie sieht eine ideale SSM aus?
11
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S.180
![Page 12: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/12.jpg)
Nochmal zusammengefasst:
• NxN – Matrix
• Segment ist Set α = [s:t] (s= Start, t= Ende)
• Induziertes Segment π1
• π2 entspricht α
• Pfade stehen für Wiederholungen
• Blöcke stehen für Homogenität
• Pfade und Blöcke haben Score, der die Summe ihrer Similarity-Werte
darstellt
12
![Page 13: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/13.jpg)
Welchen Nutzen hat so eine SSM?
• Segmentierungsalgorithmen profitieren von der vorhandenen Pfad-
und Blockstruktur
• Typische Schritte so eines Alorithmus´ sind:
1. Audiosignal in eine Feature Repräsentation umformen
2. SSM berechnen
3. Pfad- und Blockstruktur extrahieren
4. Gruppen ähnlicher Segmente mittels Clustering erstellen
13
![Page 14: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/14.jpg)
In Wirklichkeit sehen sie aber leider meist so aus…
14
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S. 185
![Page 15: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/15.jpg)
Verbesserung mittels passender Feature Repräsentation
• Zwei Parameter:
l = Längenparameter (in Frames)
d = Downsampling-Parameter
• Variieren dieser Parameter glättet die SSM
• Blockstruktur wird hervorgehoben, rücken näher aneinander
• Problem: Pfade und andere kleine, aber wichtige Details können
verschwinden
15
![Page 16: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/16.jpg)
Beispiel:
16
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S. 185
![Page 17: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/17.jpg)
Verbesserung mittels Path Smoothing
• Pfade für Menschen leicht erkennbar
• Automatisiertes Erkennen erschwert (Wiederholungen nur selten
exakt)
• Nutzung von Bildbearbeitungstechniken
• Anwendung eines Averaging-Filters (Low-Pass-Filter) entlang der
Diagonalen
17
![Page 18: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/18.jpg)
Averaging-Filter
• Geglättete SSM :
SL (n,m) :=1
𝐿σ𝑙=0𝐿−1 𝑆(𝑛 + 𝑙,𝑚 + 𝑙) n,m ϵ [1: N-L+1]
• Mittelt die Similarity-Werte von zwei Untersequenzen der Länge L
durch das Strecken der Werte der Ursprünglichen SSM
• Angewandt entlang der Diagonalen werden Pfade hervorgehoben, die
exakt parallel zu ihr verlaufen
• Wiederholungen nur selten exakt (Tempovariation wirkt sich auf
Steigung des Pfads aus), deshalb problematisch
18
![Page 19: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/19.jpg)
Multiple-Filtering-Ansatz
• Averaging-Filter in einer festgelegten Umgebung der Diagonalen
angewandt
• Dazu wird ein Set Θ definiert, das alle Steigungsparameter enthält,
entlang denen geglättet wird
• Jede Richtungsvariation bildet neue SSM
• „ausbluten“ des Pfades nach hinten durch vorwärtsanwenden wird
behoben durch zusätzliches rückwärtsanwenden
• Endgültige SSM entsteht dann zellenweise durch wählen des
Maximums aller Matrizen
• Praktisch sind Tempo unterschiede über 50% selten, guter Richtwert
für die Grenzen des Sets Θ
19
![Page 20: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/20.jpg)
Beispiel:
20
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S. 188
![Page 21: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/21.jpg)
Verbesserung mittels Thresholding
• Reduziert Auswirkungen weniger relevanter Störgeräusche,
schwache, wichtige Informationen gehen verloren
• Hohe Auswirkungen auf Endergebnis der Analyse
• Global Thresholding: alle Werte über einem Schwellenwert bleiben
bei, alle anderen werden auf 0 gesetzt
• Local Thresholding: Wert wird beibehalten wenn er in oberem
Wertebereich der Zeile und Spalte liegt
21
![Page 22: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/22.jpg)
Fitness Measure
• Wird anhand von SSMs berechnet
• Findet Anwendung im Audio-Thumbnailing, dazu später mehr
• Berücksichtigt alle Relationen zwischen einem Segment und seinen
Wiederholungen
• Damit mit Fitness Measure gearbeitet werden kann, muss die SSM
Werte zwischen 0 und 1 enthalten, wobei 1 maximale Ähnlichkeit
bedeutet
• Gibt an wie gut ein Segment ein Stück repräsentiert und welche
Zeiteinheit von Wiederholungen dieses Segments abgedeckt wird
22
![Page 23: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/23.jpg)
Einschub: Pfadfamilien
• P = Set von Relationen(in diesem Fall Wdh.) von Segment α zu anderen
Segmenten, Segmente müssen paarweise disjunkt sein
• Auch Pfadfamilie hat einen Score
• Dann existiert auch eine optimale Pfadfamilie (P*) mit maximalem Score,
wie man diese berechnet sparen wir uns aus Zeitgründen
• Coverage: σ𝑘=1𝐾 |α𝑘| gibt an, wie groß die Zeiteinheit ist, die von der
Pfadfamilie abgedeckt wird
23
![Page 24: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/24.jpg)
Beispiel:
24
Bildquelle: Meinard Müller, Fundamentals of Music Processing, S. 196
![Page 25: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/25.jpg)
Fitness Measure
• Kandidat wäre der Score der optimalen Pfadfamilie, erfüllt allerdings
nicht alle gewünschten Eigenschaften
• Score ist abhängig von der Länge der Pfade und enthält überflüssige
Selbsterklärungen
• Also müssen wir den Score normalisieren wie folgt: σ := σ 𝑃∗ −|α|
σ𝑘=1𝐾 𝐿
𝑘
• Kombinieren von Score und Coverage, um repräsentatives Ergebnis
zu erhalten, hier kann man zum Beispiel das Harmonische Mittel
wählen, das bei gleich hohem Score die kürzere Sequenz leicht
präferiert
25
![Page 26: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/26.jpg)
Thumbnailing
• genutzt, um in großen Mengen von Musikstücken schneller
auswählen zu können
• Nutzt Fitness, d.h. Segment mit höchster Fitness wird als Thumbnail
gewählt
• evtl. auch hier sinnvoll, eine Mindestlänge zu wählen
25
![Page 27: Music Structure Analysis - · • Sequenz wird mit sich selbst verglichen mittels Similarity-Measure • Chroma-Wert signalisiert hier nicht Tonhöhe, sondern Similarity- Wert (zwischen](https://reader030.vdocuments.pub/reader030/viewer/2022040702/5d656f5888c99388078b6dfe/html5/thumbnails/27.jpg)
Vielen Dank für die Aufmerksamkeit!