Diffusion gradient vector field in 3D
Updated 6 Jan 2014
Generate the diffusion gradient vector field as in Xu and Prince 1998
dgvf_calc is the three dimensional extension of the 2D version described in Equation 12
Xu and Prince 1998,"Snakes, Shapes, and Gradient Vector Flow", IEEE Transactions on Image Processing Vol.7(3)
I: three dimensional image (matrix) (assumed normalized as in I = (I-min(I(:)))/(max(I(:))-min(I(:))));
miu: the smoothing parameter (more smoothing -- higher miu-- for noisy images)
niter: number of iterations
dt: time step
dx, dy,dz: pixel spacing, set all to one for isotropic images
un, vn, wn: the gradient vector field
[un vn wn] = dgvf_calc(I,sqrt(numel(I)), 0.5, 1, 1, 1, 1)
Note: The code was developed with 3d flourescence microscopy images in mind (bright objects against dark background). Enforcement of boundary conditions has been omitted for better performance in this case.
% Author: Dr.Khaled Khairy, Janelia Farm Research Campus, Howard Hughes Medical Institute.June 2011.
Please send corrections or comments to firstname.lastname@example.org
Khaled Khairy (2023). Diffusion gradient vector field in 3D (https://www.mathworks.com/matlabcentral/fileexchange/31994-diffusion-gradient-vector-field-in-3d), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.