SlideShare a Scribd company logo
1 of 26
Download to read offline
Introduction to Audio Content Analysis
module 9.5: tempo detection
alexander lerch
overview intro oscillator approach filterbank approach template approach challenges eval summary
introduction
overview
corresponding textbook section
section 9.5
lecture content
• introduction to tempo detection and beat tracking
• overview over basic approaches
• typical challenges
learning objectives
• discuss advantages and disadvantages for different approaches to tempo detection
and beat tracking
• summarize the typical challenges of beat tracking systems
module 9.5: tempo detection 1 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
introduction
overview
corresponding textbook section
section 9.5
lecture content
• introduction to tempo detection and beat tracking
• overview over basic approaches
• typical challenges
learning objectives
• discuss advantages and disadvantages for different approaches to tempo detection
and beat tracking
• summarize the typical challenges of beat tracking systems
module 9.5: tempo detection 1 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
problem statement
tempo detection
• detect speed of regular pulse (foot-tapping rate)
beat tracking
• detect the time instances the tempo pulses occur (beat phase)
module 9.5: tempo detection 2 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
introduction
objectives
1 find the tempo from the
novelty function/onsets
2 find the beat locations
systematic problems:
1 distinguish hierarchical
levels
▶ meter
▶ beat
▶ subbeat/tatum
2 detect beats without onsets
3 recognize onsets without
beats
module 9.5: tempo detection 3 / 12
matlab
source:
plotBeatGrid.m
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
typical beat tracking system
Audio/Midi
Signal
Compute
Novelty Function
or
Onset Times
Compute
Confidence
or
Distance
Update
Current State
Tempo, Beat Phase,
Time
Predict
Next Beat Pos
module 9.5: tempo detection 4 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach
Beat tracking with an oscillator1
1 initialize pulse generator (tempo estimate, beat position estimate)
2 predict next beat location with pulse
3 adapt acc. to distance (predicted vs. real onset position)
• beat period
• beat phase
4 predict with adapted settings
5 adapt . . .
1
E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence
(IJCAI), Montreal, Aug. 1995.
module 9.5: tempo detection 5 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach
Beat tracking with an oscillator1
1 initialize pulse generator (tempo estimate, beat position estimate)
2 predict next beat location with pulse
3 adapt acc. to distance (predicted vs. real onset position)
• beat period
• beat phase
4 predict with adapted settings
5 adapt . . .
1
E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence
(IJCAI), Montreal, Aug. 1995.
module 9.5: tempo detection 5 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach
Beat tracking with an oscillator1
1 initialize pulse generator (tempo estimate, beat position estimate)
2 predict next beat location with pulse
3 adapt acc. to distance (predicted vs. real onset position)
• beat period
• beat phase
4 predict with adapted settings
5 adapt . . .
1
E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence
(IJCAI), Montreal, Aug. 1995.
module 9.5: tempo detection 5 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach
Beat tracking with an oscillator1
1 initialize pulse generator (tempo estimate, beat position estimate)
2 predict next beat location with pulse
3 adapt acc. to distance (predicted vs. real onset position)
• beat period
• beat phase
4 predict with adapted settings
5 adapt . . .
1
E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence
(IJCAI), Montreal, Aug. 1995.
module 9.5: tempo detection 5 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach: initialization
How to estimate the initial tempo
module 9.5: tempo detection 6 / 12
matlab
source:
plotBeatHistogram.m
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
oscillator approach: initialization
How to estimate the initial tempo
location of maximum of ACF of novelty function
maximum of IOI histogram
maximum of beat spectrum/histogram
. . .
module 9.5: tempo detection 6 / 12
matlab
source:
plotBeatHistogram.m
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
multi-agent approach
1 run multiple beat trackers with different parameters
• initial tempo
• initial beat phase
• adaptation speed
2 compute reliability/confidence criteria:
• match beat and onset times
• tempo stability
• majority of different agents
• . . .
3 choose most reliable agent (or path between agents)
module 9.5: tempo detection 7 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
multi-agent approach
1 run multiple beat trackers with different parameters
• initial tempo
• initial beat phase
• adaptation speed
2 compute reliability/confidence criteria:
• match beat and onset times
• tempo stability
• majority of different agents
• . . .
3 choose most reliable agent (or path between agents)
module 9.5: tempo detection 7 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
multi-agent approach
1 run multiple beat trackers with different parameters
• initial tempo
• initial beat phase
• adaptation speed
2 compute reliability/confidence criteria:
• match beat and onset times
• tempo stability
• majority of different agents
• . . .
3 choose most reliable agent (or path between agents)
module 9.5: tempo detection 7 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
multi-agent approach
1 run multiple beat trackers with different parameters
• initial tempo
• initial beat phase
• adaptation speed
2 compute reliability/confidence criteria:
• match beat and onset times
• tempo stability
• majority of different agents
• . . .
3 choose most reliable agent (or path between agents)
module 9.5: tempo detection 7 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
multi-agent approach
1 run multiple beat trackers with different parameters
• initial tempo
• initial beat phase
• adaptation speed
2 compute reliability/confidence criteria:
• match beat and onset times
• tempo stability
• majority of different agents
• . . .
3 choose most reliable agent (or path between agents)
module 9.5: tempo detection 7 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
filterbank approach
1 design filterbank (e.g. comb
resonators spaced 1 beat)
2 compute filter output energy
3 pick maximum
plots by Scheirer2
2
E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1,
pp. 588–601, 1998.
module 9.5: tempo detection 8 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
filterbank approach
1 design filterbank (e.g. comb
resonators spaced 1 beat)
2 compute filter output energy
3 pick maximum
plots by Scheirer2
2
E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1,
pp. 588–601, 1998.
module 9.5: tempo detection 8 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
filterbank approach
1 design filterbank (e.g. comb
resonators spaced 1 beat)
2 compute filter output energy
3 pick maximum
plots by Scheirer2
2
E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1,
pp. 588–601, 1998.
module 9.5: tempo detection 8 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
template-based approach
1 define set of template pulses in all tempi
2 compute CCF between novelty function (or its ACF) and all templates
3 choose template with highest correlation as tempo
4 choose lag with highest correlation as beat phase
module 9.5: tempo detection 9 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
typical problems
1 tempo: detection of double/half tempo (triple, . . . )
2 phase: detection of off-beats
3 tempo & phase: strongly depends on initialization values
4 tempo & phase: only slow adaptation — no sudden tempo changes
example: challenges with adaptation speed
module 9.5: tempo detection 10 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
evaluation
evaluation of constant tempo
• match within tempo range ⇒ classification metrics
evaluation of beat tracking
• ground truth can be subjective (double/half tempo, deviations)
• each beat matched against ground truth
▶ challenge 1: tolerance window definition (tempo dependent or not?)
▶ challenge 2: slightly different tempo might lead to gap between metrics and
perceptual severity
typical errors
• double/half tempo (sometimes also 3/2 relationships)
• off-beat
• problems with abrupt tempo changes
module 9.5: tempo detection 11 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
evaluation
evaluation of constant tempo
• match within tempo range ⇒ classification metrics
evaluation of beat tracking
• ground truth can be subjective (double/half tempo, deviations)
• each beat matched against ground truth
▶ challenge 1: tolerance window definition (tempo dependent or not?)
▶ challenge 2: slightly different tempo might lead to gap between metrics and
perceptual severity
typical errors
• double/half tempo (sometimes also 3/2 relationships)
• off-beat
• problems with abrupt tempo changes
module 9.5: tempo detection 11 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
tempo detection & beat tracking
evaluation
evaluation of constant tempo
• match within tempo range ⇒ classification metrics
evaluation of beat tracking
• ground truth can be subjective (double/half tempo, deviations)
• each beat matched against ground truth
▶ challenge 1: tolerance window definition (tempo dependent or not?)
▶ challenge 2: slightly different tempo might lead to gap between metrics and
perceptual severity
typical errors
• double/half tempo (sometimes also 3/2 relationships)
• off-beat
• problems with abrupt tempo changes
module 9.5: tempo detection 11 / 12
overview intro oscillator approach filterbank approach template approach challenges eval summary
summary
lecture content
tempo analysis
• similar to pitch detection on a different scale
▶ periodicity analysis of novelty function
▶ time or spectral domain
typical approaches
• oscillator
• histogram/beat spectrum
• template correlation
main challenges
• double/half tempo
• adaptation to sudden tempo changes
module 9.5: tempo detection 12 / 12

