手把手玩转LET-Body-Dataset全身运控数据集:从VR遥操作到真机复现
手把手玩转LET-Body-Dataset全身运控数据集:从VR遥操作到真机复现
【免费下载链接】LET-Body-DatasetLET全身运控数据基于VR套装与全身动捕遥操技术,实现了机器人对操作员动作的实时重定向,涵盖行走、下蹲、转腰及双足全向跟随等高拟人化全身运动控制,全面满足全尺寸人形机器人在灵活作业空间内的拟人作业场景需求。项目地址: https://ai.gitcode.com/OpenLET/LET-Body-Dataset
想让一台1.73米的全尺寸人形机器人像真人一样下蹲、转腰、补货?LET-Body-Dataset正是为此而生的开源数据集——它基于VR套装与全身动捕遥操作技术,把人类操作员的动作实时重定向到机器人身上,并沉淀为可复用的真机轨迹数据。这篇文章会带你看懂数据里到底装了什么、怎么快速跑起来,以及那些官方文档没说透的细节。
先说人话:这个数据集到底干了什么
你可以把 LET-Body-Dataset 理解成一份"人形机器人的运动录像带 + 操作说明书"合集。
采集端是一位戴着 VR 套装、穿着动捕设备的操作员,他在超市货架前完成下蹲取货、转腰放置、双足侧移等动作;数据端则把这份人类动作实时重定向到全尺寸人形机器人 Kuavo 5 上,同时记录下机器人本体每个关节的响应。最终每一段轨迹都打包成一个.bag文件(传感器原始流)和一个.json文件(场景标注),放进仓库供你直接用于训练或仿真验证。
一句话总结它的价值:不用自己架动捕棚、不用反复调试重定向参数,开箱就能拿到一批"人类动作-机器人关节"对齐的全身运控数据。
先看看"主角":采集平台 Kuavo 5
数据集背后站着乐聚的人形机器人 Kuavo 5(含轮式版本),它不只是采集工具,也是这套数据最终要驱动的目标硬件。
| 参数 | 规格 |
|---|---|
| 身高 / 体重 | 1.73m / 65.5kg |
| 自由度 | 41 DoF |
| 最大速度 | 5 km/h |
| 导航方式 | 双足自主 SLAM |
| 电池 | 支持不停机热更换 |
| 大模型接入 | 盘古 / DeepSeek / ChatGPT 等 |
41 个自由度意味着什么?一般只有轮式底盘 + 双机械臂的小型机器人只有 10~20 DoF,而 Kuavo 5 连腰部转动都是独立自由度。这也是为什么数据集里能同时出现"行走、下蹲、弯腰、转腰、分拣"这些需要全身协同的复合动作——每个动作背后都牵动几十个关节同步发力。
数据里到底有什么?五类核心信号一次讲清
每个.bag文件本质上是一条按时间轴对齐的多模态数据流。把它解包后,你会看到这样几路信号:
| ROS Topic | 消息类型 | 内容 |
|---|---|---|
/cam_x/color/image_raw/compressed | CompressedImage | RGB 图像,x 为 h/l/r(头部 + 左右腕) |
/cam_x/depth/image_rect_raw/compressedDepth | CompressedImage | 深度图,与 RGB 同视角 |
/sensors_data_raw | kuavo_msgs/sensorsData | 关节位置/速度/加速度/电流 + IMU |
/control_robot_hand_position | robotHandPosition | 灵巧手目标位置,左右各 6 维 |
/dexhand/state | JointState | 灵巧手实际状态,12 个关节 |
/leju_claw_command | lejuclawcommand | 夹爪控制命令(位置/速度/电流) |
/leju_claw_state | lejuClawState | 夹爪状态反馈(抓取成功与否) |
几个值得留意的细节:
- 视觉不只有一个相机。头部 + 双腕三个视角,RGB 与深度成对出现,这对做模仿学习、行为克隆时对齐"手在做什么"非常有用。
- 关节信号是"富矿"。
/sensors_data_raw里不仅有位置和速度,还有加速度和电流——电流数据可以直接反推力矩,想做阻抗控制或动力学研究的人会很喜欢。 - 手部有两种末端可切换。夹爪(claw)与灵巧手(dexhand)的消息结构不同,训练前先确认自己手里的 bag 对应哪种末端。
场景标注长什么样:打开一个 JSON 看看
.bag负责"动",.json负责"名"。仓库里每个 bag 旁边都躺着一个同名 JSON,里面是这段数据的场景与动作标注。随手打开一个supermarket_replenishment的样本,能看到这样的结构:
{ "taskName": "商超上货(5代人形)", "taskCode": "TQ_19_01", "deviceSn": "P5-64", "marks": [ { "markStart": "2026-04-23 19:05:04.221", "markEnd": "2026-04-23 19:05:20.321", "duration": 16.1, "startPosition": 0.11787473640975 } ] }这里的marks数组就是"动作时间戳标注"——它标出了这段轨迹里一个完整动作的起止时刻。你可以直接用markStart和markEnd做数据切片,把一段长轨迹切成若干个原子技能片段。
当前仓库里的任务分两种:
supermarket_replenishment:超市补货,涵盖取货、上架、整理supermarket_shelf_stocking:货架 stocking 场景,动作更密集
每个任务目录各含 597 组 bag + json,合计近 1200 条轨迹。按 README 的规划,后续还会扩充快递分拣(Express_sorting)、玩具抓取放置(Toys_grab_place)等更多场景。
文件命名里藏着的信息,别忽略
目录和文件的命名不是随机的,遵循<任务名>-<机器人型号>-<末端类型>的规范:
supermarket_replenishment-5W-leju_claw/ A10-A15-C-R-02-TQ_19_01-P5_64-leju_claw-20260423190500-53-b513f5-v003.bag拆开来看:
5W:机器人型号leju_claw:末端为乐聚夹爪(如果是灵巧手就是dex_hand)TQ_19_01:任务编码,对应 JSON 里的taskCode20260423190500:采集时间戳b513f5:可能是版本或哈希标记
训练脚本如果要按"任务/末端/机器人"分流,直接解析文件名就行,不用额外维护清单。
本地跑起来:从克隆到第一条轨迹
1. 拉取仓库
git clone https://gitcode.com/OpenLET/LET-Body-Dataset cd LET-Body-Dataset2. 用工具链做格式转换
官方配套的kuavo_data_challenge工具链提供了 rosbag 转换、训练、部署的完整流程。ROS 环境就绪后,先检查 bag 完整性:
rosbag check datasets/supermarket_replenishment-5W-leju_claw/xxx.bag想快速浏览某路 topic,用rosbag info看整体概况:
rosbag info datasets/supermarket_replenishment-5W-leju_claw/xxx.bag3. 结合 JSON 做数据切片
读入 JSON,用marks里的起止时间把大 bag 切成单个动作片段,再丢给训练脚本。这一步对做模仿学习尤其重要——一个片段对应一个"技能单元",切得越准,训练标签越干净。
环境要求参考
| 类别 | 建议配置 |
|---|---|
| 操作系统 | Ubuntu 18.04/20.04(ROS Melodic/Noetic) |
| Python | 3.6+ |
| 依赖库 | OpenCV 4.0+、NumPy 1.18+ |
| 存储 | 预留 50GB+(数据本体约 30GB) |
| 内存 | 16GB 起步,解包大 bag 建议 32GB |
如果你只想先用 JSON 做标注分析,那连 ROS 都不用装,Python 读 JSON 就能跑;只有真正要解析 bag 里的图像和关节流时,才需要完整的 ROS 环境。
高频疑问速答
Q1:没有 Kuavo 5 真机,能用这个数据集吗?可以。数据是通用的 ROSbag 格式,关节位置/速度信号可以迁移到其他同构人形机器人,或先用于仿真训练、策略预训练。
Q2:RGB 和深度图分辨率是多少?由CompressedImage消息承载,具体分辨率以 bag 内实际数据为准,建议用rosbag info查看后按需解码。
Q3:夹爪和灵巧手的数据能混用吗?不建议。两者消息结构不同,抓取控制语义也不同,训练时按末端类型分流更稳妥。
Q4:数据量多大,怎么省空间?两个任务各 597 组,总量约 30GB。只想跑通流程,先挑 2~3 个短片段即可;marks里的duration字段能帮你筛出最短的那批。
Q5:动作只有行走和下蹲吗?远不止。原子技能 20+ 且持续扩展,下蹲、弯腰、转腰、双足全向移动、分拣、上架都属于全身协同动作。
下一步可以这样玩
拿到数据后,建议按这个顺序探索:
- 先读 JSON,挑出 3~5 段短轨迹,理解
marks时间戳的分布规律 - 再解 bag,用
rosbag info确认 topics,可视化一帧 RGB + 深度 - 然后做切片,把长轨迹切成原子技能,配好训练标签
- 最后进工具链,走一遍
kuavo_data_challenge的转换到部署流程
对数据内容有疑问,可以去官方交流群(QQ:1043359345)里找同好;想反馈新任务场景或参与标注规范讨论,也欢迎在仓库 issue 区聊聊。希望这篇攻略能帮你省下几个晚上的踩坑时间——下一步,试试把你手头的场景跑成第一条训练轨迹吧。
【免费下载链接】LET-Body-DatasetLET全身运控数据基于VR套装与全身动捕遥操技术,实现了机器人对操作员动作的实时重定向,涵盖行走、下蹲、转腰及双足全向跟随等高拟人化全身运动控制,全面满足全尺寸人形机器人在灵活作业空间内的拟人作业场景需求。项目地址: https://ai.gitcode.com/OpenLET/LET-Body-Dataset
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考