在矩池云租服务器搭建适合yolov3训练权重文件的环境(darknet版)(cuda10.2+cudnn7.6.5)

本人最近在学习yolov3相关的知识,但无奈自己的电脑算力有限,就在矩池云租了个服务器,我个人有比较喜欢服务器的可视化所以租的配置和和镜像选择是在这里插入图片描述
在这里插入图片描述
关于如何让服务器可视化可参考矩池云上给的教程
点开这个链接
1.然后接下来就是进入之后环境的配置了
进入之后我们的第一步是创建一个终端新用户,因为服务器第一次进入的时候只有root一个权限用户,如果在该权限用户下载的文件权限都很高,如果要修改这些文件就不能直接打开修改,然后sudo命令也不能用我很不习惯,我个人觉得有点麻烦,所以我重新新建了一个zht的终端用户(这个用过ubuntu系统的朋友应该能够体会)

备注:要想要sudo命令可用就在root终端下执行apt-get update然后apt-get install sudo
新建的流程如下
首先打开终端

useradd zht  #添加一个新用户,用户名为zht
passwd zht  # 为该用户设定登录密码
usermod -s /bin/bash zht #为该用户指定命令解释程序(通常为/bin/bash)
usermod -d /home/zht zht    #为该用户指定用户主目录
su zht  #切换到用户zht

如果出现了zht@ubuntu:/home/
类似的则表示切换成功,也就表示新建zht用户成功
如果不太清楚的可以参考
点这里

2.下一步就可以开始下载darknet了

git clone https://github.com/pjreddie/darknet
cd darknet
make
wget https://pjreddie.com/media/files/yolov3.weights   
#这个yolov3的权重文件一般来说如果你不翻墙的话下载速度很慢,所以
我的建议是复制下载链接https://pjreddie.com/media/files/yolov3.weights  
到迅雷去下载,然后下载完之后再把这个文件传到矩池云服务器里去,再
拖到darknet文件夹里。

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

不出意外的话会
在这里插入图片描述
然后在darknet文件夹里出现一个predictions.jpg文件你打开就可以一只可爱的狗狗
在这里插入图片描述
在接下来才是最重要的,上面这个简单的测试我们只调用了cpu,所以其实测试这张图片是消耗了二三十秒的,但是,接下来我们要让gpu也加入工作,测试的时间可以缩短到两三秒,这也是我为什么要去租服务器的原因。
当然,我觉得还是挺麻烦的,希望我下面的教程可以不用让你两天就配置好,因为我在这个cuda和cudnn上面花了两天时间(此时)。
那我们接下来就开始
3cuda10.2+cudnn7.6.5
首先用sudo apt-get --purge remove cuda-*卸载预装好的的cuda10.0和cudnn因为这两个版本预装的是阉割版的,darknet没办法直接用,然后去cuda官网下载点这里
在这里插入图片描述
然后在这里插入图片描述
复制wget后面的链接到迅雷去下载
同理右键到download的那两个图标复制下载链接然后到迅雷去下载,再把这三个文件传到云服务器里去。
然后再去cudnn的官网去下载cudnn7,.6.5
点这里 需要注册完之后然后下载
找到那个cudnn7.6.5for linux的文件下载下来应该是个taz的文件,下载也是复制下载链接到迅雷比较快。
然后把它传到云服务器去
接下来就比较简单了,我当时就就是把这四个文件全部放到了download的文件夹里。这里接下去操作我是在root的终端用户下进行的,然后就是
打开终端cd到download的这个文件夹里面去,然后就是

sudo sh cuda_10.2.89_440.33.01_linux.run

之后运行会出现一个界面,你直接输入accept然后回车
在到下一个界面,我一开始直接移动到了install然后回车,它给我安装失败了,我也没搞清楚啥情况,然后后来我重新输入了一遍这个命令重新accept之后到了第二个界面,这个时候出现了一个cuda installer 然后上下方向键选择到driver这个选项然后回车,可以看到这个driver前面的加号没了,然后再上下键控制选择到install回车下载,最后成功安装完成。这个安装过程非常快,只有几秒钟,然后出现一个summary然后下面巴拉巴拉一大段话,只要没报错就行。

gedit ~/.bashrc
# 在最后加入两行:(按照安装提示修改成自己的路径)
	export PATH=/usr/local/cuda/bin:$PATH
	export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
# 保存退出之后,运行:
source ~/.bashrc(我的是source ~/.zshrc,因为我的默认shell是zsh)

然后再

sudo sh cuda_10.2.1_linux.run
sudo sh cuda_10.2.2_linux.run

和上面的流程一样选择就好了
以上,cuda10.2安装成功
然后接下来就是先解压cudnn的下载文件
可能它会报错没有解压文件的命令文件,这个时候你就百度一下这种报错,一般很容易都能找到教程,我这里就不赘述了。

tar -xzvf cudnn-10.2-linux-x64-v7.6.5.32.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

就一般不会报错,就很顺利安装好了cudnn的7.6.5
至次,gpu环境配置完成。

4.darknet的makefile文件的修改
如果你是在新建的终端用户下执行的

git clone https://github.com/pjreddie/darknet

命令,那么你再在终端下载个gedit,你就能直接右键选择用gedit打开Makefile,类似于记事本直接修改内部,这里主要是要修改
把gpu=0改成=1,把cudnn=0改成=1,然后把NVCC=nvcc改成NVCC=nvcc的路径 这个我也记不得了,就在usr/local/cuda/里面哪个文件夹里,你找一找。然后,

cd darknet
make clean 
make

没报错就恭喜你配置成功了,
到这里,我们所有的工作就完全结束了。
这也是我配置完了两天后写的可能有些细节我会忘了写上去,但是最经典的我网上照面也没找到的bug我都已经写在上面了,另外遇到问题的话你们应该能够比较容易的百度到。

参考文章:
https://blog.csdn.net/famirtse/article/details/82875590
https://blog.csdn.net/luoying_ontheroad/article/details/81136973
https://www.jianshu.com/p/f74d4534af80?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

猜你喜欢

转载自blog.csdn.net/weixin_46654332/article/details/113773976