AutelicaResearchHand labelsPart 2 · Robot policies

Part 2 of 2Part 1: the hand benchmark

What hand-label error does to robot policies.

Simulated robot hand on a Franka arm carrying a brown beaker toward its goal, shown as a green ghost on a standour labels
The same scene at the same moment: the robot hand is empty next to the beaker, which has not movedWiLoR’s labels

0.21vs0.08task success, imitation (vs WiLoR)

0.47vs0.29after longer reinforcement learning (vs WiLoR)

Two rollouts in MuJoCo from the same held-out start pose, at the same moment. The imitation policy trained on our labels has picked up the beaker and is carrying it to its goal (green, where the person put it); the one trained on WiLoR’s labels never grasps it. One rollout each, from a start where ours succeeds and WiLoR’s fails; the numbers are task success over all held-out tests.

We trained robot-hand policies on each source of hand labels and tested them from the same held-out start poses, in simulation: three OakInk2 tasks scored against motion capture, with an Inspire hand on a Franka arm.

  • Pick-and-place, imitation learning: 0.21 task success in simulation from our labels, 0.08–0.12 from the published head-camera methods’ labels and 0.29 from motion capture.
  • Our labels beat both head-camera methods on 2 of 3 OakInk2 tasks (slide: 0.31 vs 0.16 for WiLoR, in simulation). On lift-and-return there is no clear difference, and ours and WiLoR’s are both far below motion capture.
  • With longer reinforcement learning the gap holds: on pick-and-place, 0.47 from ours against 0.29–0.31 from head-camera labels, in simulation.
Caveats
  • Simulation only, with no real robot. The simulation holds the object once the hand touches it.
  • The imitation demos are the robot’s own replays of each source’s labels, so imitation is roughly capped by the replay; reinforcement learning, which gets a task signal, is the fairer test.
  • The HO-Cap results further down are partly circular: that reference shares cameras with ours.

The full method and caveats

Autelica researchPart 2 of 2Simulation on public dataUpdated 9 figures

Part 1 scored three fixed cameras and published head-camera methods against OakInk2’s marker motion capture: our cameras place hands 3.0 cm from where they are in the room with no alignment, and head-camera methods given the true camera pose 7.0 to 11.7 cm off. Replayed with a robot hand in a physics replay of 694 episodes, our labels reach a task success of 0.25 against 0.19 from WiLoR’s. This part trains policies on those labels.

In short.

  1. Policies follow the labels, in simulation. On OakInk2 pick-and-place, scored against motion capture, imitation policies trained on our labels succeed in 0.21 of held-out tests, against 0.08 from WiLoR’s (ours − WiLoR +0.13 [+0.08, +0.18]); with reinforcement learning, 0.41 against 0.24 to 0.28 for head-camera labels.
  2. Slide: 0.31 from our labels against 0.16 from WiLoR’s (ours − WiLoR +0.15 [+0.09, +0.20]); with reinforcement learning, 0.42 against 0.24.
  3. Lift-and-return: no clear difference (0.20 from ours, 0.18 from WiLoR’s, +0.02 [−0.08, +0.12]). Both are far below the motion-capture labels (0.36).
  4. More reinforcement learning does not close the gap. On pick-and-place, at 384 rollouts per episode, ours reaches 0.47 against 0.29 to 0.31 for head-camera labels.
  5. On HO-Cap reorientation, synthetic demos expanded from a few seed demos did not beat real ones.

What this does to robot policies

A replay follows the labels exactly; a policy learns from them and might average some of the error away. For each label source we built demos by replaying its labels with an Inspire hand on a Franka arm, trained policies on them by imitation and by tracking the labelled motion with a correction learned by reinforcement learning, and tested every policy from the same held-out start poses. Success means the same as in the physics replay in Part 1. OakInk2, scored against marker motion capture, is the independent check and comes first, with three tasks; HO-Cap follows and is partly circular.

Caveats for this whole section.

  • HO-Cap is partly circular: its reference is a multi-view fit that shares cameras with ours, which flatters our labels against the head-camera methods. OakInk2’s motion-capture reference has no such link.
  • Simulation only, with no real robot; as in the replay, the simulation holds the object once the hand touches it.
  • Imitation is roughly capped by the replay: the demos are the robot’s own replays of each source’s labels. The reinforcement-learning results, which get a task signal, are the fairer test of whether learning can undo bad labels.

OakInk2: pick-and-place, against motion capture

On 123 OakInk2 pick-and-place episodes, imitation policies trained on our labels succeed in 0.21 of held-out tests, against 0.03 to 0.12 for head-camera labels (MediaPipe to HaWoR; ours − WiLoR +0.13, 95% CI [+0.08, +0.18]); the motion-capture labels reach 0.29 and the combination of our placement with the head camera’s hand shape 0.23. With tracking and reinforcement learning, ours reaches 0.41 against 0.24 to 0.28 for head-camera labels and 0.46 for motion capture.

