Area-based NMS 文章笔记
(本文部分节选自相关文章,见参考链接,仅作个人学习收藏使用,如有侵权联系删除致歉)
文章来源
摘要:
A-NMS,Area-based non-maximum suppression。针对传统NMS算法的两个缺点,即一个目标保留多个类别检测框的问题和小尺寸目标检测丢失的问题进行改进,提出 Area-based NMS算法和 box fusion algorithm 框融合算法。
1. 实验数据
(a) 完整绝缘子,标签“good”
(b) 串列绝缘子,标签"bad"
© 完整阻尼器, 标签"double"
(d) 脱落阻尼器,标签“single”
2. 解决的问题
(1) 传统NMS算法只能处理同一类别的检测框,而不能处理不同类别的冗余框。导致一个目标保留多种类别预测框,如下图。为了解决这个问题,提出了A-NMS算法。
图中,红色检测框为“bad”标签,蓝色检测框为“good”标签。
(2)CNNs 随着卷积和池化,网络层级越高,所提取的特征图像素越来越少,会导致小目标信息缺失。为了解决这个问题,提出Cropping detection method分割检测方法和 box fusion algorithm 检测框融合算法。
3. Area-based non-maximum suppression algorithm
在Faster R-CNN中,NMS应用两次,第一次在RPN阶段,在RPN阶段,唯一可以获取的信息是检测框属于前景的概率。 没有具体分类。
第二次应用在Fast R-CNN阶段,A-NMS算法在Fast R-CNN阶段取代了NMS算法。
A-NMS算法依据预测框面积area做筛除。提出新的评判预测框重叠度的标准:IoS。计算所有检测框的面积,然后选择面积最大的检测框和其他检测框做IoS计算。
检测框筛除方法:
超参数:重叠度阈值T。
- 若IoS>T,则视为两个检测框识别同一个目标。
- 计算类别概率值score 误差绝对值,若小于特定值(0.1),则将 area 小的检测框筛除;否则将低score 检测框筛除。
阈值T通过实验设定。
4. 分割检测+预测框融合
提出了一种有效检测小目标的分割检测方法。
分割后的子图要扩展为原图尺寸,但子图的各像素点坐标通过公式转换为与原图相对应的坐标。此过程之后,子图中的小目标的面积大约变为原图像中面积的两倍。提高了图像检测网络检测小目标的能力。
预测框融合算法
(1)先对每个子图中提出的检测框进行融合,计算IoS, 将IoS大于阈值T的检测框进行融合;
(2) 在原始图像上标记四个子图的保留检测框的转换结果,此时,一个目标会保留多个检测框,再应用上述A-NMS算法去除冗余。
5. 实验结果
(1)阈值T实验结果
(2)分割检测方法实验结果
(3)对比结果
4)效果
(a). NMS
(b). A-NMS
6. 总结
缺点:
(1) 没能充分利用score。
(2) 检测框的融合要保证同类别框融合才有效,否则会拉低AP。文中未提及是否同类别。
(3) 分割检测、子图框转换到原图中均会增大时间消耗。