SlideShare a Scribd company logo
1 of 26
Download to read offline
Introduction to Audio Content Analysis
module 9.3: onset detection
alexander lerch
overview intro novelty function peak picking eval summary
introduction
overview
corresponding textbook section
section 9.3
lecture content
• detection of the start of musical events
• fundamental methods for generating a novelty function
• fundamental methods for peak picking
learning objectives
• describe the term onset
• implement an automatic onset detection system
module 9.3: onset detection 1 / 12
overview intro novelty function peak picking eval summary
introduction
overview
corresponding textbook section
section 9.3
lecture content
• detection of the start of musical events
• fundamental methods for generating a novelty function
• fundamental methods for peak picking
learning objectives
• describe the term onset
• implement an automatic onset detection system
module 9.3: onset detection 1 / 12
overview intro novelty function peak picking eval summary
onset detection
problem statement
onset: begin of musical event
goal: detect the point in time of an onset
challenges:
• which time stamp of the initial attack time actually marks the onset time?
• polyphonic audio signals:
▶ unknown number of voices and events
▶ multiple onsets occur at “the same” time
▶ onset might be obfuscated by other musical content
module 9.3: onset detection 2 / 12
overview intro novelty function peak picking eval summary
onset detection
onset time
note onset time:
• time the instrument is
triggered
acoustic onset time:
• time of first measurable
instrument output
perceptual onset time:
• time the event is perceived
by listener
module 9.3: onset detection 3 / 12
matlab
source:
plotOnset.m
overview intro novelty function peak picking eval summary
onset detection
overview
Audio
Signal
Novelty
Function
Peak
Picking
Series of
Onset Times
1 novelty function
• measure of probability for new events/signal change over time
2 peak picking
• identify the most likely locations for onsets
module 9.3: onset detection 4 / 12
overview intro novelty function peak picking eval summary
onset detection
overview
Audio
Signal
Novelty
Function
Peak
Picking
Series of
Onset Times
1 novelty function
• measure of probability for new events/signal change over time
2 peak picking
• identify the most likely locations for onsets
module 9.3: onset detection 4 / 12
overview intro novelty function peak picking eval summary
onset detection
overview
Audio
Signal
Novelty
Function
Peak
Picking
Series of
Onset Times
1 novelty function
• measure of probability for new events/signal change over time
2 peak picking
• identify the most likely locations for onsets
module 9.3: onset detection 4 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function
alternative terms for novelty function
• detection function
• difference function
processing steps
1 extract features
2 compute derivative
3 smooth result
4 apply Half-Wave-Rectification (HWR)
module 9.3: onset detection 5 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function
alternative terms for novelty function
• detection function
• difference function
processing steps
1 extract features
2 compute derivative
3 smooth result
4 apply Half-Wave-Rectification (HWR)
module 9.3: onset detection 5 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function
alternative terms for novelty function
• detection function
• difference function
processing steps
1 extract features
2 compute derivative
3 smooth result
4 apply Half-Wave-Rectification (HWR)
module 9.3: onset detection 5 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function
alternative terms for novelty function
• detection function
• difference function
processing steps
1 extract features
2 compute derivative
3 smooth result
4 apply Half-Wave-Rectification (HWR)
module 9.3: onset detection 5 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function
alternative terms for novelty function
• detection function
• difference function
processing steps
1 extract features
2 compute derivative
3 smooth result
4 apply Half-Wave-Rectification (HWR)
module 9.3: onset detection 5 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 1/3
1 time domain example
• feature: time domain
envelope
• derivative: slope of
envelope
• HWR: only interested in
onsets, not offsets
2 pitch domain:
• feature: pitch contour
• derivative: changes in pitch
module 9.3: onset detection 6 / 12
matlab
source:
plotOnset.m
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 1/3
1 time domain example
• feature: time domain
envelope
• derivative: slope of
envelope
• HWR: only interested in
onsets, not offsets
2 pitch domain:
• feature: pitch contour
• derivative: changes in pitch
1
N. Collins, “Using a pitch detector for onset detection,” in ISMIR, 2005, pp. 100–106.
module 9.3: onset detection 6 / 12
matlab
source:
plotOnset.m
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 2/3
3 STFT-based: compute block difference
• flux
▶ dhai(n) =
K/2−1
P
k=0
log2

