CREMA chords (ONNX)

Chord recognition from audio: per frame, likelihoods for 170 chords (12 roots times 14 qualities, plus no chord and an unknown chord), with separate heads for the chord's pitch classes, its root and its bass note. A conversion to ONNX of the structured chord model of CREMA (McFee and Bello, ISMIR 2017), with its harmonic constant-Q front end in the graph.

  • Input audio: [1, N] float32, mono, 44.1 kHz, values in [-1, 1]. Give the whole excerpt at once: the front end measures decibels against the loudest bin of the whole input, as CREMA does.
  • Outputs, T = N // 4096 frames; frame t is centred on sample t * 4096:
    • chord_tag [T, 170] softmax, in the order of CREMA's label encoder: the 170 labels sorted as strings (A#:7, A#:aug, โ€ฆ N, X).
    • chord_pitch [T, 12] sigmoid, pitch classes from C.
    • chord_root [T, 13] and chord_bass [T, 13] softmax, pitch classes from C, then no root or bass.
  • Matches CREMA's own Keras pipeline on the conversion fixtures: the most likely chord agrees on every frame, and the heads differ by at most 2e-5.

Converted by the Silly MIDI Tools scripts in scripts/crema/.

See NOTICE.md for the attribution and the changes made, and LICENSE for the licence text.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support