IOU破局之路 | Focal EIOU:打破IOU/GIOU/CIOU的局限

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【目标检测】技术交流群

后台回复【2D检测综述】获取鱼眼检测、实时检测、通用2D检测等近5年内所有综述!

26ee815f486eb2e9a843f191fdcefed0.png

在目标检测中,框回归(BBR)是决定目标定位性能的关键步骤。然而,作者发现大多数以前的BBR损失函数有两个主要缺点:

  1. 基于范数和IOU的损失函数都不能有效地描述BBR的目标,这导致收敛速度慢和回归结果不准确。

  2. 大多数损失函数忽略了BBR中的不平衡问题,即与目标框具有小重叠的大量目标框对BBR的优化贡献最大。

为了减轻由此造成的不利影响,在本文中进行了深入研究,以挖掘BBR损失的潜力。首先,提出了一种有效的Efficient Intersection over Union(EIOU)损失,它明确地测量了BBR中3个几何因子的差异,即重叠面积、中心点和边长。之后,陈述了Effective Example Mining(EEM)问题,并提出了Focal loss的回归版本,以使回归过程专注于高质量的Anchor boxes。最后,将上述两部分结合起来,得到一个新的损失函数,即Focal EIOU Loss。在合成和真实数据集上进行了大量实验。与其他BBR损失相比,可以在收敛速度和定位精度上实现显著的优势。

1、简介

目标检测包括两个子任务:目标分类和目标定位,一直是计算机视觉中最基本的问题之一。当前最先进的目标检测器(例如,Cascade R-CNN、Mask R-CNN、Dynamic R-CNN和DETR)依赖于边界回归(BBR)模块来定位目标。基于这一范式,精心设计的损失函数对于BBR的成功至关重要。

迄今为止,BBR的大部分损失函数可以分为两类:

  • -范数损失可以统一为等式:

0b22f2932032fbea88cfe5324d03e37b.png

其中x是预测框和目标框之间的差。传统的Smooth L1损失可以形成为和。 -范数损失被批评为不仅忽略了BBR变量(x,y,w,h)中的相关性,还忽略了对大边界框的固有偏差(由于非规范化形式)。然而,如图1所示以前基于IOU的损失,例如CIOU和GIOU,无法有效地测量目标框和Anchor之间的差异,这导致BBR模型优化中的收敛速度慢和定位不准确。

026f65d43041b5e45b3e64949ca92a80.png
  • 基于 IOU 的损失可以统一为等式:

34efcbf4829f075f98bd85419a6ec6bc.png

其中和是预测框和目标框。附加惩罚旨在补充原始IOU的收益。这些损失共同回归所有BBR变量作为一个整体。它们也是标准化的,对边界框的比例不敏感。然而,大多数算法都存在收敛速度慢和定位不准确的问题。更重要的是,现有的基于 IOU 的损失忽略了信息Anchor的重要性。

在本文中进行了深入的研究,以挖掘当前BBR损失的潜力,实现精确的目标检测。首先,提出了一种有效的IOU损失(EIOU)来提高收敛速度和定位精度,该方法使用额外的惩罚项来明确测量BBR中3个关键几何因素的差异,包括重叠区域、中心点和边长。其次,阐述了BBR中的有效实例挖掘(EEM)问题。受最初用于测量分类误差的 Focal loss 的启发,作者设计了 Focal loss 的回归版本,以增强具有大IOU的高质量Anchor在BBR模型优化过程中的贡献。

最后,将所提出的两种方法组合为一种新的BBR损失函数,即Focal EIOU,以实现高效和准确的目标检测。通过对合成和真实数据集的广泛评估,验证了所提出损失函数的有效性和优势。此外,当将Focal EIOU损失与几种最先进的目标检测模型(包括Faster R-CNN、Mask R-CNN,RetinaNet、ATSS、PAA和DETR)相结合时,可以在大规模COCO 2017数据集上实现检测精度的一致和显著提高,这说明了提出的损失功能的潜在潜力。

本文的贡献总结如下:

  1. 考虑到基于IOU的损失和-范数损失的缺陷,提出了一种有效的IOU损失,以解决现有损失的困境,并获得更快的收敛速度和更好的回归结果。

  2. 考虑到BBR中高质量Anchor和低质量Anchor之间的不平衡,设计了一个 Focal loss 的回归版本,以增强最有希望的Anchor在模型优化中的贡献,同时抑制不相关的Anchor。

  3. 对合成数据和真实数据进行了大量实验。出色的实验结果验证了所提出方法的优越性。详细的消融研究显示了损失函数和参数值的不同设置的影响。

2、IOU Loss的局限性分析

