曲靖市建设局网站,免费网络电话试用,下载网站源文件,全国十大电商排名来源#xff1a;投稿 作者#xff1a;王同学 编辑#xff1a;学姐 Yolov5详解
官方源码仓库#xff1a;https://github.com/ultralytics/yolov5
相关论文#xff1a;未发表#xff08;改进点都被你们抢先发了#xff09;
0 前言
截止到2022年7月#xff0c;Yolov5项… 来源投稿 作者王同学 编辑学姐 Yolov5详解
官方源码仓库https://github.com/ultralytics/yolov5
相关论文未发表改进点都被你们抢先发了
0 前言
截止到2022年7月Yolov5项目已经在Github上获得了28000个star工业应用也十分广泛基于Yolov5改进的相关交叉学科论文也不计其数所以了解Yolov5对找工作还是发论文都是十分有帮助的。 Yolov5目前已经迭代到了6.1版本所以本篇文章主要针对6.1版本进行详解
Yolov5提供了10个不同版本的模型他们除网络的深度和宽度外并无太大差别 1 网络结构
Yolov5主要由以下几部分组成
输入端: Mosaic数据增强、自适应锚框计算Backbone: New CSP-Darknet53Neck: SPPF, FPNPANHead: YOLOv3 Head训练策略CIoU loss
2 输入端
2.1 Mosaic数据增强
在 YOLOv5 中除了使用最基本的数据增强方法外还使用了 Mosaic 数据增强方法其主要思想就是将1- 4 张图片进行随机裁剪、缩放后再随机排列拼接形成一张图片实现丰富数据集的同时增加了小样本目标提升网络的训练速度。在进行归一化操作时会一次性计算 4 张图片的数据因此模型对内存的需求降低。 2.2自适应锚框计算
Yolov5每次训练时会自适应的计算不同训练集中的最佳锚框值从而帮助网络更快的收敛。 3 Backbone
Yolov5在Backbone和Neck中用了两种不同的CSP结构,具体可参考下图-Yolov5网络结构图 4 Neck
和「Yolov4中一样都采用FPNPAN」的结构;即除了上采样外又增加了一部分下采样模块通过这种方式可以融合更加丰富的特征 5 Head
在检测头方面依然采用Yolov3的检测头并没有特别的改进
6 主要训练策略
CIoU loss在DIoU的基础上增加了检测框尺度的loss增加了长和宽的loss这样预测框就会更加的符合真实框Multi-scale training(0.5~1.5x)多尺度训练。Warmup and Cosine LR scheduler训练前先进行Warmup热身然后在采用Cosine学习率下降策略。Mixed precision混合精度训练能够减少显存的占用并且加快训练速度。
7 损失计算
YOLOv5的损失主要由三个部分组成
Classes loss分类损失采用的是BCE loss注意只计算正样本的分类损失。Objectness lossobj损失采用的依然是BCE loss注意这里的obj指的是网络预测的目标边界框与GT Box的CIoU。这里计算的是所有样本的obj损失。Location loss定位损失采用的是CIoU loss注意只计算正样本的定位损失。在源码中针对预测小目标的预测特征层P3采用的权重是4.0针对预测中等目标的预测特征层P4采用的权重是1.0针对预测大目标的预测特征层P5采用的权重是0.4作者说这是针对COCO数据集设置的超参数。 最后附上一张Yolov5的性能图和实际检测效果图yolov5s; YOLO论文代码数据
关注下方《学姐带你玩AI》
回复“YOLO”免费领取
码字不易欢迎大家点赞评论收藏