00.250.50.751Policy successimitation+ RLReference hands (motion capture): imitation 0.29 [0.24, 0.36], tracking + RL 0.46 [0.38, 0.54]Reference hands (motion capture)0.290.46 Ours: fixed cameras: imitation 0.21 [0.16, 0.26], tracking + RL 0.41 [0.34, 0.49]Ours: fixed cameras0.210.41 Combination: ours + head camera: imitation 0.23 [0.18, 0.28], tracking + RL 0.39 [0.32, 0.47]Combination: ours + head camera0.230.39 WiLoR + given head poses: imitation 0.08 [0.06, 0.11], tracking + RL 0.25 [0.19, 0.31]WiLoR + given head poses0.080.25 HaWoR, given head poses: imitation 0.12 [0.09, 0.15], tracking + RL 0.28 [0.21, 0.35]HaWoR, given head poses0.120.28 Ours, head camera only: lifter: imitation 0.09 [0.06, 0.13], tracking + RL 0.24 [0.17, 0.30]Ours, head camera only: lifter0.090.24 MediaPipe, head camera: imitation 0.03 [0.01, 0.05]MediaPipe, head camera0.03–Policy success · imitation · + RL00.250.50.751Reference hands (motion capture)0.29 · 0.46Ours: fixed cameras0.21 · 0.41Combination: ours + head camera0.23 · 0.39WiLoR + given head poses0.08 · 0.25HaWoR, given head poses0.12 · 0.28Ours, head camera only: lifter0.09 · 0.24MediaPipe, head camera0.03 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 1Policy success per label source, OakInk2 pick-and-place, against a motion-capture reference independent of every camera. 123 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.290.46−0.09
[−0.14, −0.03]
Ours280.210.41–
Combination360.230.39−0.02
[−0.06, +0.03]
WiLoR730.080.25+0.13
[+0.08, +0.18]
HaWoR1160.120.28+0.09
[+0.04, +0.15]
Head-camera lifter (ours)680.090.24+0.12
[+0.06, +0.18]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.29
[0.24, 0.36]
−0.09
[−0.14, −0.03]
0.09 / 0.150.46
[0.38, 0.54]
−0.05
[−0.12, +0.03]
Ours: fixed cameras28.40.21
[0.16, 0.26]
–0.08 / 0.140.41
[0.34, 0.49]
–
WiLoR + given head poses73.00.08
[0.06, 0.11]
+0.13
[+0.08, +0.18]
0.03 / 0.050.25
[0.19, 0.31]
+0.16
[+0.08, +0.24]
HaWoR, given head poses116.20.12
[0.09, 0.15]
+0.09
[+0.04, +0.15]
0.03 / 0.060.28
[0.21, 0.35]
+0.13
[+0.05, +0.21]
Ours, head camera only: lifter67.80.09
[0.06, 0.13]
+0.12
[+0.06, +0.18]
0.04 / 0.080.24
[0.17, 0.30]
+0.18
[+0.11, +0.25]
MediaPipe, head camera90.90.03
[0.01, 0.05]
+0.18
[+0.13, +0.24]
0.01 / 0.02––
Combination: ours + head camera35.80.23
[0.18, 0.28]
−0.02
[−0.06, +0.03]
0.07 / 0.150.39
[0.32, 0.47]
+0.02
[−0.04, +0.08]
Combination, post-hoc variant35.70.23
[0.18, 0.28]
−0.02
[−0.06, +0.02]
0.07 / 0.140.35
[0.28, 0.42]
+0.07
[+0.01, +0.12]
Reference + 25 mm drift22.00.18
[0.14, 0.23]
+0.03
[−0.03, +0.08]
0.07 / 0.120.36
[0.27, 0.43]
+0.06
[−0.03, +0.14]
Reference + 50 mm drift43.70.12
[0.09, 0.15]
+0.09
[+0.04, +0.15]
0.06 / 0.09––

OakInk2 pick-and-place, 123 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

OakInk2: sliding an object

On 150 OakInk2 slide episodes, imitation policies trained on our labels succeed in 0.31 of held-out tests, against 0.12 to 0.20 for head-camera labels (MediaPipe to our head-camera lifter); ours − WiLoR is +0.15, 95% CI [+0.09, +0.20]. Our labels are level with the motion-capture labels (0.33; ours − motion capture −0.02, 95% CI [−0.07, +0.02]). With tracking and reinforcement learning, ours reaches 0.42 against 0.24 to 0.33 for head-camera labels and 0.45 for motion capture.

00.250.50.751Policy successimitation+ RLReference hands (motion capture): imitation 0.33 [0.28, 0.38], tracking + RL 0.45 [0.39, 0.52]Reference hands (motion capture)0.330.45 Ours: fixed cameras: imitation 0.31 [0.26, 0.36], tracking + RL 0.42 [0.35, 0.48]Ours: fixed cameras0.310.42 Combination: ours + head camera: imitation 0.32 [0.28, 0.37], tracking + RL 0.42 [0.36, 0.49]Combination: ours + head camera0.320.42 WiLoR + given head poses: imitation 0.16 [0.12, 0.20], tracking + RL 0.24 [0.18, 0.29]WiLoR + given head poses0.160.24 HaWoR, given head poses: imitation 0.15 [0.12, 0.19], tracking + RL 0.27 [0.21, 0.33]HaWoR, given head poses0.150.27 Ours, head camera only: lifter: imitation 0.20 [0.16, 0.24], tracking + RL 0.33 [0.26, 0.40]Ours, head camera only: lifter0.200.33 MediaPipe, head camera: imitation 0.12 [0.09, 0.16]MediaPipe, head camera0.12–Policy success · imitation · + RL00.250.50.751Reference hands (motion capture)0.33 · 0.45Ours: fixed cameras0.31 · 0.42Combination: ours + head camera0.32 · 0.42WiLoR + given head poses0.16 · 0.24HaWoR, given head poses0.15 · 0.27Ours, head camera only: lifter0.20 · 0.33MediaPipe, head camera0.12 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 2Policy success per label source, OakInk2 slide, against motion-capture labels. 150 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.330.45−0.02
[−0.07, +0.02]
Ours170.310.42–
Combination310.320.42−0.02
[−0.06, +0.02]
WiLoR780.160.24+0.15
[+0.09, +0.20]
HaWoR1010.150.27+0.15
[+0.10, +0.21]
Head-camera lifter (ours)640.200.33+0.11
[+0.07, +0.15]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.33
[0.28, 0.38]
−0.02
[−0.07, +0.02]
–0.45
[0.39, 0.52]
−0.04
[−0.11, +0.03]
Ours: fixed cameras16.90.31
[0.26, 0.36]
––0.42
[0.35, 0.48]
–
WiLoR + given head poses78.20.16
[0.12, 0.20]
+0.15
[+0.09, +0.20]
–0.24
[0.18, 0.29]
+0.18
[+0.11, +0.25]
HaWoR, given head poses101.10.15
[0.12, 0.19]
+0.15
[+0.10, +0.21]
–0.27
[0.21, 0.33]
+0.14
[+0.07, +0.22]
Ours, head camera only: lifter63.80.20
[0.16, 0.24]
+0.11
[+0.07, +0.15]
–0.33
[0.26, 0.40]
+0.09
[+0.01, +0.17]
MediaPipe, head camera86.40.12
[0.09, 0.16]
+0.18
[+0.14, +0.24]
–––
Combination: ours + head camera30.90.32
[0.28, 0.37]
−0.02
[−0.06, +0.02]
–0.42
[0.36, 0.49]
−0.01
[−0.07, +0.05]
Combination, post-hoc variant42.20.31
[0.26, 0.36]
0.00
[−0.04, +0.04]
–0.41
[0.34, 0.48]
0.00
[−0.07, +0.07]
Reference + 25 mm drift21.70.26
[0.21, 0.30]
+0.05
[0.00, +0.10]
–0.39
[0.33, 0.46]
+0.02
[−0.06, +0.10]
Reference + 50 mm drift43.20.15
[0.12, 0.18]
+0.15
[+0.10, +0.20]
–––

