ubuntu22.04下OPencv + cuda + cudN

2023-04-13  本文已影响0人  Aaron_Swartz

时间: 2023.04.14
事件: ubuntu22.04下安装OpenCv+cuda实现图像处理加速

工控机配置

硬件解码

就是通过硬件进行视频的解码工作,其中硬件解码是由GPU来进行的,使用GPU解码能够降低CPU的工作负荷,降低功耗。播放出来的视频较为流畅,并且能够延长移动设备播放视频的时间;
软件解码:软件解码则是通过软件本身占用的CPU进行解码,所以会增加CPU工作负荷,提升功耗,如果CPU能力不足,则软件也将受到影响。

复杂的需要大算力运算的,通过GPU可以加速运算速度,目前OpenCV的一些算法已经集成了GPU的调用

本机电脑显卡配置:
https://detail.zol.com.cn/1165/1164567/param.shtml

NVIDIA工控机电脑目前只有GPU

显卡和GPU的区别:
https://baijiahao.baidu.com/s?id=1758827691801138947&wfr=spider&for=pc

Ubuntu 22.04安装Cuda11.7和cudnn8.6
https://zhuanlan.zhihu.com/p/581720480

Ubuntu 安装NVIDIA显卡驱动、安装对应的CUDA
https://blog.csdn.net/qq_39779233/article/details/127203373

需要安装的东西

opencv-4.7.0
opencv_contrib-4.7.0
cuDNN: https://developer.nvidia.com/rdp/cudnn-download
CUDA Toolkit
https://developer.nvidia.com/cuda-toolkit-archive
nvdia显卡驱动
其中nvdia显卡驱动最好卸载重新安装
注意: nvdia显卡版本与CUDA Toolkit版本及opencv版本需要匹配上

opencv-4.7和opencv_contrib-4.7.0联合编译命令

cmake -DCMAKE_BUILD_TYPE=RELEASE\
 -D CMAKE_INSTALL_PREFIX=/usr/local\
 -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.7.0/modules\
 -D WITH_CUDA=1\
 -D WITH_CUDNN=ON\
 -D OPENCV_DNN_CUDA=True\
 -D WITH_TBB=ON\
 -D CUDA_ARCH_BIN='6.1'\    // 这个参数需要和自己的显卡类型匹配上
 -D ENABLE_FAST_MATH=1\
 -D CUDA_FAST_MATH=1\
 -D WITH_CUBLAS=1\
 -D BUILD_opencv_python3=ON\
 -D BUILD_opencv_python2=ON\
 -D WITH_V4L=ON\
 -D WITH_QT=ON\
 -D WITH_OPENGL=ON\
 -D OPENCV_GENERATE_PKGCONFIG=1\
 -D WITH_GSTREAMER=ON\
 -D CUDA_GENERATION="Auto"\
 -D BUILD_TESTS=OFF ..

cudnn 需要单独安装

安装cudnn方法:
参考: https://blog.csdn.net/zml194849/article/details/121832894
下载网址: https://developer.nvidia.com/rdp/cudnn-download

备注: 这里copy的时候需要copy全部头文件
sudo cp include/cudnn* /usr/local/cuda/include
sudo cp lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

GPU加速常用的环节

下图可以看出主要是在用神经网络做分类,需要大计算量的时候具有提速的功能。


image.png
上一篇 下一篇

猜你喜欢

热点阅读