开源SOTA单目RGBD位姿估计网络FoundationPose,Windows c++部署!!!

前言

FoundationPose想要摆脱pytorch/python环境部署,官方提供的方法是通过ISSAC ROS。然而,大多数时候我们并不希望使用Linux平台、docker容器,和臃肿的ROS2环境。

由于我的常用部署环境是windows,所以为了在windows 10/11 上运行,修改了这个仓库感谢原作zz990099我也是站在巨人的肩膀上。如果在linux_x86_64和jetson上部署,则可以直接使用原作的仓库,他的贡献在于剥离了ISSAC ROS。再次感谢!

这里,我们实现了在windows上使用c++, 通过tensorrt推理框架,部署FoundationPose。下面是手把手步骤。也可以直接移步仓库
在这里插入图片描述

开始

推理环境: CUDA11.8 + CUDNN8.9 + TensorRT8.6.1.6, 这三者的安装不再赘述。

1. 基础依赖

为了方便,这里使用的是vcpkg。高阶使用方法可以参考官方文档

git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.bat
./vcpkg.exe install assimp opencv4 eigen3 gtest glog 

2. CV-CUDA -> ppl.cv

CV-CUDA截止目前(20250730),尚不支持windows平台。所以我的主要修改在于如何用ppl.cv替换CV-CUDA, 下面编译ppl.cv

git clone https://github.com/openppl/ppl.cv.git
cd ppl.cv
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../install ^
-DPYBIND11_NOPYTHON=ON -DPPLCV_USE_CUDA=ON -DPPLCV_USE_MSVC_STATIC_RUNTIME=OFF
cmake --build . --config Release --target ALL_BUILD
cmake --build . --config Release --target install

3. 编译仓库

git clone https://github.com/wawatt/foundationpose_cpp_windows.git
cd foundationpose_cpp
git submodule init
git submodule update
cd foundationpose_cpp
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=D:/build/vcpkg/scripts/buildsystems/vcpkg.cmake ^
-DENABLE_TENSORRT=ON -DTRT_DIR=E:/ENVs/TensorRT-8.6.1.6 ^
-Dpplcv_DIR="E:/ENVs/ppl.cv/install/lib/cmake/ppl" ^
-DCMAKE_CUDA_ARCHITECTURES="86;89"
cmake --build . --config Release --target ALL_BUILD

4. onnx转trt模型

链接:https://pan.baidu.com/s/1zHymm7IyK6M6MeKX9PJYJQ
提取码:376j
下载模型到 foundationpose_cpp_windows/workspace/models,
转换

5. 运行

链接:https://pan.baidu.com/s/1zHymm7IyK6M6MeKX9PJYJQ
提取码:376j
下载示例数据mustard0.zip 解压到 foundationpose_cpp_windows/workspace/test_data/下。

cd foundationpose_cpp_windows
"build/bin/Release/simple_tests.exe" --gtest_filter=foundationpose_test.test
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值