首先明确IOU系列的提出原因,即衡量预测框与真实框的关系。
IOU
IOU原理
图中,红色框表示为预测框,绿色表示为真实框(标注框)。IOU就是计算真实框与红色框的交并比,具体流程如下:
-
计算真实框与预测框的交集
-
计算真实框与预测框的并集
-
计算交并比
IOU Loss
明白IOU原理后,进一步看一下IOU loss:IOU loss 将四个点构成的bbox,作为整体进行回归。设置(xt, xb, xl, xr)进行计算,反应真实框和预测框的关系。
Iou loss = 1 - iou
具体如下图所示:
IOU特点
IOU作用:
- 可以反映预测检测框与真实检测框的检测效果
- 尺度不变性,也就是对尺度不敏感(scale invariant), 在regression任务中,判断predict box和gt的距离最直接的指标就是IoU。(满足非负性;同一性;对称性;三角不等性)
IOU问题:
-
无法进行梯度回传;loss = 1- IOU ,但IOU=0时(两框不想交)。
-
无法判断预测框与真实框之间的距离;只要不想交,IOU均为0
-
无法衡量两个框之间的相交方式
-
无法精确判断两种的重合度大小,如下图所示,三种情况IoU都相等,但看得出来他们的重合度是不一样的,左边的图回归的效果最好,右边的最差。
GIOU
GIOU原理
GIOU的具体计算流程如下
-
计算IOU
-
计算同时包含预测框和真实框的最小矩形框的面积–A
-
A - Union
-
(A - Union)/A
- -
GIOU = IOU - (A - Union)/A
GIOU LOSS
- GIOU Loss = 1 - GIOU
GIOU的特点
GIOU的作用:
- 对于相交的框,IOU可以被反向传播,即它可以直接用作优化的目标函数。但是非相交的,梯度将会为0,无法优化。此时使用GIoU可以完全避免此问题。所以可以作为目标函数
- 可以分辨框的对齐方式
- IoU取值[0,1],但GIoU有对称区间,取值范围[-1,1]。在两者重合的时候取最大值1,在两者无交集且无限远的时候取最小值-1,因此GIoU是一个非常好的距离度量指标
- GIOU关注的不只是重叠区域,还有其他的非重叠区域
GIOU的问题:
- GIoU对scale不敏感
- GIoU是IoU的下界,在两个框无限重合、在内部等情况下,IoU=GIoU=1,如下图所示:
DIOU
DIOU的提出主要是针对IOU和GIOU中存在的问题:
- 直接最小化anchor框与目标框之间的归一化距离是否可行,以达到更快的收敛速度?
- 如何使回归在与目标框有重叠甚至包含时更准确、更快
DIOU实现
如下面公式所示,为DIOU的计算过程
具体流程如下:
- 计算IOU
- 计算两个框之间的中心点的欧氏距离
- 计算最小必报区域的对角线距离
其中d和c如下图所示:
DIOU特点
- 与GIoU loss类似,DIoU loss在与目标框不重叠时,仍然可以为边界框提供移动方向。
- DIoU loss可以直接最小化两个目标框的距离,而GIOU loss优化的是两个目标框之间的面积,因此比GIoU loss收敛快得多。
- 对于包含两个框在水平方向和垂直方向上这种情况,DIoU损失可以使回归非常快,而GIoU损失几乎退化为IoU损失
CIOU
Ciou的改进在于,回归框三要素中的长宽比进行了考虑;CIOU在DIOU的基础上,加入了长宽比进行改进。
(a 是权重函数,v用来度量长宽比的相似性)
EIOU
CIOU Loss虽然考虑了边界框回归的重叠面积、中心点距离、纵横比。
但是通过其公式中的v反映的纵横比的差异,而不是宽高分别与其置信度的真实差异,所以有时会阻碍模型有效的优化相似性。
在CIOU的基础上将纵横比拆开,提出了EIOU Loss,并且加入Focal聚焦优质的锚框
##EIOU 作用
- 将纵横比的损失项拆分成预测的宽高分别与最小外接框宽高的差值,加速了收敛提高了回归精度。
- 引入了Focal Loss优化了边界框回归任务中的样本不平衡问题,即减少与目标框重叠较少的大量锚框对BBox
回归的优化贡献,使回归过程专注于高质量锚框
版权声明:本文为CSDN博主「你好啊:)」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Leomn_J/article/details/120696824
暂无评论