|X(k,n)|
|X(k,n−1)|

▶ dlar(n) =
k(fmax)
P
k=k(fmin)
p
|X(k, n)| −
p
|X(k, n − 1)|
• cosine distance
• complex
module 9.3: onset detection 7 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 2/3
3 STFT-based: compute block difference
• flux
▶ dhai(n) =
K/2−1
P
k=0
log2

|X(k,n)|
|X(k,n−1)|

▶ dlar(n) =
k(fmax)
P
k=k(fmin)
p
|X(k, n)| −
p
|X(k, n − 1)|
• cosine distance
▶ dfoo(n) = 1 −
K/2−1
P
k=0
|X(k,n)|·|X(k,n−1)|
v
u
u
t
K/2−1
P
k=0
|X(k,n)|2
!
·
K/2−1
P
k=0
|X(k,n−1)|2
!
• complex
module 9.3: onset detection 7 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 2/3
3 STFT-based: compute block difference
• flux
▶ dhai(n) =
K/2−1
P
k=0
log2

|X(k,n)|
|X(k,n−1)|

▶ dlar(n) =
k(fmax)
P
k=k(fmin)
p
|X(k, n)| −
p
|X(k, n − 1)|
• cosine distance
▶ dfoo(n) = 1 −
K/2−1
P
k=0
|X(k,n)|·|X(k,n−1)|
v
u
u
t
K/2−1
P
k=0
|X(k,n)|2
!
·
K/2−1
P
k=0
|X(k,n−1)|2
!
• complex
▶ ddux(n) =
K/2−1
P
k=0
|X(k, n) − X(k, n − 1)|
module 9.3: onset detection 7 / 12
overview intro novelty function peak picking eval summary
onset detection
novelty function examples 3/3
3 STFT-based cont’d
• Goto-distance2
▶ higher power than closest preceding and following bins
-
2
M. Goto and Y. Muraoka, “Music Understanding At The Beat Level – Real-time Beat Tracking For Audio Signals,” in Proceedings of the
Workshop on Computational Auditory Scene Analysis (IJCAI), Aug. 1995.
module 9.3: onset detection 8 / 12
overview intro novelty function peak picking eval summary
onset detection
peak picking: introduction
detect onsets in the smoothed
novelty function
typical criteria
• local maximum  salient
peak
• higher than minimum
likelihood
• not too close to maxima
with higher likelihood
• other options: high attack
slope, distance to prev.
min, . . .
module 9.3: onset detection 9 / 12
matlab
source:
plotNovelty.m
overview intro novelty function peak picking eval summary
onset detection
peak picking: introduction
detect onsets in the smoothed
novelty function
typical criteria
• local maximum  salient
peak
• higher than minimum
likelihood
• not too close to maxima
with higher likelihood
• other options: high attack
slope, distance to prev.
min, . . .
module 9.3: onset detection 9 / 12
matlab
source:
plotNovelty.m
overview intro novelty function peak picking eval summary
onset detection
peak picking: thresholding
options for thresholding
• fixed threshold
Gd,c = λ1
• smoothed threshold
Gd,ma = λ2+
O−1
X
j=0
b(j) · d(i − j)
• median threshold
Gd,me = λ2 + Q̂d (0.5)
module 9.3: onset detection 10 / 12
matlab
source:
plotNovelty.m
overview intro novelty function peak picking eval summary
onset detection
evaluation
goal
• compare a series of ground truth onset time stamps with a series of predicted time
stamps
ground truth annotation problems
• deviations between annotators
• how to annotate quasi-synchronous onsets
metrics
• measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly)
• Precision, Recall, F-Measure
• other metrics
▶ mean (absolute) deviation
▶ standard deviation
▶ max deviation
module 9.3: onset detection 11 / 12
overview intro novelty function peak picking eval summary
onset detection
evaluation
goal
• compare a series of ground truth onset time stamps with a series of predicted time
stamps
ground truth annotation problems
• deviations between annotators
• how to annotate quasi-synchronous onsets
metrics
• measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly)
• Precision, Recall, F-Measure
• other metrics
▶ mean (absolute) deviation
▶ standard deviation
▶ max deviation
module 9.3: onset detection 11 / 12
overview intro novelty function peak picking eval summary
onset detection
evaluation
goal
• compare a series of ground truth onset time stamps with a series of predicted time
stamps
ground truth annotation problems
• deviations between annotators
• how to annotate quasi-synchronous onsets
metrics
• measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly)
• Precision, Recall, F-Measure
• other metrics
▶ mean (absolute) deviation
▶ standard deviation
▶ max deviation
module 9.3: onset detection 11 / 12
overview intro novelty function peak picking eval summary
summary
lecture content
novelty function
• measure of unexpectedness - likelihood of an event
▶ often a measure similar to flux
peak picking
• detecting peaks (onsets) in the novelty function
• usually done by smoothing and adaptive thresholding
module 9.3: onset detection 12 / 12

