遇见数据集

cube_in_cup_lerobot_v3

收藏
Hugging Face2026-07-20 更新2026-07-20 收录
官方服务:

资源简介:

关节空间模仿学习数据集:包含23个人类遥操作演示,展示UR7e机械臂从桌上拾取木块并放入杯中的过程,有两个720p摄像头视角。可直接通过LeRobot API加载。

Joint Space Imitation Learning Dataset: Contains 23 human teleoperation demonstrations showing the process of a UR7e robotic arm picking up a wooden block from a table and placing it into a cup, with two 720p camera perspectives. It can be directly loaded via the LeRobot API.

提供机构:
Bigenlight
创建时间:
2026-07-20
原始信息汇总

数据集概述:cube_in_cup — UR7e 遥操作 “将立方体放入杯子中”(LeRobot v3.0)

该数据集是一个用于模仿学习的关节空间数据集,包含23次人类遥操作演示,展示了UR7e机械臂从桌面上拾取一个木制立方体并将其放入杯子中的完整过程。数据集可直接通过LeRobot API加载。

  • 规模:23个episode,共6,177帧,30 fps,时长约3.4分钟,大小约124 MB。
  • 格式:LeRobot v3.0(兼容 lerobot 0.6.1)。
  • 动作/状态空间:7维绝对关节空间(6个UR关节 + 1个夹爪)。
  • 所有episode均为成功演示

注意: 这是一个小规模数据集(约3.4分钟),仅为同类数据集 banana_in_pot_lerobot_v3(51个episode,12分钟)的四分之一左右。建议将其视为种子数据集或模式参考,而非用于训练稳健策略的独立数据。目前尚未为此任务训练任何策略。

数据采集设置

  • 机器人平台:Universal Robots UR7e(6自由度协作臂),关节值单位为弧度。
  • 遥操作设备:GELLO低成本3D打印主臂,用于动觉遥操作。操作员移动GELLO主臂,其关节位置被映射为UR7e的关节命令。
  • 末端执行器:Robotiq 2F-85二指平行夹爪。
  • 相机:两个Intel RealSense摄像头(仅记录RGB视频):
    • 相机1:Intel RealSense D435
    • 相机2:Intel RealSense D435if(D435变种)
    • 视角:一个相机安装在机器人腕部(近景/眼在手),另一个放置在工作台旁的三脚架上(场景/第三人称)。本数据集的发布版本未验证哪个相机对应cam1cam2,但确保部署时cam1cam2的顺序与记录时保持一致。
    • 分辨率:1280×720 @ 30 fps,编码为yuv420p。原始MPEG-4文件已重新编码为AV1(crf 30)。
    • 未记录深度或红外流。
    • 场景中含有一个ArUco/AprilTag标记,位于机器人基座上,而非工作台面上。

任务描述

“将立方体放入杯子中。”

  • 工作台面上有两个物体:一个淡紫色/薰衣草色木制立方体(约5厘米边长)和一个鼠尾草绿色塑料杯(锥形种植杯),置于浅木纹桌面上。
  • 操作员抓取立方体并将其放入杯子中。
  • 成功标准:立方体最终置于杯子内。
  • 与同系列的香蕉数据集不同,本任务没有干扰物体,是一个干净的双物体拾取-放置任务。(设置照片中出现的塑料水果碗位于工作台旁的侧车上,不属于工作场景。)

数据模式 (Schema)

特征 数据类型 形状 含义
observation.state float32 (7,) UR7e测量关节值 ur_q1..ur_q6(弧度) + 夹爪开合度 grip_pos
action float32 (7,) 命令的绝对关节目标值 cmd1..cmd6(弧度) + 夹爪命令 grip_cmd
observation.images.cam1 视频 (AV1) (720, 1280, 3) 视角1(RGB,HWC uint8)
observation.images.cam2 视频 (AV1) (720, 1280, 3) 视角2(RGB,HWC uint8)
  • 还包括标准LeRobot日志列(timestamp, frame_index, episode_index, index, task_index)。
  • action绝对关节目标命令(非增量),夹爪命令 grip_cmd 实际上是二值信号(开/关)。
  • 元数据记录 robot_type: "ur7e_gello"。注意较早的 banana_in_pot_lerobot_v3 数据集对同一物理臂使用了遗留标签 "ur5e_gello"

