Package inra.ijpb.binary.geodesic
Class GeodesicDistanceTransformFloat
java.lang.Object
inra.ijpb.algo.AlgoStub
inra.ijpb.binary.geodesic.GeodesicDistanceTransformFloat
- All Implemented Interfaces:
Algo
,GeodesicDistanceTransform
public class GeodesicDistanceTransformFloat extends AlgoStub implements GeodesicDistanceTransform
Computation of Chamfer geodesic distances using floating point array for
storing result.
This implementation is based on iteration of forward-backward passes, until
idempotence. The "hybrid" implementation is usually more efficient for
complex images.
- Author:
- David Legland
- See Also:
GeodesicDistanceTransformFloatHybrid
,GeodesicDistanceTransformShort
-
Field Summary
Fields Modifier and Type Field Description static float
BACKGROUND
The value associated to the background in the result image.static float
MAX_DIST
The value used to initialize the distance map, corresponding to positive infinity. -
Constructor Summary
Constructors Constructor Description GeodesicDistanceTransformFloat(float[] weights)
Deprecated.GeodesicDistanceTransformFloat(float[] weights, boolean normalizeMap)
Deprecated.GeodesicDistanceTransformFloat(ChamferMask2D mask)
Creates a new algorithm for propagating geodesic distances.GeodesicDistanceTransformFloat(ChamferMask2D mask, boolean normalizeMap)
Creates a new algorithm for propagating geodesic distances. -
Method Summary
Modifier and Type Method Description ij.process.ImageProcessor
geodesicDistanceMap(ij.process.ImageProcessor marker, ij.process.ImageProcessor labelImage)
Computes the geodesic distance function for each pixel in mask label image, using the given binary marker image.Methods inherited from class inra.ijpb.algo.AlgoStub
addAlgoListener, removeAlgoListener
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface inra.ijpb.algo.Algo
addAlgoListener, removeAlgoListener
-
Field Details
-
MAX_DIST
public static final float MAX_DISTThe value used to initialize the distance map, corresponding to positive infinity.- See Also:
- Constant Field Values
-
BACKGROUND
public static final float BACKGROUNDThe value associated to the background in the result image.- See Also:
- Constant Field Values
-
-
Constructor Details
-
GeodesicDistanceTransformFloat
Creates a new algorithm for propagating geodesic distances.- Parameters:
mask
- the chamfer mask to use for propagating distances
-
GeodesicDistanceTransformFloat
Creates a new algorithm for propagating geodesic distances.- Parameters:
mask
- the chamfer mask to use for propagating distancesnormalizeMap
- the flag for normalization
-
GeodesicDistanceTransformFloat
@Deprecated public GeodesicDistanceTransformFloat(float[] weights)Deprecated.Creates a new algorithm.- Parameters:
weights
- the weights to use for propagating distances
-
GeodesicDistanceTransformFloat
@Deprecated public GeodesicDistanceTransformFloat(float[] weights, boolean normalizeMap)Deprecated.Creates a new algorithm.- Parameters:
weights
- the weights to use for propagating distancesnormalizeMap
- the flag for normalization
-
-
Method Details
-
geodesicDistanceMap
public ij.process.ImageProcessor geodesicDistanceMap(ij.process.ImageProcessor marker, ij.process.ImageProcessor labelImage)Computes the geodesic distance function for each pixel in mask label image, using the given binary marker image. Mask and marker should be ImageProcessor the same size and containing integer values. The function returns a new FloatProcessor the same size as the input, with values greater or equal to zero.- Specified by:
geodesicDistanceMap
in interfaceGeodesicDistanceTransform
- Parameters:
marker
- the binary marker imagelabelImage
- the label image used as mask- Returns:
- the geodesic distance map from the marker image within each label of the mask
- See Also:
GeodesicDistanceTransform.geodesicDistanceMap(ij.process.ImageProcessor, ij.process.ImageProcessor)
-