chan vess segmentation


sign illustration

  • f : denote the given grayscale image, f(x),x is point

  • t : iteration t's border matrix, binary bool ?, describe as iteration th 's edge result, is closed curve mask

  • ε : Heaviside regularization,custom params, = 1

  • x : pixel/position in image,2D

  • φ : level set function, φ(i,j),φi,j : φ value at point(i,j)

  • C : an edge set curve

    image

    Boundary C represented as the zero level set of implicit function φ(x, y)1

  • H : Heaviside function, for caculate energy function

  • Hε(t,p) : regularised heavyside function, is matrix , size same to image,∈[0,1]

    for example: if border mark 1, unkown area mark 0, that trans to 1 and 0.5

  • operator illustration: : sum for all H matrix value —— np.sum(H), is a scale value

  • cinner couter : the optimal values c1 and c2

  • u : piecewise-smooth function

  • The third and fourth terms penalize discrepancy between the piecewise constant model u and the input image f.

  • divergence 散度计算:

    1
    2
    3
    4
    5
    def div(fx,fy):
    # 图像的散度对某幅图像连续求2次梯度得到的zx_x和zy_y的和是等于散度的。换句话说div(z) = zx_x +zy_yd
    Fyy,fyx=np.grad(fy)
    Fxy,fxx=np.grad(fx)
    return fxx+fyy
  • discretize the curvature 曲率计算 :

1
2
3
4
5
6
7
 
def curvature(f):
fy,fx=grad(f)
Norm=np.sqrt(fx**2+fy**2)
Nx=fx/(Norm+1e-8)
Ny=fy/(Norm+1e-8)
return div(Nx,Ny)

img
  • x+ denotes forward difference in the x dimension : f(x+1)-f(x)

    x denotes backward difference : f(x)-f(x-1)

    x0 =(∇x+ + ∇x)/2 is central difference : (f(x+1)-f(x-1))/2

    process step

  • φ update function:

    φ value at point(i,j) φi,j

    length penalty μ =0.2,

    area penalty ν = 0,

    time step dt = 0.5,

    convergence tolerance tol = 10e−3

  • algorithm

    image-20220411145745250

Reference


  1. Deep Learning of Unified Region, Edge, and Contour Models for Automated Image Segmentation↩︎