2025年pointnet代码解析(pointer network原理和代码)

pointnet代码解析(pointer network原理和代码)一 目标检测损失函数 IOU GIOU DIOU CIOU IOU 损失函数目前主要应用于目标检测的领域 其演变的过程如下 IOU gt GIOU gt DIOU gt CIOU 损失函数 每一种损失函数都较上一种损失函数有所提升 IOU 损失函数 图片展示了 3 组矩形框重合的示例 绿色是真实目标存在的框 GT box

大家好,我是讯享网,很高兴认识大家。



一、目标检测损失函数:IOU、GIOU、DIOU、CIOU

IOU损失函数目前主要应用于目标检测的领域,其演变的过程如下:IOU –> GIOU –> DIOU –>CIOU损失函数,每一种损失函数都较上一种损失函数有所提升。

IOU损失函数:

51c~※~目标检测~合集1_目标检测
讯享网

图片展示了3组矩形框重合的示例:绿色是真实目标存在的框GT box,黑色是预测的box位置。通过观察上图,发现第三个预测效果较好,因为预测目标的位置与真实目标最为接近。但是计算三组l2损失发现损失值都为8.41,然而IOU的值不同。因此说明l2损失不能准确反应两个目标边界框重合的程度,因此诞生了IOU损失函数。 

51c~※~目标检测~合集1_目标检测_02

上图是IOU损失函数的计算方法:首先绿色的框表示真实目标的位置,蓝色框代表预测框的位置。IOU的计算方法很简单,用两个方框相交的面积/两个方框合并的面积,将得到的值取以e为底对数,前面添上负号就得到了IOU损失函数。

GIOU损失函数:

51c~※~目标检测~合集1_视觉_03

如图:绿色是真实目标边界框,红色是预测目标边界框,最外面的蓝色边框是将红绿矩形用最小矩形框起来的边界,Ac是蓝色矩形框的面积,u对应红绿矩形的并集面积。

如果当红绿矩形完美重合,那么IOU =1, Ac = u = 预测目标边界框面积,GIOU = 1 - 0 = 1。如果两个目标分开很远,Ac趋向于很大的数值,u趋于0,IOU也趋于0,GIOU = 0 - 1 = -1。因此GIOU取值的区间是[-1, 1]。

51c~※~目标检测~合集1_视觉_04

GIOU损失函数的最终表达形式是L(GIOU) = 1 - GIOU

51c~※~目标检测~合集1_目标检测_05

 

上表是原论文中的实验效果:第一列(AP-IoU一列)采用MSE(l2损失)的mAP=0.461,采用IoU损失得到的mAP=0.466,有些许提升。如果采用GIoU loss,能达到0.477,效果比IOU更好。

51c~※~目标检测~合集1_目标检测_06

 

但是,GIOU也存在它的缺点:当两个预测框高宽相同,且处于同一水平面时,GIOU就退化为IOU。此外,GIOU和IOU还有两个缺点:收敛较慢、回归不够准确。

DIOU 损失函数:

51c~※~目标检测~合集1_目标检测_07

 在介绍DIOU之前,先来介绍采用DIOU的效果:如图,黑色代表anchor box, 蓝色红色代表default box,绿色代表真实目标存在的框GT box的位置,期望红蓝框与绿框尽可能重合。第一行是使用GIOU训练网络,让预测边界框尽可能回归到真实目标边界框中,迭代到400次后才勉强重合。第二行使用DIOU训练网络,到达120步时,发现与目标边界框已经完全重合。可以看出,相对于GIOU,DIOU的不仅收敛速度更快,准确率也更高。

51c~※~目标检测~合集1_目标检测_08

我们再看一组图,图中给出了3组目标边界框与目标边界框的重合关系,显然他们的重合位置不相同的,我们期望第三种重合(两个box中心位置尽可能重合。这三组计算的IOU loss和GIoU loss是一模一样的,因此这两种损失不能很好表达边界框重合关系)。但是DIOU计算出的三种情况的损失是不一样的,显然DIOU更加合理。

51c~※~目标检测~合集1_视觉_09

 DIOU计算公式 

 ρ代表b和b(gt)之间的欧氏距离

51c~※~目标检测~合集1_目标检测_10

结合这张图理解一下公式:b代表预测中心坐标的参数,也就是黑框的中心点,bgt代表真实目标边界框中心的参数,即绿框中心点。ρ^2就是两个中心点距离的平方,即图中的d(红线)的平方,c代表两个矩形的最小外接矩形对角线(蓝线)长度。如果两个框完美重叠,d=0 ,IOU = 1,DIOU = 1 - 0 = 1 。如果两个框相距很远,d^2/c^2 趋近于1,IOU = 0, DIOU = 0 - 1 = -1 。因此,DIOU的取值范围也是[-1,1]。

