电脑分区-独显是什么意思
![分水岭算法](/uploads/image/0603.jpg)
2023年4月3日发(作者:sd是什么)
图像分割——分⽔岭算法
分⽔岭图像分割算法借助地形学概念进⾏图像分割,近年来⼴泛使⽤。
1.基本原理和步骤
1)原理
分⽔岭⽅法将图像看作3-D的地形表⽰,即2-D的地基(对应图像空间)加上三维的⾼度(对应图像灰度)。
实际中建⽴不同⽬标间的分⽔岭的过程常借助涨⽔法(⽔从低上涨)来讨论。如图1所⽰
假设有⽔从各⾕底空涌出并且⽔位逐渐增⾼,如果两个相邻的⾕底(区域A和B)涌出的⽔位⾼过其间的峰间这些谁就会汇合。这个汇合的点就
是分⽔岭。
图1
由此可见,如果能确定分⽔岭的位置,就能将图像⽤⼀组各⾃封闭的曲线分割成不同的区域。
分⽔岭图像分割算法就是通过确定分⽔岭的位置来进⾏图像分割的。⼀般考虑到各区域内部像素的灰度⽐较接近,⽽相邻区域像素间的灰度
差距较⼤,可以先计算⼀幅图像的梯度图,再寻找梯度图的分⽔岭。
在梯度图中,⼩梯度值对应区域内部,⼤梯度值对应区域的边间,分⽔岭算法寻找⼤梯度值像素的位置,即边界位置。
2)借助数学形态学中的膨胀运算迭代计算分⽔岭的⽅法
2.1)设给定⼀幅待分割图像f(x,y),梯度图像g(x,y),分⽔岭的计算是在梯度图像上进⾏的。
2.2)⽤M1,M2,...,Mn表⽰各局部极⼩值的像素位置,C(Mi)为对应的Mi对应区域中像素坐标的集合⽤n代表当前的梯度阈值,
T[n]代表记为(u,v)的像素集合,g(u,v)
T[n]={(u,v)|g(u,v)
梯度阈值从图像梯度范围的最低值整数增加。当梯度阈值为n时,g(x,y)
对Mi所在的区域满⾜条件的坐标集合C(Mi)可看做⼀幅⼆值图像:Cn(Mi)=C(Mi)∩T[n],即同时在C(Mi)区域和T[n]区域的地⽅
Cn(Mi)=1,否则为0。
⽤C[M]代表所有梯度阈值为n时图像中所有满⾜梯度值⼩于n的像素集合:C[n]=∪Cn(Mi)i
灰度范围的最⼤值。
2.3)初始化C[min+1]=t[min+1],然后逐渐迭代进⾏。设在步骤n时,以建⽴C[n-1-1],下⾯考虑从C[n-1]得到C[n].
令S代表T[n]中连通组元的集合,每个连通组元s∈S[n]时,有三种情况:
2.3.1)s∩C[n-1]是空集--C[n]=s+C[n-1]
2.3.2)s∩C[n-1]包含C[n-1]中的⼀个连通组元--C[n]=s+C[n-1]
2.3.3)s∩C[n-1]包含C[n-1]中⼀个以上的组元--需要在s中建⽴分⽔岭,对s∩C[n-1]进⾏膨胀
2.实现
此实现⽤的是改进后的⽔平集⽅法,利⽤标号控制分割。
1)OpenCV源代码的解读
2)具体应⽤过程
参考⽂献:
2)章毓晋.图像⼯程:图像分析[M].清华⼤学出版社,2012.(⽂字部分来源)
更多推荐
分水岭算法
发布评论