From CCARH Wiki
Revision as of 02:04, 27 January 2024 by Craig (talk | contribs) (→‎Homework)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

SharpEye Music Scanning Program

SharpEye is an optical music recognition (OMR) program that has an interactive graphical environment for editing the symbolic music notation extracted from scanned music.

Start SharpEye in the Lab by clicking on the taskbar icon which looks like a cyan/black wholenote with a sharp in front of it (Sharpeyeicon.png) in windows, or type "sharpeye" in the terminal in OS X if a sharpeye script has been installed, otherwise type "open ~/Applications/Wineskin/". Music can be scanned directly from SharpEye using the "Aquire" option in the File menu, or you can scan with a separate program and choose "Open Image" option in the File menu to load the graphic music. When processing several pages of music, it is more efficient to first scan with the Epson GT-15000 Scanner in the lab, and then process the scanned images in batch mode within SharpEye.

You can also download pre-scanned music for IMSLP, which is a database of public domain classical sheet music. The PDFs must be converted into TIFF images that are either grayscale or black and white images, with LZW compression or no compression. For this lab, TIFF images are available for download.

Lab exercises

Single page

File:Nova079.tif Become familiar with the basic SharpEye scanning process by following these instructions:

  • Download (or use Scanner) the TIFF image of an example page of music by clicking on the thumbnail image to the right, or print out the PDF version of the music and scan directly in SharpEye by going to the File→Acquire menu option (or use a stand-alone scanning program to scan and load the file from File→Load Image). The scanned image will be placed in the bottom window in SharpEye program as shown in the following screenshot:
SharpEye windows with an example scan and conversion to symbolic data.
  • After you have loaded the scanned image into the bottom window of SharpEye, press on the music recognition button which is the icon with a right-pointing arrow on it. In a few seconds, music should be displayed in the top window which can be played or edited. There are lots of editing features, but for the simple example there will not be much to fix, so don't worry about these features yet.
  • Save the recognized symbolic music data to the MusicXML format by going to the menu "File→MusicXML→Save As..."

Multiple pages

First scan several pages of music in an external program (such as the Epson scanning softare in the lab). Then in SharpEye, go to the menu option "Read→Batch process..." and you will open up a window which looks like this:

  • Click on the "Add files..." button and select the pages that you want to include in the recognition process. (Shift click for a range of pages).
  • Choose the output folder. In the example image it is set to "D:\Craig".
  • I would recommend that you check the option "Join files after conversion" and specify a filename to save all of the converted pages' data into a single file (called newpiece.mro in the above example). The batch process will create a separate .mro file for each page that it processes. After all pages have been processed, it will then combine these separate pages into a single file if that option is checked. (I keep only the joined .mro file and delete the individual .mro pages).
  • After the batch process is finished, go to the menu option "File→Open Music..." to load the combined data file (newpiece.mro in this case). If you do not join the files after conversion, you can edit the separate page .mro files, and optionally join them one page at a time at a later point.
  • A handy tip: Select the menu option "View→Display Image" to view the original scanned image after loading a music file created with batch mode (otherwise, you will only see the symbolic music window and not the scanned image window).

Here is a two-page song which can be used to try out the batch mode in SharpEye:



Example of the resulting recognition for the song in SharpEye:

Right-click here to download .mro file, or Right-click here to download .xml file saved as output from SharpEye after corrections made to symbolic data.

Here is what the musical data looks like in Finale after importing the MusicXML data created by SharpEye (after a little bit of editing and page layout adjustment):

Final PDF from Finale (with some more clean-up required for a finished product):

File:Finale2009-gebet Page 1.tif

File:Finale2009-gebet Page 2.tif

Editing Tips

Read the manual pages in the program and online listed in the link section below for full understanding of the editing options in SharpEye. SharpEye uses the mouse right-click for inserting objected from the green-colored menu which will take some time to get used to. Some handy tips dealing with editing:

  • Press Shft and then click-drag to select multiple notes at one time.
  • Press Ctrl and then click on notes to add them to the selection.
  • If the red-colored menu is being displayed, right click with the mouse to bring up the green-colored menu. While the green-colored menu is displayed, there will be a red cross-hair in the scanned music showing the parallel location to the mouse pointer in the symbolic music (useful for checking for errors).
  • Gray colored slurs are not attached correctly to notes, so they must be fixed by moving one end or the other to attach to notes on both sides.
  • Gray notes represent a rhythmic error in the measure which you will have to fix in some way. There is an option for rhythmic parsing which is important to understand if you want to use SharpEye a lot (read the manual).
  • Keyboard shortcuts for several menu selections are defined: F1 = help, F2 = flip stem direction on note(s), F3 = beam/unbeam notes, F4 = cycle through augmentation dots, F5 = make note(s) 32nds, F6 = 16ths, F7 = 8ths, F8 = quarter note(s), F9 = half note(s), F10 = whole note(s).
  • There is an option to recognize lyrics or not, and if so, what language to use for the recognition.


  • Either choose your own piece of music to scan (one or two pages), or finish cleaning up the data extraction for the two-page exercise on this page.
  • When preparing your own input images for SharpEye, the format must be a black & white or grayscale TIFF images with LZW or no compression (no other file formats, no color TIFF, no other types of compression). An easy way to create the TIFF images is in Adobe Acrobat Pro.
  • You can scan your own paper copy of a piece, or try IMSLP. If you do not have Adobe Acrobat Pro or cannot otherwise figure how to get a Black & White TIFF image from a PDF, email the file to Craig and he will create them for you.

1. Save the extracted music using the MusicXML export option in Sharpeye.

2. Load the saved MusicXML file into two of the following notation rendering software MuseScore, Noteflight (a commercial web-based notation program), Finale, Sibelius or Verovio Humdrum Viewer (free web-based notnation program), or another program that you typically use (Lilypond, Noteworthy Composer, Dorico, etc). Some things are easier to edit in another music editor other than SharpEye, so alternately fix some problems (slurs, crescendos, articulations, dynamics, grace notes) after transferring from SharpEye via MusicXML.

3. Print the loaded musical data as a PDF file from at least two of the listed programs in point 2.

4. Compare the differences in the notation rendering between the three programs. Are there any differences, similarities, bugs?

5. (Extra credit). Export the same music from SharpEye using the MIDI export from SharpEye instead of MusicXML. Load the MIDI file into MuseScore. How does this compare to transferring the data as MIDI compared to using MusicXML?

Email the MusicXML file, the three PDF files: the original PDF of the score you processed and two outputs from notation editors that you load the MusicXML into, as well as your analysis of differences to Craig and cc Eleanor.