主动轮廓模型-水平集方法

     本文希望通过用一种通俗形象的方式去理解水平集方法,说法可能并不严谨,由于水平有限,仅仅是个人对水平集方法的理解,如有错误,望指出!所谓的水平集方法,在2维图像分割中通俗的说法就是:用3维空间内的平面的曲面演化去实现2维平面中曲线的演化。曲线演化可参考:http://blog.csdn.net/zouxy09/article/details/8712287其中还讲了参数主动轮廓模型snake模型。本文讲述水平集方法属于几何主动轮廓模型。

    水平集方法是如何达到分割图像的目的的呢?

       如上图所示,初始曲线通过迭代不断的向边缘靠近,最终将图像分割出来。在参数主动轮廓模型中,曲线的演化是通过最小化能量函数来实现最终分割的,而水平集方法则是将曲线嵌入到一个3维的曲面中的0水平集中,通过演化3维空间中的曲面,再从演化后的曲面中获取0水平集,这个0水平集就是演化后的曲线。

      那么,这个曲面应该如何构建?换一种说法就是对于曲线C如何构建对应的水平集φ。假设二维平面上的曲线由 y = f ( x)表示,该关系也可用隐函数 y − f ( x) = 0来描述,此时若设:

φ ( x , y ) = y − f ( x)        式(1)

则 φ ( x , y) = 0就是曲线的隐式表达式。如图:

 

对于φ ( x , y)的构建,一般采用符号距离函数,即

式(2)

其中d[(x,y),C]是点(x,y)到曲线C的欧几里得距离。这样,就可以获得一个包含所需曲线的曲面的,剩下的就是如何演化这个曲面了。曲面的演化是水平集方法的关键,大致可分为两种类型,一种是基于图像边缘梯度信息的,一种是基于区域特征的。两种方式其实只是对曲面演化的速度方程的构建方式不同。即方程:

式(3)

中V(k)的构建。

水平集方法的基本流程:

1,初始化水平集函数φ ( x , y);

2,根据式(3)的演化方程演化曲线;

3,迭代一定的次数,提取0水平集,看是否已经收敛,如不收敛回到第一步。


 

  • 9
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这些方法都是图像分割领域常用的算法,下面是它们的效果和优缺点的简单介绍: 1. 主动轮廓模型(Active Contour Model):该方法是使用曲线来分割图像,曲线会根据图像的灰度变化进行调整。主动轮廓模型可以适应不同的图像形状,但对于图像中存在的弱纹理和噪声等因素容易产生较大的影响。 2. 水平集Level Set):水平集方法是一种能够自动追踪曲线形变的方法,它可以在图像中自动分割出像素区域。该方法对于噪声和弱纹理的干扰具有一定的鲁棒性,但是需要设定一些参数,且计算量较大。 3. 图切割(Graph Cut):图切割方法是将图像分割看成是一个图的最小割问题。该方法在处理图像分割的同时也可以进行图像修复等工作,但对于图像中存在的弱纹理和噪声等因素容易产生较大的影响。 4. 区域生长(Region Growing):区域生长方法是基于像素相似性的一种分割方法,它通过分析像素之间的相似性来进行区域的生长。该方法对于图像中存在的弱纹理和噪声等因素较为敏感,且误差累积较大。 5. K均值聚类(K-means):K均值聚类是一种将像素进行聚类的方法,它可以将像素分成多个不同的类别。该方法计算简便,但对于图像中存在的弱纹理和噪声等因素容易产生较大的影响,并且对于图像的处理效果与预设的聚类数量有关。 总的来说,这些方法各有优缺点,需要根据具体的问题和应用场景进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值