Advertisement

基于区域生长算法的图像分割python_基于区域分割(图像分割)

阅读量:

1. 区域生长

该方法通过同一物体内部具有相似特性的像素群聚来实现像素点的聚集。以起始区域(如邻近像素的小范围或每一个单独像素)为基础,在与现有区域相邻且具有相同特性的像素或子区域内不断纳入新的元素,并逐步扩大现有范围。该区域内像素之间的相似性可通过灰度均值、纹理特征以及颜色信息等多个方面进行评估。

该方法在缺乏先验知识的情况下表现良好。当不具备利用先验知识的条件时,在分割复杂图像方面表现出色。然而,在计算资源消耗方面存在较大差异。

串行式的区域分割技术是一种图像分割方法。串行式的区域分割是指从一个像素出发,在一定准则下逐步加入邻近像素的过程。影响该算法效果的关键因素主要包括:1.种子点的选择;2.确定加入像素的标准;3.设定停止条件。该算法的基本流程是从某一点或者多个关键点出发,在图像中逐步扩展,在满足终止条件时形成完整的分割结果并完成目标对象的识别。

区域生长的原理

区域生长的主要概念是整合具有相似特性的像元形成特定范围。具体而言,在图像分割过程中首先为每一个待分割的目标选择一个初始像元作为基础点。随后通过应用预先设定的标准筛选出与初始点性质相符的所有相邻像元,并将其纳入初始点所属的区域内。随后每一次筛选都会生成新的基础点并重复上述步骤直至不再满足筛选条件为止。最终形成了这样一个整合后的区域

如图所示,在基于已知种子点实施的区域生长示例中:

  • 图像显示待分割图像
  • 设定两个作为种子像素(以深浅相异的灰色方块标记)
  • 现进行区域生长过程
  • 假设我们采用如下判别标准:若待考虑像素与其所属种子像素灰度差值绝对值低于设定阈值T,则将该像素归入该种子区域中
  • 在T=3时(如图b),分割效果较为理想
  • 图像被合理划分为两个主要区域
  • 在T=1时(如图c),分割结果出现分歧
  • 在T=6情况下(如图d),整个图像被划分为单一统一区域
  • 由此可见门限参数的选择对于分割效果具有关键影响
a4c26d1e5885305701be709a3d33442f.png

传统的图像分割技术中包含着经典的区域生长算法。这一技术最早由Levine等学者提出并进行了深入研究。其核心思想是基于像素间的相似性特征进行迭代扩展:首先在目标物体内部预先选取一个小而确定的区域作为种子区域;随后根据像素间的相似性特征不断扩展该初始种子区域直至满足终止条件;最终实现目标物体与背景之间的精确分离过程

point),从种子区域内逐步纳入其周围像素点;另一种方法则是先将图像划分为许多灰度一致的小区域,并按照特定规则将这些小块合并形成更大的区域(目的是完成图像分割)。典型的例子是T. C. Pong等人提出的基于小面模型的地区域生长法;主要缺点在于容易导致过细划分(即把图象分成过多的小块)

区域生长实现的步骤如下:

1. 对图像顺序扫描!找到第1个还没有归属的像素, 设该像素为(x0, y0);

2. 以(x0, y0)为中心, 考虑(x0, y0)的4邻域像素(x,

y)如果(x0,

y0)满足生长准则, 将(x,

y)与(x0, y0)合并(在同一区域内), 同时将(x, y)压入堆栈;

3. 从堆栈中取出一个像素, 把它当作(x0, y0)返回到步骤2;

4. 当堆栈为空时!返回到步骤1;

5. 重复步骤1 - 4直到图像中的每个点都有归属时。生长结束。

mean

shift算法

1. 简介

Mean Shift算法作为最优化理论中的核心方法之一(也被称为梯度下降法的一种变体),其核心思想是沿负梯度方向寻求目标函数的最大或最小值。在目标追踪任务中其主要作用就是在候选区域中寻求具有最大相似度的目标位置。

2. 算法的基本思想

那么,它究竟是如何来寻找这样的相似度最大位置(最佳匹配区域)?

