- Description:
The Robomimic machine generated datasets were collected using a Soft Actor Critic agent trained with a dense reward. Each dataset consists of the agent's replay buffer.
Each task has two versions: one with low dimensional observations (low_dim),
and one with images (image).
The datasets follow the RLDS format to represent steps and episodes.
Source code:
tfds.datasets.robomimic_mg.BuilderVersions:
1.0.0(default): Initial release.
Supervised keys (See
as_superviseddoc):NoneFigure (tfds.show_examples): Not supported.
Citation:
@inproceedings{robomimic2021,
title={What Matters in Learning from Offline Human Demonstrations for Robot Manipulation},
author={Ajay Mandlekar and Danfei Xu and Josiah Wong and Soroush Nasiriany
and Chen Wang and Rohun Kulkarni and Li Fei-Fei and Silvio Savarese
and Yuke Zhu and Roberto Mart\'{i}n-Mart\'{i}n},
booktitle={Conference on Robot Learning},
year={2021}
}
robomimic_mg/lift_mg_image (default config)
Download size:
18.04 GiBDataset size:
2.73 GiBAuto-cached (documentation): No
Splits:
| Split | Examples |
|---|---|
'train' |
1,500 |
- Feature structure:
FeaturesDict({
'episode_id': string,
'horizon': int32,
'steps': Dataset({
'action': Tensor(shape=(7,), dtype=float64),
'discount': int32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'agentview_image': Image(shape=(84, 84, 3), dtype=uint8),
'object': Tensor(shape=(10,), dtype=float64),
'robot0_eef_pos': Tensor(shape=(3,), dtype=float64, description=End-effector position),
'robot0_eef_quat': Tensor(shape=(4,), dtype=float64, description=End-effector orientation),
'robot0_eef_vel_ang': Tensor(shape=(3,), dtype=float64, description=End-effector angular velocity),
'robot0_eef_vel_lin': Tensor(shape=(3,), dtype=float64, description=End-effector cartesian velocity),
'robot0_eye_in_hand_image': Image(shape=(84, 84, 3), dtype=uint8),
'robot0_gripper_qpos': Tensor(shape=(2,), dtype=float64, description=Gripper position),
'robot0_gripper_qvel': Tensor(shape=(2,), dtype=float64, description=Gripper velocity),
'robot0_joint_pos': Tensor(shape=(7,), dtype=float64, description=7DOF joint positions),
'robot0_joint_pos_cos': Tensor(shape=(7,), dtype=float64),
'robot0_joint_pos_sin': Tensor(shape=(7,), dtype=float64),
'robot0_joint_vel': Tensor(shape=(7,), dtype=float64, description=7DOF joint velocities),
}),
'reward': float64,
'states': Tensor(shape=(32,), dtype=float64),
}),
})
- Feature documentation:
| Feature | Class | Shape | Dtype | Description |
|---|---|---|---|---|
| FeaturesDict | ||||
| episode_id | Tensor | string | ||
| horizon | Tensor | int32 | ||
| steps | Dataset | |||
| steps/action | Tensor | (7,) | float64 | |
| steps/discount | Tensor | int32 | ||
| steps/is_first | Tensor | bool | ||
| steps/is_last | Tensor | bool | ||
| steps/is_terminal | Tensor | bool | ||
| steps/observation | FeaturesDict | |||
| steps/observation/agentview_image | Image | (84, 84, 3) | uint8 | |
| steps/observation/object | Tensor | (10,) | float64 | |
| steps/observation/robot0_eef_pos | Tensor | (3,) | float64 | End-effector position |
| steps/observation/robot0_eef_quat | Tensor | (4,) | float64 | End-effector orientation |
| steps/observation/robot0_eef_vel_ang | Tensor | (3,) | float64 | End-effector angular velocity |
| steps/observation/robot0_eef_vel_lin | Tensor | (3,) | float64 | End-effector cartesian velocity |
| steps/observation/robot0_eye_in_hand_image | Image | (84, 84, 3) | uint8 | |
| steps/observation/robot0_gripper_qpos | Tensor | (2,) | float64 | Gripper position |
| steps/observation/robot0_gripper_qvel | Tensor | (2,) | float64 | Gripper velocity |
| steps/observation/robot0_joint_pos | Tensor | (7,) | float64 | 7DOF joint positions |
| steps/observation/robot0_joint_pos_cos | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_pos_sin | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_vel | Tensor | (7,) | float64 | 7DOF joint velocities |
| steps/reward | Tensor | float64 | ||
| steps/states | Tensor | (32,) | float64 |
- Examples (tfds.as_dataframe):
robomimic_mg/lift_mg_low_dim
Download size:
302.25 MiBDataset size:
195.10 MiBAuto-cached (documentation): Only when
shuffle_files=False(train)Splits:
| Split | Examples |
|---|---|
'train' |
1,500 |
- Feature structure:
FeaturesDict({
'episode_id': string,
'horizon': int32,
'steps': Dataset({
'action': Tensor(shape=(7,), dtype=float64),
'discount': int32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'object': Tensor(shape=(10,), dtype=float64),
'robot0_eef_pos': Tensor(shape=(3,), dtype=float64, description=End-effector position),
'robot0_eef_quat': Tensor(shape=(4,), dtype=float64, description=End-effector orientation),
'robot0_eef_vel_ang': Tensor(shape=(3,), dtype=float64, description=End-effector angular velocity),
'robot0_eef_vel_lin': Tensor(shape=(3,), dtype=float64, description=End-effector cartesian velocity),
'robot0_gripper_qpos': Tensor(shape=(2,), dtype=float64, description=Gripper position),
'robot0_gripper_qvel': Tensor(shape=(2,), dtype=float64, description=Gripper velocity),
'robot0_joint_pos': Tensor(shape=(7,), dtype=float64, description=7DOF joint positions),
'robot0_joint_pos_cos': Tensor(shape=(7,), dtype=float64),
'robot0_joint_pos_sin': Tensor(shape=(7,), dtype=float64),
'robot0_joint_vel': Tensor(shape=(7,), dtype=float64, description=7DOF joint velocities),
}),
'reward': float64,
'states': Tensor(shape=(32,), dtype=float64),
}),
})
- Feature documentation:
| Feature | Class | Shape | Dtype | Description |
|---|---|---|---|---|
| FeaturesDict | ||||
| episode_id | Tensor | string | ||
| horizon | Tensor | int32 | ||
| steps | Dataset | |||
| steps/action | Tensor | (7,) | float64 | |
| steps/discount | Tensor | int32 | ||
| steps/is_first | Tensor | bool | ||
| steps/is_last | Tensor | bool | ||
| steps/is_terminal | Tensor | bool | ||
| steps/observation | FeaturesDict | |||
| steps/observation/object | Tensor | (10,) | float64 | |
| steps/observation/robot0_eef_pos | Tensor | (3,) | float64 | End-effector position |
| steps/observation/robot0_eef_quat | Tensor | (4,) | float64 | End-effector orientation |
| steps/observation/robot0_eef_vel_ang | Tensor | (3,) | float64 | End-effector angular velocity |
| steps/observation/robot0_eef_vel_lin | Tensor | (3,) | float64 | End-effector cartesian velocity |
| steps/observation/robot0_gripper_qpos | Tensor | (2,) | float64 | Gripper position |
| steps/observation/robot0_gripper_qvel | Tensor | (2,) | float64 | Gripper velocity |
| steps/observation/robot0_joint_pos | Tensor | (7,) | float64 | 7DOF joint positions |
| steps/observation/robot0_joint_pos_cos | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_pos_sin | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_vel | Tensor | (7,) | float64 | 7DOF joint velocities |
| steps/reward | Tensor | float64 | ||
| steps/states | Tensor | (32,) | float64 |
- Examples (tfds.as_dataframe):
robomimic_mg/can_mg_image
Download size:
47.14 GiBDataset size:
11.15 GiBAuto-cached (documentation): No
Splits:
| Split | Examples |
|---|---|
'train' |
3,900 |
- Feature structure:
FeaturesDict({
'episode_id': string,
'horizon': int32,
'steps': Dataset({
'action': Tensor(shape=(7,), dtype=float64),
'discount': int32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'agentview_image': Image(shape=(84, 84, 3), dtype=uint8),
'object': Tensor(shape=(14,), dtype=float64),
'robot0_eef_pos': Tensor(shape=(3,), dtype=float64, description=End-effector position),
'robot0_eef_quat': Tensor(shape=(4,), dtype=float64, description=End-effector orientation),
'robot0_eef_vel_ang': Tensor(shape=(3,), dtype=float64, description=End-effector angular velocity),
'robot0_eef_vel_lin': Tensor(shape=(3,), dtype=float64, description=End-effector cartesian velocity),
'robot0_eye_in_hand_image': Image(shape=(84, 84, 3), dtype=uint8),
'robot0_gripper_qpos': Tensor(shape=(2,), dtype=float64, description=Gripper position),
'robot0_gripper_qvel': Tensor(shape=(2,), dtype=float64, description=Gripper velocity),
'robot0_joint_pos': Tensor(shape=(7,), dtype=float64, description=7DOF joint positions),
'robot0_joint_pos_cos': Tensor(shape=(7,), dtype=float64),
'robot0_joint_pos_sin': Tensor(shape=(7,), dtype=float64),
'robot0_joint_vel': Tensor(shape=(7,), dtype=float64, description=7DOF joint velocities),
}),
'reward': float64,
'states': Tensor(shape=(71,), dtype=float64),
}),
})
- Feature documentation:
| Feature | Class | Shape | Dtype | Description |
|---|---|---|---|---|
| FeaturesDict | ||||
| episode_id | Tensor | string | ||
| horizon | Tensor | int32 | ||
| steps | Dataset | |||
| steps/action | Tensor | (7,) | float64 | |
| steps/discount | Tensor | int32 | ||
| steps/is_first | Tensor | bool | ||
| steps/is_last | Tensor | bool | ||
| steps/is_terminal | Tensor | bool | ||
| steps/observation | FeaturesDict | |||
| steps/observation/agentview_image | Image | (84, 84, 3) | uint8 | |
| steps/observation/object | Tensor | (14,) | float64 | |
| steps/observation/robot0_eef_pos | Tensor | (3,) | float64 | End-effector position |
| steps/observation/robot0_eef_quat | Tensor | (4,) | float64 | End-effector orientation |
| steps/observation/robot0_eef_vel_ang | Tensor | (3,) | float64 | End-effector angular velocity |
| steps/observation/robot0_eef_vel_lin | Tensor | (3,) | float64 | End-effector cartesian velocity |
| steps/observation/robot0_eye_in_hand_image | Image | (84, 84, 3) | uint8 | |
| steps/observation/robot0_gripper_qpos | Tensor | (2,) | float64 | Gripper position |
| steps/observation/robot0_gripper_qvel | Tensor | (2,) | float64 | Gripper velocity |
| steps/observation/robot0_joint_pos | Tensor | (7,) | float64 | 7DOF joint positions |
| steps/observation/robot0_joint_pos_cos | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_pos_sin | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_vel | Tensor | (7,) | float64 | 7DOF joint velocities |
| steps/reward | Tensor | float64 | ||
| steps/states | Tensor | (71,) | float64 |
- Examples (tfds.as_dataframe):
robomimic_mg/can_mg_low_dim
Download size:
1.01 GiBDataset size:
697.71 MiBAuto-cached (documentation): No
Splits:
| Split | Examples |
|---|---|
'train' |
3,900 |
- Feature structure:
FeaturesDict({
'episode_id': string,
'horizon': int32,
'steps': Dataset({
'action': Tensor(shape=(7,), dtype=float64),
'discount': int32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'object': Tensor(shape=(14,), dtype=float64),
'robot0_eef_pos': Tensor(shape=(3,), dtype=float64, description=End-effector position),
'robot0_eef_quat': Tensor(shape=(4,), dtype=float64, description=End-effector orientation),
'robot0_eef_vel_ang': Tensor(shape=(3,), dtype=float64, description=End-effector angular velocity),
'robot0_eef_vel_lin': Tensor(shape=(3,), dtype=float64, description=End-effector cartesian velocity),
'robot0_gripper_qpos': Tensor(shape=(2,), dtype=float64, description=Gripper position),
'robot0_gripper_qvel': Tensor(shape=(2,), dtype=float64, description=Gripper velocity),
'robot0_joint_pos': Tensor(shape=(7,), dtype=float64, description=7DOF joint positions),
'robot0_joint_pos_cos': Tensor(shape=(7,), dtype=float64),
'robot0_joint_pos_sin': Tensor(shape=(7,), dtype=float64),
'robot0_joint_vel': Tensor(shape=(7,), dtype=float64, description=7DOF joint velocities),
}),
'reward': float64,
'states': Tensor(shape=(71,), dtype=float64),
}),
})
- Feature documentation:
| Feature | Class | Shape | Dtype | Description |
|---|---|---|---|---|
| FeaturesDict | ||||
| episode_id | Tensor | string | ||
| horizon | Tensor | int32 | ||
| steps | Dataset | |||
| steps/action | Tensor | (7,) | float64 | |
| steps/discount | Tensor | int32 | ||
| steps/is_first | Tensor | bool | ||
| steps/is_last | Tensor | bool | ||
| steps/is_terminal | Tensor | bool | ||
| steps/observation | FeaturesDict | |||
| steps/observation/object | Tensor | (14,) | float64 | |
| steps/observation/robot0_eef_pos | Tensor | (3,) | float64 | End-effector position |
| steps/observation/robot0_eef_quat | Tensor | (4,) | float64 | End-effector orientation |
| steps/observation/robot0_eef_vel_ang | Tensor | (3,) | float64 | End-effector angular velocity |
| steps/observation/robot0_eef_vel_lin | Tensor | (3,) | float64 | End-effector cartesian velocity |
| steps/observation/robot0_gripper_qpos | Tensor | (2,) | float64 | Gripper position |
| steps/observation/robot0_gripper_qvel | Tensor | (2,) | float64 | Gripper velocity |
| steps/observation/robot0_joint_pos | Tensor | (7,) | float64 | 7DOF joint positions |
| steps/observation/robot0_joint_pos_cos | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_pos_sin | Tensor | (7,) | float64 | |
| steps/observation/robot0_joint_vel | Tensor | (7,) | float64 | 7DOF joint velocities |
| steps/reward | Tensor | float64 | ||
| steps/states | Tensor | (71,) | float64 |
- Examples (tfds.as_dataframe):