More Related Content

Similar to 09-05-ACA-Temporal-Tempo.pdf

Isa saint-louis-exceptional-opportunities-short-course-day-1
Isa saint-louis-exceptional-opportunities-short-course-day-1Isa saint-louis-exceptional-opportunities-short-course-day-1
Isa saint-louis-exceptional-opportunities-short-course-day-1Jim Cahill
 
Favorite Delay Analysis Methodologies Town Hall SEI
Favorite Delay Analysis Methodologies Town Hall SEIFavorite Delay Analysis Methodologies Town Hall SEI
Favorite Delay Analysis Methodologies Town Hall SEIChris Carson
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsFrancis Palma
 
Essentials of jitter part 1 The Time Interval Error: TIE
Essentials of jitter part 1 The Time Interval Error: TIEEssentials of jitter part 1 The Time Interval Error: TIE
Essentials of jitter part 1 The Time Interval Error: TIEteledynelecroy
 
Periplaneta Americana Experiment
Periplaneta Americana ExperimentPeriplaneta Americana Experiment
Periplaneta Americana ExperimentJulie Brown
 
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...CODE BLUE
 
Analysis for Radar and Electronic Warfare
Analysis for Radar and Electronic WarfareAnalysis for Radar and Electronic Warfare
Analysis for Radar and Electronic WarfareReza Taryghat
 
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutes
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutesFrom gamma-ray to radio: Multi-wavelength follow-up in the first five minutes
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutesTim Staley
 
