【CVPR 2019】Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression
出发点:IoU指标在评估阶段经常使用,但是训练的时候经常是直接计算坐标的L1、L2范数,引用文章中所说"The optimal objective for a metric is the metric itself “,所以会想到直接用IoU作为损失函数,但是当两个框不重叠的时候,损失就会为0,继而梯度也就是0,不利于网络去训练。
如上图所示,a)当坐标以( x 1 , y 1 , x 2 , y 2 x_1,y_1,x_2,y_2 x1,y1,x2,y2)表示,以右上角的坐标为参考(灰色虚线的圆是为了保证预测框和gt box的右上角坐标差值是一个半径,从而相等),第一行也就是右上角坐标的2范数相等,但是IoU和GIoU值都不一样。b)以( x c , y c , w , h x_c,y_c,w,h xc,yc,w,h)表示时,中心点的差值都一样,一范数一样,但是IoU和GIoU值都不一样。虽然有anchor的提出,并且加了非线性关系,但是回归坐标和评估还是有gap。
本文的贡献如下:
- 提出了GIoU作为评估指标
- 以GIoU作为损失
- 应用于现有的框架,精度提升显著
相关工作
这一部分作者先介绍了mAP和IoU,前者是基于后者计算的,具体可以看Object-Detection-Metrics,我觉得写的特别好。作者指出在计算mAP时,IoU一般取0.5,如果IoU大于0.5,则将预测框划为TP,否则就是FP。而这个0.5不足以反应不同方法的性能,所以MS COCO Benchmark就设置了很多阈值。
接着作者介绍了目标检测“从古至今”回归的策略和损失。YOLO v1直接预测坐标值,但是损失函数中加了平方根(因为小物体的预测偏差带来的损失应该比大物体的预测偏差损失大)。RCNN预测的是到经过SS后得到的prior box的偏差,大小比例用的是log