h3wb-eval
H3WB: Human3.6M 3D WholeBody Dataset and Benchmark — Zhu et al. (2022) (arXiv:2211.15692, 2022)
What this evaluates
Evaluates 3D whole-body human pose estimation and lifting capabilities. It probes a model's ability to reconstruct 133-keypoint 3D skeletons from complete 2D poses, occluded/incomplete 2D poses, or monocular RGB images, with specific focus on body, face, and hand regions.
Datasets
Metrics
MPJPE (primary) — range: other
- Mean Per Joint Position Error. Computes the average Euclidean distance between predicted and ground-truth 3D joint coordinates after aligning the skeleton to a reference joint (pelvis, nose, or wrist). Reported in millimeters across whole-body, body, face, and hand subsets.
Input / output format
Input: Per instance: (1) 2D→3D/I2D→3D: 133 2D keypoints (complete or masked per protocol); (2) RGB→3D: image path and 2D bounding box coordinates.
Output: 133 3D joint coordinates (x, y, z) representing the whole-body skeleton.
Scoring recipe
def compute_mpjpe(pred_3d, gt_3d, align_idx=0):
pred_aligned = pred_3d - pred_3d[align_idx]
gt_aligned = gt_3d - gt_3d[align_idx]
errors = np.sqrt(np.sum((pred_aligned - gt_aligned)**2, axis=1))
return np.mean(errors) * 1000 # Convert to mm if inputs are in meters
Common pitfalls
- Predictions from normalized baselines must be re-scaled using the paper's bounding-box ratio formula before evaluation.
- Alignment convention drastically affects scores: pelvis alignment inflates error on extremities, requiring nose/wrist alignment for face/hand sub-metrics.
- Test set ground truth is hidden; results must be submitted to maintainers for leaderboard inclusion.
Evidence (verbatim from paper)
For each task, we report the following MPJPE (Mean Per Joint Position Error) metrics: MPJPE for the whole-body, the body (keypoint 1-23), the face (keypoint 24-91) and the hands (keypoint 92-133) when whole-body is centered on the root joint, i.e. aligned with the pelvis, which in our case is the middle of two hip joints. MPJPE for the face when it is centered on the nose, i.e. aligned with keypoint 1, MPJPE for the hands when hands are centered on the wrist, i.e left hand aligned with keypoint 92 and right hand aligned with keypoint 113.
Citation
@misc{zhu2022h3wb,
title={H3WB: Human3.6M 3D WholeBody Dataset and Benchmark},
author={Zhu et al. (2022)},
year={2022},
note={arXiv:2211.15692}
}
1---2name: h3wb-eval3description: Evaluates 3D whole-body human pose estimation and lifting capabilities. It probes a model's ability to reconstruct 133-keypoint 3D skeletons from complete 2D poses, occluded/incomplete 2D poses, or monocular RGB images, with specific focus on body, face, and hand regions. Use when the user wants to benchmark on H3WB, or asks about evaluating this task. Reports MPJPE.4---56# h3wb-eval78> H3WB: Human3.6M 3D WholeBody Dataset and Benchmark — Zhu et al. (2022) (arXiv:2211.15692, 2022)910## What this evaluates1112Evaluates 3D whole-body human pose estimation and lifting capabilities. It probes a model's ability to reconstruct 133-keypoint 3D skeletons from complete 2D poses, occluded/incomplete 2D poses, or monocular RGB images, with specific focus on body, face, and hand regions.1314## Datasets1516- **H3WB** — total 100000; splits: train (80000), test (20000); repo https://github.com/wholebody3d/wholebody3d1718## Metrics1920- `MPJPE` **(primary)** — range: other21 - Mean Per Joint Position Error. Computes the average Euclidean distance between predicted and ground-truth 3D joint coordinates after aligning the skeleton to a reference joint (pelvis, nose, or wrist). Reported in millimeters across whole-body, body, face, and hand subsets.2223## Input / output format2425**Input**: Per instance: (1) 2D→3D/I2D→3D: 133 2D keypoints (complete or masked per protocol); (2) RGB→3D: image path and 2D bounding box coordinates.2627**Output**: 133 3D joint coordinates (x, y, z) representing the whole-body skeleton.2829## Scoring recipe3031```python32def compute_mpjpe(pred_3d, gt_3d, align_idx=0):33 pred_aligned = pred_3d - pred_3d[align_idx]34 gt_aligned = gt_3d - gt_3d[align_idx]35 errors = np.sqrt(np.sum((pred_aligned - gt_aligned)**2, axis=1))36 return np.mean(errors) * 1000 # Convert to mm if inputs are in meters37```3839## Common pitfalls4041- Predictions from normalized baselines must be re-scaled using the paper's bounding-box ratio formula before evaluation.42- Alignment convention drastically affects scores: pelvis alignment inflates error on extremities, requiring nose/wrist alignment for face/hand sub-metrics.43- Test set ground truth is hidden; results must be submitted to maintainers for leaderboard inclusion.4445## Evidence (verbatim from paper)4647> For each task, we report the following MPJPE (Mean Per Joint Position Error) metrics: MPJPE for the whole-body, the body (keypoint 1-23), the face (keypoint 24-91) and the hands (keypoint 92-133) when whole-body is centered on the root joint, i.e. aligned with the pelvis, which in our case is the middle of two hip joints. MPJPE for the face when it is centered on the nose, i.e. aligned with keypoint 1, MPJPE for the hands when hands are centered on the wrist, i.e left hand aligned with keypoint 92 and right hand aligned with keypoint 113.4849## Citation5051```bibtex52@misc{zhu2022h3wb,53 title={H3WB: Human3.6M 3D WholeBody Dataset and Benchmark},54 author={Zhu et al. (2022)},55 year={2022},56 note={arXiv:2211.15692}57}58```5960- arXiv: 2211.15692