More Related Content

Similar to 09-03-ACA-Temporal-Onsets.pdf

VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
niranjan kumar
 
Queuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depthQueuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depth
IdcIdk1
 
Valve_Spring_Fault_Detection_Final_1.pdf
Valve_Spring_Fault_Detection_Final_1.pdfValve_Spring_Fault_Detection_Final_1.pdf
Valve_Spring_Fault_Detection_Final_1.pdf
andreikeino1
 

Similar to 09-03-ACA-Temporal-Onsets.pdf (20)

0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdf0A-01-ACA-Fundamentals-Digitization.pdf
0A-01-ACA-Fundamentals-Digitization.pdf
 
VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
VOICE PASSWORD BASED SPEAKER VERIFICATION SYSTEM USING VOWEL AND NON VOWEL RE...
 
Online divergence switching for superresolution-based nonnegative matrix fact...
Online divergence switching for superresolution-based nonnegative matrix fact...Online divergence switching for superresolution-based nonnegative matrix fact...
Online divergence switching for superresolution-based nonnegative matrix fact...
 
Multi tone test
Multi tone testMulti tone test
Multi tone test
 
Learning target Pattern-of-Life for wide-area Anomaly Detection
Learning target Pattern-of-Life for wide-area Anomaly DetectionLearning target Pattern-of-Life for wide-area Anomaly Detection
Learning target Pattern-of-Life for wide-area Anomaly Detection
 
Radar 2009 a 13 clutter rejection doppler filtering
Radar 2009 a 13 clutter rejection   doppler filteringRadar 2009 a 13 clutter rejection   doppler filtering
Radar 2009 a 13 clutter rejection doppler filtering
 
Decoding Turbulent Chemical Plumes With Improved Signal Processing and Machin...
Decoding Turbulent Chemical Plumes With Improved Signal Processing and Machin...Decoding Turbulent Chemical Plumes With Improved Signal Processing and Machin...
Decoding Turbulent Chemical Plumes With Improved Signal Processing and Machin...
 
Queuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depthQueuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depth
 
Tomoya Sato Master Thesis
Tomoya Sato Master ThesisTomoya Sato Master Thesis
Tomoya Sato Master Thesis
 
DSD-NL 2018 Inverse Analysis for Workshop Anura3D MPM - Ghasemi Martinelli
DSD-NL 2018 Inverse Analysis for Workshop Anura3D MPM - Ghasemi MartinelliDSD-NL 2018 Inverse Analysis for Workshop Anura3D MPM - Ghasemi Martinelli
DSD-NL 2018 Inverse Analysis for Workshop Anura3D MPM - Ghasemi Martinelli
 
Otoacoustic Emissions : A comparison between simulation and lab measures.
Otoacoustic Emissions : A comparison between simulation and lab measures.Otoacoustic Emissions : A comparison between simulation and lab measures.
Otoacoustic Emissions : A comparison between simulation and lab measures.
 
Valve_Spring_Fault_Detection_Final_1.pdf
Valve_Spring_Fault_Detection_Final_1.pdfValve_Spring_Fault_Detection_Final_1.pdf
Valve_Spring_Fault_Detection_Final_1.pdf
 
