遇见数据集

wb_handover_pointed_hanging_clothes

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

资源简介:

来自Unitree_G1_WholeBody_RGB的全身遥操作数据,以LeRobot v2.1格式发布。任务:取下人类指着的衣架上的衣服,然后递给人类。

Whole-body teleoperation data from Unitree_G1_WholeBody_RGB, released in LeRobot v2.1 format. Task: Remove the clothes from the hanger pointed by the human, then hand them to the human.

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

数据集概述

数据集名称wb_handover_pointed_hanging_clothes

任务描述:机器人需要从人类指向的衣架上取下衣服,然后将衣服递给人类。这是一个全身遥操作数据集,基于 Unitree_G1_WholeBody_RGB 人形机器人采集,采用 LeRobot v2.1 格式发布。

许可协议:Apache-2.0

任务类别:机器人学(robotics)


基础统计

  • 片段数(Episodes):80
  • 帧数(Frames):52,524 帧(约 29 分钟,30 fps)
  • 片段长度范围:501–1,017 帧(中位数 651 帧)
  • 摄像头:2 × 640×480 分辨率,H.264 编码
  • 状态/动作维度:43-D / 43-D 关节向量
  • 数据划分:训练集 0:80

数据集分支说明

该数据集包含两个分支,仅在灵巧手维度上存在差异,其余列(身体关节、时间戳、索引等)完全一致:

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

注意:如需训练抓取相关任务,必须使用 real_inspair 分支,否则 main 分支的手部状态列全为零,模型无法从中学到任何手部信息。

加载示例: python from lerobot.common.datasets.lerobot_dataset import LeRobotDataset ds = LeRobotDataset("DaoyuanZhu/wb_handover_pointed_hanging_clothes", revision="real_inspair")


数据模式(Schema)

observation.stateaction 均为 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 反馈的采集数据中转移),而非直接记录的 Ground Truth。


视频数据

所有视频均为 H.264 编码,可兼容任何标准播放器:

键名 内容 编码
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

姿态标注

关键点以 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 # 特征 schema meta/episodes.jsonl # 片段索引和长度 meta/tasks.jsonl # 任务字符串 meta/stats.json # 每特征统计信息


加载方式

python from lerobot.common.datasets.lerobot_dataset import LeRobotDataset

ds = LeRobotDataset("DaoyuanZhu/wb_handover_pointed_hanging_clothes", revision="real_inspair") print(ds.meta.features.keys()) sample = ds[0]


版本兼容说明

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

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

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