8.4.3 分水岭算法及其代码实现

更新于 2026年10月10日 版权声明
8.4.3 分水岭算法及其代码实现

分水岭分割的主要优点是对图像的变化高度敏感,可以提取出图像中目标区域的封闭面,或者连通区域的边界。在实际应用中,如果直接使用分水岭算法对图像进行分割,会受到图像中噪声与目标本身的细节纹理的影响,导致图像出现过分割(over-segmentation)。从算法过程方面来说,是由于梯度噪声、目标本身的细节纹理和量化误差等的影响,均匀的目标内部会产生很多局部的“山峰”和“山谷”,分水岭分割的结果就会在目标内部出现很多“伪”边界,造成过度分割,使得正确的边界被大量不相关的边界淹没,如图8.34所示。

图示

图8.34 分水岭分割结果图

(a)原始图像;(b)直接分水岭分割;(c)平滑处理后的分水岭分割(https://www.daowen.com)

从图中的分割结果可知,直接使用分水岭分割图像出现的过分割现象非常严重,分割结果无法满足实际需要。针对这个问题学者们提出了很多改进方法,主要从三个方向对分水岭算法提出改进:

(1)使用滤波方法对图像进行平滑预处理,消除图像中的细节与噪声干扰来减少过分割,这种方法容易使图像变得模糊,而且效果不太明显。

(2)在处理过程中,通过控制标记种子点数量的方法来消除过度分割,这种方法能有效地防止过分割的现象,但对标记的提取没有固定的方法,一般需要事先具有足够关于图像目标的先验知识。

(3)在后期处理中,通过对分水岭分割的区域进行合并的方法来减少过分割现象,这种方法可以将过分割区域有效地合并在一起,但由于分割所得的区域数目过大,合并过程的计算量往往很大,寻找最优的合并准则也是难点。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)