mhbench_handover_easy_test
收藏资源简介:
MHBench — Handover Easy (G1 × 2) 是一个用于机器人模仿学习的数据集,包含60个成功的双操作员演示,涉及两个Unitree G1人形机器人在厨房柜台上的酒瓶传递任务。每个机器人由一名人类操作员通过Meta Quest 3头显进行遥操作,操作员通过联邦式的Isaac Sim链接进行协作。任务要求机器人A用右手拿起瓶子,直接传递给机器人B的右手,然后B将瓶子放置在目标位置。数据集包含31,471帧,采样频率为50Hz,总计10.5分钟模拟演示。该数据集是MHBench中Handover任务的单手变体,简化了传递过程,避免了机器人内部的换手动作。数据集提供状态(43个关节角度)、动作(35维,包括手臂、手、腰部、基座高度和导航命令)、RGB图像(三个视角)和深度图像(两个视角),以及语言指令。所有演示均为实时采集,接触抓取基于手指压力。数据集包含训练集(50个演示)和验证集(10个演示)。
MHBench — Handover Easy (G1 × 2) is a dataset for robot imitation learning, containing 60 successful dual-operator demonstrations involving two Unitree G1 humanoid robots performing a wine bottle handover task on a kitchen counter. Each robot is teleoperated by a human operator via a Meta Quest 3 headset, with operators collaborating through a federated Isaac Sim link. The task requires Robot A to pick up the bottle with its right hand, directly pass it to Robot Bs right hand, and then Robot B places the bottle at the target location. The dataset includes 31,471 frames sampled at 50 Hz, totaling 10.5 minutes of simulated demonstrations. This dataset is a single-hand variant of the Handover task in MHBench, simplifying the transfer process by avoiding in-hand re-grasping. It provides state (43 joint angles), action (35-dimensional, including arm, hand, waist, base height, and navigation commands), RGB images (three views), depth images (two views), and language instructions. All demonstrations are collected in real-time, with contact grasping based on finger pressure. The dataset includes a training set (50 demonstrations) and a validation set (10 demonstrations).
MHBench — Handover Easy (G1 × 2) 数据集总结
数据集地址: https://huggingface.co/datasets/meat000124/mhbench_handover_easy_test
许可证: Apache 2.0
任务类别: 机器人学
标签: 机器人学, 模仿学习, 遥操作, 人形机器人, 多智能体, 操作, Isaac Lab, LeRobot, 深度, RGBD
数据规模: 少于 1K 条
1. 任务概述
- 两个 Unitree G1 人形机器人(分别由两名人类操作员通过 Meta Quest 3 头显控制)在厨房台面上进行一瓶红酒的传递。
- 任务为单臂变体(右手到右手):机器人 A 用右手拾起瓶子,机器人 B 用右手接收并放置在目标位置,左臂全程未使用。
- 共 60 次成功演示,31,471 帧,50 Hz 采样,总时长约 10.5 分钟(单次演示 8.6–12.4 秒,中位数 10.5 秒)。
- 所有演示均于 2026 年 08 月 24 日由同一对操作员实时采集,非重放或磁吸记录。
2. 数据划分
| 划分 | 片段编号 | 帧数 | 说明 |
|---|---|---|---|
train |
0–49 | 26,253 | 会话前 50 次演示 |
val |
50–59 | 5,218 | 会话最后 10 次演示 |
- 边界按时间顺序划分(非随机),验证集为会话尾部,可捕捉操作员行为漂移。
- 配置在
meta/info.json和卡片头部的configs:块中双重声明。
3. 数据结构与布局
meta/ info.json 特征、数据类型、维度、fps、划分、路径模式 modality.json 每个键对应的数据列切片 episodes.jsonl 每行一个片段:索引、任务、长度 tasks.jsonl 三条任务指令 mhbench_provenance.json 录制来源、丢弃内容及像素生成方式 data/chunk-000/episode_000000.parquet ... episode_000059.parquet videos/chunk-000/observation.images.ego_a/... 彩色视频 observation.images.ego_b/... observation.images.scene/... observation.depth.ego_a/... 深度视频(米,无损) observation.depth.ego_b/... configs/operators.yaml 元数据整数代码的说明
- LeRobot v2.1 格式:parquet 行、H.264 视频和
meta/目录。 - 可直接由 LeRobot 或 GR00T 数据加载器读取。
4. 状态与动作空间
每个机器人的状态(43 个测量关节角,URDF 顺序):
| 键 | 维度 |
|---|---|
{robot}_left_leg / _right_leg |
6 + 6 |
{robot}_waist |
3 |
{robot}_left_arm / _right_arm |
7 + 7 |
{robot}_left_hand / _right_hand |
7 + 7 |
每个机器人的动作(35 维):
| 键 | 维度 | 说明 |
|---|---|---|
{robot}_left_arm / _right_arm |
7 + 7 | 关节目标,绝对位置(IK 输出) |
{robot}_left_hand / _right_hand |
7 + 7 | 关节目标,绝对位置 |
{robot}_waist |
3 | 关节目标,绝对位置 |
{robot}_base_height_command |
1 | 髋部高度(米) |
{robot}_navigate_command |
3 | vx, vy, wz |
额外测量(meta/modality.json 中描述):
| 键 | 维度 | 说明 |
|---|---|---|
{robot}_{left,right}_wrist_pos / _wrist_abs_quat |
3 + 4 | 实测腕部姿态(盆腔坐标系,wxyz) |
{robot}_root |
7 | 盆腔姿态(世界坐标系,xyzw) |
{camera}_camera_pose |
7 | 相机姿态(世界坐标系,xyzw) |
{robot}_wrench |
12 | 左右手力/力矩 |
object |
7 | 瓶子姿态 |
grasp_latched |
4 | 手指接触位(每只手一位) |
- 腿部关节仅在状态中,动作中不包含(通过速度和高度命令控制,由平衡控制器解析)。
- 22 个命令维度在整个数据集中保持不变(两个左手的 14 列和所有 8 个移动命令)。
5. 任务语言指令
- 三个指令(因角色不对称):
- 共同指令: "Pass the bottle directly from Robot As right hand to Robot Bs right hand, then place it on the target."
- A 指令: "Pick up the bottle directly in front of you with your right hand and hand it to your partners right hand."
- B 指令: "Receive the bottle with your right hand, place it on the target directly in front of you, and release it."
- 每列存储指向
tasks.jsonl的行索引(LeRobot 规范)。
6. 抓取与接触细节
grasp_latched为四列:A 左、A 右、B 左、B 右。- 左手接触列为 0%(60/60 片段均无),右手接触列范围:
- A 右: 28.0–42.1%(中位数 34.3%)
- B 右: 31.5–47.8%(中位数 40.3%)
- 抓取力(A 右手中位数 30.2 N,B 右手中位数 49.9 N)。
- 交接重叠期:0.56–1.12 秒(中位数 0.72 秒),B 在 A 松开前闭合。
7. 场景随机化与演示统计
- 瓶子起点和目标垫各在 5 cm × 5 cm 随机方块内(实测 0.048 m × 0.048 m),比原始任务(10 cm)更小。
- 机器人位置固定(3 mm 内)。
- 所有移动命令均为 0(无人行走),但盆腔仍因操作员倾斜/伸手而移动(水平约 12 cm,垂直 8 cm)。
- 成功标准:瓶子在目标 X/Y/Z ±0.06 m 内、倾斜 <15°、速度 <0.05 m/s 和 0.15 rad/s、所有手释放 ≥0.20 秒,且必须按顺序完成交接。
8. 图像与深度
- 每段有 5 个 H.264 视频流,240×320 分辨率,每行一帧。
| 视频键 | 说明 |
|---|---|
observation.images.ego_a |
机器人 A 的第一视角 |
observation.images.ego_b |
机器人 B 的第一视角 |
observation.images.scene |
固定第三人称视角 |
observation.depth.ego_a |
A 的深度视频(米,无损) |
observation.depth.ego_b |
B 的深度视频 |
- 第一视角镜头为 102° 水平视野,向下倾斜约 25°。
- 深度视频为无损 H.264,像素以毫米为单位编码(两通道),通过解码可精确到 0.0005 米。
- 图像为会话后通过记录的状态重建渲染(路径追踪,16 spp,OptiX 降噪器),非实时录制。
- 机器人外观采用 Unitree 官方材质:浅灰色外壳(粗糙度 0.65),头部、Dex3 手、腰部偏航段、髋部盖板和脚踝为哑光黑。
9. 已知限制
- 左臂完全未使用:14 个左手指令列为常数,两个左接触列为零;训练于此数据的策略可能无法迁移到需要四只手的原始 Handover 任务。
- 仅包含成功演示:6 次废弃尝试(如瓶子翻倒、过早松开、未触及)不在数据集中。
- 单一配置:单一地形、单一伙伴、单一瓶子、一对操作员;仅瓶子位置和目标有 5 cm 抖动,非场景分布。
- 无移动信号:8 个移动命令列为常数,不教授任何移动或步态内容。