OakInk2 slide, 150 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

OakInk2: lift-and-return

On 36 OakInk2 lift-and-return episodes there is no clear difference between our labels and WiLoR’s: imitation policies succeed in 0.20 of held-out tests with ours and 0.18 with WiLoR’s (ours − WiLoR +0.02, 95% CI [−0.08, +0.12]). Ours sits well below the motion-capture labels (0.36; ours − motion capture −0.16, 95% CI [−0.27, −0.07]), and so does every head-camera source. With tracking and reinforcement learning the picture is the same: 0.32 for ours, 0.29 for WiLoR’s and 0.50 for motion capture. With so few episodes the intervals are wide.

00.250.50.751Policy successimitation+ RLReference hands (motion capture): imitation 0.36 [0.26, 0.47], tracking + RL 0.50 [0.37, 0.63]Reference hands (motion capture)0.360.50 Ours: fixed cameras: imitation 0.20 [0.11, 0.30], tracking + RL 0.32 [0.20, 0.45]Ours: fixed cameras0.200.32 Combination: ours + head camera: imitation 0.23 [0.14, 0.33], tracking + RL 0.34 [0.22, 0.47]Combination: ours + head camera0.230.34 WiLoR + given head poses: imitation 0.18 [0.12, 0.25], tracking + RL 0.29 [0.19, 0.39]WiLoR + given head poses0.180.29 HaWoR, given head poses: imitation 0.14 [0.07, 0.21], tracking + RL 0.28 [0.16, 0.42]HaWoR, given head poses0.140.28 Ours, head camera only: lifter: imitation 0.13 [0.06, 0.21], tracking + RL 0.25 [0.13, 0.38]Ours, head camera only: lifter0.130.25 MediaPipe, head camera: imitation 0.06 [0.03, 0.10]MediaPipe, head camera0.06–Policy success · imitation · + RL00.250.50.751Reference hands (motion capture)0.36 · 0.50Ours: fixed cameras0.20 · 0.32Combination: ours + head camera0.23 · 0.34WiLoR + given head poses0.18 · 0.29HaWoR, given head poses0.14 · 0.28Ours, head camera only: lifter0.13 · 0.25MediaPipe, head camera0.06 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 3Policy success per label source, OakInk2 lift-and-return, against motion-capture labels. 36 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.360.50−0.16
[−0.27, −0.07]
Ours210.200.32–
Combination380.230.34−0.04
[−0.10, +0.03]
WiLoR830.180.29+0.02
[−0.08, +0.12]
HaWoR1640.140.28+0.06
[−0.03, +0.16]
Head-camera lifter (ours)780.130.25+0.07
[−0.04, +0.19]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.36
[0.26, 0.47]
−0.16
[−0.27, −0.07]
0.14 / 0.280.50
[0.37, 0.63]
−0.18
[−0.31, −0.04]
Ours: fixed cameras20.50.20
[0.11, 0.30]
–0.12 / 0.160.32
[0.20, 0.45]
–
WiLoR + given head poses82.90.18
[0.12, 0.25]
+0.02
[−0.08, +0.12]
0.19 / 0.180.29
[0.19, 0.39]
+0.04
[−0.11, +0.18]
HaWoR, given head poses163.80.14
[0.07, 0.21]
+0.06
[−0.03, +0.16]
0.10 / 0.140.28
[0.16, 0.42]
+0.05
[−0.12, +0.21]
Ours, head camera only: lifter78.30.13
[0.06, 0.21]
+0.07
[−0.04, +0.19]
0.13 / 0.110.25
[0.13, 0.38]
+0.07
[−0.11, +0.27]
MediaPipe, head camera107.30.06
[0.03, 0.10]
+0.14
[+0.05, +0.24]
0.04 / 0.04––
Combination: ours + head camera38.30.23
[0.14, 0.33]
−0.04
[−0.10, +0.03]
0.18 / 0.200.34
[0.22, 0.47]
−0.02
[−0.15, +0.11]
Combination, post-hoc variant40.30.20
[0.12, 0.29]
−0.01
[−0.06, +0.06]
0.19 / 0.240.31
[0.19, 0.44]
+0.01
[−0.15, +0.17]
Reference + 25 mm drift22.50.27
[0.19, 0.37]
−0.08
[−0.19, +0.03]
0.15 / 0.200.43
[0.30, 0.56]
−0.10
[−0.26, +0.06]
Reference + 50 mm drift45.00.15
[0.09, 0.22]
+0.05
[−0.04, +0.14]
0.11 / 0.16––

OakInk2 lift-and-return, 36 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

HO-Cap: reorienting an object

On 41 reorientation episodes, imitation policies trained on our labels succeed in 0.29 of held-out tests, level with the reference labels (0.27), against 0.03 to 0.10 for head-camera labels (MediaPipe to our head-camera lifter); ours leads each head-camera source by 0.19 to 0.26, every interval above zero.