Model 500 series manual
Model 500 series manualModel 500 series manual
Model 500 series manualPohan_cast
 
0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdf0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdfAlexanderLerch4
 
Masters Thesis - Ankit_Kukreja
Masters Thesis - Ankit_KukrejaMasters Thesis - Ankit_Kukreja
Masters Thesis - Ankit_KukrejaANKIT KUKREJA
 
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMMNasir Ahmad
 
MCA Daemon: Hybrid Throughput Analysis Beyond Basic Blocks
MCA Daemon: Hybrid Throughput Analysis Beyond Basic BlocksMCA Daemon: Hybrid Throughput Analysis Beyond Basic Blocks
MCA Daemon: Hybrid Throughput Analysis Beyond Basic BlocksMin-Yih Hsu
 

Similar to 09-05-ACA-Temporal-Tempo.pdf (20)

Advanced WEC Dynamics and Controls: System Identification and Model Validation
Advanced WEC Dynamics and Controls: System Identification and Model ValidationAdvanced WEC Dynamics and Controls: System Identification and Model Validation
Advanced WEC Dynamics and Controls: System Identification and Model Validation
 
1708027_1708037.pptx
1708027_1708037.pptx1708027_1708037.pptx
1708027_1708037.pptx
 
Isa saint-louis-exceptional-opportunities-short-course-day-1
Isa saint-louis-exceptional-opportunities-short-course-day-1Isa saint-louis-exceptional-opportunities-short-course-day-1
Isa saint-louis-exceptional-opportunities-short-course-day-1
 