2b40b598c4db59e93c9a5001566fe15a.png

2.1、IOU Loss的局限

测量两个任意形状(体积)之间相似性的IOU损失为:

6f0c9ee030f92d8df4bc87f2c6653700.png

它具有非负性、对称性、三角形不等式和尺度不敏感性等良好的性质。它已被证明是一个度量标准。然而,它有两个主要的缺点:

  • 如果两个box没有任何交集,IOU Loss将始终为零,这不能正确反映这两个box之间的紧密程度。

  • IOU Loss的收敛速度较慢。

2.2、GIOU Loss的局限

为了解决IOU Loss的缺点,提出了GIOU损失,定义如下:

06cd74d4f1616e180ed299770b3049d0.png

其中是两个任意的box。C是包含A和B的最小凸盒和。GIOU Loss在时有效,但它仍然有两个缺点:

  • 当时,GIOU损失打算增加边界框的面积,使其与目标框重叠(见图1),这与减少空间位置差异的直觉相反。

  • 当时,|C−A∪B|的面积总是一个小数或等于零(当A包含B时,该项将为零,反之亦然)。在这种情况下,GIOU损失退化为 IOU 损失。因此,GIOU损失的收敛率仍然很慢。

2.3、CIOU Loss的局限

CIOU损失考虑了三个重要的几何因素,即重叠面积、中心点距离和长宽比。给定一个预测框 B 和一个目标框,CIOU损失的定义如下:

79c67150ab89ded5617e33ba4be1833b.png

其中和分别表示和的中心点。表示欧几里得距离。是覆盖两个box的最小封闭box的对角线长度。和测量宽高比的差异。

v关于w和h的梯度计算如下:

704ac9cda7ee0363c1824cc244fd9b56.png

在之前的工作中,实验结果表明,与以前的损失函数相比,CIOU损失的收敛速度和检测精度都有显著提高。然而,最后一项的v仍然没有得到很好的定义,这从3个方面减缓了CIOU的收敛速度:

  1. 在等式(5)中, 仅反映纵横比的差异,而不是  与  或  与  之间的实际关系。即,所有具有属性具有=,这与现实不符。

  2. 在等式(6)中,有。和有相反的符号。因此,在任何时候,如果这两个变量(w或h)中的一个增加,另一个将减少。这是不合理的,尤其是当和或和时。

  3. 由于v仅反映纵横比的差异,因此CIOU损失可能以不合理的方式优化相似性。如图1所示,目标框的尺度设置为和。Anchor的初始尺度设置为w=1和h=2.4。Anchor尺度在50次迭代后回归为w=1.64和h=2.84。这里,CIOU损失确实增加了纵横比的相似性,但它阻碍了模型有效地减少和之间的真实差异。

2.4、本文提出的方法

为了解决上述问题,对CIOU损失进行了修正,并提出了一个更有效的IOU损失版本,即EIOU损失,其定义如下。

1ad7aae4272f9d74875de828c1a5511b.png

其中和是覆盖两个box的最小封闭盒子的宽度和高度。即,将损失函数分为三部分:IOU损失、距离损失和方位损失。这样就可以保留 CIOU Loss的有益特性。同时,EIOU Loss直接使目标框和Anchor的宽度和高度的差异最小化,从而产生更快的收敛速度和更好的定位结果。

3、Focal Loss For BBR

在BBR中,也存在训练实例不平衡的问题,即由于图像中目标目标的稀疏性,回归误差较小的高质量例子的数量远少于低质量例子(异常值)。最近的研究表明,离群值会产生过大的梯度,这对训练过程有害。因此,制作高质量的例子对网络训练过程贡献更多的梯度是至关重要的。

在最近的研究中试图基于SmoothL1的损失来解决上述问题。在本节中,还从Smooth L1损失开始,并提出Focal L1损失,以增加高质量例子的贡献。此外,作者还发现,简单的方法不能直接适用于基于IOU的损失。因此,最终提出了Focal-EIOU损失来提高EIOU损失的性能。

3.1、Focal L1 Loss

首先,列出了理想损失函数的性质如下:

  1. 当回归误差趋于零时,梯度幅度的极限应该为零。

  2. 梯度幅度应在小回归误差附近迅速增大,在大回归误差区域逐渐减小。

  3. 应该有一些超参数来灵活地控制低质量实例的抑制程度。

  4. 对于超参数的变值,梯度函数家族应该有一个标准化的尺度,例如,(0,1],这有助于在高质量和低质量的例子之间的平衡。

b046061f3a15d0c99eed7d78f30ff008.png

