YOLOv5抛弃Anchor-Base方法 | YOLOv5u正式加入Anchor-Free大家庭
点击下方卡片,关注「集智书童」公众号
「YOLOv5本来的样子还记得嘛」
话不多说,先总结一下历史上的YOLOv5吧:
「Backbone」:CSPDarkNet(没有Fusion Last模块) 「Neck」:PAFPN 「Head」:Coupled Head 「Assignment」:Line IOU Assignment 「Loss」:分类==>BCE Loss,回归==>CIoU Loss
这样大家应该比较清楚YOLOv5的大概知识脉络了;
这里借用其他小伙伴绘制的YOLOv5的结构图,可以看到YOLOv5的Backbone和Neck部分主要使用的是CBS模块和C3模块进行网络架构的搭建,而Head部分则是使用的耦合在一起的Head,即Coupled-Head,我们都知道,这样做可以进一步提升模型的执行效率,降低模型的推理时间和参数量:
「YOLOv5u是怎么回事呢」
我们先对比一下YOLOv8的YAML和YOLOv5u的YAML,你就全明白了!!!
是的,所谓的Anchor-Free版本的YOLOv5u,就是原始版本的YOLOv5+YOLOv8的Detect Head,当然肯定也继承了YOLOv8的种除了基于梯度流的网络聚合设计思想以外的所有优点,比如DFL Loss、TAL匹配以及Decoupled Head等。
最后看看YOLOv8的Detect Head的样子吧!!!依旧是借用网络小伙伴的一张图:
是不是很时髦的样子,是的,Decoupled Head+Anchor-Free就是潮流与时尚!所以YOLOv5就是继承了YOLOv8的检测头(上图中的红色框内的Head)和匹配方法以及损失函数。
记得一定去学习YOLOv5u哦!!!
参考
[1].https://github.com/ultralytics/ultralytics.
推荐阅读
改进YOLOX | Push-IOU+Dynamic Anchor进一步提升YOLOX性能
即插即用 | CFNet提出全新多尺度融合方法!显著提升检测和分割精度!
一文全览 | 自动驾驶Cornor-Case检测数据集
扫码加入👉「集智书童-YOLO算法」交流群
(备注:方向+学校/公司+昵称)
前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」
欢迎扫描上方二维码,加入「集智书童-知识星球」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!