piano-engraving / README.md
manoskary's picture
Refactor checkpoint handling to use bundled model and update README instructions
92f382b

A newer version of the Gradio SDK is available: 6.2.0

Upgrade
metadata
title: Piano Engraving
emoji: πŸ†
colorFrom: gray
colorTo: purple
sdk: gradio
sdk_version: 6.1.0
app_file: app.py
pinned: false
license: mit
short_description: Correct Voice and Staff for Piano scores (musicxml, mei)

Piano Engraving (piano_svsep)

This Space wraps the piano_svsep model to predict voice and staff assignments for piano scores (MusicXML/MEI). The default checkpoint is loaded from the installed package so it works out of the box inside the piano-engraving conda environment.

Local setup

  1. Create the conda env: conda create -n piano-engraving python=3.10 -y
  2. Activate it: conda activate piano-engraving
  3. Install deps: pip install -r requirements.txt
    • If you do not have a CUDA GPU, drop the --index-url/--find-links lines and let PyTorch select the CPU wheels.

Running the app locally

  • Start the Gradio UI: python app.py
  • Upload a .musicxml, .xml, or .mei score.
  • Optional: provide a custom checkpoint path; otherwise the bundled model.ckpt in this repository root is used.
  • Download the predicted score (*_pred.musicxml) from the output panel.

Notes

  • Predictions are written to a temp directory; the status box shows the path.
  • If the default checkpoint cannot be found, set Model checkpoint path to your own model.ckpt file.