遇见数据集

grab_cup_2cam_v5

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

资源简介:

该数据集是SO-101机械臂抓取白色杯子的任务数据集,格式为LeRobot v3.0,包含两个摄像头视角(fixed和handeye),帧率为30fps。它是v4版本的改进版,通过移除长时间静止的片段,将146个episode分割为498个较短的episode,从而消除训练策略中因大量静态帧导致的策略冻结问题(死锁块)。任务提示字符串为“Grab the white cup”。数据集还提供了预计算的正则化统计文件,用于openpi训练。

This dataset is for the SO-101 robot arm task of grabbing a white cup, in LeRobot v3.0 format, with two camera views (fixed and handeye), frame rate 30fps. It is an improved version of v4, splitting 146 episodes into 498 shorter episodes by removing long static segments, solving the policy freeze issue (deadlock block) caused by a large number of static frames. The task prompt string is "Grab the white cup". The dataset also provides pre-computed normalization statistics files for openpi training.

提供机构:
endoard
创建时间:
2026-09-09
原始信息汇总

数据集概览

grab_cup_2cam_v5 是一个面向机器人操作任务的 LeRobot v3.0 格式数据集,专为 SO-101 机械臂设计,任务目标是抓取白色杯子。该数据集配备 fixedhandeye 两个摄像头视角,帧率为 30 fps。任务提示词(精确字符串)为:Grab the white cup

注意: 该数据集已被 grab_cup_2cam_v6 取代,官方建议使用 v6 版本。

与 v4 版本的关键差异

指标 v4(源数据) v5
片段数 146 498
总帧数 104,819 78,771(减少 24.9%)
帧率 30 30
中位片段时长 23.6 秒 4.3 秒
静态帧占比 50.5% 33.8%
死块占比 24.5% 0.0%

v5 的创建动机

  • 基于 v4 训练的策略存在动作后永久冻结的问题,根源是数据中 50.5% 的帧机械臂未移动(其中 80% 的夹爪被指令闭合)。
  • 单帧观测缺乏时间信息,模型无法区分“暂停两秒”和“永远保持”,导致多数投票结果倾向于“保持不动”。
  • **死块(dead chunk)**是失败的核心单元:pi0.5 在 action_stride=2 时预测 16 个动作,覆盖 32 个源帧窗口;若窗口内机械臂完全静止,样本会教模型“保持”而无法判断恢复时机。v4 中死块占比 24.5%,v5 降至 0.0%。

片段数从 146 增至 498 的原因

  • 不能直接删除片段内部帧——LeRobot 将时间戳偏移转换为行索引偏移,删除行会导致动作块跨缺口,教给模型无法执行的跳跃动作且不报错。
  • 因此每次切割会将一个片段一分为二,每个 v5 片段是 v4 某一片段的连续窗口,动作块在边界处停止并标记 action_is_pad
  • 一个 v4 片段通常变为 3–4 个 v5 片段。
  • 保留的短暂停顿全部位于后续片段开头,不会出现在片段结尾。
  • 短于 32 帧的停顿被保留,以保证“短暂保持后继续”的可表示性。

使用与训练说明

与 openpi 配合训练(pi0.5)

  1. 放置数据集:需将数据集软链接至 $HF_LEROBOT_HOME/so101 目录下,openpi 配置中的 repo_id="so101/grab_cup_2cam_v5" 为本地名称,不可更改(asset_idrepo_id 派生,决定归一化统计的查找位置)。
  2. 放入归一化统计文件:将 openpi_assets/ 中的统计文件复制到 openpi 的 assets/pi05_so101_v5/ 目录。切勿复用 v4 的归一化统计,如需重新生成可运行 uv run python scripts/compute_norm_stats.py --config-name pi05_so101_v5
  3. 训练:使用配置 pi05_so101_v5(pi0.5,action_dim=32action_horizon=16,30k 步,batch 32,fsdp_devices=4),运行 uv run python scripts/train.py pi05_so101_v5 --exp-name <name>
  4. 服务部署--policy.config 必须与训练配置一致,否则会因找不到 norm_stats.json 报错。

从 v4 重新生成 v5

bash python clean_dataset.py --src grab_cup_2cam_v4 --dst grab_cup_2cam_v5 --max-static-frames 31 --write

--max-static-frames 31 必须低于块窗口大小action_horizon × action_stride = 32),否则死块会重新出现;取 31 可在去除最少数据的前提下将死块降为零。

重要注意事项

  • 多个片段可能共享同一个 .mp4 视频文件,仅通过 videos/<key>/from_timestamp 偏移区分,不要假设每个片段对应独立视频,也不要重新编码视频
  • 数据集的许可证为 Apache 2.0。
二维码
社区交流群
二维码
科研交流群
商业服务