Capture and quality infrastructure for robot manipulation data

Standard capture.
Verified data.

A handheld capture device and a quality platform, for teams post-training a policy onto a robot they already have.

The handheld capture device Line drawing, side view. Two parallel printed fingers at the top with the gripper aperture marked between them. Below is the body housing carrying a wide-angle fisheye camera on its right face, with a dashed cone showing the two-hundred-degree field of view, and an inertial measurement unit inside. A magnetic encoder sits at the finger pivot. A handle extends downward containing the recording computer and storage card. 200° field of view aperture printed fingers magnetic encoder imu compute + storage
Handheld capture unit — no robot arm, no teleoperation rig.

The bottleneck

Taking the robot out of data collection also takes away the guarantees that came with it. Two failure modes make an episode unusable, and neither is visible while you are still collecting.

Tracking loss

The device loses track of its own pose. The video looks perfect. The trajectory does not exist.

Unreachable poses

The human hand went somewhere the target robot cannot follow. Clean data, physically unexecutable.

Recent work names both as fundamental blockers to using handheld data at scale.2

How it works

01 /

Capture every episode

One rig, one set of specifications, one output format. Different operators on different floors produce episodes of the same shape, so the data composes instead of fragmenting.

capture spec
camera         fisheye · fixed FOV · rigid to the fingers
pose           6-DoF · metric scale · one world frame
aperture       absolute mm from a magnetic encoder
clock          one monotonic clock across all streams
calibration    intrinsics + camera-to-finger extrinsic

every episode carries all five, or it is not an episode
02 /

Check it on the spot

Validity is decided while the operator is still standing there. A failed episode gets recollected in the same session — not discovered days later, back at the lab, after the floor has gone back to production.

session_2026-08-14_kitting · episode 0473
tracking health    pass   0.94  — pose held for the full episode
reachability       fail   17 frames outside UR5e workspace (t=4.1–4.7s)
time alignment     pass   max skew 1.2 ms · camera / encoder / IMU
aperture sanity    pass
metric scale       pass   0.998

rejected  — flagged on device at 4.1s, recollected same session
03 /

See the whole session

Every episode visualised, every check recorded, every rejection attributed to a cause. You know what you are handing to training before you train on it.

session_2026-08-14_kitting · summary
captured
312
4h 18m
usable
287
92%
rejected
25
all recollected
rejections by cause
  unreachable pose   17
  tracking loss       6
  time skew          2

Training, deployment and the decision of what to collect next stay yours. Our job is to make the input to those decisions verifiable.

Team

Andrew Wang
Ayan Bhatia
Shivani Kandula

Pretraining scaled on handheld capture.1
Deployment is next.