00.250.50.751Policy successimitation+ RLReference hands (HO-Cap fit): imitation 0.27 [0.19, 0.36], tracking + RL 0.60 [0.46, 0.73]Reference hands (HO-Cap fit)0.270.60 Ours: fixed cameras: imitation 0.29 [0.19, 0.40], tracking + RL 0.47 [0.33, 0.61]Ours: fixed cameras0.290.47 WiLoR + given head poses: imitation 0.08 [0.05, 0.11], tracking + RL 0.28 [0.15, 0.40]WiLoR + given head poses0.080.28 WiLoR + HaWoR’s SLAM: imitation 0.07 [0.04, 0.12], tracking + RL 0.15 [0.07, 0.24]WiLoR + HaWoR’s SLAM0.070.15 HaWoR, given head poses: imitation 0.07 [0.04, 0.11], tracking + RL 0.12 [0.05, 0.21]HaWoR, given head poses0.070.12 HaWoR, own SLAM: imitation 0.09 [0.04, 0.14]HaWoR, own SLAM0.09– Ours, head camera only: lifter: imitation 0.10 [0.05, 0.16], tracking + RL 0.33 [0.20, 0.46]Ours, head camera only: lifter0.100.33 MediaPipe, head camera: imitation 0.03 [0.01, 0.06]MediaPipe, head camera0.03–Policy success · imitation · + RL00.250.50.751Reference hands (HO-Cap fit)0.27 · 0.60Ours: fixed cameras0.29 · 0.47WiLoR + given head poses0.08 · 0.28WiLoR + HaWoR’s SLAM0.07 · 0.15HaWoR, given head poses0.07 · 0.12HaWoR, own SLAM0.09 · –Ours, head camera only: lifter0.10 · 0.33MediaPipe, head camera0.03 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 4Policy success per label source, HO-Cap reorientation. 41 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes. HO-Cap’s reference shares cameras with ours, which flatters our row.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.270.60+0.02
[−0.03, +0.07]
Ours80.290.47–
WiLoR630.080.28+0.21
[+0.11, +0.32]
WiLoR + SLAM630.070.15+0.22
[+0.12, +0.33]
HaWoR630.070.12+0.22
[+0.13, +0.31]
Head-camera lifter (ours)510.100.33+0.19
[+0.11, +0.28]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.27
[0.19, 0.36]
+0.02
[−0.03, +0.07]
0.16 / 0.200.60
[0.46, 0.73]
−0.13
[−0.24, −0.02]
Ours: fixed cameras8.20.29
[0.19, 0.40]
–0.19 / 0.230.47
[0.33, 0.61]
–
WiLoR + given head poses63.20.08
[0.05, 0.11]
+0.21
[+0.11, +0.32]
0.05 / 0.060.28
[0.15, 0.40]
+0.20
[+0.05, +0.35]
WiLoR + HaWoR’s SLAM63.00.07
[0.04, 0.12]
+0.22
[+0.12, +0.33]
0.05 / 0.070.15
[0.07, 0.24]
+0.32
[+0.18, +0.46]
HaWoR, given head poses62.70.07
[0.04, 0.11]
+0.22
[+0.13, +0.31]
0.08 / 0.080.12
[0.05, 0.21]
+0.35
[+0.21, +0.49]
HaWoR, own SLAM64.30.09
[0.04, 0.14]
+0.21
[+0.12, +0.30]
0.07 / 0.07––
Ours, head camera only: lifter51.40.10
[0.05, 0.16]
+0.19
[+0.11, +0.28]
0.09 / 0.110.33
[0.20, 0.46]
+0.14
[0.00, +0.28]
MediaPipe, head camera114.80.03
[0.01, 0.06]
+0.26
[+0.17, +0.37]
0.06 / 0.05––
Reference + 25 mm drift21.30.26
[0.18, 0.36]
+0.03
[−0.06, +0.12]
0.16 / 0.220.53
[0.39, 0.67]
−0.06
[−0.15, +0.03]
Reference + 50 mm drift41.60.15
[0.09, 0.23]
+0.14
[+0.04, +0.25]
0.08 / 0.110.30
[0.18, 0.42]
+0.17
[+0.02, +0.33]

Reorientation, 41 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

HO-Cap: lift-and-return

On 14 lift-and-return episodes, our labels come in below the reference (0.44 against 0.57; −0.13, 95% CI [−0.31, +0.01], an interval that includes zero) and lead WiLoR’s by +0.38 [+0.18, +0.58].

00.250.50.751Policy successimitation+ RLReference hands (HO-Cap fit): imitation 0.57 [0.36, 0.76], tracking + RL 0.74 [0.52, 0.93]Reference hands (HO-Cap fit)0.570.74 Ours: fixed cameras: imitation 0.44 [0.24, 0.64], tracking + RL 0.69 [0.45, 0.93]Ours: fixed cameras0.440.69 WiLoR + given head poses: imitation 0.06 [0.01, 0.12], tracking + RL 0.36 [0.17, 0.57]WiLoR + given head poses0.060.36 WiLoR + HaWoR’s SLAM: imitation 0.11 [0.03, 0.21], tracking + RL 0.43 [0.21, 0.64]WiLoR + HaWoR’s SLAM0.110.43 HaWoR, given head poses: imitation 0.16 [0.03, 0.33], tracking + RL 0.40 [0.19, 0.64]HaWoR, given head poses0.160.40 HaWoR, own SLAM: imitation 0.19 [0.04, 0.38]HaWoR, own SLAM0.19– Ours, head camera only: lifter: imitation 0.22 [0.07, 0.40], tracking + RL 0.57 [0.29, 0.79]Ours, head camera only: lifter0.220.57 MediaPipe, head camera: imitation 0.04 [0.01, 0.07]MediaPipe, head camera0.04–Policy success · imitation · + RL00.250.50.751Reference hands (HO-Cap fit)0.57 · 0.74Ours: fixed cameras0.44 · 0.69WiLoR + given head poses0.06 · 0.36WiLoR + HaWoR’s SLAM0.11 · 0.43HaWoR, given head poses0.16 · 0.40HaWoR, own SLAM0.19 · –Ours, head camera only: lifter0.22 · 0.57MediaPipe, head camera0.04 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 5Policy success per label source, HO-Cap lift-and-return. 14 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes. HO-Cap’s reference shares cameras with ours, which flatters our row.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.570.74−0.13
[−0.31, +0.01]
Ours80.440.69–
WiLoR600.060.36+0.38
[+0.18, +0.58]
WiLoR + SLAM660.110.43+0.33
[+0.09, +0.56]
HaWoR590.160.40+0.28
[+0.04, +0.52]
Head-camera lifter (ours)500.220.57+0.21
[−0.05, +0.46]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.57
[0.36, 0.76]
−0.13
[−0.31, +0.01]
0.31 / 0.330.74
[0.52, 0.93]
−0.05
[−0.21, +0.07]
Ours: fixed cameras8.20.44
[0.24, 0.64]
–0.20 / 0.250.69
[0.45, 0.93]
–
WiLoR + given head poses60.00.06
[0.01, 0.12]
+0.38
[+0.18, +0.58]
0.06 / 0.080.36
[0.17, 0.57]
+0.33
[+0.17, +0.52]
WiLoR + HaWoR’s SLAM66.00.11
[0.03, 0.21]
+0.33
[+0.09, +0.56]
0.05 / 0.060.43
[0.21, 0.64]
+0.26
[+0.10, +0.45]
HaWoR, given head poses58.60.16
[0.03, 0.33]
+0.28
[+0.04, +0.52]
0.07 / 0.130.40
[0.19, 0.64]
+0.29
[+0.02, +0.55]
HaWoR, own SLAM61.40.19
[0.04, 0.38]
+0.25
[−0.03, +0.50]
0.10 / 0.14––
Ours, head camera only: lifter49.80.22
[0.07, 0.40]
+0.21
[−0.05, +0.46]
0.14 / 0.150.57
[0.29, 0.79]
+0.12
[−0.14, +0.40]
MediaPipe, head camera118.20.04
[0.01, 0.07]
+0.40
[+0.22, +0.58]
0.01 / 0.02––
Reference + 25 mm drift21.10.38
[0.19, 0.59]
+0.06
[−0.22, +0.34]
0.27 / 0.380.74
[0.52, 0.93]
−0.05
[−0.26, +0.17]
Reference + 50 mm drift42.50.26
[0.11, 0.43]
+0.18
[−0.06, +0.40]
0.11 / 0.170.50
[0.24, 0.74]
+0.19
[−0.07, +0.45]

Lift-and-return, 14 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

HO-Cap: pouring

Pouring (15 episodes) is too hard for imitation to separate the sources, with the reference labels at only 0.14; with reinforcement learning, ours reaches 0.53 against 0.20 for WiLoR (+0.33, 95% CI [+0.07, +0.60]).

00.250.50.751Policy successimitation+ RLReference hands (HO-Cap fit): imitation 0.14 [0.04, 0.29], tracking + RL 0.44 [0.24, 0.67]Reference hands (HO-Cap fit)0.140.44 Ours: fixed cameras: imitation 0.13 [0.07, 0.21], tracking + RL 0.53 [0.31, 0.76]Ours: fixed cameras0.130.53 WiLoR + given head poses: imitation 0.05 [0.01, 0.11], tracking + RL 0.20 [0.04, 0.38]WiLoR + given head poses0.050.20 WiLoR + HaWoR’s SLAM: imitation 0.06 [0.02, 0.12], tracking + RL 0.20 [0.07, 0.38]WiLoR + HaWoR’s SLAM0.060.20 HaWoR, given head poses: imitation 0.02 [0.00, 0.03], tracking + RL 0.13 [0.02, 0.29]HaWoR, given head poses0.020.13 HaWoR, own SLAM: imitation 0.11 [0.03, 0.23]HaWoR, own SLAM0.11– Ours, head camera only: lifter: imitation 0.10 [0.03, 0.19], tracking + RL 0.27 [0.07, 0.51]Ours, head camera only: lifter0.100.27 MediaPipe, head camera: imitation 0.01 [0.00, 0.01]MediaPipe, head camera0.01–Policy success · imitation · + RL00.250.50.751Reference hands (HO-Cap fit)0.14 · 0.44Ours: fixed cameras0.13 · 0.53WiLoR + given head poses0.05 · 0.20WiLoR + HaWoR’s SLAM0.06 · 0.20HaWoR, given head poses0.02 · 0.13HaWoR, own SLAM0.11 · –Ours, head camera only: lifter0.10 · 0.27MediaPipe, head camera0.01 · –

imitationtracking + reinforcement learning95% confidence interval

Fig. 6Policy success per label source, HO-Cap pouring. 15 episodes × 6 held-out start poses × 5 training seeds per source, in simulation; intervals are over episodes. The imitation dots are mostly noise here: adding drift to the reference labels does not lower success steadily (0.22 at 25 mm). HO-Cap’s reference shares cameras with ours, which flatters our row.
Labelserror (mm)imitationtracking + RLours − this
Reference–0.140.44−0.01
[−0.11, +0.06]
Ours100.130.53–
WiLoR610.050.20+0.08
[−0.01, +0.17]
WiLoR + SLAM600.060.20+0.07
[−0.02, +0.16]
HaWoR690.020.13+0.11
[+0.05, +0.19]
Head-camera lifter (ours)500.100.27+0.03
[−0.06, +0.11]
Full results table
Label sourcelabel error (mm)imitationours − thiswith 25% / 50% of demostracking + RLours − this
Reference hands0.00.14
[0.04, 0.29]
−0.01
[−0.11, +0.06]
0.12 / 0.040.44
[0.24, 0.67]
+0.09
[−0.13, +0.31]
Ours: fixed cameras9.50.13
[0.07, 0.21]
–0.10 / 0.060.53
[0.31, 0.76]
–
WiLoR + given head poses61.30.05
[0.01, 0.11]
+0.08
[−0.01, +0.17]
0.06 / 0.050.20
[0.04, 0.38]
+0.33
[+0.07, +0.60]
WiLoR + HaWoR’s SLAM60.10.06
[0.02, 0.12]
+0.07
[−0.02, +0.16]
0.08 / 0.040.20
[0.07, 0.38]
+0.33
[+0.07, +0.60]
HaWoR, given head poses69.00.02
[0.00, 0.03]
+0.11
[+0.05, +0.19]
0.03 / 0.040.13
[0.02, 0.29]
+0.40
[+0.13, +0.64]
HaWoR, own SLAM64.00.11
[0.03, 0.23]
+0.02
[−0.12, +0.14]
0.03 / 0.02––
Ours, head camera only: lifter50.20.10
[0.03, 0.19]
+0.03
[−0.06, +0.11]
0.11 / 0.130.27
[0.07, 0.51]
+0.27
[+0.09, +0.49]
MediaPipe, head camera132.50.01
[0.00, 0.01]
+0.12
[+0.06, +0.20]
0.00 / 0.03––
Reference + 25 mm drift21.10.22
[0.10, 0.37]
−0.09
[−0.24, +0.03]
0.04 / 0.110.51
[0.27, 0.76]
+0.02
[−0.24, +0.31]
Reference + 50 mm drift42.90.20
[0.06, 0.38]
−0.07
[−0.22, +0.05]
0.15 / 0.100.42
[0.20, 0.67]
+0.11
[−0.13, +0.36]

