ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3

安装顺序:

  • Opencv
  • 显卡驱动
  • CUDA10.2
  • cuDnn
  • YOLOv3

1、Opencv3.2.0安装

搭建依赖环境

1

sudo apt-get install build-essential

安装依赖包

1

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

 安装可选包

1

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

 下载Opencv3.2并安装

1

2

wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.2.0.zip 

unzip opencv.zip

此时会生成一个opencv3.2.0文件夹

1

cd opencv-3.2.0

然后创建一个文件夹

1

2

3

4

5

mkdir build

cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

make -j4

make install

执行cmake时,如果卡在了Downloading ippicv_linux_20151201.tgz,可以下载linux_20151201.tgz,

下载地址:https://pan.baidu.com/s/170j3x9zjMyWA6H9k7icpXQ 提取码: wcg3

然后放在opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e目录下。

重新执行以下命令cmake命令:

1

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DWITH_IPP=OFF ..

 cmake通过后,再执行

1

2

make -j4

make install

 设置路径

1

sudo vim /etc/ld.so.conf.d/opencv.conf

在文件中添加:

1

/usr/local/lib

保存后执行:

1

sudo ldconfig

 配置环境变量

1

sudo vim /etc/bash.bashrc

 文件末尾添加:

1

2

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 

export PKG_CONFIG_PATH 

2、显卡驱动安装

禁用默认驱动

Ubuntu系统集成的显卡驱动程序是nouveau,它是第三方为NVIDIA开发的开源驱动,需要先将其屏蔽才能安装NVIDIA官方驱动。将驱动添加到黑名单blacklist.conf中,但是由于该文件的属性不允许修改,所以需要先修改文件属性。

查看属性

1

sudo ls -lh /etc/modprobe.d/blacklist.conf

 修改属性

1

sudo chmod 666 /etc/modprobe.d/blacklist.conf

用vim打开

1

sudo vim /etc/modprobe.d/blacklist.conf

 在该文件后添加以下几行:

1

2

3

4

5

blacklist vga16fb

blacklist nouveau

blacklist rivafb

blacklist rivatv

blacklist nvidiafb

安装显卡驱动

执行命令:

1

ubuntu-drivers devices

 

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第1张图片

从这里可以看到,系统推荐我安装435或440版本驱动,我选择安装440版本。

1

#删除其它驱动
sudo apt-get remove --purge nvidia*

#增加源
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update

 然后安装显卡驱动:

1

sudo apt-get install nvidia-driver-440

 安装成功后重启电脑。

1

2

执行命令

nvidia-smi

 如果出现如果显卡列表界面,这显卡驱动安装成功。

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第2张图片

CUDA10.2安装

注意:安装低版本的CUDA,需要对GCC进行降级

进入:https://developer.nvidia.com/cuda-toolkit-archive

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第3张图片

 点击CUDA Toolkit10.2后,如图选择:

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第4张图片

  CUDA官网会给出下载和安装方法,根据官网提示,执行:

1

2

3

4

5

6

7

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin

sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600

wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb

sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb

sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub

sudo apt-get update

sudo apt-get -y install cuda

 设置环境变量

1

2

3

sudo vim ~/.bashrc

export PATH=/usr/local/cuda-10.2/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

 使环境变量生效

1

source ~/.bashrc

 执行:

1

nvcc -V

 

 出现CUDA版本信息时,说明CUDA安装成功。

CUDNN安装

进入:https://developer.nvidia.com/rdp/cudnn-download

注册账号并登陆,选择“Download cuDNN v7.6.5 (November 18th, 2019), for CUDA 10.2”

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第5张图片

然后下载“cuDNN Library for Linux”,下载完成后解压tgz文件,得到一个cuda文件夹:

1

tar -xzvf cudnn-10.2-linux-x64-v7.6.5.32.tgz

 然后复制文件:

1

2

3

sudo cp cuda/include/cudnn.h    /usr/local/cuda-10.2/include 

sudo cp cuda/lib64/libcudnn*    /usr/local/cuda-10.2/lib64

sudo chmod a+r /usr/local/cuda/include/cudnn.h   /usr/local/cuda/lib64/libcudnn*

 验证安装结果:

1

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

 

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第6张图片

 出现如图界面,说明CUDNN安装成功。

cuDNN第二种安装方式:

2021-01-19更新:

服务器安装了CUDA 11.1版本,在安装cuDNN v8.0.5 for CUDA 11.1时发现,通过下载tgz,解压复制的方式无法正确的验证安装结果,所以采用了以下安装方式。

下载libcudnn8_8.0.5.39-1+cuda11.1_amd64.deb和libcudnn8-dev_8.0.5.39-1+cuda11.1_amd64.deb

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第7张图片

 然后执行以下命令,完成安装:

1

sudo dpkg -i libcudnn8_8.0.5.39-1+cuda11.1_amd64.deb
sudo dpkg -i libcudnn8-dev_8.0.5.39-1+cuda11.1_amd64.deb

YOLOV3安装

1

git clone https://github.com/AlexeyAB/darknet
cd darknet

 vim编辑Makefile

1

vim Makefil

 

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第8张图片

 将GPU、CUDNN、OPENCV的值改为1,然后执行:

1

make

 编译完成后,测试一下效果吧

ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3_第9张图片

参考网址:

  • https://blog.csdn.net/gzj_1101/article/details/78651650
  • https://blog.csdn.net/rgd888/article/details/91047780
  • https://blog.csdn.net/xiaokan_001/article/details/88126122
  • https://blog.csdn.net/debjiu/article/details/80824439
  • https://blog.csdn.net/phinoo/article/details/82999337

你可能感兴趣的:(opencv,python,人工智能)