安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

ROS1/一代机器人系统 少儿编程 815浏览 0评论

应用背景:darknet+yolov3训练自己数据,特定场景下小目标检测。使用CPU训练太慢,必须要上GPU才能提高速度,前期在别的计算机安装了nvidia显卡驱动,并安装了cuda和cudnn,本文利用一台多年前的计算机,简要讲述如何进行安装。

操作系统:ubuntu16.04。

0. 查看显卡信息

(1)输入如下命令:

lshw -c video

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

 (2)为了再次确认一遍,还可以使用这个命令查看可使用的驱动:

ubuntu-drivers devices

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

1. 安装显卡驱动

nvidia驱动有多种安装方式,本文简述4种。

(1)官方下载显卡驱动安装,根据官方说明安装即可。

附官方链接:https://www.nvidia.com/Download/index.aspx?lang=en-us。

(2)ubuntu命令行:

sudo ubuntu-drivers autoinstall

驱动安装完成,重新启动,就能看到GPU识别成功了:

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

 你也可以选择,只安装其中一个驱动,命令如下:

sudo apt install nvidia-XXX (XXX等从ubuntu-drivers devices命令输出中选择)

(3)Software & Updates -> Additional Drivers选择所需版本安装即可(如,proprietary, tested)。注:几经折腾,发现本方法界面操作,最适合新手。

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

(4)安装cuda时,其实包含了对应版本显卡驱动,所以也可以在安装cuda时一起安装驱动。但是,在安装cuda时安装驱动,可能会报错。因此,使用(3)的方法安装驱动是个不错的选择。

2. 安装cuda

官网下载安装包,各个版本:

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

例如:CUDA Toolkit 10.0 

https://developer.nvidia.com/cuda-10.0-download-archive

按下图方式选择:

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

点击右下角download即可开始下载。

或者,下载完成以后,通过如下命令进行安装:

# cd /some_path_to_download/, 浏览器下载,一般情况是:
cd ~/Downloads/
sudo sh cuda_10.0.130_410.48_linux.run

稍等一会儿,出现如下提示,输入:accept。

然后,根据提示选择安装内容,按上/下键进行选择,空格键控制选中或取消,移动到install回车即可开始安装

3. 安装cudnn

官网下载安装包,安装即可,下载安装包需要注册NVIDIA账号。

各个版本:cuDNN Archive:https://developer.nvidia.com/rdp/cudnn-archive

上文我安装了cuda10.0,这里选择对应该版本的cudnn,由选择对应ubuntu16.04的deb安装包。

安装nvidia显卡驱动+cuda+cudnn,darknet+yolov3目标检测

下载 deb 格式的文件,打开终端找到下载的deb 文件所在的位置,然后按步骤安装三个文件:

sudo dpkg -i libcudnn7_7.6.4.38-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda10.0_amd64.deb

untime 和 Developer 版本的区别是:
developer library 包含了在Ubuntu系统上开发深度学习时所需的cuDNN头文件,如果你不需要开发编译任何深度学习程序,而只是将其用于运行某些深度学习应用,那么只下载“runtime library”就足够了。
我是把3个文件都下载下来了,均进行安装。

4. 显示当前GPU使用情况

nvidia-smi

或者,自动每秒更新一次GPU的使用情况:

watch -n 1 nvidia-smi

5. darknet+yolov3验证

获取darknet源码:

mkdir src
cd src
git clone https://github.com/pjreddie/darknet

安装opencv:

sudo apt install libopencv-dev

待darknet下载完成,opencv安装完成后:

cd ~/src/darknet
gedit Makefile

按如下所示进行修改:

GPU=1
CUDNN=1
OPENCV=1

然后,编译darknet:

cd ~/src/darknet/
make

输入:

./darknet

输出:

usage: ./darknet <function>

说明编译成功了。

接下来进行目标识别测试。

首先,下载预先训练的权重文件:

wget https://pjreddie.com/media/files/yolov3.weights

最后,检测图像:

./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

 

转自公众号:
Robot404

您必须 登录 才能发表评论!