51c~※~目标检测~合集1_目标检测_11

 

 DIOU最终损失函数为:L(DIoU) = 1 - DIOU

51c~※~目标检测~合集1_目标检测_12

当采用DIOU loss,mAP为46.57,相较于Iou和GIOU准确率都有提高,且收敛速度相比IOU提高了3%左右。

CIOU LOSS:

论文中,作者表示一个优秀的回归定位损失应该考虑三种几何参数:重叠面积、中心点距离、长宽比。CIoU就是在DIoU的基础上增加了检测框尺度的loss,增加了长和宽的loss,这样预测框就会更加的符合真实框。

51c~※~目标检测~合集1_视觉_13

因此CIOU的三项恰好对应IOU,中心点距离,长宽比的计算。CIOU loss = 1 - CIoU。α和v为长宽比,计算公式如上图所示:w、h和w(gt)、h(gt)分别代表预测框的高宽和真实框的高宽。 

 

51c~※~目标检测~合集1_目标检测_14

如果使用CIOU,mAP可以达到49.21%,相比于GIoU涨了1.5个百分点。CIOU(D)指在验证模型评价mAP时,将IOU换成DIOU,准确率还有提升 。

51c~※~目标检测~合集1_目标检测_15

 

 实际检测效果中,CIOU相比GIOU在框选目标时,能找到一个更合适的框选位置。如上图所示,第一行的两张图中,第一个猫猫使用GIOU损失函数,发现有一只猫耳朵在框外,第二只猫猫使用DIOU损失函数,将猫猫的位置准确标出。同样,第二行中,第一只狗狗虽然完整标出,但并不能准确框出狗狗的轮廓,而第二张图检测框的位置刚好合适。

 

二、目标检测后处理~NMS / WBF

对目标检测后处理中的NMS和WBF的解释和对比。

目前,计算机视觉在许多地方都有重要的应用,例如自动驾驶汽车、监控系统和图像识别。计算机视觉的主要挑战之一是目标检测,它涉及识别和定位图像和视频中的目标。为了提高目标检测系统的性能,研究人员和从业者开发了各种技术,例如模型集成和测试时增强(TTA)。

模型集成是组合多个模型的预测以提高系统整体性能的过程。这可以通过对多个模型的预测求平均值,或使用更复杂的方法(如加权框融合 (WBF))来组合预测来完成。集成方法可以通过减少过拟合的影响并提高系统的鲁棒性来显著提高目标检测系统的性能。

测试时增强 (TTA) 是另一种用于提高目标检测系统性能的技术。它在测试期间将各种数据增强技术(例如旋转、缩放和翻转)应用于输入图像。这可以通过使系统对输入数据的微小变化更加不变来帮助提高系统的鲁棒性。TTA还可以通过提供额外的数据供检测器学习来帮助提高系统的性能。

在本文中,我们将探索和比较非最大抑制 (NMS) 和加权框融合 (WBF) 以提高目标检测系统的性能。

非最大值抑制

非极大值抑制 (NMS) 是一种后处理技术,用于去除目标检测器生成的重叠框。它常用于计算机视觉中的目标检测任务,例如人脸检测、目标跟踪以及图像和视频中的目标检测。

NMS 背后的基本思想是选择置信度得分最高的框,然后删除与其显著重叠的其他框。重复此过程,直到考虑了所有框。这有助于减少目标检测中的误报数量,因为目标检测器通常会生成对同一目标的多次检测。

计算两个边界框之间重叠的最常见方法是使用交并比 (IoU) 指标。

IoU(A,B) = (A ∩ B) / (A ∪ B)

其中 A 和 B 是边界框的面积,A ∩ B 是它们相交的面积。通常,为 IoU 度量设置一个阈值,任何 IoU 大于该阈值的边界框都被认为是重复检测并被删除。

加权框融合

加权框融合(WBF)是一种提高目标检测系统性能的强大技术。它是一种将多个边界框或感兴趣区域 (ROI) 的结果组合成一个更准确、更稳定的结果的方法。当使用多个模型或算法来检测图像或视频中的目标并且需要组合结果以提高整体性能时,该技术特别有用。

从本质上讲,WBF 是一种通过根据各种标准为每个边界框分配权重来组合多个目标检测器结果的方法。然后使用这些权重将边界框组合成一个更稳健的结果。

WBF算法的工作步骤如下:

(1)每个模型的每个预测框(或通过 TTA 获得的预测)都会添加到单个列表 B 中,然后按置信度分数 C 的降序排序。

