致谢声明
1.本文学习Patrick_Lxc
的博客《Keras/Tensorflow+python+yolo3训练自己的数据集》并优化其中代码。
原博客链接:https://blog.csdn.net/Patrick_Lxc/article/details/80615433
2.本文学习qqwweee
的github工程《keras-yolo3》并优化其中代码。
github链接:https://github.com/qqwweee/keras-yolo3
0.配置代码运行环境
0.1 硬件配置要求
YOLOv3对于电脑的显卡要求高,根据本文作者的经验,至少需要8GB的显存才能继续本文下面的实验。
只有Nvidia品牌的显卡可以运行深度学习,AMD品牌的显卡不可以运行深度学习。
那么Nvidia品牌具有8GB显存的最低价格显卡的型号为GTX1070。
2019年2月28日查询,京东上原装GTX1070的价格如下图所示:
2019年2月28日查询,淘宝上网吧二手拆机显卡GTX1070的价格为1800元左右,如下图所示:
如果购买资金充足,建议购买GTX1080Ti,11G显存可以运行准确率更高的YOLOv3-spp算法模型。
如果购买资金不足,最少也得购买GTX1070,否则无法继续本文下面的实验。
如果没有nvidia显卡,但有visa信用卡,请阅读我的另一篇文章《在谷歌云服务器上搭建深度学习平台》,链接: https://www.jianshu.com/p/893d622d1b5a
0.2 软件配置要求
各种软件版本:
Ubuntu :16.04
Anaconda :5.2
python : 3.6
CUDA :9.0
cudnn :7.3
tensorflow_gpu :1.10
Keras :2.2.4
如果有显存为8G的显卡,在Windows操作系统下也无法运行本文下面的代码。会报错"显存不足"。
所以读者需要安装Ubuntu操作系统,建议选择Ubuntu16.04,制作系统U盘后非常容易安装。
如果有显存为11G的显卡,在Windows操作系统下可以继续本文下面的实验。
有显卡之后需要配置深度学习环境,请阅读我的另一篇文章《深度学习环境搭建-CUDA9.0、cudnn7.3、tensorflow_gpu1.10的安装》,链接:https://www.jianshu.com/p/4ebaa78e0233
1.数据准备
1.1 数据下载
如果读者有自己已经使用labelImg软件标注好的数据,可以直接跳到1.4节图片压缩。
本文作者给读者演示的图片数据是来自ImageNet中的鲤鱼分类。
数据集压缩文件下载链接: https://pan.baidu.com/s/1NksESNqBX--YqMJ4zptGdw 提取码: 6p3u
本文作者在桌面中创建文件夹keras_YOLOv3
,并将下载好的数据集压缩文件n01440764.tar
放到其中,如下图所示:
在文件夹
keras_YOLOv3
中鼠标右击,在显示的菜单中选择
Open in Terminal
,即在文件夹
keras_YOLOv3
中打开Terminal。
作为合格的Ubuntu系统使用者,要求会使用终端Terminal中的命令完成操作。
运行命令
mkdir n01440764
创建文件夹
n01440764
。
运行命令
tar -xvf n01440764.tar -C n01440764
完成压缩文件的解压,命令其中的-C参数后面必须为已经存在的文件夹,否则运行命令会报错。
解压完成后,文件夹和终端Terminal中的情况如下图所示: