EgoHand4D · drive-inbox 0708 · champion v14d  ·  ← report home

SOTA hand tracking on real full-length industrial ego footage

Our deployed champion v14d (Stage-1 2D) + the fast direct-MANO head (Stage-2, ~2 ms/frame) run on 20 real ego-fisheye industrial clips (3 min each, 1920×1080@30, blue-nitrile gloves, barrel distortion, machinery, bystanders — a hard out-of-distribution domain with no ground truth). Each card shows the three modalities: 2D skeleton overlay, 3D MANO-AR mesh, and the temporal / 4D 3D+ego-camera orbit. Videos are 90-second windows (t=40–130 s) of each clip.

13
clean
6
phantom
1
dropped
20/20
working hand tracked

L = left slot · R = right slot · presence-gated fixed 2-slot design.

Headline. On all 20 clips the working hand is tracked in the real reach-band (zone-present 0.55–1.0): the champion holds both hands through blue-nitrile gloves, barrel distortion, tool occlusion, flame and furnace glare — a hard OOD domain it was never trained on. On the fine-manipulation stations (jewelry, wafer-packing, textile, solar/electrical) presence is essentially perfect with negligible phantom. Two failure modes remain. (1) Phantom hallucination — on 6 machinery-heavy clips a slot latches onto upper-frame structure (conveyor rails, press bodies, ingots) and reports a hand where there is none (phantom ≥30%); the real hand is still tracked, so this is a suppression gap, not a tracking loss. (2) Dropped presence — the one genuinely mobile clip (moving-metal-ingots, wearer walks) drops to 64% present. Both are labelled per-card below.
On the “4D” (world-frame) modality — honest status. A world-frame temporal optimizer exists (optimize_4d.py, egomotion separated by construction), but its gain is egomotion-proportional and it is a research PoC. We measured actual head-camera egomotion per clip (RANSAC affine on the static background): it is low-to-moderate — median ~8.5 px/frame translation, ~0.3°/frame rotation, spanning 1.6 px/f (a bolted-down bench, e.g. solar-panel-soldering) to 21.4 px/f (moving-metal-ingots, where the wearer walks). Most stations are near-fixed with oscillatory look-down/up motion, so world-frame ≈ camera-frame for them; the few mobile clips would benefit. Because the world-frame path is still blocked (VGGT camera-rotation error 17.7°) and not wired for wild Stage-1 init or 2700-frame clips, we ship the 3D + ego-camera orbit (panel 4) as the temporal/4D view and flag world-frame Stage-3 as the open direction. Full breakdown at the bottom.

Per-clip presence metrics (full 3-min inference)

clippresent Lpresent R phantom L↓phantom R↓zone Lzone Rcam px/f
Candy Sorting Industrial Table 82%94%46%34%44%62%21.17
Corn Sorting Conveyor 100%98%81%12%9.6
Crane Loader Metal Beams 83%92%46%21%45%73%7.31
Electrical Control Panel Wiring 82%99%51%61%5.64
Electronic Component Uv Inspection 100%100%88%100%1.62
Foil Wrapped Candy Sorting 96%97%40%11%58%87%12.87
Grape Sorting Trimming 97%100%9%3%89%96%7.1
Hand Weaving Rug Loom 99%100%87%94%8.52
Jewelry Blowtorch Soldering 100%100%0%4%100%96%2.7
Metal Spinning Lathe Bowl 87%95%62%14%33%82%12.34
Metal Stamping Press 87%97%42%42%51%56%9.58
Moving Metal Ingots Furnace 64%80%70%21%19%63%21.42
Power Drill Panel Assembly 100%100%98%98%2.44
Rotary Tool Polishing Enclosure 92%100%58%90%3.48
Soap Bar Sorting Tray 99%100%66%64%6.15
Solar Panel Soldering 95%91%23%11%73%81%1.56
Textile Hammering Frame 100%100%14%2%86%98%13.98
Two Hand Bench Manipulation 100%100%99%93%1.71
Wafer Stick Packing 99%100%2%1%97%98%8.52
Yellow Food Conveyor Sorting 100%100%68%1%32%99%8.63

Metrics scored by eval_ood_cctv.py over the full 5400-frame clip. present=slot emitted · phantom↓=present but in the no-hand upper band (lower=better; “—”=hands-upper clip where the geometric proxy is N/A) · zone-present=tracked hand in the valid lower work-band · cam px/f=per-frame head-camera translation (RANSAC affine on static background).

Per-clip results — 2D · 3D · 4D

Candy Sorting Industrial Table

ego-fisheye barrel-distortion blue-nitrile-glove hands-low phantom-on-machinery bystanders
PHANTOM
working hand tracked (zone 62%) but a slot hallucinates on upper-frame machinery (46% phantom) · cam motion ~21.17px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present82%94%
phantom↓46%34%
zone-present44%62%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Corn Sorting Conveyor

ego-fisheye hands-upper reaching-into-bin pink-sleeve
CLEAN
clean — both hands present, work-band tracked (zone 81%), negligible phantom · cam motion ~9.6px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%98%
phantom↓18%*88%*
zone-present81%12%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Crane Loader Metal Beams

ego-fisheye heavy-machinery distant-hands controls
PHANTOM
working hand tracked (zone 73%) but a slot hallucinates on upper-frame machinery (46% phantom) · cam motion ~7.31px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present83%92%
phantom↓46%21%
zone-present45%73%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Electrical Control Panel Wiring

ego-fisheye hands-upper-center fine-wiring bare-hand
CLEAN
clean — both hands present, work-band tracked (zone 61%), negligible phantom · cam motion ~5.64px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present82%99%
phantom↓38%*38%*
zone-present51%61%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Electronic Component Uv Inspection

ego-fisheye hands-center gloved specular-uv
CLEAN
clean — both hands present, work-band tracked (zone 100%), negligible phantom · cam motion ~1.62px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓11%*0%*
zone-present88%100%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Foil Wrapped Candy Sorting

ego-fisheye barrel-distortion colored-sleeve specular-foil hands-low phantom-on-machinery
PHANTOM
working hand tracked (zone 87%) but a slot hallucinates on upper-frame machinery (40% phantom) · cam motion ~12.87px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present96%97%
phantom↓40%11%
zone-present58%87%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Grape Sorting Trimming

ego-fisheye hands-low clutter bystanders crates
CLEAN
clean — both hands present, work-band tracked (zone 96%), negligible phantom · cam motion ~7.1px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present97%100%
phantom↓9%3%
zone-present89%96%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Hand Weaving Rug Loom

ego-fisheye hands-upper thread-occlusion repetitive
CLEAN
clean — both hands present, work-band tracked (zone 94%), negligible phantom · cam motion ~8.52px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present99%100%
phantom↓12%*6%*
zone-present87%94%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Jewelry Blowtorch Soldering

ego-fisheye hands-low fine-manipulation tool-occlusion flame
CLEAN
clean — both hands present, work-band tracked (zone 100%), negligible phantom · cam motion ~2.7px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓0%4%
zone-present100%96%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Metal Spinning Lathe Bowl

ego-fisheye barrel-distortion dark-glove specular-metal phantom-on-machinery
PHANTOM
working hand tracked (zone 82%) but a slot hallucinates on upper-frame machinery (62% phantom) · cam motion ~12.34px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present87%95%
phantom↓62%14%
zone-present33%82%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Metal Stamping Press

ego-fisheye barrel-distortion bare-hand hand-enters-machine reaching-foreshortened
PHANTOM
working hand tracked (zone 56%) but a slot hallucinates on upper-frame machinery (42% phantom) · cam motion ~9.58px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present87%97%
phantom↓42%42%
zone-present51%56%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Moving Metal Ingots Furnace

ego-fisheye furnace-glare glove hands-low distant
DROPPED
presence drops (min 64%, zone 63%) — hand tracked only part of the time · cam motion ~21.42px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present64%80%
phantom↓70%21%
zone-present19%63%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Power Drill Panel Assembly

ego-fisheye hands-center power-tool tool-occlusion
CLEAN
clean — both hands present, work-band tracked (zone 98%), negligible phantom · cam motion ~2.44px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓2%*2%*
zone-present98%98%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Rotary Tool Polishing Enclosure

ego-fisheye hands-center reflective-enclosure power-tool occlusion
CLEAN
clean — both hands present, work-band tracked (zone 90%), negligible phantom · cam motion ~3.48px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present92%100%
phantom↓37%*10%*
zone-present58%90%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Soap Bar Sorting Tray

