go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itk::ErodeMaskImageFilter< TImage > Class Template Reference

#include <itkErodeMaskImageFilter.h>

Detailed Description

template<class TImage>
class itk::ErodeMaskImageFilter< TImage >

This filter computes the Erosion of a mask image. It makes only sense for masks used in a multiresolution registration procedure.

The input to this filter is a scalar-valued itk::Image of arbitrary dimension. The output is a scalar-valued itk::Image, of the same type as the input image. This restriction is not really necessary, but easier for coding.

If IsMovingMask == false:
If more resolution levels are used, the image is subsampled. Before subsampling the image is smoothed with a Gaussian filter, with variance (schedule/2)^2. The 'schedule' depends on the resolution level. The 'radius' of the convolution filter is roughly twice the standard deviation. Thus, the parts in the edge with size 'radius' are influenced by the background.
--> radius = static_cast<unsigned long>( schedule + 1 );

If IsMovingMask == true:
Same story as before. Now the size the of the eroding element is doubled. This is because the gradient of the moving image is used for calculating the derivative of the metric.
--> radius = static_cast<unsigned long>( 2 * schedule + 1 );

See also
ParabolicErodeImageFilter

Definition at line 57 of file itkErodeMaskImageFilter.h.

Inheritance diagram for itk::ErodeMaskImageFilter< TImage >:

Public Types

using ConstPointer = SmartPointer<const Self>
 
using ImagePyramidFilterType = MultiResolutionPyramidImageFilter<InputImageType, OutputImageType>
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageType = TImage
 
using InputPixelType = typename InputImageType::PixelType
 
using OutputImagePointer = typename OutputImageType::Pointer
 
using OutputImageType = TImage
 
using OutputPixelType = typename OutputImageType::PixelType
 
using Pointer = SmartPointer<Self>
 
using ScheduleType = typename ImagePyramidFilterType::ScheduleType
 
using Self = ErodeMaskImageFilter
 
using Superclass = ImageToImageFilter<TImage, TImage>
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual bool GetIsMovingMask () const
 
virtual unsigned int GetResolutionLevel () const
 
virtual const ScheduleTypeGetSchedule ()
 
 ITK_DISALLOW_COPY_AND_MOVE (ErodeMaskImageFilter)
 
 itkStaticConstMacro (ImageDimension, unsigned int, OutputImageType::ImageDimension)
 
 itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension)
 
 itkStaticConstMacro (OutputImageDimension, unsigned int, OutputImageType::ImageDimension)
 
virtual void SetIsMovingMask (bool _arg)
 
virtual void SetResolutionLevel (unsigned int _arg)
 
virtual void SetSchedule (const ScheduleType &schedule)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 ErodeMaskImageFilter ()=default
 
void GenerateData () override
 
 ~ErodeMaskImageFilter () override=default
 

Private Attributes

bool m_IsMovingMask { false }
 
unsigned int m_ResolutionLevel { 0 }
 
ScheduleType m_Schedule { 1, InputImageDimension, 1u }
 

Member Typedef Documentation

◆ ConstPointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ConstPointer = SmartPointer<const Self>

Definition at line 66 of file itkErodeMaskImageFilter.h.

◆ ImagePyramidFilterType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ImagePyramidFilterType = MultiResolutionPyramidImageFilter<InputImageType, OutputImageType>

Define the schedule type.

Definition at line 88 of file itkErodeMaskImageFilter.h.

◆ InputImagePointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputImagePointer = typename InputImageType::Pointer

Definition at line 77 of file itkErodeMaskImageFilter.h.

◆ InputImageType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputImageType = TImage

Typedefs.

Definition at line 75 of file itkErodeMaskImageFilter.h.

◆ InputPixelType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputPixelType = typename InputImageType::PixelType

Definition at line 79 of file itkErodeMaskImageFilter.h.

◆ OutputImagePointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputImagePointer = typename OutputImageType::Pointer

Definition at line 78 of file itkErodeMaskImageFilter.h.

◆ OutputImageType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputImageType = TImage

Definition at line 76 of file itkErodeMaskImageFilter.h.

◆ OutputPixelType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputPixelType = typename OutputImageType::PixelType

