Class GeodesicReconstruction3DHybrid0Gray8

java.lang.Object
inra.ijpb.algo.AlgoStub
inra.ijpb.morphology.geodrec.GeodesicReconstruction3DAlgoStub
inra.ijpb.morphology.geodrec.GeodesicReconstruction3DHybrid0Gray8
All Implemented Interfaces:
Algo, GeodesicReconstruction3DAlgo

public class GeodesicReconstruction3DHybrid0Gray8
extends GeodesicReconstruction3DAlgoStub

Geodesic reconstruction for 3D stacks of bytes, using hybrid algorithm. This class manages both reconstructions by dilation and erosion.

This version first performs forward scan, then performs a backward scan that also add lower-right neighbors to the queue, and finally processes voxels in the queue. It is intended to work on 8 bits 3D images, using 6 or 26 adjacencies.

For efficiency, the stack of ByteProcessor objects corresponding to the image is stored internally as byte arrays, thus avoiding conversion induced by the ImageStack object.

Author:
David Legland
See Also:
GeodesicReconstruction3DHybrid0Gray16, GeodesicReconstruction3DHybrid0Float
  • Constructor Details

    • GeodesicReconstruction3DHybrid0Gray8

      public GeodesicReconstruction3DHybrid0Gray8()
      Creates a new instance of geodesic reconstruction by dilation algorithm, using the default connectivity 6.
    • GeodesicReconstruction3DHybrid0Gray8

      public GeodesicReconstruction3DHybrid0Gray8​(GeodesicReconstructionType type)
      Creates a new instance of geodesic reconstruction by dilation algorithm, that specifies the type of reconstruction, and using the connectivity 6.
      Parameters:
      type - the type of reconstruction (erosion or dilation)
    • GeodesicReconstruction3DHybrid0Gray8

      public GeodesicReconstruction3DHybrid0Gray8​(GeodesicReconstructionType type, int connectivity)
      Creates a new instance of geodesic reconstruction by dilation algorithm, that specifies the type of reconstruction, and the connectivity to use.
      Parameters:
      type - the type of reconstruction (erosion or dilation)
      connectivity - the 3D connectivity to use (either 6 or 26)
    • GeodesicReconstruction3DHybrid0Gray8

      public GeodesicReconstruction3DHybrid0Gray8​(int connectivity)
      Creates a new instance of geodesic reconstruction by dilation algorithm, that specifies the connectivity to use.
      Parameters:
      connectivity - the 3D connectivity to use (either 6 or 26)
  • Method Details

    • getReconstructionType

      public GeodesicReconstructionType getReconstructionType()
      Returns:
      the reconstructionType
    • setReconstructionType

      public void setReconstructionType​(GeodesicReconstructionType reconstructionType)
      Parameters:
      reconstructionType - the reconstructionType to set
    • applyTo

      public ij.ImageStack applyTo​(ij.ImageStack marker, ij.ImageStack mask)
      Run the reconstruction by dilation algorithm using the images specified as argument.
      Parameters:
      marker - image used to initialize the reconstruction
      mask - image used to constrain the reconstruction
      Returns:
      the geodesic reconstruction of marker image constrained by mask image
    • applyTo

      public ij.ImageStack applyTo​(ij.ImageStack marker, ij.ImageStack mask, ij.ImageStack binaryMask)
      Run the reconstruction by dilation algorithm using the images specified as argument.
      Parameters:
      marker - image used to initialize the reconstruction
      mask - image used to constrain the reconstruction
      binaryMask - binary mask to restrict the region of application
      Returns:
      the geodesic reconstruction of marker image constrained by mask image