NMS(非极大值抑制)
- 作用
- MATLAB实现
1、作用
在物体检测非极大值抑制应用十分广泛,主要目的是为了消除多余的框,找到最佳的物体检测的位置。在物体检测过程中,图片中的同一个物体,可能识别出来多个选框。这时需要使用非极大值抑制进行选优,去掉重复的框。
如下图所示是它的直观表达:
如上图所示,一共有5个识别为人的框,每一个框有一个置信率。 现在需要消除多余的:
1、首先按置信率排序: 0.98, 0.83, 0.0.81, 0.75, 0.67
2、取最大0.98的框为一个物体框
3、剩余4个框中,去掉与0.98框重叠率大于0.6(可以另行设置),则保留0.81, 0.67两个框
4、重复上面的步骤,直到没有框了,0.81为一个框
5、选出来的为: 0.98, 0.81
两个矩形框重叠率的计算方法:
如上图所示,矩形的左上角坐标为x1, y1, 右下角坐标为x2, y2,两个矩形的面积分别为A, B。
1、取两个矩形左上角坐标的最大值x1_max, y1_max
2、取两个矩形右下角坐标的最小值x2_min, y2_min
3、重叠区域的宽w为max(0, x2_min - x1_max),高h为max(0, y2_min - y1_max)
4、所以重叠率为: