44
Meinard Müller, Christof Weiß Tonal Analysis International Audio Laboratories Erlangen [email protected], [email protected] Tutorial T3 A Basic Introduction to Audio-Related Music Information Retrieval

2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Meinard Müller, Christof Weiß

Tonal Analysis

International Audio Laboratories [email protected], [email protected]

Tutorial T3A Basic Introduction to Audio-Related Music Information Retrieval

Page 2: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Book: Fundamentals of Music Processing

Meinard MüllerFundamentals of Music ProcessingAudio, Analysis, Algorithms, Applications483 p., 249 illus., hardcoverISBN: 978-3-319-21944-8Springer, 2015

Accompanying website: www.music-processing.de

Page 3: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Book: Fundamentals of Music Processing

Meinard MüllerFundamentals of Music ProcessingAudio, Analysis, Algorithms, Applications483 p., 249 illus., hardcoverISBN: 978-3-319-21944-8Springer, 2015

Accompanying website: www.music-processing.de

Page 4: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Dissertation: Tonality-Based Style Analysis

Christof WeißComputational Methods for Tonality-Based Style Analysis of Classical Music Audio RecordingsPhD thesis, Technical University of Ilmenau, 2017

Chapter 5: Analysis Methods for Key and Scale StructuresChapter 6: Design of Tonal Features

Page 5: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Recall: Chroma Representations

Salie

nce

/ Lik

elih

ood

L. van Beethoven,Fidelio, Overture,Slovak Philharmonic

Page 6: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Recall: Chroma Representations

Orchestra

Piano

L. van Beethoven,Fidelio, Overture,Slovak Philharmonic

Fidelio, Overture,arr. Alexander ZemlinskyM. Namekawa, D.R. Davies, piano four hands

Page 7: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Recall: Chroma Representations

Orchestra

L. van Beethoven,Fidelio, Overture,Slovak Philharmonic

Gómez, Tonal Description of Polyphonic Audio, PhD thesis, UPF Barcelona 2006

Lee, Automatic Chord Recognition from Audio Using Enhanced Pitch Class Profile, ICMC 2006

Müller / Ewert, Towards Timbre-Invariant Audio Features for Harmony-Based Music, IEEE TASLP 2010

Mauch / Dixon, Approximate Note Transcription for the Improved Identification of Difficult Chords, ISMIR 2010

Page 8: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Tonal Structures

ChordsCM GM7 Am

Global key

Local keyC major G major C major

Global key detection

Chord recognition

Music transcriptionMulti-pitch estimationNote level

Segment level

Chord level

Movement level C major

MelodyMiddle voices

Bass line

Local key detection

Page 9: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition

CHORDINO Vamp Plugin with Sonic Visualizer(Queen Mary University of London)

Page 10: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition

C G

Audiorepresentation

Prefiltering▪ Compression▪ Overtones▪ Smoothing

▪ Smoothing▪ Transition▪ HMM

Chromarepresentation

Patternmatching

Recognitionresult

Postfiltering

Majortriads

Minortriads

Page 11: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Time (seconds)

C G Am F C G F C

Chord Recognition

Scenario

Page 12: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Basics

B

A

G

FE

D

C

G♯/A♭

D♯/E♭

C♯/D♭

A♯/B♭

F♯/G♭

C D ♭ D E ♭ E F G ♭ G A ♭ A B ♭ B

Templates: Major Triads

Page 13: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Basics

B

A

G

FE

D

C

G♯/A♭

D♯/E♭

C♯/D♭

A♯/B♭

F♯/G♭

Cm C♯m Dm E♭m Em Fm F♯m Gm G♯m Am B ♭m Bm

Templates: Minor Triads

Page 14: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chroma vectorfor each audio frame

24 chord templates(12 major, 12 minor)

Compute for each frame thesimilarity of the chroma vector

to the 24 templates

B

A

G

F

E

D

C

G♯

D♯

C♯

A♯

F♯

C C♯ D … Cm C♯m Dm

0 0 0 … 0 0 0 …

0 0 0 … 0 0 0 …

0 0 1 … 0 0 1 …

0 1 0 … 0 1 0 …

1 0 0 … 1 0 0 …

0 0 1 … 0 0 0 …

0 1 0 … 0 0 1 …

1 0 0 … 0 1 0 …

0 0 0 … 1 0 0 …

0 0 1 … 0 0 1 …

0 1 0 … 0 1 0 …

1 0 0 … 1 0 0 …

Chord Recognition: Template Matching

Page 15: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Cho

rdP

itch

clas

s

Chord Recognition: Template Matching

Time (seconds)

Page 16: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Label Assignment

Assign to each frame the chord labelof the template that maximizes the

similarity to the chroma vector

Chroma vectorfor each audio frame

24 chord templates(12 major, 12 minor)

Compute for each frame thesimilarity of the chroma vector

to the 24 templates

B

A

G

F

E

D

C

G♯

D♯

C♯

A♯

F♯

C C♯ D … Cm C♯m Dm

0 0 0 … 0 0 0 …

0 0 0 … 0 0 0 …

0 0 1 … 0 0 1 …

0 1 0 … 0 1 0 …

1 0 0 … 1 0 0 …

0 0 1 … 0 0 0 …

0 1 0 … 0 0 1 …