Definition at line 80 of file itkErodeMaskImageFilter.h.

◆ Pointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Pointer = SmartPointer<Self>

Definition at line 65 of file itkErodeMaskImageFilter.h.

◆ ScheduleType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ScheduleType = typename ImagePyramidFilterType::ScheduleType

Definition at line 89 of file itkErodeMaskImageFilter.h.

◆ Self

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Self = ErodeMaskImageFilter

Standard ITK stuff.

Definition at line 63 of file itkErodeMaskImageFilter.h.

◆ Superclass

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Superclass = ImageToImageFilter<TImage, TImage>

Definition at line 64 of file itkErodeMaskImageFilter.h.

Constructor & Destructor Documentation

◆ ErodeMaskImageFilter()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::ErodeMaskImageFilter ( )
protecteddefault

Constructor.

◆ ~ErodeMaskImageFilter()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::~ErodeMaskImageFilter ( )
overrideprotecteddefault

Destructor

Member Function Documentation

◆ GenerateData()

template<class TImage >
void itk::ErodeMaskImageFilter< TImage >::GenerateData ( )
overrideprotected

Standard pipeline method. While this class does not implement a ThreadedGenerateData(), its GenerateData() delegates all calculations to the ParabolicErodeImageFilter, which is multi-threaded.

◆ GetClassName()

template<class TImage >
virtual const char * itk::ErodeMaskImageFilter< TImage >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

◆ GetIsMovingMask()

template<class TImage >
virtual bool itk::ErodeMaskImageFilter< TImage >::GetIsMovingMask ( ) const
virtual

◆ GetResolutionLevel()

template<class TImage >
virtual unsigned int itk::ErodeMaskImageFilter< TImage >::GetResolutionLevel ( ) const
virtual

◆ GetSchedule()

template<class TImage >
virtual const ScheduleType & itk::ErodeMaskImageFilter< TImage >::GetSchedule ( )
virtual

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::ITK_DISALLOW_COPY_AND_MOVE ( ErodeMaskImageFilter< TImage > )

◆ itkStaticConstMacro() [1/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( ImageDimension ,
unsigned int ,
OutputImageType::ImageDimension  )

◆ itkStaticConstMacro() [2/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( InputImageDimension ,
unsigned int ,
InputImageType::ImageDimension  )

Dimensionality of the two images is assumed to be the same.

◆ itkStaticConstMacro() [3/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( OutputImageDimension ,
unsigned int ,
OutputImageType::ImageDimension  )

◆ New()

template<class TImage >
static Pointer itk::ErodeMaskImageFilter< TImage >::New ( )
static

Method for creation through the object factory.

◆ SetIsMovingMask()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetIsMovingMask ( bool _arg)
virtual

Set/Get whether the mask serves as a 'moving mask' in the registration Moving masks are eroded with a slightly larger kernel, because the derivative is usually taken on the moving image. Default: false

◆ SetResolutionLevel()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetResolutionLevel ( unsigned int _arg)
virtual

Set the resolution level of the registration. Default: 0.

◆ SetSchedule()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetSchedule ( const ScheduleType & schedule)
inlinevirtual

Set/Get the pyramid schedule used to downsample the image whose mask is the input of the ErodeMaskImageFilter Default: filled with ones, one resolution.

Definition at line 96 of file itkErodeMaskImageFilter.h.

Field Documentation

◆ m_IsMovingMask

template<class TImage >
bool itk::ErodeMaskImageFilter< TImage >::m_IsMovingMask { false }
private

Definition at line 138 of file itkErodeMaskImageFilter.h.

◆ m_ResolutionLevel

template<class TImage >
unsigned int itk::ErodeMaskImageFilter< TImage >::m_ResolutionLevel { 0 }
private

Definition at line 139 of file itkErodeMaskImageFilter.h.

◆ m_Schedule

template<class TImage >
ScheduleType itk::ErodeMaskImageFilter< TImage >::m_Schedule { 1, InputImageDimension, 1u }
private

Definition at line 140 of file itkErodeMaskImageFilter.h.



Generated on 2024-07-17 for elastix by doxygen 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) elastix logo