Orchestra

Orchestra is a sheet music reader (optical music recognition (OMR) system) that converts sheet music to a machine-readable version.

MIT License

Stars
58

About

Orchestra is a sheet music reader (optical music recognition (OMR) system) that converts sheet music to a machine-readable version.

How it works

List of steps we take to process the input sheet and get our results

1. Noise Removal

2. Binarization

3. Staff line removal

4. Cutted buckets

5. Segmentation and detection

6. Recognition

  1. Cutted 1

[ \meter<"4/4"> d1/4 e1/32 e2/2 e1/8 e1/16 e1/32 {e1/4,g1/4} e1/4 e1/8 c1/8 g1/32 c1/16 e1/32 ]

  1. Cutted 2

[ \meter<"4/4"> {e1/4,g1/4,b1/4} a1/8 d1/8 c1/16 g1/16 d1/16 e1/16 c2/16 g2/16 d2/16 e2/16 {f1/4,g1/4,b1/4} c1/4 a1/4. a1/8 a1/32.. ]

  1. Cutted 3

[ \meter<"4/4"> e1/16 e1/16 e1/16 e1/16 e1/4 e#1/4 g1/4 g&&1/4 g1/4 e#2/4 ]

Installation

  1. Clone the repository
$ git clone https://github.com/AbdallahHemdan/Orchestra.git
  1. Navigate to repository directory
$ cd Orchestra
  1. Install dependencies
$ pip install -r requirements.txt

Running

  1. Put you input files inside input folder

  2. Put you output files inside output folder

  3. Running

python main.py $path_of_input_folder $path_of_output_folder

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

Check out our contributing guidelines for ways to contribute.

Contributors

Licence

MIT Licence