The data

What ships in the box.

Every clip carries the full sensor stack, five layers of labels in the formats robot-learning teams already use, and the worker's own voice explaining his choices. This page is the deep dive: labels, sensors, specs, provenance, terms.

Unedited

A minute of the raw stream.

No cuts, no grading. This is what the model sees: 1080p50 wide RGB from the operator's eye line, with tool audio and narration.

The labels

How we label it.

We use the formats robot-learning teams already know: Ego4D hand-object interactions and EPIC-KITCHENS verb-noun actions. Every clip gets narration and keysteps. Every interaction gets boxes on its key frames. And the worker's own spoken reasons are linked to the steps they explain.

Keystep timeline of a full clip
1 · the whole clip, cut into verb-noun keysteps with timestamps
HOI critical frames: PRE / CONTACT / PNR / POST
2 · each interaction on its critical frames: pre → contact → PNR → post
Annotated frame: drive screw
3 · per-frame boxes: drive · screw · impact_driver
Annotated frame: cut board
3 · per-frame boxes: cut · board · miter_saw
left hand right hand tool object of change

layer 4 · his spoken reasons: transcribed, corrected by hand, tagged goal / plan / rationale / technique

{
  "clip": "ThumbPW_0005.MP4", "duration_s": 300.0, "fps": 50,
  "keysteps": [
    {"start_s": 0, "end_s": 52, "verb": "drive", "noun": "screw", "essential": true},
    {"start_s": 105, "end_s": 185, "verb": "cut", "noun": "board", "essential": true}
  ],
  "hoi_interactions": [
    {"verb": "drive", "noun": "screw", "tool": "impact_driver", "state_change": "attach",
     "critical_frames": { "PRE": {...}, "CONTACT": {...}, "PNR": {...}, "POST": {...} }}
  ],
  "spoken_intent": [
    {"t_start": 206.5, "tag": "rationale", "links_keystep": 8,
     "text": "Pre-drill first near a corner, otherwise it will split the wood."}
  ]
}  // ships as LeRobot v2.0: episodes, per-frame IMU, language, splits

Why nobody else has this: off-the-shelf hand trackers find zero hands in this footage. We tried MediaPipe. Work gloves and the steep helmet angle break them. So we verify a seed set by hand, train our own gloved-hand detector on it, and have the tradesperson review every label. Hard to copy when you can't even get a first detection.

The pipeline

From a helmet to your training loop.

The footage is filmed on his machine and bundled with its sensors into a shared repository. Our annotator proposes boxes and actions on keyframes. He corrects them: handedness, trade terms, what the action really was. The corrected labels ship as finals. And every verified hand box goes into the training seed for our own gloved-hand detector, which pre-fills the next batch. Each round he corrects less. The loop gets cheaper and more accurate as the corpus grows.

film (helmet, redacted at source)
  -> ingest: keyframes + IMU + transcript + manifest
  -> first-pass labels: boxes, verb-noun actions, narration
  -> his review: verdict on every frame
  -> final.json  ->  LeRobot packaging
  -> verified hand boxes feed the gloved-hand detector
  -> the detector pre-fills the next batch  (the loop)

Why we built this ourselves: no labeling vendor can even detect a gloved hand to start from. And the review step is not outsourced quality control. It is the man who did the work, correcting the machine on his own trade.

The instrument

We built the camera rig ourselves.

A jobsite helmet with a wide camera at the operator's eye line, a 1000 Hz IMU synced inside the camera (20 samples per frame, no manual offset to fix), an on-board mic, and an 8+ hour battery. Per-frame depth ships with every sample.

Purpose-built helmet camera, worn
the helmet · 8+ hr runtime · IMU + mic on board
Camera close-up
wide RGB at the eye line · calibration included
IMU angular rate aligned to video, banded by keystep
1000 Hz gyro, colored by keystep · ships as per-frame CSV
RGB frame and its monocular depth map
per-frame depth (Depth Anything V2, 16-bit)

Same sensor recipe as Project Aria (Meta) and EgoDex (Apple): first-person RGB + IMU + audio + depth + language. The difference is what we point it at. They cover bare-hand everyday activity. We cover gloved tool work on live jobsites. To be clear about limits: no eye-gaze, and no per-frame 3D finger pose, because gloves break those trackers. That is also why this footage is rare. Calibrated stereo and 3D pose are available on a dedicated shoot.

Specs

The full sheet.

viewhead-mounted, first-person, bimanual
video1920×1080 · 50 fps · H.264 · wide-angle, large FOV (undistortion params on request)
imu1000 Hz gyro + accelerometer, synced in-camera to the frame clock
audioon-board mic: tool + contact sound, plus the operator's spoken commentary (EN, some Mandarin)
depthper-frame monocular depth included (16-bit, Depth Anything V2) · stereo/sensor depth on request
labelsnarrations · verb-noun keysteps · HOI boxes on critical frames · spoken-intent track · (upgrade) hand pose, tracks, 3D
formatEgo4D FHO annotations · LeRobot v2.0 packaging · per-frame JSON (normalized + pixel, ms + timecode)
rigpurpose-built jobsite helmet, built in-house · 8+ hours per charge
privacyfaces, plates, phone screens redacted at source before delivery · EXIF strippable
termsevaluation sample (eval only) · per-hour licensing · collect-to-spec · exclusive or non-exclusive
Provenance

The questions buyers ask first.

Where it comes from, and the limits

  • Source: filmed by working tradespeople on real jobsites. Real work, not staged.
  • Sensors: wide RGB + 1000 Hz IMU + audio on our own helmet. Lens calibration included (nominal; confirm with a checkerboard for metric 3D).
  • Depth is monocular estimation (Depth Anything V2), not a depth sensor. Stereo / sensor depth is an upgrade.
  • Hands are labeled by people. Off-the-shelf trackers fail on gloves. We tried.
  • Privacy: faces, plates, and phone screens are redacted at the source before anything ships; bystanders in public areas can appear.

License & terms

  • Evaluation sample: eval only: no redistribution, no training without an agreement.
  • Per-hour licensing of raw and/or labeled footage.
  • Collect-to-spec contracts: your tasks, modalities, volume, ontology.
  • Exclusive or non-exclusive terms available.
  • Consent: operators take part with consent; the release covers the captured work.