I-O-U you should know

文章目录

  • SmoothL1->IoU->GIoU->DIoU->CIoU Loss
    • SmoothL1
    • IoU LOSS
    • GIoU LOSS
    • Distance-IoU Loss(DIOU)
    • Complete-IoU(CIOU)

SmoothL1->IoU->GIoU->DIoU->CIoU Loss

SmoothL1

由微软rgb大神在Fast RCNN论文提出
设x为 真实值与预测值之间的差

  • L 1 _ L O S S = ∣ x ∣ L1\_LOSS = |x| L1_LOSS=x
    缺点:
    1) L 1 _ L O S S L1\_LOSS L1_LOSS损失函数在0处不可导;
    2) L 1 _ L O S S L1\_LOSS L1_LOSS对x的导数为常数,在训练后期,x很小时,如果learning rate 不变,损失函数会在稳定值附近波动,很难收敛到更高的精度。

  • L 2 _ L O S S = ∣ x ∣ 2 L2\_LOSS = |x|^2 L2_LOSS=x2
    缺点:
    L 2 _ L O S S L2\_LOSS L2_LOSS 损失函数对x>1时的导数,其导数也非常大,给予二次方倍的惩罚,对离群点比较敏感,受其影响较大,可能梯度爆炸。

  • Smooth L 1 ( x ) = { 0.5 x 2 i f ∣ x ∣ < 1 ∣ x ∣ − 0.5 o t h e r w i s e \text{Smooth}{L_1}(x) =\left \{ \begin{array}{c} 0.5x^2 & if \mid x \mid <1 \\ \mid x \mid - 0.5 & otherwise \end{array} \right. SmoothL1(x)={0.5x2x0.5ifx<1otherwise
    综合二者的有点,规避二者的缺点,完美。

在这里插入图片描述
三种方式的缺点:
上面的三种Loss用于计算目标检测的Bounding Box Loss时,独立的求出4个点的Loss,然后进行相加得到最终的Bounding Box Loss,这种做法的假设是4个点是相互独立的,实际是有一定相关性的。实际评价框检测的指标是使用IOU,这两者是不等价的,多个检测框可能有相同大小的 S m o o t h L 1 ( x ) Smooth_{L_1}(x) SmoothL1(x) LOSS,但IOU可能差异很大,为了解决这个问题就引入了IOU LOSS。
在这里插入图片描述

IoU LOSS

由旷视提出,发表于2016 ACM。也可在我博客中找到具体的解读。

在这里插入图片描述缺点:
1)当预测框和目标框不相交时,IoU(A,B)=0时,不能反映A,B距离的远近,此时损失函数不可导,IoU Loss 无法优化两个框不相交的情况。
2)假设预测框和目标框的大小都确定,只要两个框的相交值是确定的,其IoU值是相同时,IoU值不能反映两个框是如何相交的。
如:
在这里插入图片描述于是GIOU LOSS 被提出。

GIoU LOSS

由斯坦福学者提出,发表于CVPR2019

在这里插入图片描述缺点:

在这里插入图片描述当目标框完全包裹预测框的时候,IoU和GIoU的值都一样,此时GIoU退化为IoU, 无法区分其相对位置关系;此时作者提出的DIoU, 加入了中心点归一化距离,所以可以更好地优化此类问题。

位置暴露了缺点,于是DIOU LOSS 被提出。
在这里插入图片描述

Distance-IoU Loss(DIOU)

Distance-IoU Loss 论文地址
在这里插入图片描述
D I O U = I O U − ( d / c ) 2 DIOU=IOU-(d/c)^2 DIOU=IOU(d/c)2

在这里插入图片描述
上述损失函数中,b,bgt分别代表了anchor框和目标框的中心点,且p代表的是计算两个中心点间的欧式距离。c代表的是能够同时覆盖anchor和目标框的最小矩形的对角线距离。因此DIoU中对anchor框和目标框之间的归一化距离进行了建模。直观的展示如下图所示。

特点及缺点:
1) 尺度不变性;
2)当两个框完全重合时DIOU=0;
3)当2个框不相交时,仍然可以为边界框计算损失,并提供移动方向。
4)DIoU Loss可以直接优化2个框直接的距离,比GIoU Loss收敛速度更快
5)对于目标框包裹预测框的这种情况,DIoU Loss可以收敛的很快,而GIoU Loss此时退化为IoU Loss收敛速度较慢;

Complete-IoU(CIOU)

C I O U = I O U − ( d / c ) 2 − a v CIOU=IOU-(d/c)^2-av CIOU=IOU(d/c)2av
论文考虑到bbox回归三要素中的长宽比还没被考虑到计算中,因此,进一步在DIoU的基础上提出了CIoU。其惩罚项如下面公式:
在这里插入图片描述
CIoU的惩罚项是在DIoU的惩罚项基础上加了一个影响因子av,

a 为权重
在这里插入图片描述

experiment:

在这里插入图片描述
【完结】


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部