Need help with Mozart?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

aashrafh
301 Stars 45 Forks Apache License 2.0 60 Commits 2 Opened issues

Description

An optical music recognition (OMR) system. Converts sheet music to a machine-readable version.

Services available

!
?

Need anything else?

Contributors list

# 168,371
Python
Jupyter...
sklearn
optical...
48 commits
# 2,473
assembl...
spotify
gc
Rust
1 commit

Mozart logo

:notes: Convert sheet music to a machine-readable version.


📝 Table of Contents

🧐 About

The aim of this project is to develop a sheet music reader. This is called Optical Music Recognition (OMR). Its objective is to convert sheet music to a machine-readable version. We take a simplified version where we convert an image of sheet music to a textual representation that can be further processed to produce midi files or audio files like wav or mp3.

About

:computer: Methodology

1. Noise Filtering and Binarization

Binary Image

2. Segmentation

Segment 1

Segment 2

Segment 3

3. Staff Line Detection and Removal

No Staff Image 1

No Staff Image 2

No Staff Image 3

4. Construct The New Staff Lines

New Staff Image 1

New Staff Image 2

New Staff Image 3

5. Symbol Detection and Recognition

Result 1

Result 2

Result 3

🏁 Install

  1. You can use the attached notebook for quick testing and visualization.
  2. You can setup an environment on your local machine to run the project:
    1. Install Conda
    2. conda env create -f requirements.yml
    3. conda activate mozart
    4. python3 main.py  

Note: please check the following issue for another

requirements.yml
file.

⛏️ Built Using

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.