Pouring, 15 episodes × 6 held-out start poses × 5 training seeds. Imitation and tracking + RL success with 95% intervals over episodes; “ours − this” is paired. The drift rows add smooth drift to the reference labels.

With fewer demos

On OakInk2 pick-and-place, our labels lead WiLoR’s and HaWoR’s at every share of the demos: 0.08 against at most 0.03 with a quarter, 0.21 against at most 0.12 with all of them. With a quarter of the HO-Cap reorientation demos our labels reach 0.19, and no head-camera source gets above 0.10 with all of them. On the lift-and-return tasks and on pouring, where every source is noisier, the curves sit closer together.

00.20.40.625%50%100%OakInk2 pick-and-placeundefined: 0.07 at 25%, 0.15 at 50%, 0.23 at 100%Ours, head camera only: lifter: 0.04 at 25%, 0.08 at 50%, 0.09 at 100%MediaPipe, head camera: 0.01 at 25%, 0.02 at 50%, 0.03 at 100%Reference hands: 0.09 at 25%, 0.15 at 50%, 0.29 at 100%Ours: fixed cameras: 0.08 at 25%, 0.14 at 50%, 0.21 at 100%WiLoR + given head poses: 0.03 at 25%, 0.05 at 50%, 0.08 at 100%HaWoR, given head poses: 0.03 at 25%, 0.06 at 50%, 0.12 at 100%Reference 0.29Ours 0.21HaWoR 0.12WiLoR 0.0800.20.40.625%50%100%OakInk2 lift-and-returnundefined: 0.18 at 25%, 0.20 at 50%, 0.23 at 100%Ours, head camera only: lifter: 0.13 at 25%, 0.11 at 50%, 0.13 at 100%MediaPipe, head camera: 0.04 at 25%, 0.04 at 50%, 0.06 at 100%Reference hands: 0.14 at 25%, 0.28 at 50%, 0.36 at 100%Ours: fixed cameras: 0.12 at 25%, 0.16 at 50%, 0.20 at 100%WiLoR + given head poses: 0.19 at 25%, 0.18 at 50%, 0.18 at 100%HaWoR, given head poses: 0.10 at 25%, 0.14 at 50%, 0.14 at 100%Reference 0.36Ours 0.20WiLoR 0.18HaWoR 0.1400.20.40.625%50%100%HO-Cap reorientationWiLoR + HaWoR’s SLAM: 0.05 at 25%, 0.07 at 50%, 0.07 at 100%HaWoR, own SLAM: 0.07 at 25%, 0.07 at 50%, 0.09 at 100%Ours, head camera only: lifter: 0.09 at 25%, 0.11 at 50%, 0.10 at 100%MediaPipe, head camera: 0.06 at 25%, 0.05 at 50%, 0.03 at 100%Reference hands: 0.16 at 25%, 0.20 at 50%, 0.27 at 100%Ours: fixed cameras: 0.19 at 25%, 0.23 at 50%, 0.29 at 100%WiLoR + given head poses: 0.05 at 25%, 0.06 at 50%, 0.08 at 100%HaWoR, given head poses: 0.08 at 25%, 0.08 at 50%, 0.07 at 100%Ours 0.29Reference 0.27WiLoR 0.08HaWoR 0.0700.20.40.625%50%100%HO-Cap lift-and-returnWiLoR + HaWoR’s SLAM: 0.05 at 25%, 0.06 at 50%, 0.11 at 100%HaWoR, own SLAM: 0.10 at 25%, 0.14 at 50%, 0.19 at 100%Ours, head camera only: lifter: 0.14 at 25%, 0.15 at 50%, 0.22 at 100%MediaPipe, head camera: 0.01 at 25%, 0.02 at 50%, 0.04 at 100%Reference hands: 0.31 at 25%, 0.33 at 50%, 0.57 at 100%Ours: fixed cameras: 0.20 at 25%, 0.25 at 50%, 0.44 at 100%WiLoR + given head poses: 0.06 at 25%, 0.08 at 50%, 0.06 at 100%HaWoR, given head poses: 0.07 at 25%, 0.13 at 50%, 0.16 at 100%Reference 0.57Ours 0.44HaWoR 0.16WiLoR 0.0600.20.40.625%50%100%HO-Cap pouringWiLoR + HaWoR’s SLAM: 0.08 at 25%, 0.04 at 50%, 0.06 at 100%HaWoR, own SLAM: 0.03 at 25%, 0.02 at 50%, 0.11 at 100%Ours, head camera only: lifter: 0.11 at 25%, 0.13 at 50%, 0.10 at 100%MediaPipe, head camera: 0.00 at 25%, 0.03 at 50%, 0.01 at 100%Reference hands: 0.12 at 25%, 0.04 at 50%, 0.14 at 100%Ours: fixed cameras: 0.10 at 25%, 0.06 at 50%, 0.13 at 100%WiLoR + given head poses: 0.06 at 25%, 0.05 at 50%, 0.05 at 100%HaWoR, given head poses: 0.03 at 25%, 0.04 at 50%, 0.02 at 100%Reference 0.14Ours 0.13WiLoR 0.05HaWoR 0.0200.20.40.625%50%100%OakInk2 pick-and-placeundefined: 0.07 at 25%, 0.15 at 50%, 0.23 at 100%Ours, head camera only: lifter: 0.04 at 25%, 0.08 at 50%, 0.09 at 100%MediaPipe, head camera: 0.01 at 25%, 0.02 at 50%, 0.03 at 100%Reference hands: 0.09 at 25%, 0.15 at 50%, 0.29 at 100%Ours: fixed cameras: 0.08 at 25%, 0.14 at 50%, 0.21 at 100%WiLoR + given head poses: 0.03 at 25%, 0.05 at 50%, 0.08 at 100%HaWoR, given head poses: 0.03 at 25%, 0.06 at 50%, 0.12 at 100%Reference 0.29Ours 0.21HaWoR 0.12WiLoR 0.0800.20.40.625%50%100%OakInk2 lift-and-returnundefined: 0.18 at 25%, 0.20 at 50%, 0.23 at 100%Ours, head camera only: lifter: 0.13 at 25%, 0.11 at 50%, 0.13 at 100%MediaPipe, head camera: 0.04 at 25%, 0.04 at 50%, 0.06 at 100%Reference hands: 0.14 at 25%, 0.28 at 50%, 0.36 at 100%Ours: fixed cameras: 0.12 at 25%, 0.16 at 50%, 0.20 at 100%WiLoR + given head poses: 0.19 at 25%, 0.18 at 50%, 0.18 at 100%HaWoR, given head poses: 0.10 at 25%, 0.14 at 50%, 0.14 at 100%Reference 0.36Ours 0.20WiLoR 0.18HaWoR 0.1400.20.40.625%50%100%HO-Cap reorientationWiLoR + HaWoR’s SLAM: 0.05 at 25%, 0.07 at 50%, 0.07 at 100%HaWoR, own SLAM: 0.07 at 25%, 0.07 at 50%, 0.09 at 100%Ours, head camera only: lifter: 0.09 at 25%, 0.11 at 50%, 0.10 at 100%MediaPipe, head camera: 0.06 at 25%, 0.05 at 50%, 0.03 at 100%Reference hands: 0.16 at 25%, 0.20 at 50%, 0.27 at 100%Ours: fixed cameras: 0.19 at 25%, 0.23 at 50%, 0.29 at 100%WiLoR + given head poses: 0.05 at 25%, 0.06 at 50%, 0.08 at 100%HaWoR, given head poses: 0.08 at 25%, 0.08 at 50%, 0.07 at 100%Ours 0.29Reference 0.27WiLoR 0.08HaWoR 0.0700.20.40.625%50%100%HO-Cap lift-and-returnWiLoR + HaWoR’s SLAM: 0.05 at 25%, 0.06 at 50%, 0.11 at 100%HaWoR, own SLAM: 0.10 at 25%, 0.14 at 50%, 0.19 at 100%Ours, head camera only: lifter: 0.14 at 25%, 0.15 at 50%, 0.22 at 100%MediaPipe, head camera: 0.01 at 25%, 0.02 at 50%, 0.04 at 100%Reference hands: 0.31 at 25%, 0.33 at 50%, 0.57 at 100%Ours: fixed cameras: 0.20 at 25%, 0.25 at 50%, 0.44 at 100%WiLoR + given head poses: 0.06 at 25%, 0.08 at 50%, 0.06 at 100%HaWoR, given head poses: 0.07 at 25%, 0.13 at 50%, 0.16 at 100%Reference 0.57Ours 0.44HaWoR 0.16WiLoR 0.0600.20.40.625%50%100%HO-Cap pouringWiLoR + HaWoR’s SLAM: 0.08 at 25%, 0.04 at 50%, 0.06 at 100%HaWoR, own SLAM: 0.03 at 25%, 0.02 at 50%, 0.11 at 100%Ours, head camera only: lifter: 0.11 at 25%, 0.13 at 50%, 0.10 at 100%MediaPipe, head camera: 0.00 at 25%, 0.03 at 50%, 0.01 at 100%Reference hands: 0.12 at 25%, 0.04 at 50%, 0.14 at 100%Ours: fixed cameras: 0.10 at 25%, 0.06 at 50%, 0.13 at 100%WiLoR + given head poses: 0.06 at 25%, 0.05 at 50%, 0.05 at 100%HaWoR, given head poses: 0.03 at 25%, 0.04 at 50%, 0.02 at 100%Reference 0.14Ours 0.13WiLoR 0.05HaWoR 0.02

