ITK
4.13.0
Insight Segmentation and Registration Toolkit
|
#include <itkRobustAutomaticThresholdImageFilter.h>
Threshold an image using robust automatic threshold selection (RATS) method.
RobustAutomaticThresholdImageFilter takes two inputs: the image to be thresholded and a image of gradient magnitude of that image. The threshold is computed as the mean of the pixel values in the input image weighted by the pixel values in the gradient image. The threshold computed that way should be the mean pixel value where the intensity change the most.
This code was contributed in the Insight Journal paper: "Robust Automatic Threshold Selection" by Lehmann G. https://hdl.handle.net/1926/370 http://www.insight-journal.org/browse/publication/134
Definition at line 51 of file itkRobustAutomaticThresholdImageFilter.h.
Public Types | |
typedef RobustAutomaticThresholdCalculator < TInputImage, TGradientImage > | CalculatorType |
typedef SmartPointer< const Self > | ConstPointer |
typedef TGradientImage::Pointer | GradientImagePointer |
typedef TGradientImage | GradientImageType |
typedef TGradientImage::PixelType | GradientPixelType |
typedef TInputImage::Pointer | InputImagePointer |
typedef TInputImage::RegionType | InputImageRegionType |
typedef TInputImage | InputImageType |
typedef TInputImage::IndexType | InputIndexType |
typedef TInputImage::PixelType | InputPixelType |
typedef TInputImage::SizeType | InputSizeType |
typedef TOutputImage::Pointer | OutputImagePointer |
typedef TOutputImage::RegionType | OutputImageRegionType |
typedef TOutputImage::IndexType | OutputIndexType |
typedef TOutputImage::PixelType | OutputPixelType |
typedef TOutputImage::SizeType | OutputSizeType |
typedef SmartPointer< Self > | Pointer |
typedef RobustAutomaticThresholdImageFilter | Self |
typedef ImageToImageFilter < TInputImage, TOutputImage > | Superclass |
Public Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef InputImageType::ConstPointer | InputImageConstPointer |
typedef InputImageType::PixelType | InputImagePixelType |
typedef InputImageType::Pointer | InputImagePointer |
typedef InputImageType::RegionType | InputImageRegionType |
typedef TInputImage | InputImageType |
typedef Superclass::OutputImagePixelType | OutputImagePixelType |
typedef Superclass::OutputImageRegionType | OutputImageRegionType |
typedef SmartPointer< Self > | Pointer |
typedef ImageToImageFilter | Self |
typedef ImageSource< TOutputImage > | Superclass |
Public Types inherited from itk::ImageSource< TOutputImage > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::DataObjectIdentifierType | DataObjectIdentifierType |
typedef DataObject::Pointer | DataObjectPointer |
typedef Superclass::DataObjectPointerArraySizeType | DataObjectPointerArraySizeType |
typedef OutputImageType::PixelType | OutputImagePixelType |
typedef OutputImageType::Pointer | OutputImagePointer |
typedef OutputImageType::RegionType | OutputImageRegionType |
typedef TOutputImage | OutputImageType |
typedef SmartPointer< Self > | Pointer |
typedef ImageSource | Self |
typedef ProcessObject | Superclass |
Public Types inherited from itk::ProcessObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef DataObject::DataObjectIdentifierType | DataObjectIdentifierType |
typedef DataObject::Pointer | DataObjectPointer |
typedef std::vector < DataObjectPointer > | DataObjectPointerArray |
typedef DataObjectPointerArray::size_type | DataObjectPointerArraySizeType |
typedef MultiThreader | MultiThreaderType |
typedef std::vector < DataObjectIdentifierType > | NameArray |
typedef SmartPointer< Self > | Pointer |
typedef ProcessObject | Self |
typedef Object | Superclass |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Attributes | |
OutputPixelType | m_InsideValue |
OutputPixelType | m_OutsideValue |
double | m_Pow |
InputPixelType | m_Threshold |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(OutputImageDimension), itkGetStaticConstMacro(InputImageDimension) > | InputToOutputRegionCopierType |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > | OutputToInputRegionCopierType |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
typedef RobustAutomaticThresholdCalculator< TInputImage, TGradientImage > itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::CalculatorType |
Definition at line 89 of file itkRobustAutomaticThresholdImageFilter.h.
typedef SmartPointer< const Self > itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::ConstPointer |
Definition at line 59 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TGradientImage::Pointer itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::GradientImagePointer |
Definition at line 79 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TGradientImage itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::GradientImageType |
Definition at line 69 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TGradientImage::PixelType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::GradientPixelType |
Definition at line 74 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage::Pointer itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputImagePointer |
Image related typedefs.
Definition at line 77 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage::RegionType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputImageRegionType |
Definition at line 83 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputImageType |
Standard image type within this class.
Definition at line 65 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage::IndexType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputIndexType |
Definition at line 82 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage::PixelType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputPixelType |
Image pixel value typedef.
Definition at line 72 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TInputImage::SizeType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::InputSizeType |
Definition at line 81 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TOutputImage::Pointer itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::OutputImagePointer |
Definition at line 78 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TOutputImage::RegionType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::OutputImageRegionType |
Definition at line 86 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TOutputImage::IndexType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::OutputIndexType |
Definition at line 85 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TOutputImage::PixelType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::OutputPixelType |
Definition at line 73 of file itkRobustAutomaticThresholdImageFilter.h.
typedef TOutputImage::SizeType itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::OutputSizeType |
Definition at line 84 of file itkRobustAutomaticThresholdImageFilter.h.
typedef SmartPointer< Self > itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::Pointer |
Definition at line 58 of file itkRobustAutomaticThresholdImageFilter.h.
typedef RobustAutomaticThresholdImageFilter itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::Self |
Standard Self typedef
Definition at line 56 of file itkRobustAutomaticThresholdImageFilter.h.
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::RobustAutomaticThresholdImageFilter< TInputImage, TGradientImage, TOutputImage >::Superclass |
Definition at line 57 of file itkRobustAutomaticThresholdImageFilter.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 154 of file itkRobustAutomaticThresholdImageFilter.h.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
overrideprotectedvirtual |
What is the input requested region that is required to produce the output requested region? The base assumption for image processing filters is that the input requested region can be set to match the output requested region. If a filter requires more input (for instance a filter that uses neighborhoods needs more input than output to avoid introducing artificial boundary conditions) or less input (for instance a magnify filter) will have to override this method. In doing so, it should call its superclass' implementation as its first step. Note that imaging filters operate differently than the classes to this point in the class hierarchy. Up till now, the base assumption has been that the largest possible region will be requested of the input.
This implementation of GenerateInputRequestedRegion() only processes the inputs that are a subclass of the ImageBase<InputImageDimension>. If an input is another type of DataObject (including an Image of a different dimension), they are skipped by this method. The subclasses of ImageToImageFilter are responsible for providing an implementation of GenerateInputRequestedRegion() when there are multiple inputs of different types.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
inline |
Get the gradient image
Definition at line 135 of file itkRobustAutomaticThresholdImageFilter.h.
References itk::ProcessObject::GetInput().
|
virtual |
Get the "inside" pixel value.
|
virtual |
Runtime information support.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Get the "outside" pixel value.
|
virtual |
|
virtual |
Get the computed threshold.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
inline |
Set the gradient image
Definition at line 128 of file itkRobustAutomaticThresholdImageFilter.h.
|
inline |
Set the input image
Definition at line 141 of file itkRobustAutomaticThresholdImageFilter.h.
|
inline |
Set the gradient image
Definition at line 147 of file itkRobustAutomaticThresholdImageFilter.h.
|
virtual |
Set the "inside" pixel value. The default value NumericTraits<OutputPixelType>::max()
|
virtual |
Set the "outside" pixel value. The default value NumericTraits<OutputPixelType>::ZeroValue().
|
virtual |
|
static |
Image related typedefs.
Definition at line 93 of file itkRobustAutomaticThresholdImageFilter.h.
|
private |
Definition at line 166 of file itkRobustAutomaticThresholdImageFilter.h.
|
private |
Definition at line 167 of file itkRobustAutomaticThresholdImageFilter.h.
|
private |
Definition at line 162 of file itkRobustAutomaticThresholdImageFilter.h.
|
private |
Definition at line 165 of file itkRobustAutomaticThresholdImageFilter.h.
|
static |
Image related typedefs.
Definition at line 95 of file itkRobustAutomaticThresholdImageFilter.h.