Full Body: Multi-HMR2
The newest, camera-aware, multi-person path — real shape, real fingers
- model
- image
- smplx_hands
- smplx_face
- smplx
- preview
Full Body: Multi-HMR2 is the newest and technically most interesting estimator in this pack, and it's a different beast from its predecessor. Multi-HMR2 (NAVER, 2026) is DETR-based and camera-centric: it detects people in the image and recovers each one in scene-camera space, then the pack bridges the best one into SMPL-X. "Best one" here means the largest person in view - the node prints how many people it found, and the biggest gets the SMPL-X treatment.
The bridge is the clever part, and it's why this node exists rather than just being "Multi-HMR again." Multi-HMR2 doesn't predict SMPL-X at all - it predicts the Anny body model. So the pack re-poses an Anny model built with SMPL-X topology (the two share 1:1 vertices, 10475 of them), producing a registered target mesh, then fits SMPL-X parameters to that mesh with dense vertex and joint losses - roughly 9mm mean vertex error on the demo image. The payoff is that the betas are real: fitted shape, not a neutral default, and the hands get fitted too if you ask for it.
Inputs and outputs
Required:
- model - the
MULTIHMR2_MODELfrom Load Multi-HMR2. - image - your photo.
- det_thresh - detection confidence, default 0.4 (range 0.05–0.95). Higher than Multi-HMR's default because multi-person detection benefits from a bit more selectivity. Tune down if your subject is missed.
- fit_hands - boolean, default on. Fits finger pose from the predicted mesh. It's genuinely slower, so if you're iterating on pose, this is the knob to flip off until you're done.
Optional:
- smplx_hands - from Hand: WiLoR, overrides the fitted hand pose (wrist-relative).
- smplx_face - from Face: SMIRK. This one matters more here: Multi-HMR2 leaves the face flat - jaw and expression aren't fitted. Graft SMIRK in or pose it in the editor, or you get a blank face on top of an otherwise great body.
Outputs: smplx (the full parameter bundle, feeding the SMPL-X Editor) and a preview image.
Installing
Standard pack install - ComfyUI Manager, search SMPLx Estimator, install, restart - or:
cd ComfyUI/custom_nodes
git clone https://github.com/ameliacode/ComfyUI-SMPLx-Estimator.git
cd ComfyUI-SMPLx-Estimator
pip install -r requirements.txt
python install.py
The multihmr2.pt checkpoint auto-downloads from Naver on first load (needs wget + internet), and the first run builds Anny's blend-shape caches for ~2 minutes. The registration-walled SMPLX_NEUTRAL.npz is still on you. Full rundown in the Load Multi-HMR2 and Load SMPLx articles.
Common issues
- First run looks hung. That ~2-minute Anny cache build on first load is normal; subsequent runs are fast.
- Wrong person. Largest-person bias means a big foreground subject wins. Crop to your target or raise
det_thresh. - Extreme body shapes. Anny covers all ages including infants, and extreme phenotypes sit outside SMPL-X's shape space - the betas fit is best-effort there. The source says so plainly; don't fight it.
- Blank face. Flat by design - graft SMIRK or edit expression in the editor.
This is the path when you want the newest recovery plus real fitted shape and fingers, and you're okay with a slightly slower, heavier pipeline. The camera-awareness also makes it the one whose output geometry feels most grounded when you orbit it in the editor.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MULTIHMR2_MODEL | — | |
| image | IMAGE | — | |
| det_thresh | FLOAT | 0.400.05–0.95 | Detection confidence threshold. |
| fit_hands | BOOLEAN | true | Also fit finger pose from the predicted mesh (slower). |
| smplx_handsopt | SMPLX | Optional SMPL-X (e.g. from Hand: WiLoR) to override the fitted hand pose (wrist-relative — no melt). | |
| smplx_faceopt | SMPLX | Optional SMPL-X (e.g. from Face: SMIRK) to graft jaw + expression. Takes precedence over smplx_hands' face. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| smplx | SMPLX | — |
| preview | IMAGE | — |