Skip to main content

Musically informed piano transcription metrics

Project description

Towards Musically Informed Evaluation of Piano Transcription Models

PyPI Package DOI

This repository provides a set of evaluation metrics designed for piano transcription evaluation. The metrics are musically informed, meaning they take into account the nuances of musical performance, such as dynamics, note onset, and duration, to offer more differentiated and musically relevant assessments of transcription quality. Note that these metrics are a work in progress and actively being developed/refined/extended. Expect future updates, and feel free to contribute or share feedback!

Metrics computation

The following code loads a reference and a predicted MIDI and computes how well the transcription preserves timing information in the performance:

import mpteval
import partitura as pt

from mpteval.timing import timing_metrics_from_perf

ref_perf = pt.load_performance_midi(mpteval.REF_MID)
pred_perf = pt.load_performance_midi(mpteval.PRED_MID)

timing_metrics = timing_metrics_from_perf(ref_perf, pred_perf)

Setup

The easiest way to install the package is via:

pip install mpteval

Dependencies

  • Python 3.9
  • Partitura 1.7.0

Citing

If you use our metrics in your research, please cite the relevant paper:

@inproceedings{hu2024towards,
    title = {{Towards Musically Informed Evaluation of Piano Transcription Models}},
    author = {Hu, Patricia and Mart\'ak, Luk\'a\v{s} Samuel and Cancino-Chac\'on, Carlos and Widmer, Gerhard},
    booktitle = {{Proceedings of the International Society for Music Information Retrieval Conference (ISMIR)}},
    year = {2024}
}

Acknowledgments

This work is supported by the European Research Council (ERC) under the EU’s Horizon 2020 research & innovation programme, grant agreement No. 10101937 ("Whither Music?").

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mpteval-0.1.4.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mpteval-0.1.4-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file mpteval-0.1.4.tar.gz.

File metadata

  • Download URL: mpteval-0.1.4.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for mpteval-0.1.4.tar.gz
Algorithm Hash digest
SHA256 26efe7a2d6a272fe710208fcef7c8318a45706124d565af360b05f27bbce69d5
MD5 dc02d2ac4d81b7b54ee1c1263a6121da
BLAKE2b-256 35f81a5a92237eeaacbf77d2373065d5658d42ac4f6a1bb5bb60a807809f92b5

See more details on using hashes here.

File details

Details for the file mpteval-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: mpteval-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for mpteval-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 7b621edbfd98b4f42829c25bc32475b857324c5f03d817f9fe54ddb1c228a5b5
MD5 ec09784ed295527ebf2f98ea822834a8
BLAKE2b-256 a5c3121ea4d0d74e9e1d58e6c162833091c08af2f6edbe2c50a3c1bdff75ba5a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page