【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析

IOU、GIOU、DIOU、CIOU解析

  • IOU
    • IOU原理
    • IOU Loss
    • IOU特点
  • GIOU
    • GIOU原理
    • GIOU LOSS
    • GIOU的特点
  • DIOU
    • DIOU实现
    • DIOU特点
  • CIOU
  • EIOU

首先明确IOU系列的提出原因,即衡量预测框与真实框的关系。

IOU

IOU原理

【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第1张图片
图中,红色框表示为预测框,绿色表示为真实框(标注框)。IOU就是计算真实框与红色框的交并比,具体流程如下:

  • 计算真实框与预测框的交集
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第2张图片

  • 计算真实框与预测框的并集
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第3张图片

  • 计算交并比
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第4张图片

IOU Loss

明白IOU原理后,进一步看一下IOU loss:IOU loss 将四个点构成的bbox,作为整体进行回归。设置(xt, xb, xl, xr)进行计算,反应真实框和预测框的关系。
Iou loss = 1 - iou
具体如下图所示:
【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第5张图片

IOU特点

IOU作用

  • 可以反映预测检测框与真实检测框的检测效果
  • 尺度不变性,也就是对尺度不敏感(scale invariant), 在regression任务中,判断predict box和gt的距离最直接的指标就是IoU。(满足非负性;同一性;对称性;三角不等性)

IOU问题

  • 无法进行梯度回传;loss = 1- IOU ,但IOU=0时(两框不想交)。

  • 无法判断预测框与真实框之间的距离;只要不想交,IOU均为0
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第6张图片

  • 无法衡量两个框之间的相交方式
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第7张图片

  • 无法精确判断两种的重合度大小,如下图所示,三种情况IoU都相等,但看得出来他们的重合度是不一样的,左边的图回归的效果最好,右边的最差。
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第8张图片

GIOU

GIOU原理

GIOU的具体计算流程如下

  • 计算IOU

  • 【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第9张图片

  • 计算同时包含预测框和真实框的最小矩形框的面积–A
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第10张图片

  • A - Union
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第11张图片

  • (A - Union)/A
    -【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第12张图片

  • GIOU = IOU - (A - Union)/A
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第13张图片

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,如下图所示:
    【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第14张图片

DIOU

DIOU的提出主要是针对IOU和GIOU中存在的问题:

  1. 直接最小化anchor框与目标框之间的归一化距离是否可行,以达到更快的收敛速度?
  2. 如何使回归在与目标框有重叠甚至包含时更准确、更快

DIOU实现

如下面公式所示,为DIOU的计算过程
【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第15张图片
具体流程如下:

  • 计算IOU
  • 计算两个框之间的中心点的欧氏距离
  • 计算最小必报区域的对角线距离

其中d和c如下图所示:
【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第16张图片

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聚焦优质的锚框
【深度学习小知识】目标检测中的IOU、GIOU、DIOU、CIOU、EIOU等理论解析_第17张图片
##EIOU 作用

  • 将纵横比的损失项拆分成预测的宽高分别与最小外接框宽高的差值,加速了收敛提高了回归精度。
  • 引入了Focal Loss优化了边界框回归任务中的样本不平衡问题,即减少与目标框重叠较少的大量锚框对BBox
    回归的优化贡献,使回归过程专注于高质量锚框

你可能感兴趣的:(深度学习小知识,深度学习,机器学习,神经网络)