Comparison of Digital Music Scores
We consider the problem of computing the differences between two digital music scores, given in an XML encoding (MusicXML or MEI), and visualizing these differences side-to-side.
Our initial goal was to implement for digital music scores a utility similar to the Unix diff command for text files. Its purposes are twofold:
- first to identify the differences between the two score files, that which are relatively similar (typically two versions of the same file), following an intuitive notion of difference; straightforward applications are version control systems and collaborative music score edition;
- second, to compute a distance between the files, that can be used for training and validation purposes in applications such as Optical Music Recognition.
We are developing several approaches (see systems description here). In all approaches, the comparison is performed at the granularity level of measures (bars), which are the analagous, for music scores, of lines of text files. More precisely, in a first step, we compute a Longest Common Subsequence (LCS) of bars in the two files. Then, the second step is a comparison at the granularity level of notes or chords in side bars (the analogous of characters in text files), based on dedicated combinations of edit-distances between strings and trees applied to abstract Intermediate Representation (IR) of score content used for disambiguation and decoupling comparison from the concrete file encoding.
In a first approach presented in this paper and this demo, we use an IR close to the model of the toolkit Music21 (itself close to MusicXML documents structures).
In a more recent approach in development, we use the same Tree Score Model that we are using for transcription.
