Skip to content

About

Create models for instrument classification

Resources

Stars

2 stars

Watchers

1 watching

Forks

 
 

Latest commit

 

History

33 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

instrument-classifier

Framework for automatic instrument classification using the NSynth dataset and augmenting this dataset with audio effects. The repository contains code for creating of a TFRecords file with the spectograms and labels from the NSynth dataset, augmenting this dataset with VST plugins and training and evaluating an instrument classification model on the augmented datasets.

Data Pre-processing

We use the NSynth dataset, which is available here. For the data augmentation, the following plugins were used:

To apply the audio effects to wav files, MrsWatson should be installed.

After the Nsynth dataset has been downloaded and the effects and MrsWatson installed, data-processing/batch-effect-processing.py should be adapted to run on the desired directories. When this proccess finishes, the paths in data-processing/feature_extraction.py should be modified to the correct directories and, then, running this script will create TFRecord dataset files for each audio effect.

Training and evaluation

To train the model, the main.py function should be called with the appropriate flags. The path to the training and validation sets should be set and the "effect" flag should be set to the desired effect: bitcrusher, chorus, delay, flanger, reverb, tube, pitch_shifting or none, if no effect is desired.

The evaluation of each model on a dataset can be performed by running predict.py with the apropriate flags.

About

Create models for instrument classification

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages