分水岭计算步骤:
1、设待分割图象为f(x,y),其梯度图象为g(x,y)
2、用M1, M2, …, MR表示g(x, y)中各局部极小值的象素,位置,C(Mi)为与Mi对应的区域中的象素坐标集合
3、用n表示当前灰度阈值,T[n]代表记为(u,v)的象素集合,g(u,v)<n,
4、对Mi所在的区域,其中满足条件的坐标集合Cn(Mi)可看作一幅二值图象
令 S 代表T[n]中的连通组元集合,对每个连通组元 ,s∈S[n],有3种可能性:
(1) S ∩ C[ 1]是1个空集
(2) s ∩ C[n – 1]里包含C[n – 1]中的一个连通组元
(3) s ∩ C[n – 1]里包含C[n – 1]中一个以上的连通组元
分别处理:
(1) C[n]可由把连通组元 s 加到C[n – 1]中得到
(2) C[n]可由把连通组元 s 加到C[n – 1]中得到
(3) 需要在 s 中建分水岭
算法改进与扩展:
1、利用标号控制分割,防止过分割,或者由于纹理等原因造成分割过细。
2、强制最小值技术
3、基于彩色图片的分水岭分割。
分水岭算法对于颗粒状物体有良好的分割效果。
容易产生gu