锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

初学YOLOv4

时间:2023-08-22 21:37:00 1sma22at3g抑制二极管

创新点:

1.CSPDarknet-53

2.PAN

3.Eliminate grid sensitivity

4.optimizered anchor

5.IOU threshold(match positive samples)正样本匹配

6.Mosaic data augmentation(前面说过)

7.CIOU(之前说过)

CSP

首先是CSP网络的优点如下图所示

下图是CSP结构在CSPDarknet中的体现。

下图是YOLOv4的backbone--CSPDarknet网络结构。

PAN

相当于在FPN在此基础上,自下而上下而上的结构,即先对backbone中间的特征层FPN将深层语义信息融入低层特征层,采样结果与之前的特征图征图concat获得最终的预测特征层。

YOLOv4中的PAN与原PAN结构有点不同,原结构中是进行add,而YOLOv4是进行concat。

下图为整个YOLOv4整体网络结构图,包括backbone提取预测特征层。

Eliminate grid sensitivity

之前得sigmoid当函数范围为0-1时,GT box网格线上的中心点,tx或ty显然不可能接近负无限,所以引入优化策略会bx和by公式改变,范围变为-0.5--1.5。

IOU threshold

在YOLOv3中针对每一个GT只分配了一个Anchor。但在YOLOv包括之前说过的YOLOv3 SPP以及YOLOv5中一个GT可同时分配给多个Anchor,它们是直接使用的Anchor模板与GT Boxes粗略匹配,然后定位到对应cell的对应Anchor。

首先回顾一下之前说的话YOLOv3 SPP源代码分析中提到的样本匹配过程。流程大致如下图所示:例如,对于预测特征层,采用以下三种方法Anchor模板AT1、AT2、AT3

1.将每个GT Boxes与每个Anchor匹配模板(这里将直接匹配)GT和Anchor模板左上角对齐,然后计算IoU)
2.如果GT与某个Anchor模板的IoU如果大于给定阈值,则将大于给定阈值GT分配给该Anchor模板,如图所示AT 2
3.将GT根据相应的预测特征层投影GT中心点定位对应cell(图中黑色× \times×表示cell的左上角)
4.则该cell对应的AT2为正样本

但在YOLOv4以及YOLOv5.匹配正样本的方法有些不同。主要原因是1.2.1 Eliminate grid sensitivity缩放因子中提到scalexy,通过缩放后网络预测中心点的偏移范围已经从原来的(0,1)调整到了(?0.5,1.5)。所以对于同一个GT Boxes可分配给更多Anchor,也就是说,样本的数量更多。如下图所示:

1.将每个GT Boxes与每个Anchor匹配模板(这里将直接匹配)GT和Anchor模板左上角对齐,然后计算IoU,在YOLOv4中IoU阈值为0.213)
2.如果GT与某个Anchor模板的IoU如果大于给定阈值,则将大于给定阈值GT分配给该Anchor模板,如图所示AT 2
3.将GT根据相应的预测特征层投影GT中心点定位对应cell(注意图中有三个对应的对应cell,以后会解释)
4.则这三个cell对应的AT2都为正样本

为什么图中的GT会定位到3个cell,网络预测中心点的偏移范围已调整到(0.5,1.5)所以只要是理所当然的Grid Cell左上角的距离GT中心点(0.5,1.5)其对应范围内的5)Anchor都能回归到GT的位置处。
上面和左边cell它们距离落入Grid Cell左上角距离小于0.5,所以该Grid Cell上方的Cell以及左侧的Cell都符合条件,即Cell左上角的距离GT中心在( ? 0.5 , 1.5 ) (-0.5, 1.5)(?0.5,1.5)范围内。这将大量扩大正样本的数量。但需要注意的是,YOLOv5源码中扩展Cell时间只会向上、下、左、右扩展,不会向左、右、左、右扩展。

Optimizer Anchors

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章