遇见数据集

wb_gaze_tool_handover2

收藏
Hugging Face2026-08-31 更新2026-08-31 收录
官方服务:

资源简介:

来自Unitree_G1_WholeBody_RGB机器人的全身遥操作数据集,以LeRobot v2.1格式发布。任务:从工具桌上拿起人类注视的工具并将其递给人类。数据集包含42个片段,共18715帧(约10分钟,30fps),配备2个640×480 H264摄像头,状态/动作为43维关节向量。提供两个分支:main分支(手部状态全为零)和real_inspair分支(包含Inspire手部估计状态与二进制触发动作)。还包含人体姿态和手部关键点注释(MediaPipe Hands和RTMO)。

提供机构:
DaoyuanZhu
创建时间:
2026-08-31
原始信息汇总

数据集概述

wb_gaze_tool_handover2 是一个面向机器人操作任务的全身遥操作数据集,数据采集自 Unitree G1 人形机器人(RGB 版本),以 LeRobot v2.1 格式发布。数据集的任务是:机器人拿起人类注视的工具桌上的工具,并将其递给人类


基本信息

项目 内容
许可证 Apache-2.0
任务类别 机器人学(robotics)
语言 英文
样本规模 10K < n < 100K
数据集分支 main(默认)、real_inspair

数据规模与组成

  • 回合数(Episodes):42
  • 总帧数:18,715(约10分钟 @ 30 fps)
  • 回合长度:328–638帧(中位数432帧)
  • 相机:2 × 640×480 H.264 视频
  • 状态/动作维度:均为43维关节向量
  • 划分:训练集 0:42(全部数据)

两种分支(关键说明)

数据集提供两个分支,区别仅在于灵巧手维度,其余列(身体关节、时间戳、索引等)完全一致:

分支 手部状态(22–28 / 36–42维) 手部动作 适用场景
main 全零(未记录) 原始 Dex3 遥操作向量(含负值) 仅需身体/运动控制
real_inspair Inspire 估计值(0.50–1.00) Inspire 原生指令(0.50–1.00),末位为二进制开合触发 涉及手部相关任务

若训练抓取类任务,必须使用 real_inspair 分支;main 分支的手部状态列全为零,模型无法从中学习任何手部信息。手部状态为估计/迁移数据(来自旧采集系统的 Inspire 反馈),并非直接记录的真值。


数据模式(Schema)

observation.stateaction 均为43维,顺序如下:

维度范围 部位 关节详情
0–11 腿部(左右) hip_pitch, hip_roll, hip_yaw, knee, ankle_pitch, ankle_roll
12–14 腰部 yaw, roll, pitch
15–21 左臂 shoulder_pitch/roll/yaw, elbow, wrist_roll/pitch/yaw
22–28 左手 index_0, index_1, middle_0, middle_1, thumb_0, thumb_1, thumb_2
29–35 右臂 shoulder_pitch/roll/yaw, elbow, wrist_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)。


视频数据

视频键 内容 编码
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_gaze_tool_handover2", revision="real_inspair") print(ds.meta.features.keys()) sample = ds[0]

版本说明:数据集以 v2.1 布局发布(每回合一个 parquet 和一个视频片段),可直接在旧版 lerobot 中加载;在 v3.0+ 上需先运行官方升级命令:

python -m lerobot.datasets.v30.convert_dataset_v21_to_v30 --repo-id=DaoyuanZhu/wb_gaze_tool_handover2


许可证

Apache-2.0

二维码
社区交流群
二维码
科研交流群
商业服务