目标检测损失函数(二)DIOU、CIOU、ALPHA IOU

个人学习记录,如有错误请指出,感谢大家的指导建议。

在前文中讨论了IOU与GIOU。

目标检测中的损失函数(一) IOU,GIOU_黑野桥的博客-CSDN博客

对比起前二者,DIOU,CIOU和ALPHA IOU相对较为复杂。本文的图例来自 B站UP主 自由时有船

常见面试问题4:损失函数DIOU、CIOU、阿尔法IOU_哔哩哔哩_bilibili

目标检测损失函数(二)DIOU、CIOU、ALPHA IOU_第1张图片     目标检测损失函数(二)DIOU、CIOU、ALPHA IOU_第2张图片

对比上面两幅图,在IOU和GIOU的背景下,如果两幅图的目标框和预测框的大小都是相同的,那么二者的计算结果也都是相同的。但无论从感官上还是实际效果来看,第二幅图的检测结果都更加稳定且准确。因此需要找到新的损失函数能够衡量这种情况。

DIOU

DIOU = IOU-\frac{\sigma^2(b,b^{gt})}{c^2}

其中,\sigma(a,b)表示a,b两点的距离,公式中所指为目标框的中心和预测框的中心。c表示最小闭包对角线的长度。DIOU加入了对预测框与目标框距离的优化。

CIOU

那么如果两个检测框的中心都和目标框重合且IOU一样大时,该如何选取呢?

目标检测损失函数(二)DIOU、CIOU、ALPHA IOU_第3张图片

如上图所示,假设两个目标框和检测框的面积都相同,且中心都重合,此时IOU,DIOU,CIOU都无法区分。但是从第一幅图的结果显然要比第二幅图要好,因为他的稳定性更强。也就是说,在CIOU中,我们还会考虑长宽比。

 公式来自IoU、GIoU、DIOU、CIOU损失函数 - 知乎

目标检测损失函数(二)DIOU、CIOU、ALPHA IOU_第4张图片

公式中,A,B代表两个框, A_{ctr},B_{ctr}代表A和B的中心点。所以CIOU的前两部分和DIOU是一致的(这里的LOSS就是1-CIOU)。唯一增加的部分是后面的av,这个就是对长宽比的考量。

公式中的常数 \frac{4}{\pi^2} 来自原论文作者的经验考量,使用arctan的原因也是作者经过尝试得到效果不错的函数。wgt和hgt是目标框的宽和高。CIOU不仅能让预测框快速的接近目标框,还能让预测框的长宽比也快速接近目标框。

ALPHA IOU

ALPHA IOU实际上是对前面所有IOU的一种加速收敛的改进。

目标检测损失函数(二)DIOU、CIOU、ALPHA IOU_第5张图片

alpha iou就是给所有的项

都增加了一个alpha的指数,一般取alpha为3,可以增大梯度加速收敛 

你可能感兴趣的:(目标检测,人工智能,计算机视觉)