• NMS:Non-maximum Suppression学习笔记


    非极大值抑制可看成一种局部极大值搜索,这里的局部极大值要比他的邻域值都要大。这里的邻域表示有两个参数:维度和n-邻域。维度有1-D,2-D,3-D...;至于n值根据具体情况设置。举个例子:一维的情况,某个像素点左右各n个邻域点(加上该像素点,邻域区域共有2n+1个像素);二维的情况以当前像素为中心以n为半径向周围辐射到的区域均是邻域。
    具体讲几个算法实例可能有助于我们对算法的理解:
    1.一维三邻域算法
    算法伪代码如下:
    1 i ← 1;
    2 while i + 1 < W do
    3     if I[i] > I[i + 1] then
    4        if I[i] >= I[i ? 1] then
    5            MaximumAt(i);
             Endif
    6     else
    7       i ← i + 1;
    8        while i + 1 < W AND I[i] ≤ I[i + 1] do
    9            i ← i + 1;
              EndWhile
    10      if i + 1 < W then
    11         MaximumAt(i);
    12   i ← i + 2;
        EndWhile
    i表示图像I中像素点下标,W是下标上限。
    算法说明:
    ① 最理想的情况是当前像素点I[i]比它的左右邻点都大,那么当前像素点记为局部极大值点(Line 3-5)。
    ② 如果已经确定像素点i+1比它的左邻点i小,那么i+1必不是局部极值点,此时可以直接将下标加2(Line 12)。PS:该算法添加了一个强制性条件:局部极值点必大于左邻点.
    ③ 如果当前像素点i比其右邻域点小,那么下标加1(Line 7).

  • 相关阅读:
    CODEVS 3137 栈练习1
    CODEVS 3138 栈练习2
    线段树———模板
    深度优先搜索与广度优先搜索———模板
    犯罪团伙 codevs 3554
    嘟!数字三角形 W WW WWW集合!
    寻找子串位置 codevs 1204
    流输入练习——寻找Sb.VI codevs 3096
    C++之路进阶——codevs3287(货车运输)
    c++之路进阶——codevs4543(普通平衡树)
  • 原文地址:https://www.cnblogs.com/zhaoyang10/p/4553725.html
Copyright © 2020-2023  润新知