深度学习目标检测YOLO算法,带你快速了解
![](https://img-blog.csdnimg.cn/img_convert/80803f90138673f03b53429ea706df85.png)
Yolo系列的模型,更新迭代速度可以称得上是内卷之王了,目前已经有了V8的版本。在论文审稿人心中的理想人选必然得是紧跟学术发展潮流的,只知道V1-V4的改进点稍显逊色,本篇就来总结下V5-V7版本的改进点,让你只看一次,便可在面对科研论文时胸有成竹!
YoloV5在V4的基础上,又做了以下改进:
Focus模块:
先间隔完成分块任务,将图像特征重排,在通道维度拼接后再走卷积操作,减少网络层数和计算量,对速度有一定提升。
![](https://img-blog.csdnimg.cn/img_convert/bdc12e70fb7a59ed60503abd964b7c2d.png)
BottleneckCSP:将CSP结构与残差连接巧妙结合,与V4版本的CSPNet结构类似,直观来看是双层残差结构的嵌套,但卷积层的具体参数,二者的内部实现稍有不同。
![](https://img-blog.csdnimg.cn/img_convert/d136dcb401a393f742a3fe0c4fefe0f4.png)
FPN+PAN:特征融合的更加细致,上采样与下采样的多次拼接,进一步支撑小目标检测。
![](https://img-blog.csdnimg.cn/img_convert/4c7736a8bc7681fecb2e851a77bd7c1a.png)
YoloV5在小目标检测上效果进一步提升,将自适应锚框计算的代码也整合到项目源码中,通过参数的灵活配置,可以得到不同复杂度的模型,源码中内置的超参数优化策略,也提升了模型的整体性能,是一份很具参考价值、可维护使用的工程性目标检测项目源码。
YoloV7在V6的基础上,又做了以下改进:
YoloV6和V7的发布时间间隔很短,V6的主要工作是围绕更好地适应GPU设备,将RepVGG的结构引用到backbone和neck中,同时对检测头进行解耦,分开了边框回归和类别分类,由于V6版本犹如昙花一现,且与V7版本有相似的改进点,所以本文重点阐述YoloV7版本的以下改进:
(1)RepVGG:重参数化的主要目的是为了加速、节省内存,由于nvidia设备对3*3的卷积核运算优化效果最好,YoloV7将不同尺寸的卷积核、BN层、短路连接层,全部转化成3*3的卷积,在推理时合并计算,大幅度节省了计算耗时。
对BN层,在计算公式上做推导、合并,最终的公式如下所示:
![](https://img-blog.csdnimg.cn/img_convert/999d88ec600007917b439e331af1b800.png)
![](https://img-blog.csdnimg.cn/img_convert/e445d56cd7956756542f64cb806cf4b8.png)
对1*1的卷积层和短路连接层,采用填充0的方式,构建成3*3的卷积核,其中短路连接还将卷积核参数固定成0和1。
![](https://img-blog.csdnimg.cn/img_convert/99f1a5f941a8a6f6e917907facf258d6.png)
![](https://img-blog.csdnimg.cn/img_convert/5935224522e98a19428db314d6efe4af.png)
(2)正样本分配策略:把GT的中心点上下左右偏移0.5个单位,由原来一个grid变成了三个grid,得到更多的正样本候选框。筛选候选框需要满足以下三个条件:
▶GT与anchor的长宽比例要在0.25-4之间
▶计算IOU损失,动态匹配topk。先按大小顺序排列取前topk个,但容易出现topk中iou数值有断崖式下降的情况,所以做累加和,做一个向下的截断,自适应topk个样本。
▶计算类别预测损失
![](https://img-blog.csdnimg.cn/img_convert/3cbd75c670a256d5efbe974b7d4db5f0.png)
(3)相对位置预测:与正样本分配策略中的中心点偏移、长宽比例筛选条件相呼应。
![](https://img-blog.csdnimg.cn/img_convert/a9fc511237867847bec4042c634ae09f.png)
![](https://img-blog.csdnimg.cn/img_convert/23211967aa23bba887eebbd3171418b1.png)
(2)辅助的输出头:每个输出头都对应增加一个辅助头,但仍然利用主头的预测结果来指导选择正样本,由粗到细地引导标签分配策略。
YoloV7在参数量和计算量上大幅度减少,但性能仍有少量的提升,整体来看,yolo系列的更新迭代,除了自身结构特色的优化外,也融进了很多通用性的技巧,这些可移植的改进点非常值得我们去细化总结、参考借鉴。
结尾语:
当你论文找不到创新点、实际项目没有提升思路,看看yolo系列就能让你在短时间内吸收诸多的实用技巧,灵感和思路也就应运而生了。yolo系列也是最常见的探讨话题,可以称得上是人工智能方向的基础送分题了,掌握扎实的基础上,再加上扩展和自己的总结理解,逻辑清晰地表达观点、形成共鸣和讨论,这样的文章审稿人很难不记住你!