{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/emg2pose-a-large-and-diverse-benchmark-for","title":"emg2pose: A Large and Diverse Benchmark for Surface Electromyographic Hand Pose Estimation","arxiv_id":"2412.02725","date":"2024-12-02","proceeding":null,"authors":["Sasha Salter","Richard Warren","Collin Schlager","Adrian Spurr","Shangchen Han","Rohin Bhasin","Yujun Cai","Peter Walkington","Anuoluwapo Bolarinwa","Robert Wang","Nathan Danielson","Josh Merel","Eftychios Pnevmatikakis","Jesse Marshall"],"abstract":"Hands are the primary means through which humans interact with the world. Reliable and always-available hand pose inference could yield new and intuitive control schemes for human-computer interactions, particularly in virtual and augmented reality. Computer vision is effective but requires one or multiple cameras and can struggle with occlusions, limited field of view, and poor lighting. Wearable wrist-based surface electromyography (sEMG) presents a promising alternative as an always-available modality sensing muscle activities that drive hand motion. However, sEMG signals are strongly dependent on user anatomy and sensor placement, and existing sEMG models have required hundreds of users and device placements to effectively generalize. To facilitate progress on sEMG pose inference, we introduce the emg2pose benchmark, the largest publicly available dataset of high-quality hand pose labels and wrist sEMG recordings. emg2pose contains 2kHz, 16 channel sEMG and pose labels from a 26-camera motion capture rig for 193 users, 370 hours, and 29 stages with diverse gestures - a scale comparable to vision-based hand pose datasets. We provide competitive baselines and challenging tasks evaluating real-world generalization scenarios: held-out users, sensor placements, and stages. emg2pose provides the machine learning community a platform for exploring complex generalization problems, holding potential to significantly enhance the development of sEMG-based human-computer interactions.","url_abs":"https://arxiv.org/abs/2412.02725v1","url_pdf":"https://arxiv.org/pdf/2412.02725v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"emg2pose-a-large-and-diverse-benchmark-for","repo_url":"https://github.com/facebookresearch/emg2pose","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"anatomy","task_name":"Anatomy"},{"task_slug":"hand-pose-estimation","task_name":"Hand Pose Estimation"},{"task_slug":"pose-estimation","task_name":"Pose Estimation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2412.02725","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2412.02725"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"deterministic:regex_extraction","url":"https://github.com/facebookresearch/emg2pose","reach":null}],"summary":{"ran":1,"unverified":2},"by_repo_kind":{"official":{"samples":3,"ran":1,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":3,"samples":[{"code_sha256_prefix":"018c2bdec0e7a4de","entry":"SequentialLSTM","repo":"facebookresearch/emg2pose","repo_kind":"official","path":"emg2pose/pose_modules.py","file_url":"https://github.com/facebookresearch/emg2pose/blob/HEAD/emg2pose/pose_modules.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"018c2bdec0e7a4de"}},{"code_sha256_prefix":"e80a435e004d32ad","entry":"BasePoseModule","repo":"facebookresearch/emg2pose","repo_kind":"official","path":"emg2pose/pose_modules.py","file_url":"https://github.com/facebookresearch/emg2pose/blob/HEAD/emg2pose/pose_modules.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"e80a435e004d32ad"}},{"code_sha256_prefix":"1ce75f14f30f104d","entry":"VEMG2PoseWithInitialState","repo":"facebookresearch/emg2pose","repo_kind":"official","path":"emg2pose/pose_modules.py","file_url":"https://github.com/facebookresearch/emg2pose/blob/HEAD/emg2pose/pose_modules.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"1ce75f14f30f104d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}