oursreference, WiLoR, HaWoRother label sources

Fig. 7Imitation success against the share of demos used for training (the same nested subsets for every source), in simulation. Each point is the mean over episodes, held-out start poses and training seeds.

More reinforcement learning

On OakInk2 pick-and-place, with the same compute for every source, success rises from 0.34 at 24 rollouts per episode to 0.47 at 384 for our labels, from 0.17 to 0.29 for WiLoR’s and from 0.21 to 0.31 for HaWoR’s; the motion-capture labels reach 0.51. The gap does not close with more compute: ours minus WiLoR goes from +0.17 to +0.18, and ours minus HaWoR from +0.13 to +0.16.

00.20.40.6244896192384Reference hands: 0.35 at 24, 0.42 at 48, 0.47 at 96, 0.50 at 192, 0.51 at 384 rollouts per episodeReference 0.51Ours: fixed cameras: 0.34 at 24, 0.36 at 48, 0.43 at 96, 0.44 at 192, 0.47 at 384 rollouts per episodeOurs 0.47WiLoR + given head poses: 0.17 at 24, 0.23 at 48, 0.27 at 96, 0.29 at 192, 0.29 at 384 rollouts per episodeWiLoR 0.29HaWoR, given head poses: 0.21 at 24, 0.26 at 48, 0.29 at 96, 0.33 at 192, 0.31 at 384 rollouts per episodeHaWoR 0.31 Rollouts per episode (log scale)Success on held-out start poses00.20.40.6244896192384Reference hands: 0.35 at 24, 0.42 at 48, 0.47 at 96, 0.50 at 192, 0.51 at 384 rollouts per episodeReference 0.51Ours: fixed cameras: 0.34 at 24, 0.36 at 48, 0.43 at 96, 0.44 at 192, 0.47 at 384 rollouts per episodeOurs 0.47WiLoR + given head poses: 0.17 at 24, 0.23 at 48, 0.27 at 96, 0.29 at 192, 0.29 at 384 rollouts per episodeWiLoR 0.29HaWoR, given head poses: 0.21 at 24, 0.26 at 48, 0.29 at 96, 0.33 at 192, 0.31 at 384 rollouts per episodeHaWoR 0.31 Rollouts per episode (log scale)Success on held-out start poses

