数学--数据处理--非极大值抑制(NMS)

在目标检测中应用的多,实际上只要涉及到类似的数据处理问题,都可以用非极大值抑制方法。

一、在基于深度学习(各种CNN)模型的目标检测案例中出现的较多,还涉及到IoU(交并比的概念)。参考了这篇博客:https://blog.csdn.net/xiexu911/article/details/80609298

非极大值抑制就是一个寻找局部最大值的过程。(数据结构中的查找或者排序的类似思想,需要迭代方法)

在进行目标检测时一般会采取窗口滑动的方式,在图像上生成很多的候选框,然后把这些候选框进行特征提取后送入分类器,一般会得出一个得分(score),比如人脸检测,会在很多框上都有得分,然后把这些得分全部排序。选取得分最高的那个框,接下来计算其他的框与当前框的重合程度(iou),如果重合程度大于一定阈值就删除,因为在同一个脸上可能会有好几个高得分的框,都是人脸但是不需要那么框我们只需要一个就够了。

那么肯定有人会好奇,如果图片中有好几个人脸,你这选取一个最大的,那第二个人脸怎么办呢。

实际上这是一个迭代的过程,第一步的非极大值抑制就是选取了某一个最大的得分,然后删除了他周边的几个框,第二次迭代的时候在剩下的框里面选取一个最大的,然后再删除它周围iou区域大于一定阈值的,这样不停的迭代下去就会得到所有想要找到的目标物体的区域。

假设有ABCDEF这么多个得分框(已经按照得分从小到大排序)。

 

1、从最大概率矩形框F开始,分别判断A~E与F的重叠度IOU是否大于某个设定的阈值;

2、假设B、D与F的重叠度超过阈值,那么就扔掉B、D;并标记第一个矩形框F,是我们保留下来的。

3、从剩下的矩形框A、C、E中,选择概率最大的E,然后判断E与A、C的重叠度,重叠度大于一定的阈值,那么就扔掉;并标记E是我们保留下来的第二个矩形框。

4、一直重复这个过程,找到所有曾经被保留下来的矩形框。

 

第一步寻找得分框:

第一次迭代找到一个:

 

第二次迭代找到另外一个:

参考:https://blog.csdn.net/shuzfan/article/details/52711706

            https://blog.csdn.net/zchang81/article/details/70211851

 

二、在激光slam中提取角点特征的时候也可以用到

参考了这篇论文: [1]满增光,叶文华,肖海宁,钱晓明.从激光扫描数据中提取角点特征的方法[J].南京航空航天大学学报,2012,44(03):379-383.

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值