前言
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
- 去除MSVC不支持的-Wextra -Wdeprecated 选项
easy_deploy_tool\deploy_core和
easy_deploy_tool\inference_core\trt_core
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

406

被折叠的 条评论
为什么被折叠?



