Class ThresholderGlobal


public class ThresholderGlobal extends Thresholder
Performs global thresholding.

This implies that the threshold-level is identical for every voxel.

The thresholding occurs inplace on the existing voxels i.e. a new buffer is not created.

An on voxel is placed in the buffer if voxel-value >= level or off otherwise.

Author:
Owen Feehan
  • Constructor Details

    • ThresholderGlobal

      public ThresholderGlobal()
    • ThresholderGlobal

      public ThresholderGlobal(CalculateLevel calculateLevel)
  • Method Details

    • threshold

      public BinaryVoxels<UnsignedByteBuffer> threshold(VoxelsUntyped inputBuffer, BinaryValuesByte bvOut, 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 class Thresholder
      Parameters:
      inputBuffer - the voxels to be thresholded.
      bvOut - what binary values to be used in the output.
      histogram - a histogram if it's available, which must exactly match the intensity-values of voxels 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.
    • getCalculateLevel

      public CalculateLevel getCalculateLevel()
    • setCalculateLevel

      public void setCalculateLevel(CalculateLevel calculateLevel)