目标检测与位姿估计(二十):使用GPU版的OpenCV

如何使用GPU版本的opencv

ZED或者OpenCV在使用GPU时都需要OpenCV在编译时支持CUDA工具的选项开启,下面是我的cmake命令

此外这里也包含了contrib库的扩展安装,另外安装opencv-arocu后用于3D视觉程序开发

cmake  \
-D WITH_CUDA=ON \
-D WITH_VTK=OFF \
-D WITH_MATLAB=OFF \
-D BUILD_DOCS=ON \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_PYTHON3_VERSION=3.5 \
-D PYTHON3_INCLUDE_PATH=/usr/include/python3.5 \
-D PYTHON3_LIBRARIES=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/libpython3.5.so \
-D PYTHON3_EXECUTABLE=/usr/bin/python3.5 \
-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.5/dist-packages/numpy/core/include/ \
-D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.15/modules/ \
-D BUILD_opencv_python2=OFF \
-D BUILD_opencv_python3=OFF ..

千万要注意:OpenCV在编译之后要有一个sudo make install -j4的过程(我当时忘了,笑哭)

sudo make install -j4

使用时需要注意

1.如果在项目中使用zed相机,需要注意只有在获取深度图时才需要用到GPU

2.在opencv-GPU的使用过程中需要注意GPUMat和Mat是不相通的,使用GPU时需要独立定义

3.最好是在程序设计时添加编译变量来切换GPU和CPU版本,如ifdef HAVE_CUDA

#ifdef HAVE_CUDA
cv::cuda::GpuMat slMat2cvMatGPU(Mat& input);
#endif // HAVE_CUDA

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白 AI 日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值