FoundationPose部署

FoundationPose 6D姿态估计

方法1:基于docker:(不推荐)

理解知识:镜像就像是个安装包–容器才是项目利用镜像环境下的运行环境

方法2.基于Conda(推荐)

部署初准备

VS Code 配置 C/C++ 编程运行环境(保姆级教程)_vscode配置c++环境-CSDN博客

方法2:本地配置:

全网最简洁安装Eigen库方法(Win端+VScode)_eigen库安装-CSDN博客

Foundationpose算法复现_foundationpose复现-CSDN博客

FoundationPose复现及Realsense应用-CSDN博客

【6D位姿估计】FoundationPose 跑通demo 训练记录_foundationpose demo-CSDN博客

数据集制作:

ObjectDatasetTools生成linemod数据集预处理Linemod_preprocessed过程记录_创建 linemod 数据集-CSDN博客

https://blog.csdn.net/qq_53186375/article/details/146321017 制作数据集重点

https://www.cnblogs.com/day1024/p/18948051

或者直接在ubuntu20.04系统–(能跑)—极力推荐

https://blog.csdn.net/qq_41204464/article/details/138619210

1、首先安装 Eigen3
cd $HOME && wget -q https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz && \
tar -xzf eigen-3.4.0.tar.gz && \
cd eigen-3.4.0 && mkdir build && cd build
cmake .. -Wno-dev -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++14 ..
sudo make install
cd $HOME && rm -rf eigen-3.4.0 eigen-3.4.0.tar.gz

然后参考下面命令,创建conda环境

# create conda environment
create -n foundationpose python=3.9
 
# activate conda environment
conda activate foundationpose
 
# install dependencies
python -m pip install -r requirements.txt
 
# Install NVDiffRast
python -m pip install --quiet --no-cache-dir git+https://github.com/NVlabs/nvdiffrast.git
 
# Kaolin (Optional, needed if running model-free setup)
python -m pip install --quiet --no-cache-dir kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.0.0_cu118.html
 
# PyTorch3D
python -m pip install --quiet --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py39_cu118_pyt200/download.html
 
# Build extensions 
CMAKE_PREFIX_PATH=$CONDA_PREFIX/lib/python3.9/site-packages/pybind11/share/cmake/pybind11 bash build_all_conda.sh

#每次进入工程文件和运行的时候,都要执行一遍
conda activate foundationpose
CMAKE_PREFIX_PATH=$CONDA_PREFIX/lib/python3.9/site-packages/pybind11/share/cmake/pybind11 bash build_all_conda.sh

python run_demo.py --debug 2

#动态查看GPU实时情况
watch -n 1 nvidia-smi
#训练 示例1:训练Linemod数据集
python bundlesdf/run_nerf.py --ref_view_dir /home/a/FoundationPose/demo_data/linemod/ref_views --dataset linemod

#训练 示例2:训练YCB-V数据集
/run/user/1000/gvfs/smb-share:server=c1101.local,share=public/yinduo/Project/FoundationPose/ycbv

python bundlesdf/run_nerf.py --ref_view_dir /run/user/1000/gvfs/smb-share:server=c1101.local,share=public/yinduo/Project/FoundationPose/ycbv/ref_views_16 --dataset ycbv

图片

2、基于CAD模型为输入的demo

首先,下载模型权重,里面包括两个文件夹;点击下载(模型权重)

在工程目录中创建weights/,将下面两个文件夹放到里面。

图片

然后,下载测试数据,里面包括两个压缩文件;点击下载(demo数据)

在工程目录中创建demo_data/,加压文件,将下面两个文件放到里面。

图片

运行 run_demo.py,实现CAD模型为输入的demo

python run_demo.py --debug 2# 会显示没有安装torch,原因在于是在本地环境运行的,而非foundationpose环境
/home/a/miniconda3/envs/foundationpose/bin/python /home/a/FoundationPose/run_demo.py

然后看到demo_data/mustard0/,里面生成了ob_in_cam、track_vis文件夹

ob_in_cam 是位姿估计的结果,用txt文件存储,示例文件:

6.073544621467590332e-01 -2.560715079307556152e-01 7.520291209220886230e-01 -4.481770694255828857e-01
-7.755840420722961426e-01 -3.960975110530853271e-01 4.915038347244262695e-01 1.187708452343940735e-01
1.720167100429534912e-01 -8.817789554595947266e-01 -4.391765296459197998e-01 8.016449213027954102e-01
0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.000000000000000000e+00

track_vis 是可视化结果,能看到多张图片:

3、NeRF物体重建训练

下载训练数据,Linemod和YCB-V两个公开数据集的示例:点击下载(RGBD参考数据)

图片

示例1:训练Linemod数据集

修改代码bundlesdf/run_nerf.py,修改为use_refined_mask=False,即98行:

mesh = run_one_ob(base_dir=base_dir, cfg=cfg, use_refined_mask=False)

然后执行命令:

python bundlesdf/run_nerf.py --ref_view_dir /DATASET/lm_ref_views --dataset linemod
 
#如果是服务器运行,没有可视化的,需要安装xvfb
sudo apt-get update
sudo apt-get install -y xvfb
# 然后执行命令:
xvfb-run -s "-screen 0 1024x768x24" python bundlesdf/run_nerf.py --ref_view_dir model_free_ref_views/lm_ref_views --dataset linemod

重点:1实时摄像头输入

参考链接:GitHub - Kaivalya192/live-pose:用于 6 DOF 姿态估计的 Intel realsense 深度相机可编译 python 包 — GitHub - Kaivalya192/live-pose: Intel realsense Depth camera compitable python package for 6 DOF pose estimation

自制foundationpose数据集方法

https://www.cnblogs.com/day1024/p/18948051

Grounded-Segment-Anything本地部署-CSDN博客

进行科学的时候,要在当前终端运行

深度学习环境:env_grounded_segment_anything
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
#再到

python grounding_dino_demo.py
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值