YOLO v6(学习笔记)

目录

1.网络改进

2.网络结构

(1)EffificientRep

(2)Rep-PAN

(3)高效解耦头

2.损失函数

(1)分类损失

(2)回归损失

(3)obj损失(未选择)


1.网络改进
  • 网络设计:Backbone:与其他主流架构相比,RepVGG骨干网络在推理速度相近的情况下,在小型网络中具备更多的特征表示能力,而由于参数和计算成本的爆炸性增长,它很难被扩展以获得更大的模型。YOLO v6把RepBlock作为我们小型网络的构建模块。对于大型模型,我们修改了一个更有效的CSP块,名为CSPStackRep块。Neck:YOLOv6的颈部采用了YOLOv4和YOLOv5之后的PAN拓扑结构。用RepBlocks或CSPStackRep Blocks来增强颈部,以实现Rep-PAN。Head:简化了解耦头,使其更加有效,称为高效解耦头。
2.网络结构
  • 依旧由backbone、neck和head组成。
  • backbone:设计了一个高效的可重新参数化的骨干,称为EffificientRep
  • neck:Rep-PAN
  • head:高效解耦头
(1)EffificientRep
  • RepVGG 主干在小型网络中具有更强的特征表示能力,但是随着参数和计算成本的爆炸式增长, RepVGG 在大模型中难以获得较高的性能,所以设计了一个高效的可重新参数化的骨干,称为EffificientRep
  • 将 Backbone 中 stride=2 的普通 Conv 层替换成了 stride=2 的RepConv层
  • 将原始的 CSP-Block 都重新设计为 RepBlock,其中 RepBlock 的第一个 RepConv 会做 channel 维度的变换和对齐
  • 将原始的 SPPF 优化设计为更加高效的 SimSPPF
(2)Rep-PAN
  • Rep-PAN 基于 PAN 拓扑方式,用 RepBlock 替换了 YOLOv5 中使用的 CSP-Block,对整体 Neck 中的算子进行了调整
(3)高效解耦头
  • YOLOv5的检测头是一个耦合头,而FCOS和YOLOX的同类产品则将这两个分支解耦,并且在每个分支中引入额外的两个3×3卷积层以提高性能。在YOLOv6中,我们采用混合通道策略来建立一个更有效的解耦头。
  • 具体来说,我们将中间的3×3卷积层的数量减少到只有一个。头部的宽度由骨干和颈部的宽度乘数共同缩放。这些修改进一步降低了计算成本,以实现更低的推理延迟。
2.损失函数
  • YOLO v6的损失也由 分类损失回归损失 组成
(1)分类损失
  • 针对正负样本有不平衡的问题和正样本中不等权的问题,来发现更多有价值的正样本。因此选择 VariFocal Loss 作为分类损失
(2)回归损失
  • SIoU Loss在小模型上提升明显, GIoU Loss在大模型上提升明显,因此选择SIoU (for n/t/s) / GIoU (for m/l) 损失作为回归损失。

  • SIoU 损失是使用距离成本、形状成本IoU成本定义的。角度成本在距离成本中使用。以下是SIoU公式:

  • Distance cost(距离损失):描述了中心点之间的距离,其惩罚代价与角度代价呈正相关,当𝛼→0时,Distance cost的贡献大大降低。相反,𝛼越接近pi/4,Distance cost贡献越大。

  • 角度成本:

  • Shape cost(形状损失):形状成本是处理纵横比不匹配的部分。作者考虑的两框之间的长宽比,是通过计算两框之间宽之差和二者之间最大宽之比(长同理)来定义的,大体思路和CIOU类似,只不过CIOU可以的考虑是两框整体形状的收敛,而SIoU是以长、宽两个边收敛来达到整体形状收敛的效果。

(3)obj损失(未选择)
  • 作为一个像FCOS和YOLOX一样的anchor-free框架,我们已经在YOLOv6中尝试了object loss。不太幸运的是,它并没有带来很多好的效果,所以选择丢弃了obj损失。
相关推荐
羊羊小栈1 小时前
基于「YOLO目标检测 + 多模态AI分析」的水稻病害智能检测分析预警系统(LangChain框架)
人工智能·yolo·目标检测·毕业设计·创业创新·大作业
江畔柳前堤3 小时前
字节跳动·大模型应用知识手册
前端·人工智能·深度学习·opencv·目标检测·重构·transformer
动词ing10 小时前
【题目练习】动态规划+背包问题
数据结构·目标检测
YOLO数据集集合11 小时前
智慧工业工地安全防护检测数据集 | 工业安全 防护装备检测 安全帽识别 口罩检测 9097期
人工智能·目标检测·计算机视觉·目标跟踪·智慧工地·工地
YOLO_DATA11 小时前
遥感滑坡检测的数据集 2299 张 1类 yolo格式 遥感滑坡检测数据集
人工智能·深度学习·yolo·计算机视觉·无人机·yolo数据集·ai数据集
爱吃火鸡面呀12 小时前
基于 dlib 与 OpenCV 的人脸换脸实战:从关键点检测到无缝融合
opencv·目标检测
棣廷12 小时前
初识OpenCV——疲劳检测
人工智能·opencv·目标检测
计算机编程-吉哥21 小时前
YOLO26 vs YOLO11 vs YOLOv8:深度学习咖啡果实成熟度分割系统【计算机毕业设计选题推荐】
人工智能·python·深度学习·yolo·django·毕业设计
根目录下的猫1 天前
RK3588适配的轻量级AI模型推荐
人工智能·后端·python·目标检测
YOLO数据集集合1 天前
高铁轨道紧固件损坏检测数据集 | 高铁巡检 紧固件缺陷 轨道安全9093期
人工智能·目标检测·计算机视觉·目标跟踪·轨道·铁轨紧固件·铁轨