每台电脑的环境都有差别,出现的报错可能不尽相同,博客和视频仅供参考,希望能对大家有所资助。
本文所用到的包都在云盘上可以下载
链接: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站与博客上有演示
一、显卡驱动安装
在左下角的九宫格里打开软件和更新,附加驱动里选择一个版本安装,最好不要装太高,建议安装470的,点击应用更改。
- nvidia-smi #显示以下信息安装成功
- sudo apt-get full-upgrade
复制代码 二、CUDA安装
CUDA下载网址CUDA Toolkit Archive | NVIDIA Developer
选择与上面相应的CUDA版本举行下载
按照上面的选项后,下面的两行命令复制到终端实行例如:
- wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run
复制代码 若出现这种情况
- wget -c https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run
复制代码- sudo sh cuda_11.4.0_470.42.01_linux.run
复制代码 第一项Enter键去掉
末了一项Install回车
在弹出的编辑器拉到最下面复制下面代码然后ctrl+s保存
- export PATH=$PATH:/usr/local/cuda/bin
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
- export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
复制代码- 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可直接补齐):
- tar -xvf cudnn-11.4-linux-x64-v8.2.4.15.tgz
复制代码 进入这个文件夹打开终端
- sudo cp include/cudnn* /usr/local/cuda-11.4/include/
- sudo cp lib64/libcudnn* /usr/local/cuda-11.4/lib64/
- sudo chmod a+r /usr/local/cuda-11.4/include/cudnn*
- sudo chmod a+r /usr/local/cuda-11.4/lib64/libcudnn*
复制代码 CUDNN测试:(上面假如没有那三个文件则可跳过此步)
- sudo dpkg -i libcudnn8_8.2.4.15-1+cuda11.4_amd64.deb
复制代码- sudo dpkg -i libcudnn8-dev_8.2.4.15-1+cuda11.4_amd64.deb
复制代码- sudo dpkg -i libcudnn8-samples_8.2.4.15-1+cuda11.4_amd64.deb
复制代码- cp -r /usr/src/cudnn_samples_v8/ ~ # 拷贝例程到用户目录
复制代码- cd ~/cudnn_samples_v8/mnistCUDNN
复制代码 若出现此题目
- sudo apt-get install libfreeimage3 libfreeimage-dev
复制代码 四、安装编译能使用CUDA的opencv
1、环境准备
- sudo apt-get install build-essential
- sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
- sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
复制代码 常见题目:无法定位 libjasper-dev
- sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
- sudo apt update
- sudo apt install libjasper1 libjasper-dev
- 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、编译安装
- mkdir opencv4.5.5_cuda && cd opencv4.5.5_cuda
复制代码- unzip opencv-4.5.5.zip
- unzip opencv_contrib-4.5.5.zip
- cd opencv-4.5.5
- mkdir build && cd build
- 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测试那一步检察。
- sudo make -j6 (RTX3050显卡以上的可以j8)
- sudo make install
复制代码 将opencv链接到体系路径
- sudo gedit /etc/ld.so.conf.d/opencv.conf
复制代码 打开之后是一个空的文件,将下面这句复制举行保存
使路径生效:
配置环境变量:
- sudo gedit /etc/bash.bashrc
复制代码 在最末尾添加:
- PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
- export PKG_CONFIG_PATH
复制代码 保存,实行如下命令使得配置生效
测试:
- cmake .. (注意修改CMakeList.txt里opencv的路径)
复制代码- watch -n 1 nvidia-smi #实时查看GPU的使用情况。
复制代码 若上面代码跑不通的话可以去CMakeList.txt里把main.cpp换成test.cpp然后重新编译。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |