Class ThresholdMaximumConnectedComponentsImageFilter
java.lang.Object
org.itk.simple.ProcessObject
org.itk.simple.ImageFilter
org.itk.simple.ThresholdMaximumConnectedComponentsImageFilter
Finds the threshold value of an image based on maximizing the number
of objects in the image that are larger than a given minimal size.
This method is based on Topological Stable State Thresholding to
calculate the threshold set point. This method is particularly
effective when there are a large number of objects in a microscopy
image. Compiling in Debug mode and enable the debug flag for this
filter to print debug information to see how the filter focuses in on
a threshold value. Please see the Insight Journal's MICCAI 2005
workshop for a complete description. References are below.
Parameters
The MinimumObjectSizeInPixels parameter is controlled through the
class Get/SetMinimumObjectSizeInPixels() method. Similar to the
standard itk::BinaryThresholdImageFilter the Get/SetInside and Get/SetOutside values of the threshold can be
set. The GetNumberOfObjects() and GetThresholdValue() methods return
the number of objects above the minimum pixel size and the calculated
threshold value.
Automatic Thresholding in ITK
There are multiple methods to automatically calculate the threshold
intensity value of an image. As of version 4.0, ITK has a Thresholding
( ITKThresholding ) module which contains numerous automatic
thresholding methods.implements two of these. Topological Stable State
Thresholding works well on images with a large number of objects to be
counted.
References:
1) Urish KL, August J, Huard J. "Unsupervised segmentation for
myofiber counting in immunofluorescent microscopy images". Insight
Journal. ISC/NA-MIC/MICCAI Workshop on Open-Source Software (2005) https://doi.org/10.54294/h1vbsl 2) Pikaz A, Averbuch, A. "Digital image thresholding based on
topological stable-state". Pattern Recognition, 29(5): 829-843, 1996.
Questions: email Ken Urish at ken.urish(at)gmail.com Please cc the itk
list serve for archival purposes.
See:
 itk::simple::ThresholdMaximumConnectedComponents for the procedural interface
 itk::ThresholdMaximumConnectedComponentsImageFilter for the Doxygen on the original ITK class.
C++ includes: sitkThresholdMaximumConnectedComponentsImageFilter.h
- 
Field SummaryFields inherited from class org.itk.simple.ProcessObjectswigCMemOwn
- 
Constructor SummaryConstructorsModifierConstructorDescriptionitk::simple::ThresholdMaximumConnectedComponentsImageFilter::ThresholdMaximumConnectedComponentsImageFilter() Default Constructor that takes no arguments and initializes default parametersprotectedThresholdMaximumConnectedComponentsImageFilter(long cPtr, boolean cMemoryOwn) 
- 
Method SummaryModifier and TypeMethodDescriptionvoiddelete()virtual itk::simple::ThresholdMaximumConnectedComponentsImageFilter::~ThresholdMaximumConnectedComponentsImageFilter() DestructorImage itk::simple::ThresholdMaximumConnectedComponentsImageFilter::Execute(const Image &image1) Execute the filter on the input imageprotected voidfinalize()protected static longshortuint8_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetInsideValue() const The following Set/Get methods are for the binary threshold function.longuint32_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetMinimumObjectSizeInPixels() const The pixel type must support comparison operators.getName()std::string itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetName() const Name of this classshortuint8_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetOutsideValue() const The following Set/Get methods are for the binary threshold function.doubledouble itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetUpperBoundary() const The following Set/Get methods are for the binary threshold function.voidsetInsideValue(short InsideValue) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetInsideValue(uint8_t InsideValue) The following Set/Get methods are for the binary threshold function.voidsetMinimumObjectSizeInPixels(long MinimumObjectSizeInPixels) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetMinimumObjectSizeInPixels(uint32_t MinimumObjectSizeInPixels) The pixel type must support comparison operators.voidsetOutsideValue(short OutsideValue) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetOutsideValue(uint8_t OutsideValue) The following Set/Get methods are for the binary threshold function.voidsetUpperBoundary(double UpperBoundary) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetUpperBoundary(double UpperBoundary) The following Set/Get methods are for the binary threshold function.protected static longtoString()std::string itk::simple::ThresholdMaximumConnectedComponentsImageFilter::ToString() const Print ourselves outMethods inherited from class org.itk.simple.ImageFiltergetCPtr, swigReleaseMethods inherited from class org.itk.simple.ProcessObjectabort, addCommand, debugOff, debugOn, getCPtr, getDebug, getGlobalDefaultCoordinateTolerance, getGlobalDefaultDebug, getGlobalDefaultDirectionTolerance, getGlobalDefaultNumberOfThreads, getGlobalDefaultThreader, getGlobalWarningDisplay, getNumberOfThreads, getNumberOfWorkUnits, getProgress, globalDefaultDebugOff, globalDefaultDebugOn, globalWarningDisplayOff, globalWarningDisplayOn, hasCommand, removeAllCommands, setDebug, setGlobalDefaultCoordinateTolerance, setGlobalDefaultDebug, setGlobalDefaultDirectionTolerance, setGlobalDefaultNumberOfThreads, setGlobalDefaultThreader, setGlobalWarningDisplay, setNumberOfThreads, setNumberOfWorkUnits, swigRelease
- 
Constructor Details- 
ThresholdMaximumConnectedComponentsImageFilterprotected ThresholdMaximumConnectedComponentsImageFilter(long cPtr, boolean cMemoryOwn) 
- 
ThresholdMaximumConnectedComponentsImageFilterpublic ThresholdMaximumConnectedComponentsImageFilter()itk::simple::ThresholdMaximumConnectedComponentsImageFilter::ThresholdMaximumConnectedComponentsImageFilter() Default Constructor that takes no arguments and initializes default parameters
 
