Package jhd.FloodFill
Contains methods for computing distance transforms in 2D and 3D images. Anisotropic image pixel/voxel dimensions are supported.
- Gray scale flooding.
- Computing the exact 2D and 3D Euclidean distance map (EDM) using Danielsson's algorithm.
Danielsson P.E. Euclidean distance mapping. Computer Graphics Image Processing, 14, 1980, pp. 227-248. - Drawing Euclidean spheres.
- Computing the 2D and 3D geodesic distance transform (GDT) by serial propagation.
- Finding the shortest path to a source point in a GDT mapped image
- Simulation of non-wetting invasion of random porous media using EDM and sphere drawing for resolved porosity, gray level flood for unresolved porosity and GDT for tortuosity of flooded path.
All calculations are done in-place, on the supplied image data.
-
Class Summary Class Description EuclideanSpheres Class for drawing Euclidean spheres scaled in image unitsEuclideanSpheres.RandomSphereParams Nested class to simplify random sphere draw arguments listEuclideanSpheres.SphereParams Nested class to simplify sphere draw arguments listExactEuclideanMap Functions for computing the exact 2D and 3D Euclidean distance using Danielsson's algorithm.FloodFill Class for simulation of non-wetting imbibition into random porous media with both resolved and unresolved porosityFloodFill.FloodParams Experimental data structure passed to Flood_FillFloodFill.FloodReport Data structure returned by hybridFloodFillFloodFill.FloodStats A data structure returned by hybridFloodFillFloodFill.PorosityReport A data structure returned by characterize and hybridFloodFillGDT3D Methods for 2D and 3D Geodesic transform and tortousityHybridFloodFill Class for simulation of non-wetting imbibition into random porous media with both resolved and unresolved porosityHybridFloodFill.FloodParams Experimental data structure passed to Flood_FillHybridFloodFill.FloodReport Data structure returned by hybridFloodFillHybridFloodFill.FloodStats A data structure returned by hybridFloodFillHybridFloodFill.PorosityReport A data structure returned by characterize and hybridFloodFillOffsets A class with static methods for working with voxel offsets Offsets are used to quickly access the indices of voxels touching a central voxel by simply adding the offset to the voxel's 1D, 2D or 3D index. Offsets arrays are in decreasing order of connectivity, in 3D Face touching(0-5), Edge touching (6-17)and finally Corner touching(17-25). The connectivity of a flood is determined by how far down the list one goes.Offsets.PointDesc Class for 2D and 3D pixel offset and value information