从拓扑优化中了解到>水平集法
发现这个方法也可以用在图像分割领域,或者其他的界面跟踪领域,因之前了解过图像分割的其他算法,对这个比较感兴趣,就想先搞明白水平集具体如何追踪图像
用自己简单通俗的理解来解释记录一下
曲线上的每个点的运动,只有朝着法线方向才能进行演化,切线方向不改变曲线形状
但是将曲线的变化看作曲线上每个点的变化会造成点的位置不确定,或者重合
寻找新的方案,可以将曲线看作更高维图形被某个平面的所截下来的那部分点集,如2D->3D,在z=0时与x、y轴相切的点集,那么曲线的演化就可以看所某个高维曲面在z=0的点集演化,重点变成研究曲面的变化
对于二维边曲线中每个点的变化可以写为
也可以写为
我的理解,加了t,就相当于升维,这个
可以看作曲线随时间变化的函数,同样也可以看作一个曲面,而这个曲面
在z轴截下来的点集就是我们需要研究的曲线
。(这里可能有点抽象)
接下来研究这个曲面
的演变就行了
这是我从别人论文里偷的图,这个曲面 不断的向下演变远离平面,曲线 也随之演变。
水平集就是曲面
就是t时刻在z轴截下来曲线的点集,这个点集即
以低维的举例,
同时对t求偏导
链式求导
这称为点集的运动方程
就是
,
就是x方向运动速度,由表面法向量给定,就是
运动方程变为
,F是速度函数,具体根据应用来确定
给定
,通过运动方程就可以得到
,而
就是我们要的曲线
对于曲面的表面曲率有
曲率用来曲线平滑度
对于图像来说, 就x,y点的像素
由有限差分法估计
运动方程写作
从而获取曲面的更新可以写为
为了使水平集扩展,利用高曲率使得运动反向
后续应该就是不断得到更新曲面,进而得到更新的曲线,直到达到某个收敛条件结束,获取到图像轮廓(我猜的)