
- preliminary alignment by hidden Markov models (HMMs)
- performance error detection
- post-processing realignment by merged-output HMMs
The following source code is published under the MIT licence. Upon the use of this work, we kindly ask to explicitly cite/mention the following paper:
- Eita Nakamura, Kazuyoshi Yoshii, Haruhiro Katayose
Performance Error Detection and Post-Processing for Fast and Accurate Symbolic Music Alignment
In Proc. ISMIR, pp. 347-353, 2017.
Source code and application tools

Alignment tool (C++)
AlignmentTool_v190813.zip (341KB)Manual (PDF)
Alignment data editor on the web
With this tool you can check and edit alignment data. See the manual for data formats. (The tool does not perform alignment.)User interface (Qt code, old version)
AlignmentUI_v1.zip (83KB)Manual (PDF)
Demonstrating examples
Alignment results by HMM are compared with results after realignment by the merged-output HMM. As in examples above, the upper staffs represent the score information and the lower staffs represent the performance information, and missing notes (extra notes; pitch errors) are indicated with pink (cyan; red) bold boxes.Example 1 from Chopin: Fantaisie Impromptu

Example 2 from Chopin: Scherzo No. 2

Example 3 from Brahms: Paganini Variations Book 2 Variation 9

Example 4 from Beethoven: Piano Sonata No. 23 'Appasionata' 1st Movement

Contact
Eita NakamuraResearch Building No 7 Room 417, Yoshida-honmachi, Sakyo-ku, Kyoto 606-8501, Japan
e-mail: enakamura[at]sap.ist.i.kyoto-u.ac[dot]jp
phone: +81-075-753-4952