计算机视觉面试考点(5)非极大值抑制

计算机视觉工程师在面试过程中主要考察三个内容:图像处理、机器学习、深度学习。然而,各类资料纷繁复杂,或是简单的知识点罗列,或是有着详细数学推导令人望而生畏的大部头。为了督促自己学习,也为了方便后人,决心将常考必会的知识点以通俗易懂的方式设立专栏进行讲解,努力做到长期更新。此专栏不求甚解,只追求应付一般面试。希望该专栏羽翼渐丰之日,可以为大家免去寻找资料的劳累。每篇介绍一个知识点,没有先后顺序。想了解什么知识点可以私信或者评论,如果重要而且恰巧我也能学会,会尽快更新。最后,每一个知识点我会参考很多资料。考虑到简洁性,就不引用了。如有冒犯之处,联系我进行删除或者补加引用。在此先提前致歉了!

非极大值抑制
Non-Maximum Suppression NMS

目标检测常用算法

计算机视觉面试考点(5)非极大值抑制
在目标检测中,同一个目标得到很多检测框,冗余性较大。
使用非极大值抑制减少冗余边框。如下图。
计算机视觉面试考点(5)非极大值抑制

算法流程

  • 取分数最高的框
  • 计算其余框和该框的交并比(Interection-over-union,IoU),也就是重叠比例
  • 滤除交并比大于阈值的框(阈值一般0.4左右)
  • 剩余的框继续循环上述三步,直到无法滤除

IoU计算

一图胜千言
计算机视觉面试考点(5)非极大值抑制

soft-NMS

计算机视觉面试考点(5)非极大值抑制
使用NMS会使上述两个框只保留分数大的那个
然而两个框并不冗余,所以提出了soft-NMS

与NMS滤除IoU大于阈值的框不同,soft-NMS是改变IoU大于阈值的框的分数:
IoU小于阈值:框保留,分数不变,同NMS,可以进入下一次循环
IoU大于阈值:框保留,降低分数,不进入下一次循环

降低分数的两种方法:
s代表分数
线性:
计算机视觉面试考点(5)非极大值抑制
指数:
计算机视觉面试考点(5)非极大值抑制
个人认为,指数方法用计算复杂度换来了抑制分数程度的灵活性。
因为可以通过调整σ,改变抑制分数的程度:
σ越小,抑制越强烈。这样看,线性方法有些死板。

soft-NMS最后保留的框很多。
一般,最后设置一个阈值,直接过滤掉分数较低的框。

soft-NMS的算法复杂度相比NMS增加不大,所以一般使用soft-NMS。


欢迎讨论 欢迎吐槽

上一篇:【Linux系列】Linux操作系统rpm包安装方式步骤


下一篇:阿里云主机搭建hexo博客