Fourier-Lerobot——把斯坦福人形动作策略iDP3封装进了Lerobot(含我司七月人形研发落地实践)
前言
近期在抠lerobot源码时,看到其封装了ALOHA ACT、diffusion policy、π0时,我就在想,lerobot其实可以再封装下idp3
- 我甚至考虑是否从我联合带的那十几个具身研究生中选几个同学做下这事,对他们也是很好的历练
- 然当25年3.18日晚上,我把lerobot抠的差不多了「比如此文《LeRobot源码剖析——对机器人各个动作策略的统一封装:包含ALOHA ACT、Diffusion Policy、VLA模型π0》」
却发现傅利叶fork了lerobot,并在fork的fourier-lerobot中,把idp3封装了进去,实在是卷啊..
再加之工厂机械臂开发订单之外,我司「七月在线」近期接到的B端人形开发订单越来越多了(且还有多个人形开发需求正在并行推进中)
- 对于其中一个人形开发订单,我(们)准备把ipd3作为备选,既然fourier把ipd3封装进了lerobot,那这个fourier-lerobot便是我们在落地中会尝试的库之一
- 当然了,idp3外,像vla π0 我们也会考虑并行尝试,而π0此前已经封装进了lerobot,故π0官方库、lerobot库都是可以选择的
我们非常缺人,如果有志于做具身智能或人形研发的,欢迎私我,我还顺带在微博上感慨
而FFTAI/fourier-lerobot对huggingface/lerobot的主要扩展集中在以下几个方面:
- 数据集支持:添加了对Fourier ActionNet数据集的全面支持,包括转换工具和可视化工具
- 训练管道:扩展了IDP3训练管道,针对人形机器人优化
- 工具扩展:提供了特定于Fourier数据集的工具链
这些修改使FFTAI/fourier-lerobot成为一个专为人形机器人开发优化的版本,而保持了与原始huggingface/lerobot项目的核心框架兼容性
第一部分 fourier-lerobot新增的独立scripts
FFTAI/fourier-lerobot添加了一个完全独立的scripts目录(与lerobot/scripts不同),包含:
- convert_to_lerobot_v2.py:这是一个专门为Fourier数据集开发的转换工具,用于将Fourier ActionNet数据集转换为LeRobotDatasetV2格式
该脚本处理了:
HDF5格式的机器人状态和动作数据
摄像机RGB和深度视频数据
点云数据生成和处理
时间戳对齐
特定于人形机器人的关节数据处理 - `fourier_viz.py`:用于可视化Fourier数据集的专用工具
- `requirements.txt`:Fourier数据集处理工具的依赖项
1.1 convert_to_lerobot_v2.py
1.2 fourier_viz.py
第二部分 全新的`idp3`训练管道实现
即在新增的lerobot/common/policies/idp3目录之下,包含以下文件:
- `configuration_idp3.py`
- `modeling_idp3.py`
- `pointnet_extractor.py`
这是一个重要的扩展,因为原始huggingface/lerobot项目中不包含IDP3训练管道
// 待更
第三部分 Fourier数据集的可视化和处理与文档扩展
3.1 pyproject.toml中的修改:以支持Fourier数据集的可视化和处理
添加了`fourier_viz`可选依赖组,包含以下软件包:
fourier_viz = [
"opencv-python>=4.10.0.84",
"rerun-sdk==0.22.0",
"h5py>=3.12.1",
"tqdm>=4.67.1",
"loguru",
"numpy",
"rich",
]
这些依赖项专门用于支持Fourier数据集的可视化和处理
3.2 文档扩展
- 添加了完整的`DATASET.md`文件,详细说明了Fourier ActionNet数据集的结构和使用方法
- 修改了`README.md`,添加了关于Fourier-Lerobot的介绍段落和功能说明
第四部分 傅利叶开源人形机器人数据集Fourier ActionNet
// 待更
第五部分 我司七月人形研发落地实践
// 待更