ITK
4.3.0
Insight Segmentation and Registration Toolkit
|
#include <itkHistogramThresholdImageFilter.h>
Threshold an image using a HistogramThresholdCalculator.
This filter creates a binary thresholded image that separates an image into foreground and background components. The filter computes the threshold using a user provided HistogramThresholdCalculator and applies that theshold to the input image using the BinaryThresholdImageFilter.
The filter also has the option of providing a mask, in which case the histogram and therefore the threshold is computed from the parts of the mask with values indicated by MaskValue. The output image is, by default, masked by the same image. This output masking can be disabled using SetMaskOutput(false). Note that there is an inconsistency here. The MaskImageFilter (used internally) masks by non zero values, where as the MaskedImageToHistogramFilter uses explicit values. If this doesn't match your usage then the output masking will need to be managed by the user.
This implementation was taken from the Insight Journal paper: http://hdl.handle.net/10380/3279 or http://www.insight-journal.org/browse/publication/811
Definition at line 60 of file itkHistogramThresholdImageFilter.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | InputImageDimension = InputImageType::ImageDimension |
static const unsigned int | OutputImageDimension = OutputImageType::ImageDimension |
static const unsigned int | MaskImageDimension = MaskImageType::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 |
Protected Attributes | |
bool | m_AutoMinimumMaximum |
CalculatorPointer | m_Calculator |
OutputPixelType | m_InsideValue |
bool | m_MaskOutput |
MaskPixelType | m_MaskValue |
unsigned | m_NumberOfHistogramBins |
OutputPixelType | m_OutsideValue |
InputPixelType | m_Threshold |
Private Member Functions | |
HistogramThresholdImageFilter (const Self &) | |
void | operator= (const Self &) |
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 ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
typedef CalculatorType::Pointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::CalculatorPointer |
Definition at line 110 of file itkHistogramThresholdImageFilter.h.
typedef HistogramThresholdCalculator<HistogramType, InputPixelType> itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::CalculatorType |
Definition at line 109 of file itkHistogramThresholdImageFilter.h.
typedef SmartPointer<const Self> itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::ConstPointer |
Definition at line 68 of file itkHistogramThresholdImageFilter.h.
typedef HistogramType::ConstPointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramConstPointer |
Definition at line 104 of file itkHistogramThresholdImageFilter.h.
typedef HistogramType::MeasurementType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramMeasurementType |
Definition at line 106 of file itkHistogramThresholdImageFilter.h.
typedef HistogramType::MeasurementVectorType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramMeasurementVectorType |
Definition at line 107 of file itkHistogramThresholdImageFilter.h.
typedef HistogramType::Pointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramPointer |
Definition at line 103 of file itkHistogramThresholdImageFilter.h.
typedef HistogramType::SizeType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramSizeType |
Definition at line 105 of file itkHistogramThresholdImageFilter.h.
typedef Statistics::Histogram< ValueRealType > itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::HistogramType |
Definition at line 102 of file itkHistogramThresholdImageFilter.h.
typedef InputImageType::Pointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputImagePointer |
Image related typedefs.
Definition at line 86 of file itkHistogramThresholdImageFilter.h.
typedef InputImageType::RegionType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputImageRegionType |
Definition at line 92 of file itkHistogramThresholdImageFilter.h.
typedef TInputImage itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputImageType |
Definition at line 74 of file itkHistogramThresholdImageFilter.h.
typedef InputImageType::IndexType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputIndexType |
Definition at line 91 of file itkHistogramThresholdImageFilter.h.
typedef InputImageType::PixelType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputPixelType |
Image pixel value typedef.
Definition at line 81 of file itkHistogramThresholdImageFilter.h.
typedef InputImageType::SizeType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::InputSizeType |
Definition at line 90 of file itkHistogramThresholdImageFilter.h.
typedef MaskImageType::Pointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskImagePointer |
Definition at line 88 of file itkHistogramThresholdImageFilter.h.
typedef MaskImageType::RegionType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskImageRegionType |
Definition at line 98 of file itkHistogramThresholdImageFilter.h.
typedef TMaskImage itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskImageType |
Definition at line 78 of file itkHistogramThresholdImageFilter.h.
typedef MaskImageType::IndexType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskIndexType |
Definition at line 97 of file itkHistogramThresholdImageFilter.h.
typedef MaskImageType::PixelType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskPixelType |
Definition at line 83 of file itkHistogramThresholdImageFilter.h.
typedef MaskImageType::SizeType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::MaskSizeType |
Definition at line 96 of file itkHistogramThresholdImageFilter.h.
typedef OutputImageType::Pointer itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputImagePointer |
Definition at line 87 of file itkHistogramThresholdImageFilter.h.
typedef OutputImageType::RegionType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputImageRegionType |
Definition at line 95 of file itkHistogramThresholdImageFilter.h.
typedef TOutputImage itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputImageType |
Definition at line 77 of file itkHistogramThresholdImageFilter.h.
typedef OutputImageType::IndexType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputIndexType |
Definition at line 94 of file itkHistogramThresholdImageFilter.h.
typedef OutputImageType::PixelType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputPixelType |
Definition at line 82 of file itkHistogramThresholdImageFilter.h.
typedef OutputImageType::SizeType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::OutputSizeType |
Definition at line 93 of file itkHistogramThresholdImageFilter.h.
typedef SmartPointer<Self> itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::Pointer |
Definition at line 67 of file itkHistogramThresholdImageFilter.h.
typedef HistogramThresholdImageFilter itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::Self |
Standard Self typedef
Definition at line 65 of file itkHistogramThresholdImageFilter.h.
typedef ImageToImageFilter<TInputImage,TOutputImage> itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::Superclass |
Definition at line 66 of file itkHistogramThresholdImageFilter.h.
typedef NumericTraits< ValueType >::RealType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::ValueRealType |
Definition at line 101 of file itkHistogramThresholdImageFilter.h.
typedef NumericTraits< InputPixelType >::ValueType itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::ValueType |
Definition at line 100 of file itkHistogramThresholdImageFilter.h.
|
protected |
End concept checking
|
inlineprotected |
Definition at line 212 of file itkHistogramThresholdImageFilter.h.
|
private |
|
virtual |
Does histogram generator compute min and max from data? Default is false for all but char types
|
virtual |
Does histogram generator compute min and max from data? Default is false for all but char types
|
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.
Reimplemented in itk::OtsuThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::HuangThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::IsoDataThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::KittlerIllingworthThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::LiThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::MaximumEntropyThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::MomentsThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::RenyiEntropyThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::ShanbhagThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::TriangleThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::IntermodesThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, and itk::YenThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >.
|
protectedvirtual |
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 >.
|
protectedvirtual |
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 >.
|
virtual |
Does histogram generator compute min and max from data? Default is false for all but char types
|
virtual |
Set/Get the calculator to use to compute the threshold
|
virtual |
Get the "inside" pixel value.
|
inline |
Get the marker image
Definition at line 131 of file itkHistogramThresholdImageFilter.h.
References itk::ProcessObject::GetInput().
|
virtual |
Do you want the output to be masked by the mask used in histogram construction. Only relevant if masking is in use. Default is true.
|
virtual |
The value in the mask image, if used, indicating voxels that should be included. Default is the max of pixel type, as in the MaskedImageToHistogramFilter
|
virtual |
Runtime information support.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::OtsuThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::HuangThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::IsoDataThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::KittlerIllingworthThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::LiThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::MaximumEntropyThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::MomentsThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::RenyiEntropyThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::ShanbhagThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::TriangleThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, itk::IntermodesThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >, and itk::YenThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >.
|
virtual |
Set the number of histogram bins
|
virtual |
Get the "outside" pixel value.
|
virtual |
Get the computed threshold.
|
virtual |
Do you want the output to be masked by the mask used in histogram construction. Only relevant if masking is in use. Default is true.
|
virtual |
Do you want the output to be masked by the mask used in histogram construction. Only relevant if masking is in use. Default is true.
|
static |
Method for creation through the object factory.
|
private |
|
protectedvirtual |
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 >.
Reimplemented in itk::IntermodesThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >.
|
virtual |
Does histogram generator compute min and max from data? Default is false for all but char types
|
virtual |
Set/Get the calculator to use to compute the threshold
|
inline |
Set the input image
Definition at line 138 of file itkHistogramThresholdImageFilter.h.
|
inline |
Set the marker image
Definition at line 144 of file itkHistogramThresholdImageFilter.h.
|
virtual |
Set the "inside" pixel value. The default value NumericTraits<OutputPixelType>::max()
|
inline |
Set and Get the mask image Set the marker image
Definition at line 124 of file itkHistogramThresholdImageFilter.h.
|
virtual |
Do you want the output to be masked by the mask used in histogram construction. Only relevant if masking is in use. Default is true.
|
virtual |
The value in the mask image, if used, indicating voxels that should be included. Default is the max of pixel type, as in the MaskedImageToHistogramFilter
|
virtual |
Set the number of histogram bins
|
virtual |
Set the "outside" pixel value. The default value NumericTraits<OutputPixelType>::Zero.
itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::typedef | ( | Concept::EqualityComparable< OutputPixelType > | ) |
Begin concept checking This class requires OutputEqualityComparableCheck in the form of (Concept::EqualityComparable<OutputPixelType>)
itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::typedef | ( | Concept::OStreamWritable< InputPixelType > | ) |
This class requires InputOStreamWritableCheck in the form of (Concept::OStreamWritable<InputPixelType>)
itk::HistogramThresholdImageFilter< TInputImage, TOutputImage, TMaskImage >::typedef | ( | Concept::OStreamWritable< OutputPixelType > | ) |
This class requires OutputOStreamWritableCheck in the form of (Concept::OStreamWritable<OutputPixelType>)
|
static |
Image related typedefs.
Definition at line 114 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 224 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 222 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 218 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 225 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 221 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 223 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 219 of file itkHistogramThresholdImageFilter.h.
|
protected |
Definition at line 220 of file itkHistogramThresholdImageFilter.h.
|
static |
Image related typedefs.
Definition at line 118 of file itkHistogramThresholdImageFilter.h.
|
static |
Image related typedefs.
Definition at line 116 of file itkHistogramThresholdImageFilter.h.