NeuroPose β emg2pose regression baseline
Figure 6 of Liu et al. (2021), CC BY.
Meta's released regression_neuropose.ckpt from the
emg2pose benchmark, rehosted with
braindecode's own parameter names so it loads directly:
from braindecode.models import NeuroPose
model = NeuroPose.from_pretrained("braindecode/NeuroPose-emg2pose")
16-channel sEMG at 2 kHz in, 20 joint angles per sample out β (batch, n_chans, n_times)
to (batch, n_times, n_outputs).
Provenance
These are not retrained weights. They are the authors' released checkpoint with only
the parameter names rewritten: upstream stores every block in a single nn.Sequential,
while braindecode splits them across encoder / resnet / decoder. Loading the
original .ckpt into braindecode.models.NeuroPose and running both implementations on
the same input gives bit-identical outputs (max absolute difference 0.0, 6,354,903
parameters in both).
The Hub checkpoint uses Braindecode-native parameter names; upstream naming is handled once during publication rather than by the runtime model.
Architecture
Liu et al.'s encoder / ResNet / decoder, in the configuration emg2pose used for its published baseline: encoder widths 32/128/256 pooling (10,2) (8,2) (4,4) over (time x electrodes), five residual blocks of three conv groups, decoder 128/32/1 upsampling (10,4) (8,4) (4,2).
Training data
The data that shaped these weights. The ids are the datasets: field of this card,
which braindecode reads into model.card_data.datasets when you call
from_pretrained (MOABB class names for MOABB datasets, OpenNeuro / NEMAR
accessions, Hub ids otherwise). nm/on ids are datasets on NEMAR
(on = NEMAR's copy of the OpenNeuro dataset with the same number). Rows marked
private: are data the authors did not release; they are not in datasets:.
datasets: id |
Dataset | Stage | Modality |
|---|---|---|---|
nm000281 |
emg2pose: sEMG (sEMG-RD wristbands, 2 kHz, 16 ch/hand) + motion-capture hand pose, 193 users, 370 h (Salter et al. 2024, NeurIPS D&B) | training | EMG |
- experiment regression_neuropose (Liu et al. 2021 architecture re-trained by Meta on emg2pose; not Liu et al.'s own data). Supervised on the emg2pose train split (Table 3: 158 users, 23 stages, 250.9 h); val split monitored for checkpointing/early stopping (monitor val_loss); held-out user / stage / user-stage test sets not trained on.
- Sources: arXiv:2412.02725 (HTML) Table 3; https://github.com/facebookresearch/emg2pose README 'Downloading Pre-trained Checkpoints'; https://github.com/facebookresearch/emg2pose config/base.yaml.
License and attribution
Weights are Meta's, released under CC BY-NC-SA 4.0 β non-commercial, share-alike. That license carries over here unchanged. The UmeTrack hand model used for the forward kinematics behind the labels is CC BY-NC 4.0.
- Salter et al. (2024), emg2pose: A Large and Diverse Benchmark for Surface Electromyographic Hand Pose Estimation, NeurIPS Datasets and Benchmarks. arXiv:2412.02725
- Liu, Zhang, Gowda (2021), NeuroPose: 3D Hand Pose Tracking using EMG Wearables, The Web Conference 2021. doi:10.1145/3442381.3449890
Cite Braindecode
If you use this braindecode port in scientific work, cite the software on Zenodo, doi:10.5281/zenodo.17699192, and the original model and datasets cited above.
@software{braindecode,
author = {Aristimunha, Bruno and
Guetschel, Pierre and
Wimpff, Martin and
Gemein, Lukas and
Rommel, Cedric and
Banville, Hubert and
Sliwowski, Maciej and
Wilson, Daniel and
Brandt, Simon and
Gnassounou, ThΓ©o and
Paillard, Joseph and
{Junqueira Lopes}, Bruna and
Sedlar, Sara and
Moreau, Thomas and
Chevallier, Sylvain and
Gramfort, Alexandre and
Schirrmeister, Robin Tibor},
title = {Braindecode: toolbox for decoding raw electrophysiological brain data
with deep learning models},
url = {https://github.com/braindecode/braindecode},
doi = {10.5281/zenodo.17699192},
publisher = {Zenodo},
license = {BSD-3-Clause},
}
- Downloads last month
- 692
