ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkBinaryDilateImageFilter.h>
Fast binary dilation.
BinaryDilateImageFilter is a binary dilation morphologic operation. This implementation is based on the papers:
L.Vincent "Morphological transformations of binary images with arbitrary structuring elements", and
N.Nikopoulos et al. "An efficient algorithm for 3d binary morphological transformations with 3d structuring elements for arbitrary size and shape". IEEE Transactions on Image Processing. Vol. 9. No. 3. 2000. pp. 283-286.
Gray scale images can be processed as binary images by selecting a "DilateValue". Pixel values matching the dilate value are considered the "foreground" and all other pixels are "background". This is useful in processing segmented images where all pixels in segment #1 have value 1 and pixels in segment #2 have value 2, etc. A particular "segment number" can be processed. DilateValue defaults to the maximum possible value of the PixelType.
The structuring element is assumed to be composed of binary values (zero or one). Only elements of the structuring element having values > 0 are candidates for affecting the center pixel. A reasonable choice of structuring element is itk::BinaryBallStructuringElement.
Definition at line 66 of file itkBinaryDilateImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | IndexType = typename InputImageType::IndexType |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | InputPixelType = typename InputImageType::PixelType |
using | InputRealType = typename NumericTraits< InputPixelType >::RealType |
using | InputSizeType = typename InputImageType::SizeType |
using | KernelIteratorType = typename KernelType::ConstIterator |
using | KernelType = TKernel |
using | OffsetType = typename InputImageType::OffsetType |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename OutputImageType::PixelType |
using | Pointer = SmartPointer< Self > |
using | Self = BinaryDilateImageFilter |
using | Superclass = BinaryMorphologyImageFilter< InputImageType, OutputImageType, KernelType > |
Public Types inherited from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel > | |
using | ConstPointer = SmartPointer< const Self > |
using | IndexType = typename InputImageType::IndexType |
using | IndexValueType = typename InputImageType::IndexValueType |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | InputPixelType = typename InputImageType::PixelType |
using | InputRealType = typename NumericTraits< InputPixelType >::RealType |
using | InputSizeType = typename InputImageType::SizeType |
using | InputSizeValueType = typename InputImageType::SizeValueType |
using | KernelIteratorType = typename KernelType::ConstIterator |
using | KernelType = TKernel |
using | OffsetType = typename InputImageType::OffsetType |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename OutputImageType::PixelType |
using | Pointer = SmartPointer< Self > |
using | Self = BinaryMorphologyImageFilter |
using | Superclass = KernelImageFilter< InputImageType, OutputImageType, TKernel > |
Public Types inherited from itk::KernelImageFilter< TInputImage, TOutputImage, TKernel > | |
using | ConstPointer = SmartPointer< const Self > |
using | FlatKernelType = FlatStructuringElement<(Self::ImageDimension)> |
using | IndexType = typename TInputImage::IndexType |
using | InputImageType = TInputImage |
using | InputPixelType = typename TInputImage::PixelType |
using | KernelType = TKernel |
using | OffsetType = typename TInputImage::OffsetType |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename TOutputImage::PixelType |
using | Pointer = SmartPointer< Self > |
using | RadiusType = typename TInputImage::SizeType |
using | RegionType = typename TInputImage::RegionType |
using | Self = KernelImageFilter |
using | SizeType = typename TInputImage::SizeType |
using | Superclass = BoxImageFilter< TInputImage, TOutputImage > |
Public Types inherited from itk::BoxImageFilter< TInputImage, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | IndexType = typename TInputImage::IndexType |
using | InputImageType = TInputImage |
using | InputPixelType = typename TInputImage::PixelType |
using | OffsetType = typename TInputImage::OffsetType |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename TOutputImage::PixelType |
using | Pointer = SmartPointer< Self > |
using | RadiusType = typename TInputImage::SizeType |
using | RadiusValueType = typename TInputImage::SizeValueType |
using | RegionType = typename TInputImage::RegionType |
using | Self = BoxImageFilter |
using | SizeType = typename TInputImage::SizeType |
using | Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
Public Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource< TOutputImage > |
Public Types inherited from itk::ImageSource< TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = ImageSource |
using | Superclass = ProcessObject |
Public Types inherited from itk::ProcessObject | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector< DataObjectPointer > |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector< DataObjectIdentifierType > |
using | Pointer = SmartPointer< Self > |
using | Self = ProcessObject |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::KernelImageFilter< TInputImage, TOutputImage, TKernel > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::BoxImageFilter< TInputImage, TOutputImage > | |
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 constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | KernelDimension = TKernel::NeighborhoodDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | KernelDimension = TKernel::NeighborhoodDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::KernelImageFilter< TInputImage, TOutputImage, TKernel > | |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::BoxImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Protected Types | |
using | NeighborIndexContainer = typename Superclass::NeighborIndexContainer |
Protected Types inherited from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel > | |
using | ComponentVectorConstIterator = typename ComponentVectorType::const_iterator |
using | ComponentVectorType = std::vector< OffsetType > |
using | NeighborIndexContainer = std::vector< OffsetType > |
using | NeighborIndexContainerContainer = std::vector< NeighborIndexContainer > |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Additional Inherited Members | |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel > | |
bool | m_BoundaryToForeground |
Protected Attributes inherited from itk::KernelImageFilter< TInputImage, TOutputImage, TKernel > | |
KernelType | m_Kernel |
Protected Attributes inherited from itk::ImageSource< TOutputImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::ConstPointer = SmartPointer< const Self > |
Definition at line 90 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::IndexType = typename InputImageType::IndexType |
Definition at line 106 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::InputImageRegionType = typename InputImageType::RegionType |
Definition at line 108 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::InputImageType = TInputImage |
Convenient type alias for simplifying declarations.
Definition at line 80 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::InputPixelType = typename InputImageType::PixelType |
Image type alias support
Definition at line 102 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::InputRealType = typename NumericTraits< InputPixelType >::RealType |
Definition at line 104 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::InputSizeType = typename InputImageType::SizeType |
Definition at line 110 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::KernelIteratorType = typename KernelType::ConstIterator |
Kernel (structuring element) iterator.
Definition at line 99 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::KernelType = TKernel |
Definition at line 82 of file itkBinaryDilateImageFilter.h.
|
protected |
Definition at line 132 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::OffsetType = typename InputImageType::OffsetType |
Definition at line 105 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 109 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::OutputImageType = TOutputImage |
Definition at line 81 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::OutputPixelType = typename OutputImageType::PixelType |
Definition at line 103 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Pointer = SmartPointer< Self > |
Definition at line 89 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Self = BinaryDilateImageFilter |
Standard class type aliases.
Definition at line 85 of file itkBinaryDilateImageFilter.h.
using itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Superclass = BinaryMorphologyImageFilter< InputImageType, OutputImageType, KernelType > |
Definition at line 87 of file itkBinaryDilateImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
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::KernelImageFilter< TInputImage, TOutputImage, TKernel >.
Reimplemented in itk::FastIncrementalBinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >.
|
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 DynamicThreadedGenerateData(). 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 can be threaded, it should NOT provide a GenerateData() method but should provide a DynamicThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
inline |
Get the value in the image considered as "foreground". Defaults to maximum value of PixelType. This is an alias to the ForegroundValue in the superclass.
Definition at line 121 of file itkBinaryDilateImageFilter.h.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel >.
Reimplemented in itk::FastIncrementalBinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >.
|
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::KernelImageFilter< TInputImage, TOutputImage, TKernel >.
|
inline |
Set the value in the image to consider as "foreground". Defaults to maximum value of PixelType. This is an alias to the ForegroundValue in the superclass.
Definition at line 115 of file itkBinaryDilateImageFilter.h.
|
static |
Extract dimension from input and output image.
Definition at line 73 of file itkBinaryDilateImageFilter.h.
|
static |
Extract the dimension of the kernel
Definition at line 77 of file itkBinaryDilateImageFilter.h.
|
static |
Definition at line 74 of file itkBinaryDilateImageFilter.h.