auditory model
auditory modelauditory model
auditory model
 
エンドツーエンド音声合成に向けたNIIにおけるソフトウェア群 ~ TacotronとWaveNetのチュートリアル (Part 1)~
エンドツーエンド音声合成に向けたNIIにおけるソフトウェア群 ~ TacotronとWaveNetのチュートリアル (Part 1)~エンドツーエンド音声合成に向けたNIIにおけるソフトウェア群 ~ TacotronとWaveNetのチュートリアル (Part 1)~
エンドツーエンド音声合成に向けたNIIにおけるソフトウェア群 ~ TacotronとWaveNetのチュートリアル (Part 1)~
 
Wqtc2013 invest ofperformanceprobswitheds-20130910
Wqtc2013 invest ofperformanceprobswitheds-20130910Wqtc2013 invest ofperformanceprobswitheds-20130910
Wqtc2013 invest ofperformanceprobswitheds-20130910
 
Active Learning for Acoustic Classification AND Power Aware Feature Selection...
Active Learning for Acoustic Classification AND Power Aware Feature Selection...Active Learning for Acoustic Classification AND Power Aware Feature Selection...
Active Learning for Acoustic Classification AND Power Aware Feature Selection...
 
A Low Latency Implementation of a Non Uniform Partitioned Overlap and Save Al...
A Low Latency Implementation of a Non Uniform Partitioned Overlap and Save Al...A Low Latency Implementation of a Non Uniform Partitioned Overlap and Save Al...
A Low Latency Implementation of a Non Uniform Partitioned Overlap and Save Al...
 
Seismic Data Processing, Ahmed Osama
Seismic Data Processing, Ahmed OsamaSeismic Data Processing, Ahmed Osama
Seismic Data Processing, Ahmed Osama
 
Hybrid multichannel signal separation using supervised nonnegative matrix fac...
Hybrid multichannel signal separation using supervised nonnegative matrix fac...Hybrid multichannel signal separation using supervised nonnegative matrix fac...
Hybrid multichannel signal separation using supervised nonnegative matrix fac...
 
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
 

More from AlexanderLerch4

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
 
09-04-ACA-Temporal-BeatHisto.pdf
09-04-ACA-Temporal-BeatHisto.pdf09-04-ACA-Temporal-BeatHisto.pdf
09-04-ACA-Temporal-BeatHisto.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
 
05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.pdf05-00-ACA-Data-Intro.pdf
05-00-ACA-Data-Intro.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
 
07-01-ACA-Tonal-Perception.pdf
07-01-ACA-Tonal-Perception.pdf07-01-ACA-Tonal-Perception.pdf
07-01-ACA-Tonal-Perception.pdf
 

Recently uploaded

CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
Wonjun Hwang
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 

Recently uploaded (20)

CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهله
 