SENSORS .pdf
SENSORS .pdfSENSORS .pdf
SENSORS .pdf
 
Estimation of divergence times
Estimation of divergence timesEstimation of divergence times
Estimation of divergence times
 
Favorite Delay Analysis Methodologies Town Hall SEI
Favorite Delay Analysis Methodologies Town Hall SEIFavorite Delay Analysis Methodologies Town Hall SEI
Favorite Delay Analysis Methodologies Town Hall SEI
 
Av 738 - Adaptive Filtering Lecture 1 - Introduction
Av 738 - Adaptive Filtering Lecture 1 - IntroductionAv 738 - Adaptive Filtering Lecture 1 - Introduction
Av 738 - Adaptive Filtering Lecture 1 - Introduction
 
Sampling
SamplingSampling
Sampling
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA Antipatterns
 
Essentials of jitter part 1 The Time Interval Error: TIE
Essentials of jitter part 1 The Time Interval Error: TIEEssentials of jitter part 1 The Time Interval Error: TIE
Essentials of jitter part 1 The Time Interval Error: TIE
 
Periplaneta Americana Experiment
Periplaneta Americana ExperimentPeriplaneta Americana Experiment
Periplaneta Americana Experiment
 
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
Making & Breaking Machine Learning Anomaly Detectors in Real Life by Clarence...
 
Analysis for Radar and Electronic Warfare
Analysis for Radar and Electronic WarfareAnalysis for Radar and Electronic Warfare
Analysis for Radar and Electronic Warfare
 
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutes
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutesFrom gamma-ray to radio: Multi-wavelength follow-up in the first five minutes
From gamma-ray to radio: Multi-wavelength follow-up in the first five minutes
 
Model 500 series manual
Model 500 series manualModel 500 series manual
Model 500 series manual
 
0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdf0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdf
 
Masters Thesis - Ankit_Kukreja
Masters Thesis - Ankit_KukrejaMasters Thesis - Ankit_Kukreja
Masters Thesis - Ankit_Kukreja
 
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM
6.5.1 Review of Beat Detection and Phase Alignment Techniques used in DMM
 
MCA Daemon: Hybrid Throughput Analysis Beyond Basic Blocks
MCA Daemon: Hybrid Throughput Analysis Beyond Basic BlocksMCA Daemon: Hybrid Throughput Analysis Beyond Basic Blocks
MCA Daemon: Hybrid Throughput Analysis Beyond Basic Blocks
 
Lakhotia09
Lakhotia09Lakhotia09
Lakhotia09
 

More from AlexanderLerch4

0A-02-ACA-Fundamentals-Convolution.pdf
0A-02-ACA-Fundamentals-Convolution.pdf0A-02-ACA-Fundamentals-Convolution.pdf
0A-02-ACA-Fundamentals-Convolution.pdfAlexanderLerch4
 
09-07-ACA-Temporal-Structure.pdf
09-07-ACA-Temporal-Structure.pdf09-07-ACA-Temporal-Structure.pdf
09-07-ACA-Temporal-Structure.pdfAlexanderLerch4
 
09-01-ACA-Temporal-Intro.pdf
09-01-ACA-Temporal-Intro.pdf09-01-ACA-Temporal-Intro.pdf
09-01-ACA-Temporal-Intro.pdfAlexanderLerch4
 
07-06-ACA-Tonal-Chord.pdf
07-06-ACA-Tonal-Chord.pdf07-06-ACA-Tonal-Chord.pdf
07-06-ACA-Tonal-Chord.pdfAlexanderLerch4
 
15-00-ACA-Music-Performance-Analysis.pdf
15-00-ACA-Music-Performance-Analysis.pdf15-00-ACA-Music-Performance-Analysis.pdf
15-00-ACA-Music-Performance-Analysis.pdfAlexanderLerch4
 
12-01-ACA-Similarity.pdf
12-01-ACA-Similarity.pdf12-01-ACA-Similarity.pdf
12-01-ACA-Similarity.pdfAlexanderLerch4
 
