【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读

论文地址:https://arxiv.org/pdf/1910.13302.pdf

代码地址:GitHub - ZFTurbo/Weighted-Boxes-Fusion: Set of methods to ensemble boxes from different object detection models, including implementation of "Weighted boxes fusion (WBF)" method.

1. NMS(Non-Maximum Suppression

原理

(1)将所有获得的候选框按得分进行降序排列;

(2)选取得分最高的候选框作为基准,分别计算所有剩余候选框与该基准框的IoU(交并比),将IoU高于阈值的候选框进行剔除;

(3)在保留的非基准候选框中,重复第(2)步,直到所有的候选框都被当作基准框。最终剩下的候选框即为预测结果。

【缺点】

(1)需要手动设置阈值,且阈值会直接对结果产生影响;

(2)难以区分多个重叠度较高的目标。

当IoU阈值为0.5时,只有一个目标框会被保留,但实际存在多个目标

2. Soft-NMS

【原理】

NMS算法比较强硬,超过阈值就剔除,低于阈值直接保留。所以当阈值较高时,容易造成误检,抑制效果不明显;当阈值较低时,容易产生漏检。因此就出现了soft-nms。

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第1张图片 soft-nms伪代码,相对NMS增加了得分惩罚

soft-nms通过IoU的值对候选框的得分进行惩罚衰减,不是直接去除候选框。衰减的策略有两种,一种是使用1-IoU与得分的乘积作为衰减后的值,第二种是高斯惩罚函数。

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第2张图片 NMS的得分函数,IoU高于阈值直接将得分设置为0
soft-nms的第一种衰减策略,IoU大于阈值的目标得分会收到惩罚
【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第3张图片 soft-nms的高斯惩罚函数

【缺点】最终还是删除了部分预测框的结果,不能充分利用所有候选框的信息。

3. Weighted boxes fusion

【原理】假设有N个模型的输出结果:

(1)将所有模型的预测结果添加到列表B中,并对B按置信度得分C进行排序;

(2)声明一个空列表L和F。其中,L用来存放边界框簇,每个位置可以存在多个边界框;F用来存放融合后的边界框,每个位置只能有一个边界框。F中每个位置的边界框是L中对应位置边界框簇融合后的结果。

(3)循环执行:逐个遍历B中的预测结果,在列表F中找到与之相匹配的框(IoU大于指定阈值,这里设置的阈值是0.55)。

(4)如果F中没有与之匹配的框,则将B中的这个框添加到列表L和F中作为一个新的簇,然后处理B中的下一个框。

(5)如果F中的第pos个框与之匹配,那么将B中的这个框添加到列表L中的第pos个簇中。

(6)用列表L[pos]的所有T个边界框重新计算F[pos]的边界框坐标和置信度得分。置信度得分C是所有T个边界框置信度得分的均值,边界框坐标由原始坐标与置信度得分加权计算得到。

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第4张图片

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第5张图片

 【简单画了个示例】

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第6张图片 匹配第一个元素a

 

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第7张图片 匹配第二个元素b

 

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第8张图片 匹配第三个元素c

 

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第9张图片 匹配第四个元素d

 

【论文阅读】Weighted Boxes Fusion(WBF)模型融合原理解读_第10张图片 匹配第五个元素e

你可能感兴趣的:(论文阅读)