GSOC 2016: lightweight OMR in MuseScore

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
Report Content as Inappropriate

GSOC 2016: lightweight OMR in MuseScore

Liang Chen

My name is Liang Chen, a Ph.D. student in Music Informatics from Indiana University Bloomington. I'm pretty interested in the OMR project for MuseScore GSOC this year. I have been working on OMR problem for quite a while and implemented the algorithms relevant to staff/system identification as well as symbol recognition.

This project has to do with my current work and will have real impact to the musescore community so it gives me a strong motivation to work out a working version of OMR in MuseScore.  

I checked out the MuseScore framework on github and tried to compile it with OMR flag on. The code was already obsolete so I spent some time to reorganize and rewrite this part. Now I've managed to compile the code, import pdf scores, and present the double-view panels as shown in the video demo. My next plan includes:

1, More robust pdf import and pdf to image conversion using Poppler
2, Implement automatic system identification via dynamic programming. Each system has different bar line configurations and may contain different number of staves.
3, Enable OCR feature to detector titles and put appropriate spacing to the musescore skeleton for a better alignment.
4, Real-time alignment between skeleton and image when user is adjusting the position of the skeleton.
5, Clef, key signatures, note head detections to assist the skeleton generation.

For this lightweight version, I think we're almost focusing on the well-solved portion of OMR, so hopefully we can build a fully automatic program that works well with the majority of printed music scores.

Please let me know if you've any suggestions about these ideas.

Liang Chen