/Music-Genre-Classification

Classifying English Music (.mp3) files using Music Information Retrieval (MIR), Digital/Audio Signal Processing (DIP) and Machine Learning (ML) Strategies

Primary LanguageHTML

Music Genre Classification

Introduction

A music genre is a conventional category that identifies some pieces of music as belonging to a shared tradition or set of conventions (rock, pop, metal, etc). It is to be distinguished from musical form and musical style.

Music can be divided into different genres in many different ways. The artistic nature of music means that these classifications are often subjective and controversial, and some genres may overlap. [1]

Inherited Fields

This project is based on knowledge from

  • Music Information Retrieval (MIR)
  • Audio Signal Processing for Music Applications (DSP)
  • Machine Learning (ML)

What Does this Repository Contain

This repository contains folders regarding:

  • Feature Extraction
  • Datasets Used
  • Score/Feature Scaling and Weighting
  • Ensemble Learning
  • Different Machine Learning Approaches to Improve Results

We wish to work on the most popular 8 genres as:

  • Blues
  • Country
  • Electronic
  • Hip Hop
  • Jazz
  • Metal
  • Pop
  • Rock

Dependencies

  • Numpy
  • Scipy
  • IPython
  • Scikit Learn
  • Librosa
  • ffmpeg
  • seaborn
  • pandas
  • Matplotlib

To work underthese you must have the following packages installed:

sudo apt-get install python-scipy python-numpy python-matplotlib ipython pip pandas ffmpeg

and the following library installed:

sudo pip install librosa seaborn

or if you work under windows:

  • Install Anaconda
  • Insert Environment Variables C:\Python27\Scripts;C:\ffmpeg\bin in Advanced System settings to support pip and ffmpeg

for more on librosa documentation: http://librosa.github.io/librosa/

References

[1] https://en.wikipedia.org/wiki/Music_genre