非极大值抑制(NMS)讲解

原创 2018年04月17日 10:48:08

非极大值抑制(Non-maximum suppression,NMS)是一种去除非极大值的算法,常用于计算机视觉中的边缘检测、物体识别等。

算法流程

给出一张图片和上面许多物体检测的候选框(即每个框可能都代表某种物体),但是这些框很可能有互相重叠的部分,我们要做的就是只保留最优的框。假设有N个框,每个框被分类器计算得到的分数为Si, 1<=i<=N。

0、建造一个存放待处理候选框的集合H,初始化为包含全部N个框;

     建造一个存放最优框的集合M,初始化为空集。

1、将所有集合 H 中的框进行排序,选出分数最高的框 m,从集合 H 移到集合 M;

2、遍历集合 H 中的框,分别与框 m 计算交并比(Interection-over-union,IoU),如果高于某个阈值(一般为0~0.5),则认为此框与 m 重叠,将此框从集合 H 中去除。

3、回到第1步进行迭代,直到集合 H 为空。集合 M 中的框为我们所需。

需要优化的参数:

IoU 的阈值是一个可优化的参数,一般范围为0~0.5,可以使用交叉验证来选择最优的参数。

示例:

比如人脸识别的一个例子:

已经识别出了 5 个候选框,但是我们只需要最后保留两个人脸。

首先选出分数最大的框(0.98),然后遍历剩余框,计算 IoU,会发现露丝脸上的两个绿框都和 0.98 的框重叠率很大,都要去除。

然后只剩下杰克脸上两个框,选出最大框(0.81),然后遍历剩余框(只剩下0.67这一个了),发现0.67这个框与 0.81 的 IoU 也很大,去除。

至此所有框处理完毕,算法结果:


(图片来自https://blog.csdn.net/shuzfan/article/details/52711706)





版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HappyRocking/article/details/79970627

MyCat实战讲解(MySQL集群)

-
  • 1970年01月01日 08:00

NMS——非极大值抑制

NMS(non maximum suppression),中文名非极大值抑制,在很多计算机视觉任务中都有广泛应用,如:边缘检测、目标检测等。这里主要以人脸检测中的应用为例,来说明NMS,并给出Matl...
  • shuzfan
  • shuzfan
  • 2016-09-30 15:38:32
  • 24322

非极大值抑制(NMS)

非极大值抑制(NMS) 非极大值抑制顾名思义就是抑制不是极大值的元素,搜索局部的极大值。这个局部代表的是一个邻域,邻域有两个参数可变,一是邻域的维数,二是邻域的大小。这里不讨论通用的NMS算法,而是...
  • H2008066215019910120
  • H2008066215019910120
  • 2014-05-15 21:47:38
  • 13908

非极大值抑制算法 (NMS)

1. 算法原理   非极大值抑制算法(Non-maximum suppression, NMS)的本质是搜索局部极大值,抑制非极大值元素。 2. 3邻域情况下NMS的实现   3邻域情况下的NM...
  • sinat_29552923
  • sinat_29552923
  • 2017-06-02 21:54:38
  • 1138

非极大值抑制NMS的python实现

目标检测中常用到NMS,在faster R-CNN中,每一个bounding box都有一个打分,NMS实现逻辑是: 1,按打分最高到最低将BBox排序 ,例如:A B C D E F 2,A的分...
  • hongxingabc
  • hongxingabc
  • 2018-01-07 20:04:18
  • 395

深度学习——NMS(非极大抑制)

在物体检测中NMS(Non-maximum suppression)非极大抑制应用十分广泛,其目的是为了消除多余的框,找到最佳的物体检测的位置。...
  • zchang81
  • zchang81
  • 2017-04-17 15:28:29
  • 3803

NMS非极大值抑制

非极大值抑制算法 Non-Maximum Suppression for Object Detection in Python 非极大值抑制算法...
  • u014568921
  • u014568921
  • 2016-09-12 11:00:05
  • 4160

非极大值抑制在物体检测方面的应用

非极大值抑制在物体检测方面的应用结合faster-rcnn给出的py_cpu_nms.py的源码来介绍一下nms算法在物体检测方面的应用。faster-rcnn中经过rpn层之后会得到一些boundi...
  • Running_J
  • Running_J
  • 2016-06-21 15:13:32
  • 3318

非极大值抑制 (NMS)及其matlab代码实现

非极大值抑制(Non Maximum Suppression)最常用的领域就是目标检测,比如人脸检测,物体检测等。下面也就其在目标检测领域的应用及其代码实现。 目标检测的基本流程如下: 具...
  • u011501388
  • u011501388
  • 2018-03-16 22:14:39
  • 98

非极大值抑制算法(NMS)及python实现

在目标检测中,常会利用非极大值抑制算法(NMS)对生成的大量候选框进行后处理,去除冗余的候选框,得到最具代表性的结果,以加快目标检测的效率。即如下图所示,消除多余的候选框,找到最佳的bbox。 ...
  • Blateyang
  • Blateyang
  • 2018-01-20 11:55:12
  • 206
收藏助手
不良信息举报
您举报文章:非极大值抑制(NMS)讲解
举报原因:
原因补充:

(最多只允许输入30个字)