Flux Diffusion in ITK (Karl Krissian)
From NAMIC
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.