11-00-ACA-Fingerprinting.pdf
11-00-ACA-Fingerprinting.pdf11-00-ACA-Fingerprinting.pdf
11-00-ACA-Fingerprinting.pdfAlexanderLerch4
 
03-05-ACA-Input-Features.pdf
03-05-ACA-Input-Features.pdf03-05-ACA-Input-Features.pdf
03-05-ACA-Input-Features.pdfAlexanderLerch4
 
07-03-03-ACA-Tonal-Monof0.pdf
07-03-03-ACA-Tonal-Monof0.pdf07-03-03-ACA-Tonal-Monof0.pdf
07-03-03-ACA-Tonal-Monof0.pdfAlexanderLerch4
 
05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.pdf05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.pdfAlexanderLerch4
 
07-03-05-ACA-Tonal-F0Eval.pdf
07-03-05-ACA-Tonal-F0Eval.pdf07-03-05-ACA-Tonal-F0Eval.pdf
07-03-05-ACA-Tonal-F0Eval.pdfAlexanderLerch4
 
03-03-01-ACA-Input-TF-Fourier.pdf
03-03-01-ACA-Input-TF-Fourier.pdf03-03-01-ACA-Input-TF-Fourier.pdf
03-03-01-ACA-Input-TF-Fourier.pdfAlexanderLerch4
 
03-06-ACA-Input-FeatureLearning.pdf
03-06-ACA-Input-FeatureLearning.pdf03-06-ACA-Input-FeatureLearning.pdf
03-06-ACA-Input-FeatureLearning.pdfAlexanderLerch4
 
03-07-01-ACA-Input-Post-Processing.pdf
03-07-01-ACA-Input-Post-Processing.pdf03-07-01-ACA-Input-Post-Processing.pdf
03-07-01-ACA-Input-Post-Processing.pdfAlexanderLerch4
 
07-02-ACA-Tonal-Music.pdf
07-02-ACA-Tonal-Music.pdf07-02-ACA-Tonal-Music.pdf
07-02-ACA-Tonal-Music.pdfAlexanderLerch4
 
06-00-ACA-Evaluation.pdf
06-00-ACA-Evaluation.pdf06-00-ACA-Evaluation.pdf
06-00-ACA-Evaluation.pdfAlexanderLerch4
 

More from AlexanderLerch4 (20)

0A-02-ACA-Fundamentals-Convolution.pdf
0A-02-ACA-Fundamentals-Convolution.pdf0A-02-ACA-Fundamentals-Convolution.pdf
0A-02-ACA-Fundamentals-Convolution.pdf
 
12-02-ACA-Genre.pdf
12-02-ACA-Genre.pdf12-02-ACA-Genre.pdf
12-02-ACA-Genre.pdf
 
10-02-ACA-Alignment.pdf
10-02-ACA-Alignment.pdf10-02-ACA-Alignment.pdf
10-02-ACA-Alignment.pdf
 
13-00-ACA-Mood.pdf
13-00-ACA-Mood.pdf13-00-ACA-Mood.pdf
13-00-ACA-Mood.pdf
 
09-07-ACA-Temporal-Structure.pdf
09-07-ACA-Temporal-Structure.pdf09-07-ACA-Temporal-Structure.pdf
09-07-ACA-Temporal-Structure.pdf
 
09-01-ACA-Temporal-Intro.pdf
09-01-ACA-Temporal-Intro.pdf09-01-ACA-Temporal-Intro.pdf
09-01-ACA-Temporal-Intro.pdf
 
07-06-ACA-Tonal-Chord.pdf
07-06-ACA-Tonal-Chord.pdf07-06-ACA-Tonal-Chord.pdf
07-06-ACA-Tonal-Chord.pdf
 
