Ubuntu20.04安装显卡驱动、CUDA、CUDNN、opencv使用CUDA加快

打印 上一主题 下一主题

主题 689|帖子 689|积分 2067

每台电脑的环境都有差别,出现的报错可能不尽相同,博客和视频仅供参考,希望能对大家有所资助。
本文所用到的包都在云盘上可以下载
链接:https://pan.baidu.com/s/149EOhd4csxC_-QZJP1Jd9w 
提取码:0721

博客:https://blog.csdn.net/qq_64006507?spm=1011.2415.3001.5343
b站:https://space.bilibili.com/34693773?spm_id_from=333.1007.0.0
内容均在b站与博客上有演示

一、显卡驱动安装

  1. sudo apt-get update  #更新
复制代码
在左下角的九宫格里打开软件和更新,附加驱动里选择一个版本安装,最好不要装太高,建议安装470的,点击应用更改。

  1. reboot    #重启
复制代码
  1. nvidia-smi  #显示以下信息安装成功
  2. sudo apt-get full-upgrade
复制代码
二、CUDA安装


CUDA下载网址CUDA Toolkit Archive | NVIDIA Developer
选择与上面相应的CUDA版本举行下载

按照上面的选项后,下面的两行命令复制到终端实行例如:
  1. wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run
复制代码
若出现这种情况

  1. wget -c https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run
复制代码
  1. sudo sh cuda_11.4.0_470.42.01_linux.run
复制代码
第一项Enter键去掉
末了一项Install回车
  1. gedit ~/.bashrc #添加环境变量
复制代码
在弹出的编辑器拉到最下面复制下面代码然后ctrl+s保存
  1. export PATH=$PATH:/usr/local/cuda/bin  
  2. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
  3. export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
复制代码
  1. source ~/.bashrc  # 刷新环境变量
复制代码
nvcc -V #显示信息
CUDA测试:
进入该文件夹后输入make
make完之后
cd 1_Utilities/deviceQuery
./deviceQuery

三、CUDNN安装

网址为:cuDNN Archive | NVIDIA Developer
下载CUDNN需要先注册一个账号
注册登陆后下载下面框选的四项“注意选择你的Ubuntu版本”(##注意假如你的CUDA安装的版本较高,可能会没有Runtime、Developer、Code测试的三项,假如没有则可以跳过CUDNN的测试步骤)。
下载好后把文件都拖到主文件夹下
解压(输入cudnn按Tab可直接补齐):
  1. tar -xvf cudnn-11.4-linux-x64-v8.2.4.15.tgz
复制代码
进入这个文件夹打开终端
  1. sudo cp  include/cudnn* /usr/local/cuda-11.4/include/
  2. sudo cp lib64/libcudnn* /usr/local/cuda-11.4/lib64/
  3. sudo chmod a+r /usr/local/cuda-11.4/include/cudnn*
  4. sudo chmod a+r /usr/local/cuda-11.4/lib64/libcudnn*
复制代码
CUDNN测试:(上面假如没有那三个文件则可跳过此步)
  1. cd ~           #回到主目录
复制代码
  1. sudo dpkg -i libcudnn8_8.2.4.15-1+cuda11.4_amd64.deb
复制代码
  1. sudo dpkg -i libcudnn8-dev_8.2.4.15-1+cuda11.4_amd64.deb
复制代码
  1. sudo dpkg -i libcudnn8-samples_8.2.4.15-1+cuda11.4_amd64.deb
复制代码
  1. cp -r /usr/src/cudnn_samples_v8/ ~     # 拷贝例程到用户目录
复制代码
  1. cd  ~/cudnn_samples_v8/mnistCUDNN
复制代码
  1. sudo make clean && make
复制代码
若出现此题目
  1. sudo apt-get install libfreeimage3 libfreeimage-dev
复制代码
  1. sudo make clean && make
复制代码
  1. ./mnistCUDNN
复制代码
四、安装编译能使用CUDA的opencv


1、环境准备
  1. sudo apt-get install build-essential
  2. sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
  3. sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
复制代码
常见题目:无法定位 libjasper-dev
  1. sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
  2. sudo apt update
  3. sudo apt install libjasper1 libjasper-dev
  4. sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
复制代码
2、下载源码
这边建议直接找师兄师姐拉給你。
opencv下载地点:https://opencv.org/releases/
opencv_contrib下载地点:https://github.com/opencv/opencv_contrib/tree/4.5.5
假如有opencv源码则不用上面这一步。
3、编译安装
  1. mkdir opencv4.5.5_cuda && cd opencv4.5.5_cuda
复制代码
  1. unzip opencv-4.5.5.zip
  2. unzip opencv_contrib-4.5.5.zip
  3. cd opencv-4.5.5
  4. mkdir build && cd build
  5. cmake -D CMAKE_BUILD_TYPE=RELEASE -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.5.5/modules -D BUILD_EXAMPLES=ON -D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=ON WITH_TBB=ON WITH_V4L=ON WITH_QT=ON -D WITH_FFMPEG=ON -D WITH_LIBV4L=ON OPENCV_GENERATE_PKGCONFIG=YES BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_GTK=ON -D WITH_OPENGL=ON -D OPENCV_DNN_CUDA=ON -D CUDA_ARCH_BIN=8.6 -D WITH_CUDNN=ON -D CUDNN_INCLUDE_DIR=/usr/local/cuda/include/  -D WITH_ZLIB=ON -D BUILD_PNG=ON -D BUILD_JPEG=ON -D BUILD_TIFF=ON -D BUILD_TIFF=ON -D WITH_CUDA=ON -D WITH_OPENCL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D WITH_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=/usr/local -DPYTHON3_EXECUTABLE=$(which python) -DPYTHON3_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") -DPYTHON3_PACKAGES_PATH=$(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") ..
复制代码
##注意:”CUDA_ARCH_BIN=8.6“这里的数字可以去官网检察(网址:https://developer.nvidia.com/cuda-gpus#compute)按照本身电脑显卡的型号填写。假如实在不确定的可以在上面CUDA测试那一步检察。

  1. sudo make -j6 (RTX3050显卡以上的可以j8)
  2. sudo make install
复制代码
将opencv链接到体系路径
  1. sudo ldconfig -v  
复制代码
  1. sudo gedit /etc/ld.so.conf.d/opencv.conf  
复制代码
打开之后是一个空的文件,将下面这句复制举行保存
  1. /usr/local/lib
复制代码
使路径生效:
  1. sudo ldconfig  
复制代码
配置环境变量:
  1. sudo gedit /etc/bash.bashrc
复制代码
在最末尾添加:
  1. PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
  2. export PKG_CONFIG_PATH
复制代码
保存,实行如下命令使得配置生效
  1. source /etc/bash.bashrc
复制代码
测试:
  1. cd ~
复制代码
  1.  unzip opencv-test.zip
复制代码
  1. cd opencv_cuda_yolov5
复制代码
  1. mkdir build && cd build
复制代码
  1. cmake ..     (注意修改CMakeList.txt里opencv的路径)
复制代码
  1. make
复制代码
  1. ./main
复制代码
  1. watch -n 1 nvidia-smi   #实时查看GPU的使用情况。
复制代码
若上面代码跑不通的话可以去CMakeList.txt里把main.cpp换成test.cpp然后重新编译。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

嚴華

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表