EgoSPT is an egocentric manipulation trajectory dataset collected for vision-conditioned trajectory prediction. Each episode contains an RGB video, time-aligned end-effector poses, gripper widths, and valid-frame masks.
scene1, scene2, scene3EgoSPT/
βββ scene1/
βββ scene2/
βββ scene3/
βββ <task_name>/
βββ recording_output_processed/
βββ episode_<id>/
βββ camera_1.mp4
βββ pose_interp
βββ gripper_widths
βββ valid_indices
Each task name follows the pattern:
put_fork<id>_to_<target><id>
where targets include bowls, cups, and plates.
Each processed episode contains:
| File | Description |
|---|---|
camera_1.mp4 | egocentric RGB video |
pose_interp | time-aligned end-effector pose sequence, stored as zarr array |
gripper_widths | gripper width sequence, stored as zarr array |
valid_indices | boolean valid-frame mask, stored as zarr array |
The pose trajectory is represented as homogeneous SE(3) transforms. Downstream code converts these poses into relative actions:
[dx, dy, dz, rot6d_0..5, gripper_width]
umi_day.vision_trajPlace the dataset under:
umi_day/EgoSPT
Then train with:
python -m umi_day.vision_traj.train \
data.root=umi_day/EgoSPT \
data.annotations_json=annotations_merged.json
The vision_traj loader expects an annotation JSON that provides object and
target bounding boxes on the first frame of each episode.
umi_day/vision_traj/dataset.py.umi_day/vision_traj/README.md for model training and evaluation
commands.36 commits
EgoSPT is an egocentric manipulation trajectory dataset collected for vision-conditioned trajectory prediction. Each episode contains an RGB video, time-aligned end-effector poses, gripper widths, and valid-frame masks.
scene1, scene2, scene3EgoSPT/
βββ scene1/
βββ scene2/
βββ scene3/
βββ <task_name>/
βββ recording_output_processed/
βββ episode_<id>/
βββ camera_1.mp4
βββ pose_interp
βββ gripper_widths
βββ valid_indices
Each task name follows the pattern:
put_fork<id>_to_<target><id>
where targets include bowls, cups, and plates.
Each processed episode contains:
| File | Description |
|---|---|
camera_1.mp4 | egocentric RGB video |
pose_interp | time-aligned end-effector pose sequence, stored as zarr array |
gripper_widths | gripper width sequence, stored as zarr array |
valid_indices | boolean valid-frame mask, stored as zarr array |
The pose trajectory is represented as homogeneous SE(3) transforms. Downstream code converts these poses into relative actions:
[dx, dy, dz, rot6d_0..5, gripper_width]
umi_day.vision_trajPlace the dataset under:
umi_day/EgoSPT
Then train with:
python -m umi_day.vision_traj.train \
data.root=umi_day/EgoSPT \
data.annotations_json=annotations_merged.json
The vision_traj loader expects an annotation JSON that provides object and
target bounding boxes on the first frame of each episode.
umi_day/vision_traj/dataset.py.umi_day/vision_traj/README.md for model training and evaluation
commands.36 commits