15-00-ACA-Music-Performance-Analysis.pdf
15-00-ACA-Music-Performance-Analysis.pdf15-00-ACA-Music-Performance-Analysis.pdf
15-00-ACA-Music-Performance-Analysis.pdf
 
12-01-ACA-Similarity.pdf
12-01-ACA-Similarity.pdf12-01-ACA-Similarity.pdf
12-01-ACA-Similarity.pdf
 
11-00-ACA-Fingerprinting.pdf
11-00-ACA-Fingerprinting.pdf11-00-ACA-Fingerprinting.pdf
11-00-ACA-Fingerprinting.pdf
 
08-00-ACA-Intensity.pdf
08-00-ACA-Intensity.pdf08-00-ACA-Intensity.pdf
08-00-ACA-Intensity.pdf
 
03-05-ACA-Input-Features.pdf
03-05-ACA-Input-Features.pdf03-05-ACA-Input-Features.pdf
03-05-ACA-Input-Features.pdf
 
07-03-03-ACA-Tonal-Monof0.pdf
07-03-03-ACA-Tonal-Monof0.pdf07-03-03-ACA-Tonal-Monof0.pdf
07-03-03-ACA-Tonal-Monof0.pdf
 
05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.pdf05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.pdf
 
07-03-05-ACA-Tonal-F0Eval.pdf
07-03-05-ACA-Tonal-F0Eval.pdf07-03-05-ACA-Tonal-F0Eval.pdf
07-03-05-ACA-Tonal-F0Eval.pdf
 
03-03-01-ACA-Input-TF-Fourier.pdf
03-03-01-ACA-Input-TF-Fourier.pdf03-03-01-ACA-Input-TF-Fourier.pdf
03-03-01-ACA-Input-TF-Fourier.pdf
 
03-06-ACA-Input-FeatureLearning.pdf
03-06-ACA-Input-FeatureLearning.pdf03-06-ACA-Input-FeatureLearning.pdf
03-06-ACA-Input-FeatureLearning.pdf
 
03-07-01-ACA-Input-Post-Processing.pdf
03-07-01-ACA-Input-Post-Processing.pdf03-07-01-ACA-Input-Post-Processing.pdf
03-07-01-ACA-Input-Post-Processing.pdf
 
07-02-ACA-Tonal-Music.pdf
07-02-ACA-Tonal-Music.pdf07-02-ACA-Tonal-Music.pdf
07-02-ACA-Tonal-Music.pdf
 
06-00-ACA-Evaluation.pdf
06-00-ACA-Evaluation.pdf06-00-ACA-Evaluation.pdf
06-00-ACA-Evaluation.pdf
 

Recently uploaded

New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 

Recently uploaded (20)

New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 

