Audiveris

Sunday, January 11, 2009
Description
Audiveris
is an Optical Music Recognition (OMR) module. Starting from the image of a music sheet, it provides high-level logical music information compliant with the MusicXML definition. Other tools such as a Midi Sequencer, or a Composition Editor can then read and update this standard data.

There are already commercial tools in this area but Audiveris is, to our knowledge, the first Java open-source OMR tool. It is a cross-platform tool, written entirely in Java, and tested on Windows, Solaris, Linux and Mac OS.

Audiveris works with printed music sheets only, the task of recognizing hand-written scores being significantly harder.

Since versions 3.x, Audiveris is a fully functional music scanner. Because there may still be remaining errors in the translation, the program offers the user the ability to guide the translation on the fly. It can also take advantage of user-supplied data in order to further train its internal neural network, and thus improve the glyph recognition task.

More detailed information is available in the provided manuals, but here are the main phases of the application:

  1. Detection and correction of potential skew angle of the sheet,
  2. Removal of staff lines, detection of systems, staves and measures,
  3. Extraction of individual music items, essentially based on their appearance and their structure,
  4. Music translation based on the extracted music items, and essentially driven by music grammar,
  5. Manual correction of remaining errors,
  6. Export of logical music information, using the MusicXML format definition,
  7. Direct playback using a MusicXML/MIDI interface,
  8. Finally, any other application able to read / write MusicXML format can be chained to the output of Audiveris.

There is still room for improvement in this program but the internal architecture is now fairly stable and robust enough to be used and augmented by people willing to contribute.

Licence
GNU General Public License (GPL v. 2.0)

Location
https://audiveris.dev.java.net/

No comments:

Post a Comment