wb_crying_tissue_handover
收藏资源简介:
该数据集是来自Unitree G1全身机器人(配备RGB摄像头)的全身遥操作数据,以LeRobot v2.1格式发布。任务是从纸巾盒中取出一张纸巾,递给哭泣的人。数据集包含45个片段,共31979帧(约18分钟,30fps),每个片段长度在492到1148帧之间(中位数704帧)。提供了两个摄像头视角(640×480分辨率,H264编码),状态和动作均为43维关节向量。数据集有两个分支:main分支(手部状态全为零)和real_inspair分支(包含Inspire手部估计和命令)。此外,还包含姿态标注(手部关键点和身体骨架),以及多种视频覆盖层。许可证为Apache-2.0。
This dataset contains whole-body teleoperation data from a Unitree G1 humanoid robot (equipped with RGB cameras), released in LeRobot v2.1 format. The task is to take a tissue from a tissue box and hand it to a crying person. The dataset consists of 45 episodes with 31,979 frames (approximately 18 minutes at 30fps), where each episode length ranges from 492 to 1148 frames (median 704). Two camera views are provided (640×480 resolution, H264 encoding). The state and action are both 43-dimensional joint vectors. The dataset has two branches: main branch (hand states all zeros) and real_inspair branch (including Inspire hand estimates and commands). Additionally, pose annotations (hand keypoints and body skeleton) and various video overlays are included. License: Apache-2.0.
wb_crying_tissue_handover 数据集概述
该数据集为全身遥操作数据,源自 Unitree_G1_WholeBody_RGB 机器人,以 LeRobot v2.1 格式发布。任务目标为从纸巾盒中取出纸巾并递给哭泣的人。
基本信息
| 属性 | 值 |
|---|---|
| 许可协议 | Apache-2.0 |
| 任务类型 | 机器人学(robotics) |
| 语言 | 英文 |
| 数据集规模 | 10K < N < 100K |
| 帧数 | 31,979 帧(约 18 分钟,30 fps) |
| 片段数 | 45 个 episodes |
| 单片段长度 | 492–1148 帧(中位数 704) |
| 相机 | 2 个 640×480 H.264 摄像头 |
| 状态/动作维度 | 43 维 / 43 维关节向量 |
| 数据划分 | 训练集(0:45) |
双分支结构
数据集包含两个分支,仅在灵巧手维度存在差异,其余列(身体关节、时间戳、索引)逐字节相同:
| 分支 | 手部状态(维度 22–28 / 36–42) | 手部动作 | 适用场景 |
|---|---|---|---|
main |
全零(未记录) | 原始 Dex3 遥操作向量(含负值) | 仅需身体/移动数据 |
real_inspair |
Inspire 估计值(0.50–1.00) | Inspire 原生指令(0.50–1.00),最后一个槽位为二进制开/关触发器 | 需要任何手部相关数据 |
⚠️ 若训练抓取相关任务,请使用
real_inspair分支。main分支的手部状态列全为零,模型将无法从中学习到有效信息。
数据模式(Schema)
observation.state 与 action 均为 43 维,顺序为:
- 0–11:双腿(左右髋关节 pitch/roll/yaw、膝关节、踝关节 pitch/roll)
- 12–14:腰部(yaw、roll、pitch)
- 15–21:左臂(肩部 pitch/roll/yaw、肘部、腕部 roll/pitch/yaw)
- 22–28:左手(index_0、index_1、middle_0、middle_1、thumb_0、thumb_1、thumb_2)
- 29–35:右臂(肩部 pitch/roll/yaw、肘部、腕部 roll/pitch/yaw)
- 36–42:右手(index_0、index_1、middle_0、middle_1、thumb_0、thumb_1、thumb_2)
在 real_inspair 分支中,Inspire 手部报告 6 维估计值:槽位 22–27 / 36–41 包含数值,槽位 28 / 42 保持零填充。动作侧相同槽位携带原生指令,最后一个槽位为二进制触发器(0.0 / 1.0)。
注意:
real_inspair的手部状态为估计值,源自记录了 Inspire 反馈的采集数据(旧设备无手部传感),应描述为估计/转移的 Inspire 手部状态,而非真实录制的真值。
视频数据
| 键名 | 内容 | 编码 |
|---|---|---|
observation.images.cam_chest |
胸部相机原始画面 | h264 |
observation.images.cam_chest_hand_overlay |
胸部相机 + MediaPipe 手部关键点叠加 | h264 |
observation.images.cam_chest_pose_overlay |
胸部相机 + RTMO 身体骨架叠加 | h264 |
observation.images.cam_head |
头部相机原始画面 | h264 |
observation.images.cam_head_hand_overlay |
头部相机 + MediaPipe 手部关键点叠加 | h264 |
observation.images.cam_head_pose_overlay |
头部相机 + RTMO 身体骨架叠加 | h264 |
所有视频均为 H.264 编码,可在标准播放器中播放。
姿态标注
关键点以 parquet 列形式逐帧存储,无独立标注文件:
| 列名 | 来源 | 内容 |
|---|---|---|
observation.human_hand.<cam>.landmarks_uv |
MediaPipe Hands | 每只手 21 个关键点,像素 u/v 坐标,先左后右 |
observation.human_hand.<cam>.landmarks_2d |
MediaPipe Hands | 相同关键点,归一化 x/y/z |
observation.human_hand.<cam>.world_landmarks |
MediaPipe Hands | 类米制世界坐标 x/y/z |
observation.human_hand.<cam>.valid / .score |
— | 左右手存在标志与手性置信度 |
observation.human_body.<cam>.landmarks_uv |
RTMO(rtmo-m_16xb16-600e_body7) |
COCO-17 身体关键点,像素 u/v |
observation.human_body.<cam>.landmarks_2d |
RTMO | 相同关键点,归一化坐标 |
observation.human_body.<cam>.scores / .valid |
— | 每关键点置信度与每帧标志 |
坐标零填充且 valid = 0 表示未检测到目标,数据中无 NaN。
标注过滤方法
- 身体检测:按片段进行后处理——基于分数阈值筛选、通过边界框包含关系(而非简单 IoU)去重、片段合并、基于运动轨迹融合的单一身份锁定(使用饱和度掩码的躯干色调直方图)。时间重叠的轨迹不会被合并,因为共现的检测不可能属于同一个人。
- 手部候选:锚定到中心人物的腕部——若检测点距腕部超过半个肩宽则被拒绝,从而排除类手形道具的干扰。
文件布局
data/chunk-000/episode_000000.parquet 每个片段一个 parquet 文件 videos/chunk-000/<video_key>/episode_000000.mp4 每个片段一个视频片段 meta/info.json 特征模式 meta/episodes.jsonl 片段索引与长度 meta/tasks.jsonl 任务描述 meta/stats.json 各特征统计信息
加载方式
python from lerobot.common.datasets.lerobot_dataset import LeRobotDataset
ds = LeRobotDataset("DaoyuanZhu/wb_crying_tissue_handover", revision="real_inspair") print(ds.meta.features.keys()) sample = ds[0]
若在
lerobotv3.0+ 上使用,需先执行官方升级命令:python -m lerobot.datasets.v30.convert_dataset_v21_to_v30 --repo-id=DaoyuanZhu/wb_crying_tissue_handover
许可证
Apache-2.0。