我们已知从初始目标区域提取的特征,在后续的视频中,在初始化的目标区域基础上,在其任意位置上确定一个与初始化目标区域大小相同的子窗口,并计算该子窗口内的颜色直方图与初始化目标区域颜色直方图之间的匹配程度。这一过程生成了一个由特征匹配程度构成的概率密度分布曲线。我们需要关注的是该曲线上的峰值点(即最接近初始目标特征的位置)。

Mean

该算法基于概率密度梯度方向进行迭代位移,在概率空间中寻找最优化位置。其本质是沿梯度方向进行的一阶最速下降法,在每一步骤中步长保持恒定。其中Mean

Shift未直接获取下降方向与步长这一信息点,而是基于该模型相似度匹配函数的一阶泰勒展开式来进行近似计算,从而确定迭代至下一个更新位置。由此可知,在梯度方向上不断迭代更新后能够收敛至目标相似度概率分布所对应的局部极大值

3. 算法特点

实际中,我们不可能去求取下一帧中所有位置的相似度。Mean

当不具备该概率密度函数的具体信息时,在每次迭代中选择的目标区域内的局部密度特性进行计算;从而其搜索结果是该目标区域的一个局部最大值。然而这往往会导致当目标运动速度较快或者背景过于复杂时;这些局部极值未必能准确反映下一帧的最佳匹配位置。另外Mean

Shift属于最速下降法的一种,在这种情况下其收敛速度较慢,并且当接近最优值时会出现锯齿现象

4. 图示解释

图中将蓝色区域划分为设定的目标基准范围,并以蓝色中心作为初始位置。在下一帧图像到达时进行该区域内的目标定位操作。这一过程通常是这样的。

a4c26d1e5885305701be709a3d33442f.png

标点符号与区域内各点的位置密切相关。具体而言,在离中心位置越近的地方所对应的权重值越大,在距离中心位置较远的地方则对应的权重值就越小。

5. 例子解析

在本人文章中存在一个Mean Shift的简单类实现。利用统计的目标直方图进行视频跟踪。

由于目标直方图不仅具备特性稳定而且具有较强的抗遮挡能力,并且其运算简便同时计算负担轻的特点。因此基于Mean Shift算法进行处理

通常使用直方图来建模目标位置,并通过相似度量方法来评估匹配程度。随后利用相似度量结果进行定位与追踪过程以完成目标的定位与追踪过程

(2)MeanShift

算法基于人机交互的方式对被跟踪目标完成初始化工作。在初始帧中,人工选择一个具有显著特征的目标区域作为被跟踪对象,并将其定义为目标区域。该区域同时也是核函数的影响范围,在这里核函数的带宽决定了其影响范围的大小。

假设我们关注于在一个彩色视频序列图像中追踪目标,则其值域定义为RGB颜色空间。通过直方图方法对RGB颜色空间中的各个通道(R、G、B)分别划分为K个相等区间,在此划分下形成的每个区间被定义为一个bin。这些bin共同构成了特征向量的空间,在这种情况下该特征向量的空间维度由变量m表示。

k^3。

在后续每一帧图像中,在可能存在目标的目标候选区域中对特征空间中的每个特征值进行计算所得的结果被称为候选模型的描述。通常选择高斯函数或Uniform核函数作为积分器。利用相似性函数评估初始帧的目标模型与当前帧各候选模型之间的相似程度。通过最大化相似ity 函数来确定关于 目标 的最佳转移 向量 。该 MeanShift 向 量 表示了 目标 从 初始 位置向着 正确 位置移动的方向与幅度 。由于该算法具有收敛特性 , 在反复迭代 计算过 程 中最 终将 定位 到真 实 的位 置 。

2. 区域分裂合并

该算法的核心思路是依据确定一个明确的区分标准,在图像分析的过程中逐步实现对目标区域的识别与划分。具体而言,在某一区域内存在特征不具统一性时,则将其划分为四个等面积的小区域;若相邻的小区域均展现出一致的特征属性,则将其组合成一个较大的统一区域;这一过程持续进行直至所有可分部分均已达到最小划分单元为止。当无法再进行细分时,则停止操作;随后系统将对邻近区域进行相似性检测,并对具有相同特性特征值的相邻小块进行整合处理;最终实现图像的整体分割目标。