09-05-ACA-Temporal-Tempo.pdf

  • 1. Introduction to Audio Content Analysis module 9.5: tempo detection alexander lerch
  • 2. overview intro oscillator approach filterbank approach template approach challenges eval summary introduction overview corresponding textbook section section 9.5 lecture content • introduction to tempo detection and beat tracking • overview over basic approaches • typical challenges learning objectives • discuss advantages and disadvantages for different approaches to tempo detection and beat tracking • summarize the typical challenges of beat tracking systems module 9.5: tempo detection 1 / 12
  • 3. overview intro oscillator approach filterbank approach template approach challenges eval summary introduction overview corresponding textbook section section 9.5 lecture content • introduction to tempo detection and beat tracking • overview over basic approaches • typical challenges learning objectives • discuss advantages and disadvantages for different approaches to tempo detection and beat tracking • summarize the typical challenges of beat tracking systems module 9.5: tempo detection 1 / 12
  • 4. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking problem statement tempo detection • detect speed of regular pulse (foot-tapping rate) beat tracking • detect the time instances the tempo pulses occur (beat phase) module 9.5: tempo detection 2 / 12
  • 5. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking introduction objectives 1 find the tempo from the novelty function/onsets 2 find the beat locations systematic problems: 1 distinguish hierarchical levels ▶ meter ▶ beat ▶ subbeat/tatum 2 detect beats without onsets 3 recognize onsets without beats module 9.5: tempo detection 3 / 12 matlab source: plotBeatGrid.m
  • 6. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking typical beat tracking system Audio/Midi Signal Compute Novelty Function or Onset Times Compute Confidence or Distance Update Current State Tempo, Beat Phase, Time Predict Next Beat Pos module 9.5: tempo detection 4 / 12
  • 7. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach Beat tracking with an oscillator1 1 initialize pulse generator (tempo estimate, beat position estimate) 2 predict next beat location with pulse 3 adapt acc. to distance (predicted vs. real onset position) • beat period • beat phase 4 predict with adapted settings 5 adapt . . . 1 E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence (IJCAI), Montreal, Aug. 1995. module 9.5: tempo detection 5 / 12
  • 8. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach Beat tracking with an oscillator1 1 initialize pulse generator (tempo estimate, beat position estimate) 2 predict next beat location with pulse 3 adapt acc. to distance (predicted vs. real onset position) • beat period • beat phase 4 predict with adapted settings 5 adapt . . . 1 E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence (IJCAI), Montreal, Aug. 1995. module 9.5: tempo detection 5 / 12
  • 9. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach Beat tracking with an oscillator1 1 initialize pulse generator (tempo estimate, beat position estimate) 2 predict next beat location with pulse 3 adapt acc. to distance (predicted vs. real onset position) • beat period • beat phase 4 predict with adapted settings 5 adapt . . . 1 E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence (IJCAI), Montreal, Aug. 1995. module 9.5: tempo detection 5 / 12
  • 10. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach Beat tracking with an oscillator1 1 initialize pulse generator (tempo estimate, beat position estimate) 2 predict next beat location with pulse 3 adapt acc. to distance (predicted vs. real onset position) • beat period • beat phase 4 predict with adapted settings 5 adapt . . . 1 E. W. Large, “Beat Tracking with a Nonlinear Oscillator,” in Proceedings of the 14th International Joint Conference on Artificial Intelligence (IJCAI), Montreal, Aug. 1995. module 9.5: tempo detection 5 / 12
  • 11. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach: initialization How to estimate the initial tempo module 9.5: tempo detection 6 / 12 matlab source: plotBeatHistogram.m
  • 12. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking oscillator approach: initialization How to estimate the initial tempo location of maximum of ACF of novelty function maximum of IOI histogram maximum of beat spectrum/histogram . . . module 9.5: tempo detection 6 / 12 matlab source: plotBeatHistogram.m
  • 13. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking multi-agent approach 1 run multiple beat trackers with different parameters • initial tempo • initial beat phase • adaptation speed 2 compute reliability/confidence criteria: • match beat and onset times • tempo stability • majority of different agents • . . . 3 choose most reliable agent (or path between agents) module 9.5: tempo detection 7 / 12
  • 14. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking multi-agent approach 1 run multiple beat trackers with different parameters • initial tempo • initial beat phase • adaptation speed 2 compute reliability/confidence criteria: • match beat and onset times • tempo stability • majority of different agents • . . . 3 choose most reliable agent (or path between agents) module 9.5: tempo detection 7 / 12
  • 15. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking multi-agent approach 1 run multiple beat trackers with different parameters • initial tempo • initial beat phase • adaptation speed 2 compute reliability/confidence criteria: • match beat and onset times • tempo stability • majority of different agents • . . . 3 choose most reliable agent (or path between agents) module 9.5: tempo detection 7 / 12
  • 16. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking multi-agent approach 1 run multiple beat trackers with different parameters • initial tempo • initial beat phase • adaptation speed 2 compute reliability/confidence criteria: • match beat and onset times • tempo stability • majority of different agents • . . . 3 choose most reliable agent (or path between agents) module 9.5: tempo detection 7 / 12
  • 17. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking multi-agent approach 1 run multiple beat trackers with different parameters • initial tempo • initial beat phase • adaptation speed 2 compute reliability/confidence criteria: • match beat and onset times • tempo stability • majority of different agents • . . . 3 choose most reliable agent (or path between agents) module 9.5: tempo detection 7 / 12
  • 18. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking filterbank approach 1 design filterbank (e.g. comb resonators spaced 1 beat) 2 compute filter output energy 3 pick maximum plots by Scheirer2 2 E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1, pp. 588–601, 1998. module 9.5: tempo detection 8 / 12
  • 19. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking filterbank approach 1 design filterbank (e.g. comb resonators spaced 1 beat) 2 compute filter output energy 3 pick maximum plots by Scheirer2 2 E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1, pp. 588–601, 1998. module 9.5: tempo detection 8 / 12
  • 20. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking filterbank approach 1 design filterbank (e.g. comb resonators spaced 1 beat) 2 compute filter output energy 3 pick maximum plots by Scheirer2 2 E. D. Scheirer, “Tempo and beat analysis of acoustic musical signals,” Journal of the Acoustical Society of America (JASA), vol. 103, no. 1, pp. 588–601, 1998. module 9.5: tempo detection 8 / 12
  • 21. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking template-based approach 1 define set of template pulses in all tempi 2 compute CCF between novelty function (or its ACF) and all templates 3 choose template with highest correlation as tempo 4 choose lag with highest correlation as beat phase module 9.5: tempo detection 9 / 12
  • 22. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking typical problems 1 tempo: detection of double/half tempo (triple, . . . ) 2 phase: detection of off-beats 3 tempo & phase: strongly depends on initialization values 4 tempo & phase: only slow adaptation — no sudden tempo changes example: challenges with adaptation speed module 9.5: tempo detection 10 / 12
  • 23. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking evaluation evaluation of constant tempo • match within tempo range ⇒ classification metrics evaluation of beat tracking • ground truth can be subjective (double/half tempo, deviations) • each beat matched against ground truth ▶ challenge 1: tolerance window definition (tempo dependent or not?) ▶ challenge 2: slightly different tempo might lead to gap between metrics and perceptual severity typical errors • double/half tempo (sometimes also 3/2 relationships) • off-beat • problems with abrupt tempo changes module 9.5: tempo detection 11 / 12
  • 24. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking evaluation evaluation of constant tempo • match within tempo range ⇒ classification metrics evaluation of beat tracking • ground truth can be subjective (double/half tempo, deviations) • each beat matched against ground truth ▶ challenge 1: tolerance window definition (tempo dependent or not?) ▶ challenge 2: slightly different tempo might lead to gap between metrics and perceptual severity typical errors • double/half tempo (sometimes also 3/2 relationships) • off-beat • problems with abrupt tempo changes module 9.5: tempo detection 11 / 12
  • 25. overview intro oscillator approach filterbank approach template approach challenges eval summary tempo detection & beat tracking evaluation evaluation of constant tempo • match within tempo range ⇒ classification metrics evaluation of beat tracking • ground truth can be subjective (double/half tempo, deviations) • each beat matched against ground truth ▶ challenge 1: tolerance window definition (tempo dependent or not?) ▶ challenge 2: slightly different tempo might lead to gap between metrics and perceptual severity typical errors • double/half tempo (sometimes also 3/2 relationships) • off-beat • problems with abrupt tempo changes module 9.5: tempo detection 11 / 12
  • 26. overview intro oscillator approach filterbank approach template approach challenges eval summary summary lecture content tempo analysis • similar to pitch detection on a different scale ▶ periodicity analysis of novelty function ▶ time or spectral domain typical approaches • oscillator • histogram/beat spectrum • template correlation main challenges • double/half tempo • adaptation to sudden tempo changes module 9.5: tempo detection 12 / 12