# Human-1M · LeRobot v3.0 field reference

The release is organized by **vendor → batch → version**. Each `v0/shard_*/` directory contains a **LeRobot v3.0** dataset.

[Access the dataset storage bucket](https://huggingface.co/buckets/nvidia/human-1m-100k-oss/tree/release-staging).

```text
release-staging/oss_100k_v1/
└── vendors/
    └── {vendor_id}/
        └── {batch_id}/
            ├── versions.json
            └── v0/
                └── shard_00/
                    ├── data/
                    │   └── chunk-000/file-000.parquet
                    ├── meta/
                    │   ├── info.json
                    │   ├── episodes/chunk-000/file-000.parquet
                    │   ├── tasks.parquet
                    │   ├── subtasks.parquet
                    │   ├── environments.parquet
                    │   └── scenes.parquet
                    └── videos/
                        └── observation.images.{camera}/
                            └── chunk-000/file-000.mp4
```

## Shard info

| Field | Type / shape | Meaning |
|---|---|---|
| `codebase_version` | string | LeRobot v3.0. |
| `data_format_version` | string | Human-1M format version declared by the delivery. |
| `total_episodes` | integer | Episode count within this shard. |
| `fps` | number > 0 | Delivered frame rate; resolve timing from the episode and stream metadata. |
| `data_path` | path template | Relative path template for frame Parquet files. |
| `video_path` | path template | Relative path template for per-camera MP4 files. |
| `features` | mapping | Feature names, dtypes, and shapes, including the available camera streams. |

## Frame data

| Field | Type / shape | Meaning |
|---|---|---|
| `index` | int64 | Index identifying a frame row in the dataset. |
| `episode_index` | int64 | Shard-local episode reference; join to episode metadata. |
| `frame_index` | int64 | Frame position inside the episode. |
| `timestamp` | float | Frame timestamp in seconds, using the delivery clock convention. |
| `task_index` | int64 | Reference to the episode-level task instruction. |
| `subtask_index` | int64 | Reference to the subtask label; preserve explicit segment boundaries separately. |
| `observation.state.hand_left_cam` | 21 × 3 float32 | Left-hand joint positions in the camera frame, in metres; stored as 63 values. |
| `observation.state.hand_right_cam` | 21 × 3 float32 | Right-hand joint positions in the camera frame, in metres; stored as 63 values. |
| `observation.state.hand_left_cam_rotation` | 21 × 4 float32 | Left-hand per-joint quaternions in (qx, qy, qz, qw) order; stored as 84 values. |
| `observation.state.hand_right_cam_rotation` | 21 × 4 float32 | Right-hand per-joint quaternions in (qx, qy, qz, qw) order; stored as 84 values. |
| `observation.state.camera_position` | 3 float32 | Camera translation in the world frame, in metres. |
| `observation.state.camera_rotation` | 4 float32 | Camera orientation in the world frame, (qx, qy, qz, qw). |
| `environment_index` | int64 | Reference to the environment dictionary. |
| `scene_index` | int64 | Reference to the scene dictionary. |
| `scene_id` | identifier | Consistent anonymous scene identifier. |
| `collector_id` | identifier | Consistent anonymous collector identifier. |
| `left_hand_mask / right_hand_mask` | int64, 0 or 1 | Separate per-hand presence indicators. |
| `left_hand_confidence / right_hand_confidence` | float | Per-hand tracking confidence; consult the supplied confidence convention. |

## Episode metadata

| Field | Type / shape | Meaning |
|---|---|---|
| `episode_index` | int64 | Shard-local episode index; not the globally unique episode ID. |
| `episode_id` | string | Stable, globally unique episode identifier after consistent anonymization. |
| `length` | int64 | Number of frames in the episode. |
| `data/chunk_index · data/file_index` | int64 | Locate the episode frame-data file through info.json. |
| `dataset_from_index · dataset_to_index` | int64 | Frame-row interval, with an exclusive upper bound. |
| `meta/episodes/chunk_index · meta/episodes/file_index` | int64 | Location of the episode metadata record. |
| `videos/observation.images.{cam}/chunk_index · file_index` | int64 | Locate the MP4 for each available camera using video_path. |
| `videos/observation.images.{cam}/from_timestamp · to_timestamp` | seconds | Episode interval inside that camera’s concatenated video. These are not subtask boundaries. |
| `camera_intrinsics/{cam}` | calibration parameters | Per-episode camera calibration. Use the camera model supplied for the rig; do not assume every camera uses the same projection. |
| `camera_extrinsics/T_{i}_{j}` | rigid transform | Camera j expressed in camera i’s coordinate frame. Interpret the delivered transform convention. |
| `rig_id` | string | Recording-rig identifier, consistently anonymized. |
| `country` | string | ISO 3166-1 alpha-2 recording country code. |
| `capture_privacy` | public \| private | Declared recording-environment privacy category. Do not infer it solely from the broad environment label. |
| `vendor_id` | string | Stable anonymous collection-source identifier on every episode row in meta/episodes/*.parquet, including nested chunk files. |

## Language & context

| Field | Type / shape | Meaning |
|---|---|---|
| `tasks.parquet: task + task_index` | text index + integer | Task annotation: episode-level natural-language task instruction and its local dictionary index. |
| `subtasks.parquet: subtask + subtask_index` | text index + integer | Subtask annotation: natural-language subtask description and its label reference. |
| `subtasks.parquet: episode_index` | integer | Episode containing the annotation occurrence. |
| `subtasks.parquet: timestamp_start · timestamp_end` | seconds | Annotation occurrence boundaries in the episode timestamp convention. Adjacent identical descriptions can remain separate rows. |
| `subtasks.parquet: source_id` | string | Anonymous annotation-provenance identifier. |
| `environments.parquet: environment + environment_index` | text index + integer | Local environment description and broad environment category. |
| `scenes.parquet: scene + scene_index` | text index + integer | Scene description and the local scene lookup index. |

## Video streams

| Field | Type / shape | Meaning |
|---|---|---|
| `observation.images.main` | MP4 | Main monocular egocentric video; a stereo delivery may also supply main as the left-view alias. |
| `observation.images.main_left / main_right` | MP4 | Left and right egocentric streams for stereo capture. |
| `observation.images.wrist_left / wrist_right` | MP4, when present | Left and right wrist-camera streams. |
| `observation.images.main_add{k}` | MP4, when present | Additional main camera streams. |

Source-specific missing fields remain explicit in each sample. Video from_timestamp/to_timestamp identifies the episode interval inside a video file; it is not a subtask boundary.
