GVF Snake 学习的分析总结

GVF snake shapes and gradient vector flow论文的辅助理解

1.snake

 由论文snake shapes and gradient vector flow上的公式(1)得

snake是动态轮廓提取算法。snake有两个力,外力和内力。内力是初始轮廓自身,而外力是来自图像本身。

 内力有两个控制: a,控制张力。β,控制刚性.(即,所谓的a控制连续性,平滑性。β引导曲线导向边界).

外力有四种情况:

对灰度图像:

Eext(x,y)=-|gradient [I(x,y)]|  (1),即,对灰度图像求梯度。

Eext(x,y)=-|gradient [gaussain*I(x,y)]|    (2),即,对灰度图像先利用高斯平滑去除noise,增强边界,然后求梯度。

注:因为梯度图的向量是由内向外,而外力应该是从外指向边界里面,所以要求负。

 对二值图像(因为二值图像的边界已经很明确,所以可以不必求梯度,直接用原图,或者高斯模糊处理)

Eext(x,y)= [I(x,y)] (3)

Eext(x,y)=gaussain*I(x,y)  (4)

因为初始轮廓的一个点想要取得确定的值,可以用Euler公式求:即论文中的公式(6)

由(6)可以得出,E=Fint+Fext 。 外力Fext为(1),(2),(3),(4)中的一个

如果想要逐步得到确定的点,可以在公式中添加一个时间控制变量。即公式(7)。当x(s,t)稳定,则公式(7)=0,即(7)满足(6)


2.Gradient Vector Flow

GVF是基于snake,符合能量平衡公式 E=Fint+Fext. 而把外力Fext变为向量V.注:只有这点与snake不同

 V(x,y)=[u(x,y), v(x,y)]

u(x,y)=公式(13a)

v(x,y) =公式(13b)


=================================

其他的还需看论文明白~今天先到这嘿嘿


测试了一个opencv的程序,确只拉向左上方,不知道为什么。而且速度较于MATLAB非常的慢


  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值