NMS 非极大值抑制:找到局部最大值,并删除邻域内其他的值。
简单说一下流程:
首先剔除背景(背景无需NMS),假设有6个边界框,根据分类置信度对这6个边界框做降序排列,假设顺序为A、B、C、D、E、F。
- 从置信度最大的边界框A开始,分别判断B-F这5个边界框与A的交并比IOU是否大于设定的阈值;
- 如果B、C和A的IOU超过阈值,则删除B、C,其余D、E、F保留;并且A是我们的一个输出;
- 在保留的边界框D、E、F中选出置信度最大的D,继续判断D与E、F的IOU,和步骤2一样,如果IOU大于阈值,则删除该边界框,这里假设E、F都删除,则D是我们的第二个输出;
- NMS就是一直重复上述过程,并且输出过程中所有的输出,这里的输出即为A、D。
交并比(IOU):两边界框相交部分面积与相并部分面积之比。
参考:
https://blog.csdn.net/zchang81/article/details/70211851
https://zhuanlan.zhihu.com/p/78504109