1 0 0 … 0 1 0 …

0 0 0 … 1 0 0 …

0 0 1 … 0 0 1 …

0 1 0 … 0 1 0 …

1 0 0 … 1 0 0 …

Page 17: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Label Assignment

Cho

rdC

hord

Time (seconds)

Page 18: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Evaluation

Time (seconds)

Cho

rd

C G Am F C G F C

ComputeF-Measure

Page 19: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Evaluation Frame-wise approach: Too many / too rapid changes of output label

Improvement strategies:

Pre-filtering: Average chroma features over several frames (smoothing)

Evaluation on all Beatles songs

0.8

0.75

0.7

0.65

0.6

0.55

0.5

0.45

0.4

0.35

Smoothing length

F-m

easu

re

Binary templates

1 5 9 13 17 21 25

Page 20: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Markov Chains Probabilistic model for sequential data

Markov property: Next state depends only on current state (no “memory”)

Consist of:

Set of states

State transition probabilities

Initial state probabilitiesC

FG

0.8

0.60.7

0.2

0.1

0.3

0.10.1

0.1

Page 21: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Hidden Markov Models States as hidden variables

Consist of:

Set of states (hidden)

State transition probabilities

Initial state probabilities

Observations (visible)

Emission probabilities

Decoding: Viterbi algorithm(based on dynamic programming)

0.7

0.10.3

0.8

C

FG

0.8

0.60.7

0.2

0.1

0.3

0.10.1

0.1

00

Page 22: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

(a) Template Matching (frame-wise)

Chord Recognition: Evaluation Effect of HMM-based chord estimation and smoothing:

C Dm G C

Time (seconds)Time (seconds)

(b) HMM

Page 23: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Chord Recognition: Evaluation Evaluation on all Beatles songs

0.8

0.75

0.7

0.65

0.6

0.55

0.5

0.45

0.4

0.35

Smoothing length

F-m

easu

re

binary

HMM

1 5 9 13 17 21 25

Page 24: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Tonal Structures

ChordsCM GM7 Am

Global key

Local keyC major G major C major

Global key detection

Chord recognition

Music transcriptionMulti-pitch estimationNote level

Segment level

Chord level

Movement level C major

MelodyMiddle voices

Bass line

Local key detection

Page 25: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection

Key as an important musical concept (“Symphony in C major”)

Modulations → Local approach

Diatonic Scales

Simplification of keys (equivalent to number of accidentals)

Perfect-fifth relation

0 diatonic1# diatonic2b diatonic

Circle of fifths →

Page 26: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection Example: J.S. Bach, Choral "Durch Dein Gefängnis" (Johannespassion) Score – Piano reduction

Page 27: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Chroma Features Example: J.S. Bach, Choral "Durch Dein Gefängnis" (Johannespassion) Audio – Chroma features (Scholars Baroque Ensemble, Naxos 1994)

Page 28: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Chroma Smoothing Average pitch classes over a certain time

Chroma smoothing Parameters: blocksize b and hopsize h

bb

bh

h

Page 29: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Chroma Smoothing Choral (Bach)

Page 30: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Chroma Smoothing Choral (Bach) — smoothed with b = 42 seconds and h = 15 seconds

Page 31: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Re-ordering to perfect fifth series

Page 32: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Re-ordering to perfect fifth series

Page 33: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation (7 fifth-related pitch classes)

4#

Page 34: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation (7 fifth-related pitch classes)

5#

Page 35: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation: Multiply chroma values

Page 36: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation: Multiply chroma values

Page 37: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation

Page 38: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation

Page 39: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation: Shift to global key

4 #(E major)

Page 40: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — Diatonic Scale Estimation: Shift to global key

4 #(E major)

Page 41: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Diatonic Scales Choral (Bach) — level 0 ≙ 4#

Weiss / Habryka, Chroma-Based Scale Matchingfor Audio Tonality Analysis, CIM 2014

Page 42: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Examples L. v. Beethoven – Sonata No. 10 op. 14 Nr. 2, 1. Allegro — level 0 ≙ 1#

(Barenboim, EMI 1998)

Page 43: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Local Key Detection: Examples R. Wagner, Die Meistersinger von Nürnberg, Vorspiel — level 0 ≙ no accidentals

(Polish National Radio Symphony Orchestra, J. Wildner, Naxos 1993)

Page 44: 2017 MuellerWeiss ISMIR TonalAnalysis · 2017-11-06 · Recall: Chroma Representations Orchestra L. van Beethoven, Fidelio, Overture, Slovak Philharmonic Gómez, Tonal Description

Further Information

Chord recognition overview and evaluation[Cho/Bello, IEEE TASLP 2014]

Chord recognition with Deep Learning[Sigtia/Boulanger-Lewandowski/Dixon, ISMIR 2015][Korzeniowski/Widmer, ISMIR 2016][McFee/Bello, ISMIR 2017] → Oral Session 6

Harmony analysis for musicology[Sears et al., ISMIR 2017] → Poster Session 1[Zalkow/Weiß/Müller, ISMIR 2017] → Poster Session 3[Bigo et al., ISMIR 2017] → Poster Session 3

CHORDINO, Vamp plugin for Sonic Visualizer[Mauch/Dixon, ISMIR 2010]www.isophonics.org/nnls-chroma