就某种程度而言,在理论上具有高度一致性的一类算法分别是区域生长与区域分裂合并技术。这些算法彼此促进并相互依存,在理论层面上展现出高度的一致性特征。其中,在极端情况下(即当区域分裂达到单像素级别时),它们将被整合为统一的标准并最终等价于基于单像素点实施的统一标准下的统一过程。

区域生长相较于其他分割方法能够减少不必要的分裂步骤,在实际应用中表现出更高的效率。与之相比的另一种方法则能够基于较大的一个相似区域基础之上实现进一步的相似性合并。值得注意的是该方法仅限于以单个像素点为基础逐步扩展其覆盖范围而不具备与其他策略协同工作的能力。

反复进行拆分和聚合以满足限制条件的算法。

R表示整幅图像区域并选择谓词P。一种用于对R进行分割的方法是不断地将所得结果图像划分为四个子区域直至满足条件:对于任何一个区域R_i若满足条件则不再细分;否则将其划分为四个子区域并继续这一过程直至完成图像划分

a4c26d1e5885305701be709a3d33442f.png

如果仅通过拆分方法来实现,则可能导致最终划分出的区域中存在具有相同性质的相邻区域。这种缺陷可以通过同时进行拆分与区域聚合的方式得以修正。即只有当P(Rj∪Rk)=TRUE时...

前面的讨论可以总结为如下过程。在反复操作的每一步,我们需要做:

每当遇到一个区域Ri且其属性P(Ri)不等于FALSE时,则对该区域进行分割处理为四个相互连接的象限区段。

2.将P(Rj∪Rk)=TRUE的任意两个相邻区域Rj和Rk进行聚合。

3.当再无法进行聚合或拆分时操作停止。

可采用多种变式来阐述这一基本概念。例如,在具体实施过程中可从初始阶段将图像划分为若干图像块,并对每个划分出的块再继续执行类似的分解过程;然而,在开始聚合操作时会受到仅能将四个子块组合成一个父节点的限制——这四个子块对应于四叉树表示法中某个父节点的所有子节点,并且都满足条件P;当无法继续执行这种合并操作时(即当无法找到满足条件P的所有四个子块的情况下),该过程将终止于满足步骤2所述的最后一级区域合并;此时所形成的区域尺寸可能各不相同;这种方法的主要优势在于始终采用相同的四叉树结构来进行划分与合并操作直至最终阶段

例10.17

拆分和聚合

图10.43(a)展示了简单的图像信息。当区域Ri内至少80%的像素满足zj-mi≤2σi这一性质时,则定义P(Ri)=TRUE(此处zj表示Ri区域内第j个像素的灰度值),其中mi为区域Ri内所有像素灰度值的平均值(mean),σi为该区域灰度值的标准差(standard deviation)。一旦满足上述条件(即P(Ri)=TRUE),则将该区域内所有像素的颜色强度设置为其所在区域均值mi。为了提高效率,拆分与合并操作采用了快速算法实现关键步骤。将上述方法应用于图10.43(a),所得结果如图10.43(b)所示。值得注意的是,这种分割技术表现出良好的效果(results demonstrate) 。通过门限处理获得图10.43(c),其阈值选取自直方图中两个主要峰值之间的中间位置点(intermediate point between two major peaks)。经过此处理后,在阴影部分及植物茎秆等对象上未产生误分类现象(no false elimination of shadows and branch shafts)

a4c26d1e5885305701be709a3d33442f.png

如同前面所述,在定义与颜色分布相关的测量指标时

a4c26d1e5885305701be709a3d33442f.png

把一幅图像分成4份,计算每一份图像的最大灰度值与最小灰度值的差,

如果差在误差范围值外,则该份图像继续分裂。

未需分割的图像即可进行阈值切割;举个例子来说:如果某一块图像的最大灰度超过某个设定值,则这一块会被设定为255;否则设为0。

全部评论 (0)

还没有任何评论哟~