09-03-ACA-Temporal-Onsets.pdf

  • 1. Introduction to Audio Content Analysis module 9.3: onset detection alexander lerch
  • 2. overview intro novelty function peak picking eval summary introduction overview corresponding textbook section section 9.3 lecture content • detection of the start of musical events • fundamental methods for generating a novelty function • fundamental methods for peak picking learning objectives • describe the term onset • implement an automatic onset detection system module 9.3: onset detection 1 / 12
  • 3. overview intro novelty function peak picking eval summary introduction overview corresponding textbook section section 9.3 lecture content • detection of the start of musical events • fundamental methods for generating a novelty function • fundamental methods for peak picking learning objectives • describe the term onset • implement an automatic onset detection system module 9.3: onset detection 1 / 12
  • 4. overview intro novelty function peak picking eval summary onset detection problem statement onset: begin of musical event goal: detect the point in time of an onset challenges: • which time stamp of the initial attack time actually marks the onset time? • polyphonic audio signals: ▶ unknown number of voices and events ▶ multiple onsets occur at “the same” time ▶ onset might be obfuscated by other musical content module 9.3: onset detection 2 / 12
  • 5. overview intro novelty function peak picking eval summary onset detection onset time note onset time: • time the instrument is triggered acoustic onset time: • time of first measurable instrument output perceptual onset time: • time the event is perceived by listener module 9.3: onset detection 3 / 12 matlab source: plotOnset.m
  • 6. overview intro novelty function peak picking eval summary onset detection overview Audio Signal Novelty Function Peak Picking Series of Onset Times 1 novelty function • measure of probability for new events/signal change over time 2 peak picking • identify the most likely locations for onsets module 9.3: onset detection 4 / 12
  • 7. overview intro novelty function peak picking eval summary onset detection overview Audio Signal Novelty Function Peak Picking Series of Onset Times 1 novelty function • measure of probability for new events/signal change over time 2 peak picking • identify the most likely locations for onsets module 9.3: onset detection 4 / 12
  • 8. overview intro novelty function peak picking eval summary onset detection overview Audio Signal Novelty Function Peak Picking Series of Onset Times 1 novelty function • measure of probability for new events/signal change over time 2 peak picking • identify the most likely locations for onsets module 9.3: onset detection 4 / 12
  • 9. overview intro novelty function peak picking eval summary onset detection novelty function alternative terms for novelty function • detection function • difference function processing steps 1 extract features 2 compute derivative 3 smooth result 4 apply Half-Wave-Rectification (HWR) module 9.3: onset detection 5 / 12
  • 10. overview intro novelty function peak picking eval summary onset detection novelty function alternative terms for novelty function • detection function • difference function processing steps 1 extract features 2 compute derivative 3 smooth result 4 apply Half-Wave-Rectification (HWR) module 9.3: onset detection 5 / 12
  • 11. overview intro novelty function peak picking eval summary onset detection novelty function alternative terms for novelty function • detection function • difference function processing steps 1 extract features 2 compute derivative 3 smooth result 4 apply Half-Wave-Rectification (HWR) module 9.3: onset detection 5 / 12
  • 12. overview intro novelty function peak picking eval summary onset detection novelty function alternative terms for novelty function • detection function • difference function processing steps 1 extract features 2 compute derivative 3 smooth result 4 apply Half-Wave-Rectification (HWR) module 9.3: onset detection 5 / 12
  • 13. overview intro novelty function peak picking eval summary onset detection novelty function alternative terms for novelty function • detection function • difference function processing steps 1 extract features 2 compute derivative 3 smooth result 4 apply Half-Wave-Rectification (HWR) module 9.3: onset detection 5 / 12
  • 14. overview intro novelty function peak picking eval summary onset detection novelty function examples 1/3 1 time domain example • feature: time domain envelope • derivative: slope of envelope • HWR: only interested in onsets, not offsets 2 pitch domain: • feature: pitch contour • derivative: changes in pitch module 9.3: onset detection 6 / 12 matlab source: plotOnset.m
  • 15. overview intro novelty function peak picking eval summary onset detection novelty function examples 1/3 1 time domain example • feature: time domain envelope • derivative: slope of envelope • HWR: only interested in onsets, not offsets 2 pitch domain: • feature: pitch contour • derivative: changes in pitch 1 N. Collins, “Using a pitch detector for onset detection,” in ISMIR, 2005, pp. 100–106. module 9.3: onset detection 6 / 12 matlab source: plotOnset.m
  • 16. overview intro novelty function peak picking eval summary onset detection novelty function examples 2/3 3 STFT-based: compute block difference • flux ▶ dhai(n) = K/2−1 P k=0 log2 |X(k,n)| |X(k,n−1)| ▶ dlar(n) = k(fmax) P k=k(fmin) p |X(k, n)| − p |X(k, n − 1)| • cosine distance • complex module 9.3: onset detection 7 / 12
  • 17. overview intro novelty function peak picking eval summary onset detection novelty function examples 2/3 3 STFT-based: compute block difference • flux ▶ dhai(n) = K/2−1 P k=0 log2 |X(k,n)| |X(k,n−1)| ▶ dlar(n) = k(fmax) P k=k(fmin) p |X(k, n)| − p |X(k, n − 1)| • cosine distance ▶ dfoo(n) = 1 − K/2−1 P k=0 |X(k,n)|·|X(k,n−1)| v u u t K/2−1 P k=0 |X(k,n)|2 ! · K/2−1 P k=0 |X(k,n−1)|2 ! • complex module 9.3: onset detection 7 / 12
  • 18. overview intro novelty function peak picking eval summary onset detection novelty function examples 2/3 3 STFT-based: compute block difference • flux ▶ dhai(n) = K/2−1 P k=0 log2 |X(k,n)| |X(k,n−1)| ▶ dlar(n) = k(fmax) P k=k(fmin) p |X(k, n)| − p |X(k, n − 1)| • cosine distance ▶ dfoo(n) = 1 − K/2−1 P k=0 |X(k,n)|·|X(k,n−1)| v u u t K/2−1 P k=0 |X(k,n)|2 ! · K/2−1 P k=0 |X(k,n−1)|2 ! • complex ▶ ddux(n) = K/2−1 P k=0 |X(k, n) − X(k, n − 1)| module 9.3: onset detection 7 / 12
  • 19. overview intro novelty function peak picking eval summary onset detection novelty function examples 3/3 3 STFT-based cont’d • Goto-distance2 ▶ higher power than closest preceding and following bins - 2 M. Goto and Y. Muraoka, “Music Understanding At The Beat Level – Real-time Beat Tracking For Audio Signals,” in Proceedings of the Workshop on Computational Auditory Scene Analysis (IJCAI), Aug. 1995. module 9.3: onset detection 8 / 12
  • 20. overview intro novelty function peak picking eval summary onset detection peak picking: introduction detect onsets in the smoothed novelty function typical criteria • local maximum salient peak • higher than minimum likelihood • not too close to maxima with higher likelihood • other options: high attack slope, distance to prev. min, . . . module 9.3: onset detection 9 / 12 matlab source: plotNovelty.m
  • 21. overview intro novelty function peak picking eval summary onset detection peak picking: introduction detect onsets in the smoothed novelty function typical criteria • local maximum salient peak • higher than minimum likelihood • not too close to maxima with higher likelihood • other options: high attack slope, distance to prev. min, . . . module 9.3: onset detection 9 / 12 matlab source: plotNovelty.m
  • 22. overview intro novelty function peak picking eval summary onset detection peak picking: thresholding options for thresholding • fixed threshold Gd,c = λ1 • smoothed threshold Gd,ma = λ2+ O−1 X j=0 b(j) · d(i − j) • median threshold Gd,me = λ2 + Q̂d (0.5) module 9.3: onset detection 10 / 12 matlab source: plotNovelty.m
  • 23. overview intro novelty function peak picking eval summary onset detection evaluation goal • compare a series of ground truth onset time stamps with a series of predicted time stamps ground truth annotation problems • deviations between annotators • how to annotate quasi-synchronous onsets metrics • measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly) • Precision, Recall, F-Measure • other metrics ▶ mean (absolute) deviation ▶ standard deviation ▶ max deviation module 9.3: onset detection 11 / 12
  • 24. overview intro novelty function peak picking eval summary onset detection evaluation goal • compare a series of ground truth onset time stamps with a series of predicted time stamps ground truth annotation problems • deviations between annotators • how to annotate quasi-synchronous onsets metrics • measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly) • Precision, Recall, F-Measure • other metrics ▶ mean (absolute) deviation ▶ standard deviation ▶ max deviation module 9.3: onset detection 11 / 12
  • 25. overview intro novelty function peak picking eval summary onset detection evaluation goal • compare a series of ground truth onset time stamps with a series of predicted time stamps ground truth annotation problems • deviations between annotators • how to annotate quasi-synchronous onsets metrics • measure TP with tolerance range ⇒ TP, FN, FP (TN only implicitly) • Precision, Recall, F-Measure • other metrics ▶ mean (absolute) deviation ▶ standard deviation ▶ max deviation module 9.3: onset detection 11 / 12
  • 26. overview intro novelty function peak picking eval summary summary lecture content novelty function • measure of unexpectedness - likelihood of an event ▶ often a measure similar to flux peak picking • detecting peaks (onsets) in the novelty function • usually done by smoothing and adaptive thresholding module 9.3: onset detection 12 / 12