解决的问题

IoU 的缺陷

  • 当预测框和目标框不相交时,IoU (A,B)=0 时,不能反映 A,B 距离的远近,此时损失函数不可导,IoU Loss 无法优化两个框不相交的情况。

  • 假设预测框和目标框的大小都确定,只要两个框的相交值是确定的,其 IoU 值是相同时,IoU 值不能反映两个框是如何相交的。(如下图所示,三种不同相对位置的框拥有相同的 IoU=0.33 值,但是拥有不同的 GIoU=0.33,0.24,-0.1。当框的对齐方向更好一些时 GIoU 的值会更高一些。)

GIoU - 图1

设计原理(公式)

image.png

常规的 IoU 公式

GIoU - 图3

GIoU 公式
GIoU - 图4

C 是 A与 B 的最小外包矩形(smallest convex hull)
其中 GIoU - 图5 代表的是 C 的面积减去 A 与 B 相并的那部分的面积,就是上图中紫色那部分的面积

GIoU Loss:
GIoU - 图6

伪代码如下

image.png

参考