Skip to content

JeffreyQin/Music_Vision

Repository files navigation

Music Vision

A Convolutional Neural Network trained 100% on original data to locate and identify note sequences from sheet music images into a computer readable format.

Model Pipeline:

PythonPyTorchscikit-learnOpenCVMatplotlibNumPyPandas

Labelling Software:

HTML5JavaScriptExpress.js

Using the Labelling Software

  1. Store your raw data (sheet music images) in 'music_score/raw_images/', renaming image files is not needed.
  2. Run cd label_software/, then npm install, then node app.js in the terminal to start backend services.
  3. Open index.html with "live server" or equivalent, to see the following UI
Screenshot 2024-02-13 115813

Our label contains information about the durations and pitches of all notes in each chord present in the sheet music, as well as a vertical boundary coordinate for each chord. You can label the former by filling in the input fields, and the latter by clicking on the image to create the vertical boundary (as shown).

Running the model

  1. Run pip install -r requirements.txt
  2. Run python train_model.py to train a new model.
  3. To evalute trained models, run python train_model.py --evaluate_saved instead.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published