/Orchestra

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

Primary LanguagePython

Component 16

Orchestra

GitHub contributors GitHub issues GitHub forks GitHub stars GitHub license

About

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

image

How it works

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

1. Noise Removal

1  noise_removed

2. Binarization

2  binarized

3. Staff line removal

3  cleaned

4. Cutted buckets


4  cutted-1



4  cutted-2



4  cutted-3



5. Segmentation and detection

colored_0_1


colored_0_2


colored_0_3

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 ]

How to run

  1. Put your images inside input folder
  2. Run the main file and pass the input & output folders as args

    for example python main.py input output

  3. Check the output folder

Contributors


Abdallah Hemdan


Adel Mohamed


Kareem Mohamed^3


Ahmed Mahboub

Licence

MIT Licence