根据上述条件,随着边界框回归误差的变化,可以假设一个梯度幅度的期望函数曲线,如图5(a)所示该函数是,满足性质1和2。接下来,构造了一个带有参数β的函数族来控制曲线的形状,如图5(b)所示随着β的增加,异常值的梯度幅度将被进一步抑制。然而,高质量的例子的梯度幅度也会减少,这不是所期望的。因此,添加另一个参数α,根据属性4的要求,将不同β的梯度大小归一化为[0,1]。最后,梯度大小函数的族可以表示如下:

b4dd82485a8e9321a184fd06a6564352.png

这里,由于以下原因获得了β的值范围。当,,这意味着g(x)是具有全局最大值的凹函数。求解,可以得到。作为,。还必须确保,那么,。为了满足性质4,设置最大值得到α与β的关系:。通过积分上述梯度公式,可以得到BBR的Focal L1损失:

5e48a9e7277789da63ff5f3dde0769e3.png

其中C是一个常数值。以确保在等式中的在x = 1处是连续的,有。

6d6eea1dfdf2ec590a90a1cd80e27b53.png

图4(b)显示,根据β,提出的Focal L1损失可以增加内值梯度的值,抑制异常值的梯度值。较大的β要求内部有很少的回归误差,并快速抑制异常值的梯度值。

同样,在图4(a)中,蓝色的曲线表示β的最大值。随着回归误差的增加,蓝色曲线的损失首先迅速增加,然后趋于稳定。β值最小的橙色曲线增长得越来越快,在x = 1左右达到峰值。现在可以通过Focal L1损失,来计算定位损失,其中B是回归结果,是回归目标。

3.2、Focal-EIOU Loss

为了使EIOU损失集中于高质量的示例,自然可以考虑在等式中替换 x 与EIOU的损失联系在一起。然而,作者观察到上述组合的效果不太好。分析结果如下:

给定偏移量,Focal L1损失的梯度为,其中等于1或者-1,因此即使偏移很小,还可以带来足够的梯度以使模型持续优化。然而,如果用替换偏移量,梯度可以计算为。

这里不再是一个常量。此外,在实证研究中,随着接近零,它将非常小,而在当时也接近于零。因此,在乘法之后,整体梯度将更小,这削弱了对具有小的Box进行重新加权的效果。为了解决这个问题,使用IOU的值来重新计算 loss的权重,并得到Focal-,如下所示

47b8d9d5180ee6132f7bf9a9536f8567.png

其中,和是控制异常值抑制程度的参数。

3.3、算法流程

1856f51a66097b0eff5f55ee7e20761e.png

4、实验

4.1、消融实验

1、IOU方法对比
00b7bbb575f84b33d87d9d7f28cc0dd1.png
2、Tradeoff Weight的影响
9fe3339e204d1825753a60b3f2f4b3a7.png
3、FocalL1 Loss
2ee1294f78528b91527585e08ff6062b.png
4、Focal-EIOU Loss
070e291e22e336af10538d2da7f9e830.png

4.2、SOTA对比

6bb4e16049ca5178e53a63a34f67afc2.png

4.3、可视化对比

56f71ca066d3a34033bf23017e72c347.png

5、参考

[1].Focal and Efficient IOU Loss for Accurate Bounding Box Regression

往期回顾

FPN设计新范式 | You Should Look At New Objects

210ff6e7478aa555317c90463d7452b4.png

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;

加入我们:自动驾驶之心技术交流群汇总!

自动驾驶之心【知识星球】

想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!

055a23c48c463e23f8a6456edf582628.jpeg

  • 4
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Focal Giou是指在目标检测中使用的一种损失函数。引用\[2\]中提到,IoU Loss具有非负性、尺度不变性、同一性、对称性、三角不等性等特点,但是当两个图像没有相交时,无法比较两个图像的距离远近,无法体现两个图像到底是如何相交的。为了解决这个问题,引用\[3\]中提出了一种有效的IOU损失(EIOU),该损失函数使用额外的惩罚项来明确测量目标检测中的关键几何因素的差异,包括重叠区域、中心点和边长。而Focal Giou则是在Focal loss的基础上,结合了Giou损失函数,用于增强具有大IOU的高质量Anchor在目标检测模型优化过程中的贡献。 #### 引用[.reference_title] - *1* *2* [目标检测——map概念、Miou计算、IoU汇总IoUGIoU、DIoUCIoU、SIoUEIoU、Wiou、Focal、alpha](https://blog.csdn.net/weixin_45464524/article/details/128649991)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [IOU破局之路 | Focal EIOU打破IOU/GIOU/CIOU局限](https://blog.csdn.net/CV_Autobot/article/details/127781131)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值