ego-fisheye hands-upper-center sorting tray
CLEAN
clean — both hands present, work-band tracked (zone 66%), negligible phantom · cam motion ~6.15px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present99%100%
phantom↓33%*36%*
zone-present66%64%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Solar Panel Soldering

ego-fisheye blue-glove specular-panel hands-low soldering
CLEAN
clean — both hands present, work-band tracked (zone 81%), negligible phantom · cam motion ~1.56px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present95%91%
phantom↓23%11%
zone-present73%81%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Textile Hammering Frame

ego-fisheye hands-low tool repetitive patterned-bg
CLEAN
clean — both hands present, work-band tracked (zone 98%), negligible phantom · cam motion ~13.98px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓14%2%
zone-present86%98%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Two Hand Bench Manipulation

ego-fisheye hands-center bimanual bench bare-hand
CLEAN
clean — both hands present, work-band tracked (zone 99%), negligible phantom · cam motion ~1.71px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓1%*7%*
zone-present99%93%
*hands-upper clip — geometric phantom proxy N/A (hands legitimately in upper band)
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Wafer Stick Packing

ego-fisheye hands-low packing bystanders busy-table
CLEAN
clean — both hands present, work-band tracked (zone 98%), negligible phantom · cam motion ~8.52px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present99%100%
phantom↓2%1%
zone-present97%98%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

Yellow Food Conveyor Sorting

ego-fisheye blue-glove specular-grain hands-low phantom-on-machinery
PHANTOM
working hand tracked (zone 99%) but a slot hallucinates on upper-frame machinery (68% phantom) · cam motion ~8.63px/frame
2D — Stage-1 skeleton overlay (v14d champion)
LR
present100%100%
phantom↓68%1%
zone-present32%99%
3D + 4D  ·  panels: raw  |  2D skeleton  |  MANO-AR mesh (3D)  |  3D + ego-camera orbit (temporal / 4D)  ·  direct-MANO head, ~2 ms/frame

True-4D (world-frame) — status & evidence

The card videos above show the camera-frame temporal 3D (panel 4 = MANO in 3D + the ego-camera frustum, orbiting). A true-4D world-frame reconstruction additionally separates the wearer's head egomotion so the hand trajectory lives in a fixed world frame. Whether that is worth doing is egomotion-proportional, so we measured the real per-frame head-camera motion on every clip:

clipcam px/framecam °/frame
Moving Metal Ingots Furnace21.40.96
Candy Sorting Industrial Table21.20.64
Textile Hammering Frame14.00.58
Foil Wrapped Candy Sorting12.90.52
Metal Spinning Lathe Bowl12.30.41
Corn Sorting Conveyor9.60.46
Metal Stamping Press9.60.30
Yellow Food Conveyor Sorting8.60.23
Hand Weaving Rug Loom8.50.29
Wafer Stick Packing8.50.15
Crane Loader Metal Beams7.30.22
Grape Sorting Trimming7.10.26
Soap Bar Sorting Tray6.20.32
Electrical Control Panel Wiring5.60.19
Rotary Tool Polishing Enclosure3.50.13
Jewelry Blowtorch Soldering2.70.13
Power Drill Panel Assembly2.40.07
Two Hand Bench Manipulation1.70.04
Electronic Component Uv Inspection1.60.05
Solar Panel Soldering1.60.03
Finding. Egomotion is low-to-moderate and oscillatory (median ~8.5 px/f, ~0.3°/f). At most workstations the head barely translates (look-down/up), so world-frame ≈ camera-frame and the orbit panel already tells the temporal story. A handful of clips (moving-metal-ingots, candy-sorting, textile-hammering) show genuine head motion (>14 px/f) where a world-frame lift would add value. Why we don't ship it here. The world-frame optimizer (optimize_4d.py, Phase-A GT-cam proven: abs MPJPE 106→53 mm, orient 29→5°) needs a camera trajectory; the VGGT-Omega camera path is bottlenecked at 17.7° rotation error (translation is fine), which propagates straight into hand orientation, and the PoC is ARCTIC-tuned (GT-2D + HandLift init) — not yet wired for wild Stage-1 tracks or 2700-frame clips. Faking a world render on this footage would inject that rotation error for no honest gain, so we present the camera-frame orbit and keep world-frame as the tracked Stage-3 direction (highest payoff on the mobile clips).