当前位置: 首页 > news >正文

iDP3复现代码运行逻辑全流程(一)——部署全流程代码逻辑梳理(Learning)

Improved 3D Diffusion Policy (iDP3) 是一种新的基于3D视觉的运动策略,使用了以自我为中心的3D视觉表征,实现了人形机器人在不同场景中自主执行技能

代码开源了两部分:Learning & Deployment of iDP3 和 Humanoid Teleoperation

本文详细分析 iDP3 的训练和部署流程

目录

1. 前言

2. 安装

2.1. 训练机

2.2. 部署机

3. 使用

3.1 训练

3.2 部署

3.3 可视化


1. 前言

训练方面,在Google Drive开源了训练数据示例,可以使用自己采集的数据集训练模型

此外:

训练机:使用一台带有 Nvidia RTX 4090 (24G内存)的本地计算机
部署机:使用傅立叶 GR1 中板载计算机的 cpu
使用RealSense L515作为深度相机。Note:RealSense D435提供非常不精确的深度数据,不建议用于训练3D策略
iDP3 是适用于任何机器人的通用3D视觉运动策略。使用 iDP3 可以不做相机校准和点云分割

2. 安装

2.1. 训练机

安装conda环境和库

conda remove -n idp3 --all
conda create -n idp3 python=3.8
conda activate idp3# for cuda >= 12.1
pip3 install torch==2.1.0 torchvision --index-url https://download.pytorch.org/whl/cu121
# else, 
# just install the torch version that matches your cuda version# install my visualizer
cd third_party
cd visualizer && pip install -e . && cd ..
pip install kaleido plotly open3d tyro termcolor h5py
cd ..# install 3d diffusion policy
pip install --no-cache-dir wandb ipdb gpustat visdom notebook mediapy torch_geometric natsort scikit-video easydict pandas moviepy imageio imageio-ffmpeg termcolor av open3d dm_control dill==0.3.5.1 hydra-core==1.2.0 einops==0.4.1 diffusers==0.11.1 zarr==2.12.0 numba==0.56.4 pygame==2.1.2 shapely==1.8.4 tensorboard==2.10.1 tensorboardx==2.5.1 absl-py==0.13.0 pyparsing==2.4.7 jupyterlab==3.0.14 scikit-image yapf==0.31.0 opencv-python==4.5.3.56 psutil av matplotlib setuptools==59.5.0cd Improved-3D-Diffusion-Policy
pip install -e .
cd ..# install for diffusion policy if you want to use image-based policy
pip install timm==0.9.7# install for r3m if you want to use image-based policy
cd third_party/r3m
pip install -e .
cd ../..

2.2. 部署机

安装 realsense 库

# first, install realsense driver
# check this version for RealSenseL515: https://github.com/IntelRealSense/librealsense/releases/tag/v2.54.2# also install python api
pip install pyrealsense2==2.54.2.5684

3. 使用

在 Google Drive 中提供了一套训练数据样例,从而可以尝试使用样例训练模型。下载并解压缩,然后在 scripts/train_policy.sh 中指定数据集路径

例如,将数据集放在 /home/ze/projects/Improved-3D-Diffusion-Policy/training_data_example 中,并在 scripts/train_policy.sh 中设置 dataset_path=/home/ze/projects/Improved-3D-Diffusion-Policy/training_data_example

然后训练策略并部署

3.1 训练

训练策略

# 3d policy
bash scripts/train_policy.sh idp3 gr1_dex-3d 0913_example# 2d policy
bash scripts/train_policy.sh dp_224x224_r3m gr1_dex-image 0913_example

3.2 部署

训练完策略后,使用类似指令部署策略

# 3d policy
bash scripts/deploy_policy.sh idp3 gr1_dex-3d 0913_example# 2d policy
bash scripts/deploy_policy.sh dp_224x224_r3m gr1_dex-image 0913_example

Note:在没有机器人的情况下可能无法运行部署代码(不同的机器人有不同的API)

所提供的代码更像是展示如何部署策略的示例

可以修改代码以适应自己的机器人(任何带摄像头的机器人都可以)

3.3 可视化

可以可视化训练数据样例,运行(记得设置数据集路径):

bash scripts/vis_dataset.sh

你可以指定 vis_cloud=1 来渲染论文中的点云


http://www.mrgr.cn/news/62889.html

相关文章:

  • 类和对象(中)—— 类的六个默认成员函数
  • Python飞舞蝙蝠
  • Spring Boot 全面指南
  • 【Clickhouse 探秘】你真正知道 Clickhouse 吗?
  • 面试域——岗位职责以及工作流程
  • 51c多模态~合集1
  • python opencv1
  • 金蝶云苍穹的Extension与Nop平台的Delta的区别
  • 基于LORA的一主多从监测系统_4G模块上巴法云
  • Linux高阶——1027—进程间关系相关
  • SpringFactoriesLoader
  • Java项目实战II基于Java+Spring Boot+MySQL的编程训练系统(源码+数据库+文档)
  • VB中如何处理国际化(Internationalization)和本地化(Localization)
  • 低代码的崛起:改变开发的游戏规则
  • Leetcode 移除元素
  • vector中去除重复的元素
  • [UVM] objection笔记
  • 7个提高 Python 代码运行效率的小贴士
  • 自制田字格word
  • Spring Boot2.x教程:(十)从Field injection is not recommended谈谈依赖注入
  • 《优化工厂模式:降低对象创建开销的秘籍》
  • 心觉:抄袭是一种智慧
  • 突破语言壁垒:Cohere 发布多语言大模型 Aya Expanse
  • 我在命令行下剪辑视频
  • SimpleQA:OpenAI 开源评估大模型事实性的基准测试
  • 多浏览器同步测试工具的设计与实现