- 
- 
Method Details- 
getCPtr
- 
swigRelease
- 
finalizeprotected void finalize()- Overrides:
- finalizein class- ImageFilter
 
- 
deletepublic void delete()virtual itk::simple::ThresholdMaximumConnectedComponentsImageFilter::~ThresholdMaximumConnectedComponentsImageFilter() Destructor- Overrides:
- deletein class- ImageFilter
 
- 
setMinimumObjectSizeInPixelspublic void setMinimumObjectSizeInPixels(long MinimumObjectSizeInPixels) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetMinimumObjectSizeInPixels(uint32_t MinimumObjectSizeInPixels) The pixel type must support comparison operators. Set the minimum pixel area used to count objects on the image. Thus, only objects that have a pixel area greater than the minimum pixel area will be counted as an object in the optimization portion of this filter. Essentially, it eliminates noise from being counted as an object. The default value is zero.
- 
getMinimumObjectSizeInPixelspublic long getMinimumObjectSizeInPixels()uint32_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetMinimumObjectSizeInPixels() const The pixel type must support comparison operators. Set the minimum pixel area used to count objects on the image. Thus, only objects that have a pixel area greater than the minimum pixel area will be counted as an object in the optimization portion of this filter. Essentially, it eliminates noise from being counted as an object. The default value is zero.
- 
setUpperBoundarypublic void setUpperBoundary(double UpperBoundary) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetUpperBoundary(double UpperBoundary) The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
getUpperBoundarypublic double getUpperBoundary()double itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetUpperBoundary() const The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
setInsideValuepublic void setInsideValue(short InsideValue) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetInsideValue(uint8_t InsideValue) The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
getInsideValuepublic short getInsideValue()uint8_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetInsideValue() const The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
setOutsideValuepublic void setOutsideValue(short OutsideValue) Self& itk::simple::ThresholdMaximumConnectedComponentsImageFilter::SetOutsideValue(uint8_t OutsideValue) The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
getOutsideValuepublic short getOutsideValue()uint8_t itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetOutsideValue() const The following Set/Get methods are for the binary threshold function. This class automatically calculates the lower threshold boundary. The upper threshold boundary, inside value, and outside value can be defined by the user, however the standard values are used as default if not set by the user. The default value of the: Inside value is the maximum pixel type intensity. Outside value is the minimum pixel type intensity. Upper threshold boundary is the maximum pixel type intensity.
- 
getNamestd::string itk::simple::ThresholdMaximumConnectedComponentsImageFilter::GetName() const Name of this class- Overrides:
- getNamein class- ProcessObject
 
- 
toStringstd::string itk::simple::ThresholdMaximumConnectedComponentsImageFilter::ToString() const Print ourselves out- Overrides:
- toStringin class- ProcessObject
 
- 
execute
 
-