Class DoubleThresholdImageFilter


public class DoubleThresholdImageFilter extends ImageFilter
Binarize an input image using double thresholding. Double threshold addresses the difficulty in selecting a threshold that will select the objects of interest without selecting extraneous objects. Double threshold considers two threshold ranges: a narrow range and a wide range (where the wide range encompasses the narrow range). If the wide range was used for a traditional threshold (where values inside the range map to the foreground and values outside the range map to the background), many extraneous pixels may survive the threshold operation. If the narrow range was used for a traditional threshold, then too few pixels may survive the threshold. Double threshold uses the narrow threshold image as a marker image and the wide threshold image as a mask image in the geodesic dilation. Essentially, the marker image (narrow threshold) is dilated but constrained to lie within the mask image (wide threshold). Thus, only the objects of interest (those pixels that survived the narrow threshold) are extracted but the those objects appear in the final image as they would have if the wide threshold was used. See: GrayscaleGeodesicDilateImageFilter MorphologyImageFilter , GrayscaleDilateImageFilter , GrayscaleFunctionDilateImageFilter , BinaryDilateImageFilter itk::simple::DoubleThreshold for the procedural interface itk::DoubleThresholdImageFilter for the Doxygen on the original ITK class. C++ includes: sitkDoubleThresholdImageFilter.h
  • Constructor Details

    • DoubleThresholdImageFilter

      protected DoubleThresholdImageFilter(long cPtr, boolean cMemoryOwn)
    • DoubleThresholdImageFilter

      public DoubleThresholdImageFilter()
      itk::simple::DoubleThresholdImageFilter::DoubleThresholdImageFilter() Default Constructor that takes no arguments and initializes default parameters
  • Method Details

    • getCPtr

      protected static long getCPtr(DoubleThresholdImageFilter obj)
    • swigRelease

      protected static long swigRelease(DoubleThresholdImageFilter obj)
    • finalize

      protected void finalize()
      Overrides:
      finalize in class ImageFilter
    • delete

      public void delete()
      virtual itk::simple::DoubleThresholdImageFilter::~DoubleThresholdImageFilter() Destructor
      Overrides:
      delete in class ImageFilter
    • setThreshold1

      public void setThreshold1(double Threshold1)
      Self& itk::simple::DoubleThresholdImageFilter::SetThreshold1(double Threshold1) Set the thresholds. Four thresholds should be specified. The two lower thresholds default to NumericTraits<InputPixelType>::NonpositiveMin() . The two upper thresholds default NumericTraits<InputPixelType>::max . Threshold1 <= Threshold2 <= Threshold3 <= Threshold4.
    • getThreshold1

      public double getThreshold1()
      double itk::simple::DoubleThresholdImageFilter::GetThreshold1() const Get the threshold values.
    • setThreshold2

      public void setThreshold2(double Threshold2)
      Self& itk::simple::DoubleThresholdImageFilter::SetThreshold2(double Threshold2) Set the thresholds. Four thresholds should be specified. The two lower thresholds default to NumericTraits<InputPixelType>::NonpositiveMin() . The two upper thresholds default NumericTraits<InputPixelType>::max . Threshold1 <= Threshold2 <= Threshold3 <= Threshold4.
    • getThreshold2

      public double getThreshold2()
      double itk::simple::DoubleThresholdImageFilter::GetThreshold2() const Get the threshold values.
    • setThreshold3

      public void setThreshold3(double Threshold3)
      Self& itk::simple::DoubleThresholdImageFilter::SetThreshold3(double Threshold3) Set the thresholds. Four thresholds should be specified. The two lower thresholds default to NumericTraits<InputPixelType>::NonpositiveMin() . The two upper thresholds default NumericTraits<InputPixelType>::max . Threshold1 <= Threshold2 <= Threshold3 <= Threshold4.
    • getThreshold3

      public double getThreshold3()
      double itk::simple::DoubleThresholdImageFilter::GetThreshold3() const Get the threshold values.
    • setThreshold4

      public void setThreshold4(double Threshold4)
      Self& itk::simple::DoubleThresholdImageFilter::SetThreshold4(double Threshold4) Set the thresholds. Four thresholds should be specified. The two lower thresholds default to NumericTraits<InputPixelType>::NonpositiveMin() . The two upper thresholds default NumericTraits<InputPixelType>::max . Threshold1 <= Threshold2 <= Threshold3 <= Threshold4.
    • getThreshold4

      public double getThreshold4()
      double itk::simple::DoubleThresholdImageFilter::GetThreshold4() const Get the threshold values.
    • setInsideValue

      public void setInsideValue(short InsideValue)
      Self& itk::simple::DoubleThresholdImageFilter::SetInsideValue(uint8_t InsideValue) Set the "inside" pixel value. The default value NumericTraits<OutputPixelType>::max()
    • getInsideValue

      public short getInsideValue()
      uint8_t itk::simple::DoubleThresholdImageFilter::GetInsideValue() const Get the "inside" pixel value.
    • setOutsideValue

      public void setOutsideValue(short OutsideValue)
      Self& itk::simple::DoubleThresholdImageFilter::SetOutsideValue(uint8_t OutsideValue) Set the "outside" pixel value. The default value NumericTraits<OutputPixelType>::ZeroValue() .
    • getOutsideValue

      public short getOutsideValue()
      uint8_t itk::simple::DoubleThresholdImageFilter::GetOutsideValue() const Get the "outside" pixel value.
    • setFullyConnected

      public void setFullyConnected(boolean FullyConnected)
      Self& itk::simple::DoubleThresholdImageFilter::SetFullyConnected(bool FullyConnected) Set/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
    • fullyConnectedOn

      public void fullyConnectedOn()
      Self& itk::simple::DoubleThresholdImageFilter::FullyConnectedOn() Set the value of FullyConnected to true or false respectfully.
    • fullyConnectedOff

      public void fullyConnectedOff()
      Self& itk::simple::DoubleThresholdImageFilter::FullyConnectedOff()
    • getFullyConnected

      public boolean getFullyConnected()
      bool itk::simple::DoubleThresholdImageFilter::GetFullyConnected() const Set/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
    • getName

      public String getName()
      std::string itk::simple::DoubleThresholdImageFilter::GetName() const Name of this class
      Overrides:
      getName in class ProcessObject
    • toString

      public String toString()
      std::string itk::simple::DoubleThresholdImageFilter::ToString() const Print ourselves out
      Overrides:
      toString in class ProcessObject
    • execute

      public Image execute(Image image1)
      Image itk::simple::DoubleThresholdImageFilter::Execute(const Image &image1) Execute the filter on the input image