Coder Social home page Coder Social logo

templeblock / sourcefiltercontoursmelody Goto Github PK

View Code? Open in Web Editor NEW

This project forked from georgid/sourcefiltercontoursmelody

0.0 1.0 0.0 20.97 MB

Melody extraction based on source-filter modelling

License: GNU General Public License v3.0

Jupyter Notebook 11.03% TeX 1.33% Python 84.87% C 2.77%

sourcefiltercontoursmelody's Introduction

A method to classify predominant pitch contours into vocal and instrumental (non-vocal) ones.

It extends the method of

Rachel M Bittner, Justin Salamon, Slim Essid, and Juan P Bello, ÒMelody extraction by contour classifi- cation,Ó in Proc. ISMIR, pp. 500Ð506

by adding contour fluctuation features. Each pitch contour is characterized by the baseline salience features + timbre- and pitch-fluctuation features

Usage:

first set only one of Parameters.medleyDb, Parameters.datasetIKala or Parameters.for_makam to True

  1. #extract contours with essentia: python ~/workspace/SourceFilterContoursMelody/src/main_contour_extraction.py ~/Documents/iKala/ $PATH_CONTOURS 1

NOTE: the extension pitch.ctr is same for contours with or without added timbre features NOTE: Parameters.contour_URI

or copy them cp /home/georgid/Documents/iKala/Conv_mu-1_G-0_LHSF-0_pC-27.56_pDTh-0.9_pFTh-0.9_tC-100_mD-200_vxTol-0.2/*.pitch.ctr $PATH_CONTOURS

  1. load pre-extracted contours and add fluctuation features

python ~/workspace/SourceFilterContoursMelody/src/main_contour_extraction.py ~/Documents/iKala/ $PATH_CONTOURS 2

  1. classify

classify SALomon's features:

python ~/workspace/SourceFilterContoursMelody/src/contour_classification/run_contour_training_melody_extraction.py $PATH_CONTOURS 1 0 0

classify SALomon's features + fluctogram:

python ~/workspace/SourceFilterContoursMelody/src/contour_classification/run_contour_training_melody_extraction.py $PATH_CONTOURS 1 1 0

classify SALomon's features + VV:

python ~/workspace/SourceFilterContoursMelody/src/contour_classification/run_contour_training_melody_extraction.py $PATH_CONTOURS 1 0 1 if experimenting with diff feature parameters: set Parameters.use__for_classification << used in src.contour_classification.contour_utils.getFeatureInfo() >>

  1. evaluate src.contour_classification.run_contour_training_melody_extraction.eval

Useful tools:

see test directory

plot interactively contours:

plot_contours_interactive(contour_data, dset_annot_dict[track], track)

and plot the decoded melody

plot_decoded_melody

extract features with already extracted contour:

test_timbre_features

compute_and_plot_harmoncis

sonify the harmonics of extracted contours

python ~/workspace/SourceFilterContoursMelody/src/main_contour_extraction.py ~/Documents/iKala/ $PATH_CONTOURS 3

to use vocal variance feature extraction code in MATLAB:

set Parameters.features_MATLAB = True


# extract feat. matlab.. Bernhard Lehner
in matlab in /home/georgid/Documents/svd
then extractSVD2015features

sourcefiltercontoursmelody's People

Contributors

georgid avatar juanjobosch avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.