ExMR: Extremity Motion Refinement for Monocular Human Motion Capture

Model weights for ExMR, which reconstructs 3D body, hand and foot motion (SMPL-X) of a person from monocular video: an initial temporal estimator predicts whole-body motion, after which a foot refinement module (FootMR) and a hand refinement module (HandMR) revisit local image evidence to predict residual joint rotations for the extremities.

ExMR: Extremity Motion Refinement for Monocular Human Motion Capture
Tom Wehrbein and Bodo Rosenhahn, Leibniz University Hannover
arXiv | Project page | Code

Files

File Content SHA256
exmr.safetensors ExMR model (EMA weights, 236 MB) 8d3947310c30444ec59dae4662574d7a32bf83af30320eeac87146529ff2fda5
rtmw-x_384x288_fp16.onnx RTMW-x 2D whole-body keypoint detector, FP16 (optional --pose_backend rtmw), see below 957ddb5ed34576593a918b3e514003ab9cc85d037309b9a23d9e0209530e98ed

Usage

Do not download these files by hand: the ExMR download script fetches them together with the third-party models ExMR needs and checks every file:

git clone --recursive https://github.com/twehrbein/ExMR.git && cd ExMR
# set up the environment as described in docs/INSTALL.md, then
python tools/download_models.py --smplx_zip models_smplx_v1_1.zip --mano_zip mano_v1_2.zip
python tools/demo.py --video path/to/video.mp4

See the GitHub repository for installation, the demo and the output format.

Training data

ExMR was trained on BEDLAM, BEDLAM2, Human3.6M, 3DPW and ARCTIC. Its inputs are image features of SAM 3D Body and HaMeR and 2D keypoints of Sapiens2 or RTMW; its outputs are SMPL-X parameters.

License

exmr.safetensors is released under the same terms as the ExMR code (LICENSE): for educational, research and non-profit purposes only. The training datasets and the SMPL-X body model are themselves licensed for non-commercial research only.

rtmw-x_384x288_fp16.onnx is a redistribution of RTMW-x by OpenMMLab (MMPose), licensed under Apache-2.0 (see RTMW_LICENSE.txt in this repository). It is the FP16 conversion of the ONNX export RTMW_x_lastest.onnx from hunminkim98/Models_Pose2Sim (commit 53abe39), made with onnx 1.23.2 and onnxconverter-common 1.16.0:

import onnx
from onnxconverter_common import float16

model = onnx.load("RTMW_x_lastest.onnx")
onnx.save(float16.convert_float_to_float16(model, keep_io_types=True), "rtmw-x_384x288_fp16.onnx")

The only change is the conversion of the internal computations to FP16 (inputs and outputs stay FP32). We host it so that ExMR's results can be reproduced with exactly this file.

Citation

@Article{wehrbein26exmr,
    author    = {Wehrbein, Tom and Rosenhahn, Bodo},
    title     = {{ExMR}: Extremity Motion Refinement for Monocular Human Motion Capture},
    journal   = {arXiv preprint arXiv:2610.26213},
    year      = {2026},
}

Please also cite GVHMR, which ExMR builds on, and the third-party models listed in the ExMR repository's THIRD_PARTY_NOTICES.md.

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

Paper for twehrbein/ExMR