Class ThresholderSimpleFillHoles2D
A thresholder that applies a simple intensity threshold and then fills holes in 2D.
This thresholder first applies an intensity threshold to create a binary image, and then uses ImageJ's "fill" morphological operation to fill holes in each 2D slice.
-
Constructor Summary
ConstructorsConstructorDescriptionThresholderSimpleFillHoles2D
(int minIntensity) Creates a newThresholderSimpleFillHoles2D
instance. -
Method Summary
Modifier and TypeMethodDescriptionint
The minimum intensity value for thresholding.void
setMinIntensity
(int minIntensity) The minimum intensity value for thresholding.threshold
(VoxelsUntyped inputBuffer, BinaryValuesByte binaryValues, Optional<Histogram> histogram, Optional<ObjectMask> objectMask) Thresholds voxels (across a range of values) so that they have only binary range (i.e. two voxel values representing on and off).Methods inherited from class org.anchoranalysis.image.bean.threshold.Thresholder
threshold, threshold
Methods inherited from class org.anchoranalysis.bean.NullParametersBean
initializeRecursive, onInitialization, onInitialization
Methods inherited from class org.anchoranalysis.bean.initializable.InitializableBean
getInitialization, getLogger, getPropertyInitializer, initialize, initializeRecursive, initRecursiveWithInitializer, isInitialized
Methods inherited from class org.anchoranalysis.bean.AnchorBean
checkMisconfigured, describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString
-
Constructor Details
-
ThresholderSimpleFillHoles2D
public ThresholderSimpleFillHoles2D() -
ThresholderSimpleFillHoles2D
public ThresholderSimpleFillHoles2D(int minIntensity) Creates a newThresholderSimpleFillHoles2D
instance.- Parameters:
minIntensity
- The minimum intensity value for thresholding.Voxels with intensity greater than or equal to this value are considered foreground.
-
-
Method Details
-
threshold
public BinaryVoxels<UnsignedByteBuffer> threshold(VoxelsUntyped inputBuffer, BinaryValuesByte binaryValues, Optional<Histogram> histogram, Optional<ObjectMask> objectMask) throws OperationFailedException Description copied from class:Thresholder
Thresholds voxels (across a range of values) so that they have only binary range (i.e. two voxel values representing on and off).If a mask is used, the voxels outside the object-mask are left unchanged. They will be either identical to the input-volume or 0 if a new buffer needs to be created.
- Specified by:
threshold
in classThresholder
- Parameters:
inputBuffer
- the voxels to be thresholded.binaryValues
- what binary values to be used in the output.histogram
- a histogram if it's available, which must exactly match the intensity-values ofvoxels
after any object-mask is applied. This exists for calculation efficiency.objectMask
- an object-mask to restrict thresholding to only some region(s) of the voxels.- Returns:
- a binary-channel as described above, which may possibly reuse the input voxel-buffers.
- Throws:
OperationFailedException
- if the thresholding operation cannot complete successfully.
-
getMinIntensity
public int getMinIntensity()The minimum intensity value for thresholding.Voxels with intensity greater than or equal to this value are considered foreground.
-
setMinIntensity
public void setMinIntensity(int minIntensity) The minimum intensity value for thresholding.Voxels with intensity greater than or equal to this value are considered foreground.
-