深度学习笔记-7.GIOU理解

目录

CVPR2019: 使用GIoU作为检测任务的Loss 

GIoU

GIoU作为BBox回归的损失

实际运行


https://zhuanlan.zhihu.com/p/57992040

CVPR2019: 使用GIoU作为检测任务的Loss 

本文是对CVPR2019论文Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression 的解读,通过对Loss的修改提升检测任务的效果,觉得思路很棒

IoU是检测任务中最常用的指标,由于IoU是比值的概念,对目标物体的scale是不敏感的。然而检测任务中的BBox的回归损失(MSE loss, l1-smooth loss等)优化和IoU优化不是完全等价的(见下图)。而且 Ln范数对物体的scale也比较敏感。这篇论文提出可以直接把IoU设为回归的loss。然而有个问题是IoU无法直接优化没有重叠的部分。为了解决这个问题这篇paper提出了GIoU的思想~

                                                          IoU与L2范数的优化不是等效的

要将IoU设计为损失,主要需要解决两个问题:

  1. 预测值和Ground truth没有重叠的话,IoU始终为0且无法优化
  2. IoU无法辨别不同方式的对齐,比如方向不一致等。

                                                          IoU无法代表overlap的方式

GIoU

所以论文中提出的新GIoU是怎么设计的呢:

假如现在有两个任意性质 A,B,我们找到一个最小的封闭形状C,让C可以把A,B包含在内,然后我们计算C中没有覆盖A和B的面积占C总面积的比值,然后用A与B的IoU减去这个比值:

GIoU有如下性质:

 

GIoU作为BBox回归的损失

 那么具体一点,如何计算损失呢?我们以2D detecation为例:

假设我们现在有预测的Bbox和groud truth的Bbox的坐标,分别记为:

作者做了一系列的实验(针对分割任务和分类任务有一定loss的调整设计,不过论文中没有详细给出)结果是IoU loss可以轻微提升使用MSE作为loss的表现,而GIoU的提升幅度更大,这个结论在YOLO算法和faster R-CNN系列上都是成立的:

                                                          PASCAL VOC 2007上的提升with Yolo 

                                                          MS COCO的提升with Yolo 

                                                          PASCAL VOC 2007 with faster-RCNN 

实际运行

在人脸检测中使用了GIoU替代原始损失,发现改进效果不大,分析原因可能是人脸检测中Anchor box的比例一般变动不大(1.5:1),而不是像多目标检测一样存在anchor box比例分布不均衡的情况。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值