Flux Diffusion in ITK (Karl Krissian)
Contents
Implementing the flux diffusion in ITK
the current vtk implementation is in the slicer CVS
Current anisotropic diffusion in ITK
The current anisotropic diffusion implemented in ITK are:
- the Perona and Malik equation
- the curvature diffusion
They are both scalar anisotropic diffusion, without data attachment, and running on an explicit numerical scheme.
Flux diffusion equation
The Flux diffusion is a matrix flux diffusion:
where u(t) is the evolving image, u0 = u(0) is the initial image, β is a data attachment coefficient and M is the diffusion matrix.
In the case of the flux diffusion, we re-write the vector field
in the basis of the gradient and the principal curvature directions of the smoothed image (in 3D):
with (e0,e1,e2) corresponding respectively to the smooth gradient, minimal and maximal curvature directions.
Numerical Scheme
We use a Jacobi or a Gauss-Seidel scheme, where the filtered image is the solution of an equation of the form
- N'v = 0,
v is a vector representing the image and N is a nxn matrix, n being the total number of voxels. the diagonal part of N is detached from N:
- N = P + D,
and the Jacobi numerical scheme consists in iterating
- vn + 1 = - D - 1P'vn.