文章目录
ytorch-yolov4做目标检测详细教程
1项目环境
WIN10+Python3.6+pytorch1.5
2项目连接传送门
3 数据准备
coco数据集
train2017下载
val2017
test2017
trainval2017:http://images.cocodataset.org/annotations/annotations_trainval2017.zip
trainval2017:http://images.cocodataset.org/annotations/stuff_annotations_trainval2017.zip
image_info_test2017:http://images.cocodataset.org/annotations/image_info_test2017.zip
数据路径配置以及标签生成
需要把coco数据集生成train.txt/val.txt文件,内容如下
image_path1 x1,y1,x2,y2,id1 x1,y1,x2,y2, id2...
原博客中对于上面的这段的含义没有解释,对于我这种初入目标检测的来说,除了第一个,后面的都看不懂。这边解释一下:images_path1 表示一张图片的路径(最好是绝对路径), x1,y1,x2,y2,id1 分别表示的检测目标矩形框的左上角和右下角,id1表示该区域物品的类别。 后面的依次进行,一张图片里面有多少东西就写多少次。
作者真的很良心,这部分工作的代码在下载的项目里面有。
这个文件只需要修改下面三行的路径即可
环境配置
opencv
如果python不是最新版本的,不建议直接采用pip安装的方式。建议到下面的链接中,找到Opencv,并下载对应的版本。
python库链接
如我的python是3.6的,电脑是64位的那么我下载的就是
在这个文件的目录下 按住shift+右键打开powershell,然后输入以下命令即可安装
pip install 文件名
其他库
pip install tensorboardX easydict pycocotools
有缺的再自己补吧。这边装pycocotools出现了个问题,好像是win10下的通病,解决方法见问题记录。
demo
先来跑个小demo玩一下。
权重文件
首先下载作者训练好的权重参数文件,把他放在以下的路径,weight文件夹是自己创建的。
权重文件链接
然后修改demo.py里面的参数,如下图,把权重文件的路径和图片的路径修改成自己的就可以
我的是gtx1070,发现运行速度挺快的,大概在0.11秒左右。
运行成功后会自动生成标注后的图片。如下图
训练
接下来我们来跑下train.py文件。
修改配置文件:主要参考文件里面写的是在cfg.py文件里面修改,但是我修改完后一直报错,相应的参数并没有被修改,后来发现是因为train.py的get_args()函数对部分参量又进行了一次设置,并设置了默认值,所以要修改参量应该在这个函数的调用之后,或者直接在这个函数修改默认的参数。
在train.py中添加如下参数即可,
点击运行,然后就搜搜
跑起来了,其实我的显卡还是比较烂,训练的速度还是比较忧伤的。
问题记录
安装pycocotools出错
问题1:
措施:参考博客@