go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions
elastix::MovingImagePyramidBase< TElastix > Class Template Reference

#include <elxMovingImagePyramidBase.h>

Detailed Description

template<class TElastix>
class elastix::MovingImagePyramidBase< TElastix >

This class is the elastix base class for all MovingImagePyramids.

This class contains all the common functionality for MovingImagePyramids.

Parameters:

MovingImagePyramidSchedule: downsampling factors for the image pyramid.
For each dimension, for each resolution level, the downsampling factor of the moving image can be specified.
Syntax for 2D images:
(MovingImagePyramidSchedule <reslevel0,dim0> <reslevel0,dim1> <reslevel1,dim0> <reslevel1,dim1> ...) example: (MovingImagePyramidSchedule 4 4 2 2 1 1)
Default: isotropic, halved in each resolution, so, like in the example. If ImagePyramidSchedule is specified, that schedule is used for both fixed and moving image pyramid.

ImagePyramidSchedule: downsampling factors for fixed and moving image pyramids.
example: (ImagePyramidSchedule 4 4 2 2 1 1)
Used as a default when MovingImagePyramidSchedule is not specified. If both are omitted, a default schedule is assumed: isotropic, halved in each resolution, so, like in the example.

WritePyramidImagesAfterEachResolution: ...
example: (WritePyramidImagesAfterEachResolution "true")
default "false".

Definition at line 60 of file elxMovingImagePyramidBase.h.

Inheritance diagram for elastix::MovingImagePyramidBase< TElastix >:
Inheritance graph
[legend]

Public Types

using ElastixType = TElastix
 
using InputImageType = typename ElastixType::MovingImageType
 
using ITKBaseType = itk::MultiResolutionPyramidImageFilter< InputImageType, OutputImageType >
 
using OutputImageType = typename ElastixType::MovingImageType
 
using RegistrationType = typename ElastixType::RegistrationBaseType
 
using ScheduleType = typename ITKBaseType::ScheduleType
 
using Self = MovingImagePyramidBase
 
using Superclass = BaseComponentSE< TElastix >
 
- Public Types inherited from elastix::BaseComponentSE< TElastix >
using ConfigurationPointer = Configuration::Pointer
 
using ElastixType = TElastix
 
using RegistrationType = typename ElastixType::RegistrationBaseType
 
using Self = BaseComponentSE
 
using Superclass = BaseComponent
 

Public Member Functions

void BeforeEachResolutionBase () override
 
void BeforeRegistrationBase () override
 
ITKBaseTypeGetAsITKBaseType ()
 
const ITKBaseTypeGetAsITKBaseType () const
 
virtual const char * GetClassName () const
 
 ITK_DISALLOW_COPY_AND_MOVE (MovingImagePyramidBase)
 
virtual void SetMovingSchedule ()
 
void WritePyramidImage (const std::string &filename, const unsigned int level)
 
- Public Member Functions inherited from elastix::BaseComponentSE< TElastix >
void AddTargetCellToIterationInfo (const char *const name)
 
ConfigurationGetConfiguration () const
 
ElastixTypeGetElastix () const
 
xl::xoutbaseGetIterationInfoAt (const char *const name)
 
RegistrationTypeGetRegistration () const
 
 ITK_DISALLOW_COPY_AND_MOVE (BaseComponentSE)
 
int RemoveTargetCellFromIterationInfo (const char *const name)
 
void SetConfiguration (Configuration *_arg)
 
void SetElastix (ElastixType *_arg)
 
- Public Member Functions inherited from elastix::BaseComponent
virtual void AfterEachIteration ()
 
virtual void AfterEachIterationBase ()
 
virtual void AfterEachResolution ()
 
virtual void AfterEachResolutionBase ()
 
virtual void AfterRegistration ()
 
virtual void AfterRegistrationBase ()
 
virtual int BeforeAll ()
 
virtual int BeforeAllBase ()
 
virtual void BeforeEachResolution ()
 
virtual void BeforeEachResolutionBase ()
 
virtual void BeforeRegistration ()
 
virtual void BeforeRegistrationBase ()
 
virtual const char * elxGetClassName () const
 
const char * GetComponentLabel () const
 
 ITK_DISALLOW_COPY_AND_MOVE (BaseComponent)
 
 itkTypeMacroNoParent (BaseComponent)
 
void SetComponentLabel (const char *label, unsigned int idx)
 

Protected Member Functions

 MovingImagePyramidBase ()=default
 
 ~MovingImagePyramidBase () override=default
 
- Protected Member Functions inherited from elastix::BaseComponentSE< TElastix >
 BaseComponentSE ()=default
 
 ~BaseComponentSE () override=default
 
- Protected Member Functions inherited from elastix::BaseComponent
 BaseComponent ()=default
 
virtual ~BaseComponent ()=default
 

Private Member Functions

 elxDeclarePureVirtualGetSelfMacro (ITKBaseType)
 

Additional Inherited Members

- Static Public Member Functions inherited from elastix::BaseComponent
template<typename TBaseComponent >
static auto AsITKBaseType (TBaseComponent *const baseComponent) -> decltype(baseComponent->GetAsITKBaseType())
 
static void InitializeElastixExecutable ()
 
static bool IsElastixLibrary ()
 
- Protected Attributes inherited from elastix::BaseComponentSE< TElastix >
ConfigurationPointer m_Configuration {}
 
itk::WeakPointer< TElastix > m_Elastix {}
 
RegistrationTypem_Registration {}
 

Member Typedef Documentation

◆ ElastixType

template<class TElastix >
using elastix::BaseComponentSE< TElastix >::ElastixType = TElastix

Elastix typedef.

Definition at line 57 of file elxBaseComponentSE.h.

◆ InputImageType

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::InputImageType = typename ElastixType::MovingImageType

Typedefs inherited from Elastix.

Definition at line 77 of file elxMovingImagePyramidBase.h.

◆ ITKBaseType

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::ITKBaseType = itk::MultiResolutionPyramidImageFilter<InputImageType, OutputImageType>

Other typedef's.

Definition at line 81 of file elxMovingImagePyramidBase.h.

◆ OutputImageType

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::OutputImageType = typename ElastixType::MovingImageType

Definition at line 78 of file elxMovingImagePyramidBase.h.

◆ RegistrationType

template<class TElastix >
using elastix::BaseComponentSE< TElastix >::RegistrationType = typename ElastixType::RegistrationBaseType

RegistrationType; NB: this is the elx::RegistrationBase not an itk::Object or something like that.

Definition at line 65 of file elxBaseComponentSE.h.

◆ ScheduleType

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::ScheduleType = typename ITKBaseType::ScheduleType

Typedef's from ITKBaseType.

Definition at line 84 of file elxMovingImagePyramidBase.h.

◆ Self

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::Self = MovingImagePyramidBase

Standard ITK-stuff.

Definition at line 66 of file elxMovingImagePyramidBase.h.

◆ Superclass

template<class TElastix >
using elastix::MovingImagePyramidBase< TElastix >::Superclass = BaseComponentSE<TElastix>

Definition at line 67 of file elxMovingImagePyramidBase.h.

Constructor & Destructor Documentation

◆ MovingImagePyramidBase()

template<class TElastix >
elastix::MovingImagePyramidBase< TElastix >::MovingImagePyramidBase ( )
protecteddefault

The constructor.

◆ ~MovingImagePyramidBase()

template<class TElastix >
elastix::MovingImagePyramidBase< TElastix >::~MovingImagePyramidBase ( )
overrideprotecteddefault

The destructor.

Member Function Documentation

◆ BeforeEachResolutionBase()

template<class TElastix >
void elastix::MovingImagePyramidBase< TElastix >::BeforeEachResolutionBase ( )
overridevirtual

Execute stuff before each resolution:

  • Write the pyramid image to file.

Reimplemented from elastix::BaseComponent.

◆ BeforeRegistrationBase()

template<class TElastix >
void elastix::MovingImagePyramidBase< TElastix >::BeforeRegistrationBase ( )
overridevirtual

Execute stuff before the actual registration:

  • Set the schedule of the moving image pyramid.

Reimplemented from elastix::BaseComponent.

◆ elxDeclarePureVirtualGetSelfMacro()

template<class TElastix >
elastix::MovingImagePyramidBase< TElastix >::elxDeclarePureVirtualGetSelfMacro ( ITKBaseType  )
private

◆ GetAsITKBaseType() [1/2]

template<class TElastix >
ITKBaseType * elastix::MovingImagePyramidBase< TElastix >::GetAsITKBaseType ( )
inline

Retrieves this object as ITKBaseType.

Definition at line 88 of file elxMovingImagePyramidBase.h.

◆ GetAsITKBaseType() [2/2]

template<class TElastix >
const ITKBaseType * elastix::MovingImagePyramidBase< TElastix >::GetAsITKBaseType ( ) const
inline

Retrieves this object as ITKBaseType, to use in const functions.

Definition at line 96 of file elxMovingImagePyramidBase.h.

◆ GetClassName()

template<class TElastix >
virtual const char * elastix::MovingImagePyramidBase< TElastix >::GetClassName ( ) const
virtual

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TElastix >
elastix::MovingImagePyramidBase< TElastix >::ITK_DISALLOW_COPY_AND_MOVE ( MovingImagePyramidBase< TElastix >  )

◆ SetMovingSchedule()

template<class TElastix >
virtual void elastix::MovingImagePyramidBase< TElastix >::SetMovingSchedule ( )
virtual

Method for setting the schedule.

Reimplemented in elastix::MovingGenericPyramid< TElastix >.

◆ WritePyramidImage()

template<class TElastix >
void elastix::MovingImagePyramidBase< TElastix >::WritePyramidImage ( const std::string &  filename,
const unsigned int  level 
)

Method to write the pyramid image.



Generated on 2023-01-13 for elastix by doxygen 1.9.6 elastix logo