YannisBilly / Beat_Tracking_Playground

0 stars 0 forks source link

Mergin baseline model to main #3

Closed YannisBilly closed 1 year ago

YannisBilly commented 1 year ago

This is my submitted work for the course of Music Informatics of Queen Mary University of London.

It is a very simple, almost naive, beat tracker that can be described in the following steps:

  1. Generate the Short Time Fourier Transform of the audio
  2. Estimate onsets with frame-based first-order finite differences and a similarity function.
  3. Find the peaks, which will be the onsets
  4. From the peaks, calculate the Inter-Onset Intervals
  5. Estimate the tempo with the use of the k-medoids clustering algorithm
  6. Given the estimated tempo, erase the peaks that are less than 0.8 * tempo
  7. Given the estimated tempo, fill in a beat right in half of the onsets, if their distance is between 1.6tempo and 2.4tempo