非极大值抑制
边缘检测中的非极大值抑制(NMS)
- 在边缘检测时,NMS可以帮助我们细化检测到的边缘结果。
- 对于某个像素点,NMS计算该像素点的值是否为8邻域内的最大值,如果是的话,就保留该点作为边缘,否则就舍弃该点。
- 计算的方法是,首先计算沿x和y方向上的梯度,然后得到其梯度方向,则8邻域内的最大值一定在该梯度方向上,使用线性插值的方法,找到这8个邻域内的2个可能的最大值的位置的梯度,然后与该点的梯度行比较,如果均大于两个梯度值,则将点视为边缘点,否则不视为边缘点。
图像ROI中的NMS
- 在图像处理中,会生成很多RPN,此时可以使用NMS,去除那些IOU太大的box,保留有用的box。
步骤
- 具体的步骤如下:
- 根据所有bbox的confidence进行排序。
- 选择confidence最高的bbox,添加到最终的输出列表中(保留下来的bbox)。
- 将剩下的与这个bbox计算IOU,设置筛选阈值
th
,如果IOU大于这个值,就将其从列表中删除。 - 重复上述过程,直到所有的bbox要么被添加到输出列表中,要么从列表中被删除。
参考
- 具体的实现方法以及相关解释:https://www.jianshu.com/p/d452b5615850