深度学习入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。
这一篇文章属于是对YOLOv5系列的一个整理汇总。
目录
一、整体网络结构图以及总括介绍
网络结构图如下图所示:
(其中CBL的标注都是有关输出的)
YOLOv5网络结构分为3个部分,Backbone(主干部分),Neck和Head。
Backbone作用:特征提取
Neck作用:对特征进行一波混合与组合,并且把这些特征传递给预测层
Head作用:进行最终的预测输出
二、Backbone
Backbone主要由Focus,CBL,BottleneckCSP(/C3)以及SPP等组成。
🌳Focus作用:进行一个下采样,并且减少计算量加快网络速度。
🌳CBL作用:(就是我们常说的卷积啦,虽然这里的卷积不是直接意义上的nn.Conv2d。)获取特征。
有关Focus和CBL的分析可以康康博主之前写的博客
YOLOv5中的Focus层详解_tt丫的博客-CSDN博客
🌳BottleneckCSP(/C3)作用:残差结构,学习更多的特征。
有关BottleneckCSP(/C3)的分析可以康康博主之前写的博客
🌳SPP作用:空间金字塔池化,将前面得到的任意大小的特征图转换成固定大小的特征向量。
有关SPP的分析可以康康博主之前写的博客
三、Neck
Neck说白了就是FPN+PAN结构的设计。
四、Head
我理解的Head就是输出端。如果单从网络结构上来说的话,他就是对Neck出来的3个输出分别进行卷积操作。然而Head的主要部分在于它的输出推理及处理。具体的可以看博主之前的文章,里面有关于损失函数,NMS以及源码的解析。
欢迎大家在评论区批评指正,谢谢大家~
版权声明:本文为博主tt丫原创文章,版权归属原作者,如果侵权,请联系我们删除!
原文链接:https://blog.csdn.net/weixin_55073640/article/details/122643715