EgoFound3R: End-to-End Egocentric Hand Reconstruction in World Space with Point-Wise Interaction Attributes
Organizations: School of AI, Shanghai Jiao Tong University · Rutgers University · The University of Hong Kong · QuicRobot
Abstract
Egocentric video has become a primary source of supervision for embodied models, and its value rests on recovering hand motion in world coordinates, which camera motion and hand occlusion make difficult. Existing reconstruction pipelines typically separate hand and scene estimation, leave interaction attributes to separate task-specific models, and invoke several models per video, so no prior reconstruction model estimates these attributes and throughput becomes a practical constraint on large-scale annotation. We therefore introduce EgoFound3R, a unified end-to-end model that estimates world-space hand geometry in a metric scale shared with the scene, and predicts point-wise interaction attributes, including visibility, contact, and distance. The model integrates three designs: (i) structured hand prompts that transfer pretrained geometric priors to world-space hand reconstruction; (ii) an explicit hand representation that decodes hand geometry and interaction attributes; and (iii) a shared-parameter multi-rate design that lowers inference cost. Together, these designs predict hand geometry and point-wise attributes in one pass. On OakInk-v2, TACO, and HOI4D, EgoFound3R reduces the mean per-joint position error (MPJPE) by 43.2%, 22.4%, and 11.6% over previous methods and predicts point-wise contact and distance alongside the geometry in the same pass, while attaining approximately 6x higher throughput.
Figures & tables
| OakInk-v2 TACO HOI4D | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Method | Raw | RR | PA | W | WA | |||||||||||||
| WiLoR † | 91.24 | 70.40 | 81.51 | 27.66 | 28.33 | 27.75 | 7.78 | 9.49 | 9.62 | 16.89 | 25.95 | 24.14 | 42.14 | 51.14 | 49.41 | 17.04 | 26.14 | 24.57 |
| PAD-Hand † | 107.16 | 72.97 | 75.35 | 32.23 | 30.30 | 29.77 | 9.63 | 11.19 | 10.12 | 21.37 | 29.21 | 24.79 | 49.01 | 57.06 | 51.92 | 21.62 | 29.60 | 25.04 |
| EgoForce † | 123.57 | 126.63 | 147.77 | 47.75 | 44.53 | 52.78 | 11.09 | 11.93 | 12.92 | 32.62 | 47.84 | 49.22 | 80.59 | 105.52 | 142.58 | 33.10 | 46.65 | 55.76 |
| EgoFound3R † | – | – | – | – | 27.49 | 36.68 | 63.01 | 17.89 | 24.06 | 23.30 | ||||||||
| Dyn-HaMR 100w | 96.39 | 127.12 | 245.06 | 17.91 | 27.47 | 26.49 | 7.84 | 11.62 | 11.89 | 13.76 | 29.27 | 30.47 | 36.16 | 77.88 | 173.62 | 17.19 | 31.46 | 65.71 |
| OakInk-v2 | TACO | HOI4D | |||||||
|---|---|---|---|---|---|---|---|---|---|
| Method | P | R | F1 | P | R | F1 | P | R | F1 |
| InteractVLM 100w | 0.180 | 0.403 | 0.202 | 0.388 | 0.705 | 0.472 | 0.313 | 0.537 | 0.281 |
| S 2 Contact | 0.327 | 0.081 | 0.079 | 0.519 | 0.104 | 0.146 | 0.444 | 0.265 | 0.284 |
| ContactOpt | 0.334 | 0.196 | 0.154 | 0.557 | 0.197 | 0.259 | 0.518 | 0.477 | 0.435 |
| EgoFound3R | 0.510 | 0.665 | 0.493 | 0.654 | 0.777 | 0.697 | 0.612 | 0.835 | 0.675 |
| OakInk-v2 | TACO | HOI4D | |||||||
|---|---|---|---|---|---|---|---|---|---|
| Method | P | R | F1 | P | R | F1 | P | R | F1 |
| HVD | 0.823 | 0.808 | 0.792 | 0.878 | 0.834 | 0.853 | 0.917 | 0.769 | 0.831 |
| EgoFound3R | 0.919 | 0.747 | 0.802 | 0.917 | 0.850 | 0.880 | 0.892 | 0.884 | 0.885 |
| Variant | Raw | RR | W | WA | Contact F1 | Vis. F1 | MAE(All) | MAE(Pred) | MAE(GT) |
|---|---|---|---|---|---|---|---|---|---|
| 0.05B | 109.71 | 36.74 | 81.37 | 42.66 | 0.542 | 0.800 | 41.47 | 45.30 | 49.54 |
| 0.1B | 96.90 | 30.55 | 61.66 | 35.81 | 0.579 | 0.801 | 49.27 | 52.15 | 58.61 |
| MANO | 86.66 | 24.29 | 57.45 | 35.15 | 0.643 | 0.854 | 45.46 | 48.21 | 51.97 |
| w/o | 82.59 | 23.49 | 53.38 | 32.33 | 0.661 | 0.856 | 36.19 | 40.42 | 42.52 |
| 1-way | 78.82 | 23.70 | 54.16 | 32.14 | 0.628 | 0.861 | 32.79 | 35.52 | 37.29 |
| S5 | 54.64 | 18.54 | 40.03 | 25.16 | 0.697 | 0.880 | 26.26 | 28.09 | 30.47 |
Appendix figures & tables26 assets
Supplementary material from the paper’s appendix.
Appendix
| Setting | Value |
|---|---|
| Optimizer | AdamW ( , ), weight decay |
| Learning rate | |
| Schedule | linear warmup over steps, then cosine decay to |
| Batch size | per device on NVIDIA H20 (effective ) |
| Resolution | |
| Training steps |
| Method | H FPS | R FPS | VRAM (GiB) | Total params. (B/M) | |
|---|---|---|---|---|---|
| EgoFound3R configurations | |||||
| EgoFound3R-A ( ) | 4/21/60 | 48.63 | 138.95 | 3.87 | 1.356B |
| EgoFound3R-B ( ) | 34/168/500 | 43.65 | 129.91 | 9.61 | 1.356B |
| EgoFound3R-C ( ) | 100/500/1498 | 28.69 | 85.95 | 22.57 | 1.356B |
| Contact methods: GT hand + object mesh + object 6DoF | |||||
| ContactOpt | – | 1396.03 | – | 2.34 | 1.42M |
| Dataset | Train sequences | Eval clips |
|---|---|---|
| OakInk-v2 | 565 | 400 |
| TACO | 839 | 400 |
| HOI4D | 1,431 | 461 |
| H2O | 138 | 283 |
| HOT3D Aria | 136 | 400 |
| ARCTIC | 226 | 434 |
| 21 joints: MPJPE | 195 vertices: MPVPE | 778 vertices: MPVPE | ||||||||||||||||
| Method | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | |||
| OakInk-v2 | ||||||||||||||||||
| WiLoR † | 91.24 | 27.66 | 7.78 | 16.89 | 42.14 | 17.04 | 91.16 | 26.00 | 7.55 | 16.90 | 41.84 | 17.06 | 91.46 | 26.78 | 7.44 | 16.82 | 42.02 | 16.97 |
| PAD-Hand † | 107.16 | 32.23 | 9.63 | 21.37 | 49.01 | 21.62 | 106.47 | 30.03 | 9.32 | 21.15 | 47.23 | 21.40 | 106.98 | 30.79 | 9.12 | 21.02 | 47.41 | 21.26 |
| EgoForce † | 123.57 | 47.75 | 11.09 | 32.62 | 80.59 | 33.10 | 123.63 | 45.07 | 10.95 | 33.19 | 81.00 | 33.65 | 123.95 | 45.82 | 10.64 | 32.93 | 81.19 | 33.40 |
| EgoFound3R † | – | – | – | – | 27.49 | 17.89 | – | – | – | – | 27.79 | 18.07 | – | – | – | – | 28.53 | 18.76 |
| 21 joints | 195 vertices | 778 vertices | ||||
| Method | MPJVE | MPJAE | MPMVE | MPMAE | MPVVE | MPVAE |
| OakInk-v2 | ||||||
| WiLoR † | 116.81 | 4.66 | 110.07 | 4.38 | 112.47 | 4.49 |
| PAD-Hand † | 124.78 | 4.29 | 118.80 | 4.08 | 120.99 | 4.16 |
| EgoForce † | 258.44 | 12.11 | 242.73 | 11.35 | 247.57 | 11.58 |
| HaWoR | 59.59 | 2.07 | 56.20 | 1.96 | 57.23 | 1.99 |
| 21 joints | 195 vertices | 778 vertices | ||||
| Method | MPJVE | MPJAE | MPMVE | MPMAE | MPVVE | MPVAE |
| OakInk-v2 | ||||||
| Dyn-HaMR 100w | 132.68 | 6.04 | 130.90 | 5.95 | 131.84 | 6.00 |
| EgoFound3R 100w,Dyn | 63.85 | 1.32 | 61.40 | 1.27 | 61.69 | 1.27 |
| TACO | ||||||
| Dyn-HaMR 100w | 339.05 | 13.55 | 334.51 | 13.36 | 336.74 | 13.47 |
| 21 joints | 195 vertices | 778 vertices | |||||||
| Method | P | R | F1 | P | R | F1 | P | R | F1 |
| OakInk-v2 | |||||||||
| InteractVLM 100w | 0.180 | 0.403 | 0.202 | 0.173 | 0.408 | 0.205 | 0.168 | 0.412 | 0.201 |
| S 2 Contact | 0.327 | 0.081 | 0.079 | 0.401 | 0.180 | 0.158 | 0.397 | 0.198 | 0.173 |
| ContactOpt | 0.334 | 0.196 | 0.154 | 0.334 | 0.234 | 0.178 | 0.338 | 0.248 | 0.185 |
| EgoFound3R | 0.510 | 0.665 | 0.493 | 0.525 | 0.611 | 0.479 | 0.516 | 0.329 | 0.320 |
| Dataset | Method | 195 vertices | 778 vertices | ||||
|---|---|---|---|---|---|---|---|
| P | R | F1 | P | R | F1 | ||
| OakInk-v2 | EgoFound3R | 0.556 | 0.705 | 0.595 | 0.555 | 0.690 | 0.588 |
| TACO | EgoFound3R | 0.437 | 0.818 | 0.567 | 0.439 | 0.805 | 0.565 |
| HOI4D | EgoFound3R | 0.572 | 0.789 | 0.660 | 0.581 | 0.781 | 0.663 |
| Dataset | Method | AP | best-F1 | F1@0.5 |
|---|---|---|---|---|
| OakInk-v2 | ContactOpt | 0.308 | 0.411 (0.21) | 0.178 |
| S 2 Contact | 0.395 | 0.449 (0.09) | 0.158 | |
| EgoFound3R | 0.603 | 0.617 (0.39) | 0.479 | |
| TACO | ContactOpt | 0.475 | 0.542 (0.15) | 0.311 |
| S 2 Contact | 0.512 | 0.558 (0.09) | 0.285 | |
| EgoFound3R | 0.714 | 0.691 (0.43) | 0.661 |
| our GT | 2 mm band | ||||||
| Dataset | Method | P | R | F1 | P | R | F1 |
| OakInk-v2 | ContactOpt | 0.334 | 0.234 | 0.178 | 0.080 | 0.335 | 0.096 |
| S 2 Contact | 0.401 | 0.180 | 0.158 | 0.117 | 0.331 | 0.115 | |
| EgoFound3R | 0.525 | 0.611 | 0.479 | 0.103 | 0.741 | 0.164 | |
| TACO | ContactOpt | 0.571 | 0.249 | 0.311 | 0.101 | 0.358 | 0.140 |
| S 2 Contact | 0.590 | 0.210 | 0.285 | 0.127 | 0.376 | 0.171 | |
| 21 joints: MPJPE | 195 vertices: MPVPE | 778 vertices: MPVPE | ||||||||||||||||
| Method | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | |||
| OakInk-v2 | ||||||||||||||||||
| Dyn-HaMR 100w | 96.39 | 17.91 | 7.84 | 13.76 | 36.16 | 17.19 | 95.78 | 16.87 | 7.67 | 13.73 | 35.84 | 17.20 | 95.94 | 17.22 | 7.56 | 13.62 | 35.90 | 17.06 |
| EgoFound3R 100w,Dyn | 50.88 | 21.17 | 8.50 | 20.30 | 30.20 | 20.88 | 49.07 | 20.97 | 8.54 | 20.49 | 30.21 | 21.02 | 49.17 | 22.25 | 9.53 | 21.11 | 30.99 | 21.63 |
| EgoFound3R ‡,100w,Dyn | 43.29 | 21.18 | 8.51 | 21.15 | 32.68 | 21.88 | 42.73 | 20.97 | 8.54 | 21.33 | 32.71 | 22.06 | 42.94 | 22.28 | 9.55 | 21.93 | 33.40 | 22.63 |
| TACO | ||||||||||||||||||
| Method | 21 joints | 195 vertices | 778 vertices | ||||||
|---|---|---|---|---|---|---|---|---|---|
| P | R | F1 | P | R | F1 | P | R | F1 | |
| OakInk-v2 | |||||||||
| InteractVLM 100w | 0.180 | 0.403 | 0.202 | 0.173 | 0.408 | 0.205 | 0.168 | 0.412 | 0.201 |
| EgoFound3R 100w,InteractVLM | 0.381 | 0.762 | 0.431 | 0.441 | 0.638 | 0.442 | 0.457 | 0.295 | 0.298 |
| TACO | |||||||||
| InteractVLM 100w | 0.388 | 0.705 | 0.472 | 0.348 | 0.743 | 0.451 | 0.356 | 0.750 | 0.458 |
| 21 joints: MPJPE | 195 vertices: MPVPE | 778 vertices: MPVPE | ||||||||||||||||
| Variant | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | Raw | RR | PA | W | WA | |||
| OakInk-v2 | ||||||||||||||||||
| 0.05B | 112.47 | 35.90 | 16.76 | 33.35 | 65.09 | 35.51 | 110.83 | 35.50 | 16.15 | 33.45 | 65.83 | 35.66 | 111.13 | 36.33 | 16.20 | 33.46 | 66.14 | 35.63 |
| 0.1B | 98.34 | 31.74 | 15.24 | 30.74 | 61.31 | 32.39 | 98.33 | 30.92 | 15.27 | 30.67 | 59.29 | 32.32 | 98.69 | 31.64 | 15.36 | 30.73 | 59.56 | 32.32 |
| MANO | 73.39 | 21.02 | 8.74 | 24.13 | 45.73 | 25.71 | 73.27 | 19.87 | 8.55 | 24.30 | 45.46 | 25.92 | 73.12 | 21.01 | 9.36 | 24.70 | 46.05 | 26.27 |
| w/o | 86.13 | 22.06 | 9.92 | 23.63 | 44.03 | 24.88 | 85.25 | 20.59 | 9.54 | 23.69 | 43.87 | 24.95 | 86.07 | 21.67 | 10.32 | 24.17 | 44.39 | 25.40 |
| 21 joints | 195 vertices | 778 vertices | ||||||||||||||||
| Variant | P | R | F1 | VP | VR | VF1 | P | R | F1 | VP | VR | VF1 | P | R | F1 | VP | VR | VF1 |
| OakInk-v2 | ||||||||||||||||||
| 0.05B | 0.541 | 0.283 | 0.298 | 0.820 | 0.736 | 0.760 | 0.600 | 0.251 | 0.277 | 0.678 | 0.170 | 0.244 | 0.373 | 0.165 | 0.175 | 0.695 | 0.161 | 0.235 |
| 0.1B | 0.549 | 0.358 | 0.345 | 0.843 | 0.708 | 0.752 | 0.620 | 0.170 | 0.205 | 0.720 | 0.192 | 0.272 | 0.325 | 0.194 | 0.185 | 0.733 | 0.186 | 0.267 |
| MANO | 0.512 | 0.595 | 0.474 | 0.927 | 0.807 | 0.856 | 0.537 | 0.582 | 0.485 | 0.566 | 0.775 | 0.642 | 0.530 | 0.175 | 0.206 | 0.567 | 0.760 | 0.636 |
| w/o | 0.535 | 0.606 | 0.480 | 0.925 | 0.796 | 0.844 | 0.552 | 0.557 | 0.463 | 0.554 | 0.770 | 0.630 | 0.276 | 0.250 | 0.203 | 0.553 | 0.757 | 0.625 |
| 21 joints | 195 vertices | 778 vertices | |||||||
| Variant | MAE(All) | MAE(Pred) | MAE(GT) | MAE(All) | MAE(Pred) | MAE(GT) | MAE(All) | MAE(Pred) | MAE(GT) |
| OakInk-v2 | |||||||||
| 0.05B | 45.01 | 47.86 | 55.45 | 44.29 | 46.07 | 55.38 | 43.88 | 25.49 | 54.74 |
| 0.1B | 39.91 | 41.60 | 45.88 | 39.61 | 41.08 | 47.73 | 39.35 | 25.20 | 46.76 |
| MANO | 34.73 | 36.28 | 39.00 | 35.32 | 37.76 | 41.37 | 34.66 | 17.35 | 41.13 |
| w/o | 32.79 | 30.73 | 31.78 | 32.24 | 31.80 | 33.21 | 32.28 | 28.37 | 32.47 |
| Method | ATE (m) | Rot ( ∘ ) | AbsRel | RMSE (m) | ||
|---|---|---|---|---|---|---|
| HaWoR | 0.0064 | 1.22 | – | – | – | – |
| Dyn-HaMR 100w | 0.0064 | 1.26 | – | – | – | – |
| ReViV | 0.0068 | 1.65 | 0.2649 | 0.3577 | 0.5829 | 0.6401 |
| EgoFound3R | 0.0055 | 0.99 | 0.1318 | 0.2015 | 0.8469 | 1.1364 |
| Variant | ATE (m) | Rot ( ∘ ) | AbsRel | RMSE (m) | |
|---|---|---|---|---|---|
| 0.05B | 0.0086 | 1.86 | 0.117 | 0.232 | 0.857 |
| 0.1B | 0.0074 | 1.83 | 0.122 | 0.256 | 0.825 |
| MANO | 0.0084 | 1.60 | 0.132 | 0.256 | 0.806 |
| w/o | 0.0069 | 1.15 | 0.178 | 0.242 | 0.728 |
| 1-way | 0.0069 | 1.15 | 0.178 | 0.242 | 0.728 |
| S1 | 0.0043 | 0.82 | 0.136 | 0.284 | 0.805 |