VEMG2Pose-emg2pose / README.md
bruAristimunha's picture
Rehost regression_vemg2pose.ckpt with braindecode parameter names
1204357 verified
|
Raw History Blame Contribute Delete
1.69 kB
metadata
library_name: braindecode
license: cc-by-nc-sa-4.0
tags:
  - emg
  - semg
  - hand-pose
  - pose-estimation
  - braindecode
  - emg2pose
pipeline_tag: other

vemg2pose — emg2pose Regression baseline

Meta's released regression_vemg2pose.ckpt from the emg2pose benchmark, rehosted with braindecode's parameter names:

from braindecode.models import VEMG2Pose

model = VEMG2Pose.from_pretrained("braindecode/VEMG2Pose-emg2pose")

16-channel sEMG at 2 kHz in, 20 joint angles per sample out. The encoder uses valid convolutions and consumes a left context of 1790 samples, so windows must be longer than that; the paper trains on 11,790 (10,000 + 1790).

Configuration

decoder="lstm", parameterization="hybrid". The recurrent decoder emits a position and a velocity per joint, taking the position for the first num_position_steps (500 samples, 250 ms) and integrating the velocity thereafter. Trained without a ground-truth initial pose, so forward(x) starts from zeros.

Provenance

Not retrained — the authors' checkpoint with parameter names rewritten. Loaded into braindecode.models.VEMG2Pose and run against the reference emg2pose.pose_modules implementation on the same input, the outputs are bit-identical (max absolute difference 0.0), with all 68 tensors mapped.

License

Weights are Meta's, under CC BY-NC-SA 4.0 (non-commercial, share-alike), carried over unchanged. The UmeTrack hand model behind the labels is CC BY-NC 4.0.

  • Salter et al. (2024), emg2pose, NeurIPS Datasets and Benchmarks. arXiv:2412.02725