数据构建方式

  • 原始数据来源于 Bigenlight/cube_in_cup_raw(24个原始录制的多速率HDF5 + 双MP4文件)。
  • 使用与香蕉系列数据集相同的 convert_to_lerobot.py 脚本进行转换:
    • 主时钟 = cam1_frames/t_rel_s,采样率为30 fps。每个机器人流通过最近时间戳查找方式重新采样到该时间网格上。
    • cam2 通过与 cam1 的最近相机时间戳对齐(两个相机独立运行时钟,在24个原始录制中有16个存在±1帧的差异)。
    • gello_* 领导流被丢弃(部署的机器人无法观察领导臂数据)。
    • 视频重新编码为AV1(crf 30, preset 12, GOP 2, pyav后端)。

原始数据流速率(重新采样前)

数据流 原始速率 在本数据集中的处理方式
摄像头 (cam1, cam2) 30 Hz 主时钟30 fps
command (UR关节目标) ~98 Hz action[0:6],重新采样至30 fps
ur_joint_states ~97 Hz observation.state[0:6],重新采样至30 fps
gripper ~36.5 Hz grip_pos / grip_cmd,重新采样至30 fps
tcp_pose, wrench ~97 Hz 未包含在本数据集中(原始数据集中有)
gello_joint_states 30 Hz 已排除(仅领导臂)
  • 本数据集的机器人数据流运行在**~97 Hz**,比香蕉数据集(~56-60 Hz)快。这意味着每个相机帧约有3.2个机器人样本。采样是突发性(非均匀,呈双峰样本间隔)的,因此转换采用时间戳对齐而非索引对齐。

视频集

  • 从24个原始录制中提取了23个episode。排除了take_23:这是一个1.64秒的记录故障,机械臂基本静止(每个关节范围 < 0.013 rad)且夹爪从未被触发。此记录不包含演示,仅在原始数据集中保留。原始录制编号04和06因记录过程中中止而缺失。

验证

  • 由一个独立的验证器进行了转换验证,该验证器在不导入转换器的情况下从源HDF5重新推导了observation.stateaction
    • max |Δ observation.state| = 0.0 且 max |Δ action| = 0.0 —— 与独立的重新采样实现达到位元精确(容忍度为1e-6)。
    • 每个episode的帧数与源录制的cam1_frames行数按顺序匹配。
    • 所有存储的数组中无NaN/Inf;任务字符串唯一;时间戳等于 frame_index / 30
    • 采样AV1帧与原始MPEG-4源的对比:在两个相机的24个采样帧上,相关性最小0.9982,平均0.9991(AV1有损,此为预期结果)。
    • 进行了35项检查,0项失败。

使用示例

python from lerobot.datasets.lerobot_dataset import LeRobotDataset

ds = LeRobotDataset("Bigenlight/cube_in_cup_lerobot_v3") print(ds.meta.total_episodes, ds.meta.total_frames) # 23, 6177

sample = ds[0] sample["observation.state"] # (7,) float32 sample["action"] # (7,) float32 sample["observation.images.cam1"] # (3, 720, 1280) float32 CHW

如需完整的多种速率信号(TCP位姿、6轴 wrench、关节速度和力、GELLO领导臂流),请使用原始数据集 Bigenlight/cube_in_cup_raw,该数据集还提供了 DATA_DICTIONARY.mddataset_stats.json

相关仓库

仓库 内容
Bigenlight/cube_in_cup_lerobot_v3 本数据集 — LeRobot关节空间数据集,23个episode
Bigenlight/cube_in_cup_raw 原始HDF5 + MP4数据,24个录制,包含所有信号(包括GELLO领导臂)
Bigenlight/banana_in_pot_lerobot_v3 同类数据集,相同平台,不同场景,51个episode

局限性与预期用途

  • 小规模:仅23个episode / 约3.4分钟。对于模仿学习来说较小,建议与其他数据结合使用或作为参考。
  • 单一任务、单一场景布局、单一操作员、单一记录会话、物体位置固定 —— 预期泛化能力有限。
  • 所有演示均为成功演示 —— 无失败/恢复数据。
  • 尚未基于该数据集训练或评估任何策略,未声明任何性能指标。
  • 预期用途:用于模仿学习和机器人操作的研究。

引用

bibtex @misc{theo2026cubeincup, title = {cube_in_cup: UR7e teleoperation demonstrations for "put the cube in the cup"}, author = {Theo and {Bigenlight}}, year = {2026}, howpublished = {url{https://huggingface.co/datasets/Bigenlight/cube_in_cup_lerobot_v3}}, note = {LeRobot v3.0 dataset, 23 episodes} }

许可证

Apache-2.0

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