success on held-out start poses after that many rollouts per episode

Fig. 8Tracking with reinforcement learning on OakInk2 pick-and-place, in simulation, the same budget for every label source, with motion capture as the reference; 123 episodes × 6 held-out start poses. A separate, longer run from the tables above. The correction learns from the simulator’s own success signal on each demo, more help than a deployed robot would get, so this is an upper bound on what RL can recover.

On HO-Cap reorientation, longer reinforcement learning levels off at different heights: at 384 rollouts per episode, 0.61 for the reference labels, 0.53 for ours, 0.30 for WiLoR’s and 0.16 for HaWoR’s (ours [0.39, 0.67] against WiLoR’s [0.19, 0.43]).

00.20.40.6244896192384Reference hands: 0.39 at 24, 0.52 at 48, 0.61 at 96, 0.61 at 192, 0.61 at 384 rollouts per episodeReference 0.61Ours: fixed cameras: 0.33 at 24, 0.39 at 48, 0.46 at 96, 0.51 at 192, 0.53 at 384 rollouts per episodeOurs 0.53WiLoR + given head poses: 0.13 at 24, 0.22 at 48, 0.26 at 96, 0.29 at 192, 0.30 at 384 rollouts per episodeWiLoR 0.30HaWoR, given head poses: 0.10 at 24, 0.14 at 48, 0.13 at 96, 0.14 at 192, 0.16 at 384 rollouts per episodeHaWoR 0.16 Rollouts per episode (log scale)Success on held-out start poses00.20.40.6244896192384Reference hands: 0.39 at 24, 0.52 at 48, 0.61 at 96, 0.61 at 192, 0.61 at 384 rollouts per episodeReference 0.61Ours: fixed cameras: 0.33 at 24, 0.39 at 48, 0.46 at 96, 0.51 at 192, 0.53 at 384 rollouts per episodeOurs 0.53WiLoR + given head poses: 0.13 at 24, 0.22 at 48, 0.26 at 96, 0.29 at 192, 0.30 at 384 rollouts per episodeWiLoR 0.30HaWoR, given head poses: 0.10 at 24, 0.14 at 48, 0.13 at 96, 0.14 at 192, 0.16 at 384 rollouts per episodeHaWoR 0.16 Rollouts per episode (log scale)Success on held-out start poses

success on held-out start poses after that many rollouts per episode

Fig. 9Tracking with reinforcement learning on HO-Cap reorientation, in simulation, the same budget for every label source; 41 episodes × 6 held-out start poses. A separate, longer run from the tables above. The correction learns from the simulator’s own success signal on each demo, more help than a deployed robot would get, so this is an upper bound on what RL can recover. It is one task on one dataset, where the head-camera error varies within an episode; where that error is closer to a constant offset, the gap may narrow more.

Synthetic demos from a few real ones

We expanded a tenth of the reorientation demos a hundredfold into synthetic demos, re-posed or with varied objects, table and clutter. With our labels these reach 0.11 and 0.09, against 0.29 from all the real demos: they succeed on the seed episodes (0.55) and not on the rest (0.06). Nor do they lift our labels above WiLoR’s full set of real demos (+0.03 [−0.03, +0.09] re-posed, +0.01 [−0.04, +0.07] with varied scenes).

Generation cost did separate our labels from the head-camera ones. A synthetic demo is kept only if it succeeds in simulation, and keeping 1,000 from a quarter of the demos took 2,160 attempts with our labels, against 7,008 with WiLoR’s and 9,504 with HaWoR’s, 3 to 4 times fewer (3,800, 11,720 and 16,360 with varied scenes).

Credits and licences

  • OakInk2: Zhan et al., “OakInk2: A Dataset of Bimanual Hands-Object Manipulation in Complex Task Completion”, CVPR 2024 (arXiv 2403.19417). CC BY-SA 4.0.
  • HO-Cap: Wang et al., “HO-Cap: A Capture System and Dataset for 3D Reconstruction and Pose Tracking of Hand-Object Interaction,” NeurIPS 2025 Datasets and Benchmarks Track (paper, project page). CC BY 4.0.
  • HaWoR: Zhang, Deng, Ma and Potamias, “HaWoR: World-Space Hand Motion Reconstruction from Egocentric Videos”, CVPR 2025 (arXiv 2501.02973). Code and weights used for evaluation only, under their licence.
  • WiLoR: Potamias et al., “WiLoR: End-to-end 3D Hand Localization and Reconstruction in-the-wild”, CVPR 2025 (arXiv 2409.12259). Evaluation only, under its licence.
  • MANO: Romero, Tzionas and Black, “Embodied Hands: Modeling and Capturing Hands and Bodies Together”, SIGGRAPH Asia 2017. Used by the baselines under its research licence.
  • DPVO: Teed, Lipson and Deng, “Deep Patch Visual Odometry”, NeurIPS 2023 (arXiv 2208.04726). MediaPipe Hands: Zhang et al., “MediaPipe Hands: On-device Real-time Hand Tracking” (arXiv 2006.10214), Apache-2.0. Physics: MuJoCo; robot hand: Inspire.

Benchmark split, metrics, replay and baseline runs by Autelica, 2026. Numbers on this page are generated from the evaluation files and checked against them at build time.