重定位非极大值抑制算法
目标检测[
基于卷积神经网络的目标检测算法[
上述改进算法通过为每个候选框分配利用网络学习到的定位置信度来避免选择最优边界框时依赖类别置信度。传统NMS算法认为与最优边界框重叠越大的候选框,越有可能是冗余框,因此,设定阈值用于判断候选框是否是冗余框。Liu等[
2 相关工作
在目标检测任务中,通常使用传统NMS算法和Soft-NMS算法对预测阶段得到的候选框进行保留和抑制处理。
2.1 传统NMS
传统NMS算法中,候选框抑制过程中类别置信度的计算过程如下:
(1) |
式中:代表最优边界框,为候选框。IoU用于衡量两个框之间的重合程度。
(2) |
式中为人工设定的阈值。当框与框的重合程度大于时,框的类别置信度置为0,框被框抑制。
2.2 Soft-NMS
Soft-NMS算法是一种基于传统NMS的改进算法。与传统NMS算法相同,其候选框也根据类别置信度排序,置信度得分最高的候选框被选为最优边界框。不同于传统NMS算法,Soft-NMS算法采用“权值惩罚”的方式调整类别置信度,即:
(3) |
在Soft-NMS算法中,与框有显著重叠的候选框不会立即被移除,但是它们的置信度得分会衰减。这一方式有效地提高了召回率,但Soft-NMS算法作为传统NMS算法的改进算法,其选择最优边界框的思想完全继承了传统NMS算法,不能从根本上解决所选最优边界框定位精度不高的问题。
3 R-NMS算法
3.1 接近度
曼哈顿距离是两点之间的垂直和水平距离之和,点和之间的曼哈顿距离为:
(4) |
本文提出两个边界框之间的接近度可以用
图1 曼哈顿距离
Fig.1 Manhattan distance
(5) |
接近度和都能表示边界框之间的接近程度,然而值随着重叠面积的改变呈现线性变化,如
图2 和的对比
Fig.2 Stability of compared to
3.2 坐标标准化
接近度在边界框尺寸相似的情况下能够有效地表示边界框之间的距离关系。然而,在目标检测的后处理阶段存在大量尺寸不同的候选框,
图3 两组框在坐标轴上的展示
Fig.3 Display of two sets of boxes on coordinate axes
(6) |
(7) |
显然,当两个框的尺寸有明显差异时,值并不能准确衡量它们的重合程度。为了解决这一问题,本文引入了边界框坐标点标准化这一方法,该方法能够使坐标被固定到0~1之间,同时还能保持边界框之间的关系。坐标标准化公式如下:
(8) |
式中:norm用于坐标标准化,,分别表示两个框的横坐标、纵坐标的集合,,表示两个框中横坐标的最大值和最小值。利用横坐标到最小值的距离比上最大值和最小值之间的距离即可得到标准化后的横坐标,纵坐标的标准化计算过程和横坐标的相同。对
3.3 最优边界框重定位
传统NMS和Soft-NMS算法选取最优候选框的过程是一致的。首先,候选框按类别置信度降序排列,然后选择类别置信度得分最高的候选框为最优边界框。然而,候选框的定位精度和类别置信度之间的相关性不大,类别置信度得分最高的候选框不一定是最优边界框。为此,R-NMS算法在得到最优边界框的基础之上,利用重定位选框法对它执行重定位操作,重定位过程如
(9) |
(10) |
式中:为符合条件的候选框集合,为候选框,为中所有候选框与最优边界框的偏移量。最优边界框加上偏移量即可得到R-NMS算法的最优边界框。
图4 边界框重定位流程
Fig.4 Process of relocating bounding boxes
3.4 边界框的保留和抑制
在模型预测阶段,同一个目标上会产生大量相似的候选框,存在大量的冗余数据,因此边界框的保留和抑制至关重要。在对这些边界框进行处理时,首先根据类别置信度对候选框排序,选择得分最高的候选框作为最优边界框,然后借助重定位选框法对最优边界框执行重定位操作得到新的最优边界框。最后,采用最优边界框抑制其他候选框。
图5 边界框的保留与抑制过程
Fig.5 Process of reserving and suppressing bounding boxes
R-NMS算法的执行步骤如下:
输入:候选框集合,阈值 输出:最优边界框集合 1:候选框集合根据对应的类别置信度得分按从低到高的顺序排列,取类别置信度得分最高的候选框为最优边界框,从候选框集合中移除。 2:利用当前最优边界框计算与其他候选框的接近度,找到小于阈值的所有候选框。 3:计算当前最优边界框与步骤2得到的候选框之间的平均偏移量,利用偏移量对最优边界框执行重定位操作得到新的最优边界框,加入到最优边界框集合。 4:利用新的最优边界框抑制候选框集合中的其他候选框并从候选框集合中移除。 5:递归执行步骤1至4直到候选框集合为空。 |
4 实验分析与讨论
4.1 实验数据、模型及参数
本文的实验建立在公开可用的MS COCO2014和PASCAL VOC2012数据集上。MS COCO2014数据集共有80个类、164 042张图片,可分为训练集、验证集和测试集,分别有82 783,40 504,40 755张图片。在PASCAL VOC2012中训练、测试及验证数据集共包含17 125幅图像,20个类。这些数据集用于训练和评估深度学习目标检测模型。
实验选用pytorch框架,使用python3.8编程,硬件设备中CPU使用AMD Ryzen 9 3900X,内存为32 GB,GPU型号为GeForce RTX 2080Ti,显存为11 GB,系统环境为Ubuntu18.04。使用目标检测器YOLOv3、YOLOv5以及Faster RCNN对传统NMS,Soft-NMS和R-NMS算法的性能进行了比较评估。实验过程中,类别置信度的阈值设为0.2,的阈值和接近度的阈值都设为0.5。
4.2 实验结果
4.2.1 R-NMS算法和其他算法的性能对比
利用YOLOv3,YOLOv5以及Faster RCNN算法在PASCAL VOC2012和MS COCO2014测试集上比较了传统NMS,Soft-NMS和R-NMS的性能,结果如
Method | mAP@0.5:0.95 | mAP@0.5 | Recall | Precision |
---|---|---|---|---|
YOLOv3+NMS YOLOv3+Soft-NMS YOLOv3+R-NMS YOLOv5+NMS YOLOv5+Soft-NMS YOLOv5+R-NMS | 47.0 47.2 47.7 56.7 56.8 57.2 | 67.2 67.6 67.6 75.0 75.1 75.3 | 72.5 72.6 72.7 78.1 77.7 78.4 | 80.6 80.3 80.9 82.6 82.7 83.0 |
Method | mAP@0.5:0.95 | mAP@0.5 | Recall | Precision/% |
---|---|---|---|---|
YOLOv3+NMS YOLOv3+Soft-NMS YOLOv3+R-NMS YOLOv5+NMS YOLOv5+Soft-NMS YOLOv5+R-NMS | 34.8 34.8 35.2 42.0 42.0 42.5 | 53.0 53.4 53.5 60.8 61.3 61.4 | 59.2 59.7 59.9 61.8 62.0 62.1 | 65.9 65.6 66.4 74.6 73.9 74.8 |
图6 YOLOv3算法在VOC数据集上的部分检测结果
Fig.6 Experimental results of VOC test dataset on YOLOv3
图7 YOLOv3算法在COCO数据集上的部分检测结果
Fig.7 Partial experimental results of COCO test dataset on YOLOv3
本文提出的R-NMS算法,在传统NMS和Soft-NMS算法所选的最优边界框基础上充分利用其周围框的位置信息,对最优边界框执行重定位,最终获取到定位精确的最优边界框。在PASCAL VOC2012测试集上,R-NMS作为YOLOv3和YOLOv5算法的后处理算法,R-NMS算法的精确率高于传统NMS算法的80.6%,82.6%,R-NMS算法的召回率也从Soft-NMS算法的72.6%,77.7%提升至72.9%,78.3%。YOLOv3算法的mAP@0.5:0.95指标分别提升了0.7%,0.5%。YOLOv5算法的mAP@0.5∶0.95由传统NMS算法的56.7%,Soft-NMS的56.8%提升至R-NMS的57.2%。在MS COCO2014测试集上,YOLOv3和YOLOv5的实验结果如
图8 Faster RCNN算法在PASCAL VOC上的实验结果
Fig.8 Experimental results of VOC test dataset on Faster RCNN
以上实验结果证明了R-NMS算法的性能优于传统NMS和Soft-NMS算法。相比传统NMS算法和Soft-NMS算法,R-NMS算法不仅解决了传统NMS算法召回率低的问题,还提高了精确率。
4.2.2 接近度和的消融实验
本节比较了在R-NMS算法上和接近度的性能。实验建立在PASCAL VOC2012数据集上,实验结果如
Method | mAP@0.5∶0.95 | mAP@0.5 | Recall | Precision |
---|---|---|---|---|
YOLOv3+R-NMS(IoU) | 47.5 | 67.3 | 72.7 | 80.6 |
YOLOv3+R-NMS(P) YOLOv5+R-NMS(IoU) YOLOv5+R-NMS(P) | 47.7 57.1 57.2 | 67.6 75.1 75.3 | 72.7 78.3 78.4 | 80.9 82.9 83.0 |
4.2.3 R-NMS算法的阈值敏感性分析
实验中使用YOLOv3检测器和PASCAL VOC2012测试集,对R-NMS算法中接近度的阈值进行了敏感性分析。
图9 不同接近度阈值下的最优边界框
Fig.9 Optimal bounding box with different proximity thresholds
图10 接近度的阈值敏感性分析
Fig.10 Threshold sensitivity analysis of proximity
当接近度的阈值较低时,最优边界框能够利用的有效位置信息较多,使得重定位选框法得到的最优边界框包围物体的程度提高。随着阈值的提高,最优边界框获得更多周围候选框的位置信息,但是这些位置信息无效并且会降低最优边界框的定位精度。由此可知,R-NM法的性能在阈值较低时能够获得更好的性能。
4.3 定性分析
传统NMS算法和Soft-NMS算法选择类别置信度最高的候选框作为最优边界框,然后借助该框抑制任何与其高度重合的候选框,从而完成候选框的保留与抑制。但是在实验中发现,类别置信度和定位之间的相关性不高,有时候置信度低的边界框能更好地包围目标。
图11 定位精度和置信度的关系
Fig.11 Relationship between classification confidence and positioning accuracy
5 结 论
传统NMS算法及其变体Soft-NMS算法在选框阶段根据类别置信度选出最优边界框,而定位精度和类别置信度之间的相关性很低,类别置信度得分最高的候选框的不一定是最优边界框。针对上述问题,本文提出R-NMS算法。该算法综合考虑最优边界框与其周围候选框的位置信息,构建了一种重定位选框法,最优边界框可以借助该方法重新调整位置,最终提高其定位精度。实验结果证明:采用PASCAL VOC2012数据集测试,与传统NMS算法和Soft-NMS算法相比,R-NMS算法在目标检测器YOLOv3上的mAP分别提高0.7%,0.5%,R-NMS算法在Faster-RCNN上的mAP达到80.83%。该算法能提高目标检测器的检测精度。
- 2025年中科院分区表已公布!Scientific Reports降至三区
- 官方认定!CSSCI南大核心首批191家“青年学者友好期刊名单”
- 2023JCR影响因子正式公布!
- 国内核心期刊分级情况概览及说明!本篇适用人群:需要发南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的学者
- 我用了一个很复杂的图,帮你们解释下“23版最新北大核心目录有效期问题”。
- 重磅!CSSCI来源期刊(2023-2024版)最新期刊目录看点分析!全网首发!
- CSSCI官方早就公布了最新南核目录,有心的人已经拿到并且投入使用!附南核目录新增期刊!
- 北大核心期刊目录换届,我们应该熟知的10个知识点。
- 注意,最新期刊论文格式标准已发布,论文写作规则发生重大变化!文字版GB/T 7713.2—2022 学术论文编写规则
- 盘点那些评职称超管用的资源,1,3和5已经“绝种”了