赞
踩
一、yolov4模型介绍:
YOLOv4在保持高检测精度的同时,通过一系列改进实现了更快的检测速度。使用CSPDarknet53作为其主干网络,这是一个在Darknet框架上改进的骨干网络。引入了FPN模块,用于跨层特征融合,以提高检测性能。
1.数据增强和策略改进: YOLOv4采用了一系列新的数据增强技术和策略改进,以提高模型的鲁棒性和泛化能力。
2.Bag of Freebies(BOF)和Bag of Specials(BOS): YOLOv4使用BOF和BOS方法来进一步改进模型的性能,其中BOF是一系列简单但有效的训练技巧,而BOS是一些特殊设计的模块,如SPP、SAM和PANet等。
3.类别不平衡处理: YOLOv4通过改进损失函数来处理目标类别不平衡的问题,以提高模型对少见类别的检测性能。
二、制作数据集
1.创建一个文件夹。
2.在创建的文件夹内,再创建两个文件夹(ImageSets、JPEGImages),这两个文件夹一个用于存放标注后生成的标注文件,一个用于存放数据集图像。
3.最后再创建一个train文件用于训练。
如图所示:
需注意:yolov4的文件需满足一定的目录格式
三、收集图像
创建完数据集文件夹后,我们需要收集需要检测的数据集图像 ,我们以人为数据集做标记为例,我们需要收集有人的图像。收集途径有很多:
例如参考别人的数据集直接下载:http://segeval.cs.princeton.edu/public/off_format.html
或者自己去百度、小红书找图片截下来
四、标注数据集
使用labelimg标注软件进行标注,可自行去网上寻找下载资源。
圈出要训练的对象并进行重命名,重命名时相同类型的对象命名相同的名字。
五、数据集训练模型
1.下载yolov4官方源代码(我使用的是老师课上的yolov4代码)
https://github.com/AlexeyAB/darknet yolov4.weight 与 yolov4.conv.137
2.下载pycharm、anaconda,并配置好yolov4运行环境
3. 准备功能:
yolov项目文件与数据集文件放同一目录下
4.python外库环境(absl-py、bigtree、chardet、colorama、contourpy、cycler等)
在运行过程中缺少什么再下载什么更为简便
5.模型训练
通过golov的train.py进行
先运行voc_annotation.py代码,后续的代码运行都是以这个为载体的。
通过yolov4的predict.py进行
耐心等待300个列车运行完成即可,过程中可以看到每个列车的丢失。
七、总结
yolov4模型的训练过程大概就是这样,通过这次实验我对目标检测算法和深度学习模型有了更深入的理解,尤其是针对YOLOv4这样的前沿模型。通过调整超参数、数据集准备和模型训练等过程,我积累了宝贵的实践经验。在训练过程中可能会遇到各种问题,如收敛速度慢、模型性能不佳等,解决这些问题的过程提升了我的问题解决能力。我了解了YOLOv4在实际场景中的应用。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。