PCHMR: Empowering and Benchmarking Human Mesh Recovery in Privacy-Constrained Real-World Settings
A benchmark of transformer-based human mesh recovery when raw images remain on each client, together with locally generated labels for personalization.
1 University of Cambridge 2 University of Oxford 3 The University of Hong Kong 4 HKUST 5 Texas A&M University
* Equal contribution. † Corresponding authors.
2026
Abstract Motivation Overview Method Benchmark Results Local Personalization
Abstract
Fine-tuning on user-side data can improve widely used human mesh recovery (HMR) models, but existing training methods commonly assume that sensitive human images can be collected on a central server. PCHMR studies what changes when those images remain on each client. We benchmark two transformer-based, non-parametric HMR models under federated training and a secure-aggregation variant, covering different numbers of clients and both balanced and uneven data partitions under explicit assumptions about server behavior. We also introduce DePoser, a local annotation and fine-tuning method that combines keypoints predicted by Sapiens with relative depth. DePoser allows a shared model to be adapted to a user's local images without sending them to the server. The in-the-wild personalization results measure agreement with DePoser-generated labels rather than accuracy against independent 3D ground truth. The study records the behavior, cost, and limits of HMR training without centralized access to raw images.
Motivation
Body modeling is moving into personal and home devices.
Human pose and body shape are already supported by major personal-device platforms and applications. Meta Quest tracks body motion to animate VR avatars and provides pose-comparison tools for fitness exercises; Apple's Vision framework estimates 3D body joints for exercise tracking, sports analysis, and character animation; Google ML Kit supports mobile fitness-pose recognition and repetition counting; and Snapchat's Clothing Try-On uses a body mesh that follows a person's movement and shape. These systems can observe identifiable images, body geometry, and motion inside homes and other private spaces. Personalizing an HMR model may improve its fit to a particular user, camera, and environment, but collecting those images on a central server creates avoidable exposure. PCHMR studies how HMR models can be trained and adapted while the images remain on the user's device.
Overview
Centralized HMR versus training without uploading raw images.
Method
Local annotation, shared training, and local inference.
Training Setup
PCHMR uses Flower to simulate 10, 100, and 1000 clients. In each global round, 10 clients are sampled uniformly without replacement; in the 10-client setting, all clients participate. Each sampled client makes one pass over its local data before the server aggregates the updates. Data partitions are generated once with seed 42 and then held fixed. Every number on this page comes from a single run.
Privacy setting comparison. PCHMR treats centralized HMR as a reference and evaluates federated training, in which raw images remain on each client, plus a secure-aggregation variant.
| Training method | What leaves the client? | Server visibility | Use in PCHMR |
|---|---|---|---|
| Centralized HMR | Raw images and mesh labels | Training data and model | Reference baseline |
| Federated HMR | Model updates | Individual updates and aggregate model | Main benchmark setting |
| Secure aggregation variant | Masked model updates | Aggregated update only | Privacy-strengthened comparison |
Federated training prevents the server from receiving raw images, but the updates and the released model may still reveal information. In the secure-aggregation experiment, the server follows the protocol but may try to inspect the updates; it can see only their aggregate, not each client's update. The study does not claim differential privacy and does not evaluate membership inference, gradient inversion, or model inversion attacks.
Training Budget and Evaluation
The published centralized baselines use 60 passes over the training set. The 10/10, 100/10, and uneven-data federated runs use about 200 passes, while 1000/10 uses 60. For a direct comparison, we also report centralized runs trained for 200 epochs. Optimizer steps and wall-clock time are still not matched, so small differences in error cannot be attributed to federated aggregation.
What is and is not matched. One training-set pass means, on average, one use of every image in the 476,062-image training set.
| Comparison item | Centralized training | Federated training | Matched? |
|---|---|---|---|
| Data passes | 60 published; 200 added | 200 for 10/10, 100/10, and uneven partitions; 60 for 1000/10 | Yes, at 60 or 200 passes |
| Optimizer steps | Effective batch size 512 | 8.6–26.9× more steps | No |
| Wall-clock time | 18.7–18.9 h in the reported runs | 44–87 h | No |
| Checkpoint selection | Best evaluated epoch | Best evaluated round | Same rule |
| Validation | Human3.6M protocol-2 split | Same split, evaluated on the server model | Yes |
The validation split contains 27,558 images and is evaluated with batch size 256. It is also used for checkpoint selection; there is no separate held-out test set in this comparison. The learning curves show that the centralized runs reach their best validation MPJPE around epochs 26–27 and then flatten or worsen.
DePoser Local Annotation
DePoser fits SMPL-X to each local image using Sapiens 2D keypoints and predicted joint depths. The depth term uses relative depth structure rather than metric scale, and the method has no separate metric-alignment step. The corrected SI-Log objective is
LSI-Log = √[(1/n) Σi di2 − λ((1/n) Σi di)2], di = log ẑi − log zi.
The implementation uses this expression and applies a numerical guard to non-positive depths.
Benchmark Results
Numbers of clients, uneven data partitions, and example reconstructions.
Effect of the Number of Clients
These results must be read together with the training budget. The published centralized baselines use 60 passes over the training set, whereas 10/10 and 100/10 use 200. The 200-epoch centralized baselines match those runs in data passes. They do not match optimizer steps or wall-clock time, and every result is from one run, so the table reports the observed outcomes without assigning the differences to federated training itself.
Client-scale evaluation. Human3.6M protocol-2 validation error in millimeters. Lower is better.
| Training setting | Model | Training-set passes | MPJPE | PA-MPJPE | Raw images stay local? |
|---|---|---|---|---|---|
| Centralized (published) | FM-S | 60 | 57.98 | 40.62 | No |
| Centralized (budget-matched) | FM-S | 200 | 59.86 | 42.02 | No |
| PCHMR 10 / 10 | FM-S | 200 | 56.85 | 40.52 | Yes |
| PCHMR 100 / 10 | FM-S | 200 | 59.31 | 41.48 | Yes |
| PCHMR 1000 / 10 | FM-S | 60 | 60.82 | 44.53 | Yes |
| Centralized (published) | TORE-S | 60 | 63.88 | 41.99 | No |
| Centralized (budget-matched) | TORE-S | 200 | 62.71 | 42.00 | No |
| PCHMR 10 / 10 | TORE-S | 200 | 61.27 | 41.60 | Yes |
| PCHMR 100 / 10 | TORE-S | 200 | 62.92 | 43.11 | Yes |
| PCHMR 1000 / 10 | TORE-S | 60 | 66.04 | 44.04 | Yes |
The 1000/10 setting is the only federated run that matches the published 60-epoch baseline in data passes, and it has higher error for both models. The 200-epoch centralized runs provide the equal-data-pass comparison for 10/10 and 100/10, but the federated runs still use more optimizer steps and time. Together with the single-run protocol, these differences mean that the results do not show that federated aggregation itself caused the measured changes.
Uneven Client Data
These experiments vary how strongly actions and poses are concentrated on particular clients. Every uneven-data run uses the same data passes and essentially the same number of optimizer steps as the balanced 100/10 run. Training budget therefore does not explain the low error observed in the most uneven setting. Because each configuration is still a single run, this is reported as an observation rather than a general claim that less balanced data improves HMR.
Natural Partition on 3DPW
Natural scene partitions approximate real deployment, where each user's data is shaped by identity, clothing, environment, camera pose, and local data volume.
3DPW fine-tuning. The natural partition assigns each scene to a client. All errors are in millimeters; lower is better.
| Setting | Model | MPJPE | PA-MPJPE | MPVPE | Raw images stay local? |
|---|---|---|---|---|---|
| Centralized | FM-S | 84.92 | 54.69 | 97.60 | No |
| PCHMR | FM-S | 84.66 | 54.78 | 97.42 | Yes |
| PCHMR (Natural Part.) | FM-S | 86.83 | 55.61 | 99.66 | Yes |
| Centralized | TORE-S | 87.97 | 55.35 | 101.88 | No |
| PCHMR | TORE-S | 87.55 | 54.08 | 101.86 | Yes |
| PCHMR (Natural Part.) | TORE-S | 88.00 | 55.07 | 102.50 | Yes |
Local Annotation and Personalization
Locally generated labels and the limits of their evaluation.
DePoser creates mesh labels from each user's images on that user's device, and those generated labels are used for local fine-tuning. For the in-the-wild examples below, the same labels are also used as the evaluation reference. The reported reductions therefore show that the fine-tuned model agrees more closely with DePoser; they do not establish higher 3D accuracy against independent measurements.
Personalization Results
Agreement with DePoser-generated references. All errors are in millimeters; lower values mean that the fine-tuned model is closer to the labels generated by DePoser. They do not measure accuracy against independent 3D ground truth.
| Dataset | Before / After | Model | MPVPE | MPJPE | PA-MPJPE |
|---|---|---|---|---|---|
| VR-runner | Before PCHMR | FM-S | 109.50 | 114.51 | 60.07 |
| VR-runner | After PCHMR | FM-S | 93.23 | 58.24 | 43.16 |
| VR-game-1 | Before PCHMR | FM-S | 176.24 | 172.57 | 78.21 |
| VR-game-1 | After PCHMR | FM-S | 65.57 | 62.30 | 43.82 |
| VR-game-2 | Before PCHMR | FM-S | 150.64 | 161.82 | 84.36 |
| VR-game-2 | After PCHMR | FM-S | 82.53 | 69.49 | 53.57 |
| Oculus | Before PCHMR | FM-S | 103.92 | 102.22 | 61.62 |
| Oculus | After PCHMR | FM-S | 56.76 | 57.92 | 39.94 |
DePoser component study. Errors in millimeters on the same 300-image 3DPW subset with independent 3D ground truth. All variants use the same L-BFGS schedule and loss weights. Lower is better.
| Method | 2D keypoints | Relative-depth term | MPVPE | MPJPE | PA-MPJPE |
|---|---|---|---|---|---|
| SMPLify-X | OpenPose | No | 198.66 | 181.07 | 87.17 |
| Sapiens keypoints | Sapiens | No | 182.89 | 168.32 | 82.13 |
| DePoser | Sapiens | SI-Log | 162.60 | 151.19 | 71.14 |
Replacing OpenPose with Sapiens lowers MPJPE by 12.75 mm and PA-MPJPE by 5.04 mm. Adding the SI-Log relative-depth term lowers them by a further 17.13 mm and 10.99 mm. Both changes contribute to DePoser's result. The method does not use a separate metric-depth alignment step.
Citation
@article{cao2026pchmr,
title={PCHMR: Empowering and Benchmarking Human Mesh Recovery in Privacy-Constrained Real-World Settings},
author={Cao, Zeyu and Wu, Qingxuan and Dou, Zhiyang and Xu, Rui and Liu, Yuan and Fernandez-Marques, Javier and Lane, Nicholas D. and Komura, Taku and Wang, Wenping},
year={2026}
}