G1_Dex3_ToastedBread_Dataset
收藏魔搭社区2025-11-27 更新2025-09-20 收录
下载链接:
https://modelscope.cn/datasets/unitreerobotics/G1_Dex3_ToastedBread_Dataset
下载链接
链接失效反馈官方服务:
资源简介:
This dataset was created using [LeRobot](https://github.com/huggingface/lerobot).
## Dataset Description
- **Homepage:** [More Information Needed]
- **Paper:** [More Information Needed]
- **License:** apache-2.0
- **Task Objective:** Part 1: Place the bread from the serving tray into the toaster. Part 2: After the bread is toasted, hand the toast to the human.
- **Operational Objects:** Bread and Toaster(Purchase link: [【淘宝】7天无理由退货 https://e.tb.cn/h.60Va2WXFUDHazdQ?tk=uzwkeJCxTWW MF278 「苏泊尔DJ805烤面包机吐司机小型家用早餐机多士炉烤吐司三明治机」点击链接直接打开 或者 淘宝搜索直接打开]).
- **Operation Duration:** Each operation takes approximately 20 to 40 seconds.
- **Recording Frequency:** 30 Hz.
- **Robot Type:** 7-DOF dual-arm G1 robot.
- **End Effector:** Three-fingered dexterous hands.
- **Dual-Arm Operation:** Yes.
- **Image Resolution:** 640x480.
- **Camera Positions:** Wrist-mounted (monocular camera) + head-mounted (binocular cameras).
- **Data Content:**
• Robot's current state.
• Robot's next action.
• Current camera view images.
- **Robot Initial Posture:** The first robot state in each dataset entry.
- **Object Placement:** Place the toaster and serving tray within the fully extended reach of the robotic arm, positioned at approximately a 45-degree angle relative to the robot.
- **Camera View:** Follow the guidelines in **Part 5** of [AVP Teleoperation Documentation](https://github.com/unitreerobotics/avp_teleoperate).
- **Important Notes:**
1. Due to the inability to precisely describe spatial positions, adjust the scene to closely match the first frame of the dataset after installing the hardware as specified in **Part 5** of [AVP Teleoperation Documentation](https://github.com/unitreerobotics/avp_teleoperate).
2. Data collection is not completed in a single session, and variations between data entries exist. Ensure these variations are accounted for during model training.
## Dataset Structure
[meta/info.json](meta/info.json):
```json
{
"codebase_version": "v2.0",
"robot_type": "Unitree_G1",
"total_episodes": 418,
"total_frames": 352022,
"total_tasks": 1,
"total_videos": 1672,
"total_chunks": 1,
"chunks_size": 1000,
"fps": 30,
"splits": {
"train": "0:418"
},
"data_path": "data/chunk-{episode_chunk:03d}/episode_{episode_index:06d}.parquet",
"video_path": "videos/chunk-{episode_chunk:03d}/{video_key}/episode_{episode_index:06d}.mp4",
"features": {
"observation.state": {
"dtype": "float32",
"shape": [
28
],
"names": [
[
"kLeftShoulderPitch",
"kLeftShoulderRoll",
"kLeftShoulderYaw",
"kLeftElbow",
"kLeftWristRoll",
"kLeftWristPitch",
"kLeftWristYaw",
"kRightShoulderPitch",
"kRightShoulderRoll",
"kRightShoulderYaw",
"kRightElbow",
"kRightWristRoll",
"kRightWristPitch",
"kRightWristYaw",
"kLeftHandThumb0",
"kLeftHandThumb1",
"kLeftHandThumb2",
"kLeftHandMiddle0",
"kLeftHandMiddle1",
"kLeftHandIndex0",
"kLeftHandIndex1",
"kRightHandThumb0",
"kRightHandThumb1",
"kRightHandThumb2",
"kRightHandIndex0",
"kRightHandIndex1",
"kRightHandMiddle0",
"kRightHandMiddle1"
]
]
},
"action": {
"dtype": "float32",
"shape": [
28
],
"names": [
[
"kLeftShoulderPitch",
"kLeftShoulderRoll",
"kLeftShoulderYaw",
"kLeftElbow",
"kLeftWristRoll",
"kLeftWristPitch",
"kLeftWristYaw",
"kRightShoulderPitch",
"kRightShoulderRoll",
"kRightShoulderYaw",
"kRightElbow",
"kRightWristRoll",
"kRightWristPitch",
"kRightWristYaw",
"kLeftHandThumb0",
"kLeftHandThumb1",
"kLeftHandThumb2",
"kLeftHandMiddle0",
"kLeftHandMiddle1",
"kLeftHandIndex0",
"kLeftHandIndex1",
"kRightHandThumb0",
"kRightHandThumb1",
"kRightHandThumb2",
"kRightHandIndex0",
"kRightHandIndex1",
"kRightHandMiddle0",
"kRightHandMiddle1"
]
]
},
"observation.images.cam_left_high": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_right_high": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_left_wrist": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_right_wrist": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"timestamp": {
"dtype": "float32",
"shape": [
1
],
"names": null
},
"frame_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"episode_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"task_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
}
}
}
```
## Citation
**BibTeX:**
```bibtex
[More Information Needed]
```
本数据集基于[LeRobot](https://github.com/huggingface/lerobot)构建。
## 数据集说明
- **主页:** [待补充更多信息]
- **论文:** [待补充更多信息]
- **许可证:** Apache-2.0
- **任务目标:** 第一部分:将餐盘中的面包放入烤面包机。第二部分:面包烘烤完成后,将吐司递交给人类。
- **操作对象:** 面包与烤面包机(购买链接:[【淘宝】7天无理由退货 https://e.tb.cn/h.60Va2WXFUDHazdQ?tk=uzwkeJCxTWW MF278 「苏泊尔DJ805烤面包机吐司机小型家用早餐机多士炉烤吐司三明治机」点击链接直接打开 或者 淘宝搜索直接打开])。
- **操作时长:** 单次操作耗时约20至40秒。
- **录制帧率:** 30 Hz。
- **机器人类型:** 7自由度双臂G1机器人。
- **末端执行器:** 三指灵巧手。
- **双臂操作:** 是。
- **图像分辨率:** 640×480。
- **相机布局:** 腕部搭载单目相机 + 头部搭载双目相机。
- **数据内容:**
• 机器人当前状态
• 机器人下一动作
• 当前相机视角下的图像
- **机器人初始姿态:** 每个数据集条目中的首个机器人状态。
- **物体摆放:** 将烤面包机与餐盘放置于机械臂完全可达范围内,与机器人呈约45度夹角。
- **相机视角:** 遵循[AVP远程操作文档](https://github.com/unitreerobotics/avp_teleoperate)的第5部分指南。
- **重要说明:**
1. 由于无法精准描述空间位置,请在按照[AVP远程操作文档](https://github.com/unitreerobotics/avp_teleoperate)的第5部分完成硬件安装后,调整场景以尽可能匹配数据集的首帧画面。
2. 数据采集并非单次完成,不同数据集条目之间存在差异,请在模型训练过程中考虑此类差异。
## 数据集结构
[meta/info.json](meta/info.json):
json
{
"codebase_version": "v2.0",
"robot_type": "Unitree_G1",
"total_episodes": 418,
"total_frames": 352022,
"total_tasks": 1,
"total_videos": 1672,
"total_chunks": 1,
"chunks_size": 1000,
"fps": 30,
"splits": {
"train": "0:418"
},
"data_path": "data/chunk-{episode_chunk:03d}/episode_{episode_index:06d}.parquet",
"video_path": "videos/chunk-{episode_chunk:03d}/{video_key}/episode_{episode_index:06d}.mp4",
"features": {
"observation.state": {
"dtype": "float32",
"shape": [
28
],
"names": [
[
"kLeftShoulderPitch",
"kLeftShoulderRoll",
"kLeftShoulderYaw",
"kLeftElbow",
"kLeftWristRoll",
"kLeftWristPitch",
"kLeftWristYaw",
"kRightShoulderPitch",
"kRightShoulderRoll",
"kRightShoulderYaw",
"kRightElbow",
"kRightWristRoll",
"kRightWristPitch",
"kRightWristYaw",
"kLeftHandThumb0",
"kLeftHandThumb1",
"kLeftHandThumb2",
"kLeftHandMiddle0",
"kLeftHandMiddle1",
"kLeftHandIndex0",
"kLeftHandIndex1",
"kRightHandThumb0",
"kRightHandThumb1",
"kRightHandThumb2",
"kRightHandIndex0",
"kRightHandIndex1",
"kRightHandMiddle0",
"kRightHandMiddle1"
]
]
},
"action": {
"dtype": "float32",
"shape": [
28
],
"names": [
[
"kLeftShoulderPitch",
"kLeftShoulderRoll",
"kLeftShoulderYaw",
"kLeftElbow",
"kLeftWristRoll",
"kLeftWristPitch",
"kLeftWristYaw",
"kRightShoulderPitch",
"kRightShoulderRoll",
"kRightShoulderYaw",
"kRightElbow",
"kRightWristRoll",
"kRightWristPitch",
"kRightWristYaw",
"kLeftHandThumb0",
"kLeftHandThumb1",
"kLeftHandThumb2",
"kLeftHandMiddle0",
"kLeftHandMiddle1",
"kLeftHandIndex0",
"kLeftHandIndex1",
"kRightHandThumb0",
"kRightHandThumb1",
"kRightHandThumb2",
"kRightHandIndex0",
"kRightHandIndex1",
"kRightHandMiddle0",
"kRightHandMiddle1"
]
]
},
"observation.images.cam_left_high": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_right_high": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_left_wrist": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"observation.images.cam_right_wrist": {
"dtype": "video",
"shape": [
3,
480,
640
],
"names": [
"channels",
"height",
"width"
],
"info": {
"video.fps": 30.0,
"video.height": 480,
"video.width": 640,
"video.channels": 3,
"video.codec": "av1",
"video.pix_fmt": "yuv420p",
"video.is_depth_map": false,
"has_audio": false
}
},
"timestamp": {
"dtype": "float32",
"shape": [
1
],
"names": null
},
"frame_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"episode_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"index": {
"dtype": "int64",
"shape": [
1
],
"names": null
},
"task_index": {
"dtype": "int64",
"shape": [
1
],
"names": null
}
}
}
## 引用
**BibTeX:**
bibtex
[待补充更多信息]
提供机构:
maas
创建时间:
2025-09-11
搜集汇总
数据集介绍

以上内容由遇见数据集搜集并总结生成



