1. 传统依赖边界的active contour 算法
传统的levelset方法依赖于图像边界的梯度,需要引入一个单调递减函数edge-detector g(z)g(z)g(z)定义levelset方法的迭代速度。
st:limz→∞g(z)=0st: \lim\limits_{z\rarr \infty} g(z) = 0st:z→∞limg(z)=0
例如:g(∇u0(x,y))=11+∣∇Gσ∗u0(x,y)∣pg(\nabla u_0(x, y)) = \frac{1}{1 + |\nabla G_{\sigma}*u_0(x, y)|^p}g(∇u0(x,y))=1+∣∇Gσ∗u0(x,y)∣p1
u0(x,y)=zu_0(x, y) = zu0(x,y)=z
原图像看作曲面Σ(x,y,u0(x,y))=0\Sigma(x, y, u_0(x, y)) = 0Σ(x,y,u0(x,y))=0
level set方法定义了一系列等高线
ϕ(x,y)=ci\phi(x, y) = c_iϕ(x,y)=ci
我们不妨用曲线CCC:ϕ(x,y)=0\phi(x, y) = 0ϕ(x,y)=0作为初始曲线,在根据需要对进行迭代
此时曲线CtiC_{t_{i}}Cti :ϕ(ti,x,y)=0\phi(t_i, x, y) = 0ϕ(ti,x,y)=0在迭代的过程中不断向图像的边界逼近,最后稳定下来即得到边界。
Remark: ϕ(t,x,y)\phi(t, x, y)ϕ(t,x,y)其中ϕ(0,x,y)=ϕ0(x,y)\phi(0, x, y) = \phi_0(x, y)ϕ(0,x,y)=ϕ0(x,y),根据定义的∂ϕ∂t=V∣∇ϕ∣\frac{\partial\phi}{\partial t} = V |\nabla\phi|∂t∂ϕ=V∣∇ϕ∣利用迭代法求解PDE
level set方法有以下结论:
单位切向量TTT,n=−∇ϕ∣∇ϕ∣n = -\frac{\nabla\phi}{|\nabla\phi|}n=−∣∇ϕ∣∇ϕ , ϕ(x,y)=c\phi(x, y) = cϕ(x,y)=c确定曲线C(x,y)C(x, y)C(x,y)
- n⊥Tn \perp Tn⊥T
证明:由IFT(隐函数定理)
ϕ(x,y)−c=0\phi(x, y) - c = 0ϕ(x,y)