(2)分别为框组和融合框实例化新的空列表 L 和 F。因此,列表L中的每个元素都是由于重叠而形成的一组框,而F中的每个位置仅包含一个框,即融合框。

(3)在一个循环中迭代 B 中的预测框,并检查列表 F 中的匹配框(IoU > THR)。

(4)如果未找到匹配项,则将 B 中的框添加到列表 L 和 F 的末尾作为新条目;继续进行 B 中的下一个框。

(5)如果找到匹配,则将此框添加到列表L中与F中的匹配框对应的位置处。

(6)使用框组 L[pos] 中的所有内容重新计算 F[pos] 中的框坐标和置信度得分。将置信度得分设置为 L[pos] 中所有框的平均置信度。融合框的坐标是形成它的框的坐标的加权和,其中权重是对应框的置信度分数。最终 ROI = Σ (权重 i * ROIi) / Σ 权重 i。其中 ROIi 是第 i 个边界框,weighti 是分配给该边界框的权重,并且对正在考虑进行融合的所有边界框进行求和。最终的 ROI 是计算得出的组合边界框。

(7)最后,重新调整 F 列表中的置信度分数:将其乘以组中的框数(定义为下面的 T),然后除以模型数 N。如果组中的框数量较少,则可能意味着只有少数模型可以预测它。因此,我们需要降低此类情况的置信度分数。

51c~※~目标检测~合集1_目标检测_16

 

WBF 可以成为提高目标检测系统性能的强大工具,并且越来越多地被广泛应用于自动驾驶汽车、监控系统和计算机视觉的许多其他领域。通过集成WBF技术,目标检测系统可以变得更加鲁棒和准确,并且即使在存在噪声和遮挡的情况下也可以表现得更好。

NMS vs WBF

51c~※~目标检测~合集1_视觉_17

加权框融合(WBF)和非极大值抑制(NMS)都是用于提高目标检测系统性能的技术。然而,它们的使用方式不同,并且具有不同的权衡。

NMS 是一种后处理技术,用于删除目标检测器生成的重叠边界框。它的工作原理是选择置信度得分最高的边界框,然后删除与其显着重叠的任何其他边界框。重复此过程,直到考虑了所有边界框。NMS 是一种简单、快速且有效的方法,可减少目标检测中的误报数量。

另一方面,WBF 是一种用于组合多个边界框(或感兴趣区域)的技术,以产生更准确和稳定的结果。它通常用于使用多个模型或算法来检测图像或视频中的对象,并且需要组合结果以提高整体性能的情况。WBF 的工作原理是根据检测置信度、与其他边界框的重叠或其他标准等因素为每个边界框分配权重。然后使用这些权重将边界框组合成一个更稳健的结果。

实验评估

2个不同模型的集成

51c~※~目标检测~合集1_目标检测_18

表 1 显示了两个模型的 MS COCO 验证集的结果。使用四种不同的技术组合预测:NMS、Soft NMS、NMW 和 WBF。我们看到,在不同的设置下,WBF 方法明显优于其他方法,带来了更大的改进。测试时增强集成

51c~※~目标检测~合集1_目标检测_19

在上表中我们看到作者还提供了通过 TTA 组合预测的实验。他们使用在 COCO 数据集上训练的 EfficientNetB7 模型。对于 TTA,他们只采用水平翻转。同样,我们看到 WBF 的性能明显优于 NMS、Soft-NMS 和 NMW 等其他方法。

最后

使用加权框融合 (WBF) 的动机是通过将多个边界框或感兴趣区域 (ROI) 的结果组合成一个更准确和稳定的结果来提高目标检测系统的性能。这在使用多个模型或算法来检测图像或视频中的目标并且需要组合结果以提高整体性能的情况下特别有用。

使用 WBF 有益的原因有以下几个:

(1)鲁棒性:物体检测器可能会受到杂波、遮挡和背景噪声等因素的影响。WBF可以通过结合多个检测器的结果来帮助提高物体检测系统的鲁棒性,从而可以减少这些因素的影响。

 (2)准确性:WBF 可以通过组合同一物体的多次检测来帮助提高物体检测系统的准确性。这在图像或视频中目标部分被遮挡或仅部分可见的情况下特别有用。

(3)稳定性:WBF 可以通过减少误报和漏报的影响来帮助提高目标检测系统的稳定性。这在感兴趣的物体很小或难以检测的情况下特别有用。

(4)灵活性:WBF可以与非极大值抑制(NMS)等其他技术结合使用,以进一步提高目标检测系统的性能。

英文原文:https://medium.com/deem-blogs/object-detection-explained-nms-vs-wbf-4526d58e7e34

小讯
上一篇 2025-04-18 21:32
下一篇 2025-05-09 16:02

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/187526.html