oveja87 / master_thesis

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DRUM SOUND ANALYSIS

Recognition and Differentiation of Drum Sounds as Extension to the E-Learning Platform Easydrum

Master’s thesis submitted in fulfillment of the requirements for the degree Master of Science

This thesis describes the concept for an extension of the online drum school Easydrum. The aim of this thesis is to provide a system that allows to use an analog drum set with the Easydrum platform. This system is able to receive the sound of the drum set on a web browser by using a microphone. It detects strokes on drums and cymbals of a pre-configured drum kit in real-time and differentiates them from each other. Therefore, an onset detection algorithm based on the time domain of the incoming audio stream is developed and two different approaches for classification are tested. The algorithms are tested with Matlab and Weka.

The first classification approach is based on the extraction of a feature vector that is used to build a decision tree with the J48 algorithm.

In the second approach templates of the minimum and maximum frequency spectrum of each trained stroke type are created. By analyzing correlations in the spectral shapes between these templates and an unseen data instance, a class label for the unseen instance can be determined. The method is tested with single strokes as well as with two simultaneously played strokes.

Furthermore, this thesis gives an introduction to the Web Midi API, which is required to develop the further application. An example for receiving an audio stream on the browser and displaying it on a HTML canvas element is given.

Keywords

audio signal processing, signal processing, classification, decision tree, J48, onset detection, Web Audio API, MatLab, percussive sound, real-time

Contents

  1. Introduction
  2. Basic Concepts
    1. Easydrum
      1. Technologies
      2. Architecture
    2. Components of a Drum Set
    3. Notation
    4. Audio Signal Processing
      1. Audio Signals
      2. Sampling and Quantization
    5. Frequency Spectrum Analysis of Digital Signals
      1. Discrete Fourier Transformation
      2. Short Time Spectral Analysis and Windowing
      3. Fast Fourier Transformation
    6. Onset Detection
    7. Classification
    8. Feature Extraction
      1. Feature Based Classification
      2. Decision Trees
      3. Further Classification Methods
      4. Evaluation
    9. Tools
      1. MatLab
      2. Weka
    10. Audio Processing in the Web
  3. Related Work
    1. Onset Detection
    2. Classification
    3. Real-Time Approach
  4. Methods
    1. Test Drum Set and Hardware
    2. Onset Detection
      1. Test Data
      2. Analysis of Drum Recordings
      3. Method
      4. Tests
    3. Analysis of the Frequency Spectra of Different Drums and Cymbals
    4. Bass Drum
      1. Tom Toms
      2. Snare drum
      3. Hi-hat
      4. Crash and Ride Cymbal
    5. Training and Training Set
    6. Test Set
    7. Classification by Decision Trees
      1. Pre-Processing
      2. Feature Extraction
      3. Feature Sets
      4. Classification in Weka
      5. Results Feature Set 1
      6. Results Feature Set 2
      7. Results Feature Set 3
    8. Classification by Templates Based on the Spectral Shape
      1. Template Creation
      2. Counting Frequency Bins in the Acceptable Range
      3. Counting Frequency Bins in the Acceptable Range within a Predefined Frequency Band
      4. Calculating the Distance from the Acceptable Range
    9. Classification of Simultaneously Played Strokes
      1. Test set
      2. Classification of Simultaneous Strokes by Subtraction
      3. Classification of Simultaneous Strokes by Extension of the Training Set
    10. Web Audio Demo Application
  5. Discussion and Outlook

About


Languages

Language:TeX 99.6%Language:LOLCODE 0.4%