go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elastix::ElastixMain Class Reference

#include <elxElastixMain.h>

Detailed Description

A class with all functionality to configure elastix.

The ElastixMain initializes the MyConfiguration class with the parameters and commandline arguments. After this, the class loads and creates all components and sets them in ElastixTemplate.

Parameters

FixedImageDimension: the dimension of the fixed image.
example: (FixedImageDimension 2)

MovingImageDimension: the dimension of the fixed image.
example: (MovingImageDimension 2)

FixedInternalImagePixelType: the pixel type of the internal fixed image representation. The fixed image is automatically converted to this type.
example: (FixedInternalImagePixelType "float")
Default/recommended: "float"

MovingInternalImagePixelType: the pixel type of the internal moving image representation. The moving image is automatically converted to this type.
example: (MovingInternalImagePixelType "float")
Default/recommended: "float"

Transform Parameters

FixedImageDimension: the dimension of the fixed image.
example: (FixedImageDimension 2)

MovingImageDimension: the dimension of the fixed image.
example: (MovingImageDimension 2)

FixedInternalImagePixelType: the pixel type of the internal fixed image representation. The fixed image is automatically converted to this type.
example: (FixedInternalImagePixelType "float")
Default/recommended: "float"

MovingInternalImagePixelType: the pixel type of the internal moving image representation. The moving image is automatically converted to this type.
example: (MovingInternalImagePixelType "float")
Default/recommended: "float"

Definition at line 68 of file elxElastixMain.h.

Inheritance diagram for elastix::ElastixMain:

Public Types

using ConstPointer = itk::SmartPointer<const Self>
 
using Pointer = itk::SmartPointer<Self>
 
using Self = ElastixMain
 
using Superclass = MainBase
 
- Public Types inherited from elastix::MainBase
using ArgumentMapType = Configuration::CommandLineArgumentMapType
 
using ComponentDatabasePointer = ComponentDatabase::Pointer
 
using ComponentDescriptionType = ComponentDatabase::ComponentDescriptionType
 
using ConstPointer = itk::SmartPointer<const Self>
 
using DataObjectContainerPointer = ElastixBase::DataObjectContainerPointer
 
using DataObjectContainerType = ElastixBase::DataObjectContainerType
 
using DataObjectPointer = itk::DataObject::Pointer
 
using DBIndexType = ComponentDatabase::IndexType
 
using FlatDirectionCosinesType = ElastixBase::FlatDirectionCosinesType
 
using ImageDimensionType = ComponentDatabase::ImageDimensionType
 
using ObjectContainerPointer = ElastixBase::ObjectContainerPointer
 
using ObjectContainerType = ElastixBase::ObjectContainerType
 
using ObjectPointer = itk::Object::Pointer
 
using ParameterMapType = itk::ParameterMapInterface::ParameterMapType
 
using PixelTypeDescriptionType = ComponentDatabase::PixelTypeDescriptionType
 
using Pointer = itk::SmartPointer<Self>
 
using PtrToCreator = ComponentDatabase::PtrToCreator
 
using Self = MainBase
 
using Superclass = itk::Object
 

Public Member Functions

virtual const char * GetClassName () const
 
unsigned int GetElastixLevel () const
 
virtual const FlatDirectionCosinesTypeGetOriginalFixedImageDirectionFlat () const
 
unsigned int GetTotalNumberOfElastixLevels () const
 
virtual ParameterMapType GetTransformParameterMap () const
 
 ITK_DISALLOW_COPY_AND_MOVE (ElastixMain)
 
 itkGetModifiableObjectMacro (FinalTransform, itk::Object)
 
 itkGetModifiableObjectMacro (FixedImageContainer, DataObjectContainerType)
 
 itkGetModifiableObjectMacro (FixedMaskContainer, DataObjectContainerType)
 
 itkGetModifiableObjectMacro (InitialTransform, itk::Object)
 
 itkGetModifiableObjectMacro (MovingMaskContainer, DataObjectContainerType)
 
int Run () override
 
virtual int Run (const ArgumentMapType &argmap)
 
virtual int Run (const ArgumentMapType &argmap, const ParameterMapType &inputMap)
 
int RunWithInitialTransformParameterMaps (const ArgumentMapType &argmap, const ParameterMapType &inputMap, const std::vector< ParameterMapType > &initialTransformParameterMaps)
 
void SetElastixLevel (unsigned int level)
 
virtual void SetFixedImageContainer (DataObjectContainerType *_arg)
 
virtual void SetFixedMaskContainer (DataObjectContainerType *_arg)
 
virtual void SetInitialTransform (itk::Object *_arg)
 
virtual void SetMovingMaskContainer (DataObjectContainerType *_arg)
 
virtual void SetOriginalFixedImageDirectionFlat (const FlatDirectionCosinesType &arg)
 
void SetTotalNumberOfElastixLevels (unsigned int levels)
 
- Public Member Functions inherited from elastix::MainBase
virtual DBIndexType GetDBIndex () const
 
ElastixBaseGetElastixBase () const
 
virtual ImageDimensionType GetFixedImageDimension () const
 
virtual PixelTypeDescriptionType GetFixedImagePixelType () const
 
virtual ImageDimensionType GetMovingImageDimension () const
 
virtual PixelTypeDescriptionType GetMovingImagePixelType () const
 
 ITK_DISALLOW_COPY_AND_MOVE (MainBase)
 
 itkGetModifiableObjectMacro (Configuration, Configuration)
 
 itkGetModifiableObjectMacro (Elastix, itk::Object)
 
 itkGetModifiableObjectMacro (MovingImageContainer, DataObjectContainerType)
 
 itkGetModifiableObjectMacro (ResultDeformationFieldContainer, DataObjectContainerType)
 
 itkGetModifiableObjectMacro (ResultImageContainer, DataObjectContainerType)
 
virtual void SetConfiguration (Configuration *_arg)
 
virtual void SetFixedImageDimension (ImageDimensionType _arg)
 
virtual void SetFixedImagePixelType (PixelTypeDescriptionType _arg)
 
virtual void SetMaximumNumberOfThreads () const
 
virtual void SetMovingImageContainer (DataObjectContainerType *_arg)
 
virtual void SetMovingImageDimension (ImageDimensionType _arg)
 
virtual void SetMovingImagePixelType (PixelTypeDescriptionType _arg)
 
virtual void SetProcessPriority () const
 
virtual void SetResultDeformationFieldContainer (DataObjectContainerType *_arg)
 
virtual void SetResultImageContainer (DataObjectContainerType *_arg)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from elastix::MainBase
static const ComponentDatabaseGetComponentDatabase ()
 

Protected Member Functions

 ElastixMain ()
 
void GetImageInformationFromFile (const std::string &filename, ImageDimensionType &imageDimension) const
 
int InitDBIndex () override
 
 ~ElastixMain () override
 
- Protected Member Functions inherited from elastix::MainBase
virtual ObjectPointer CreateComponent (const ComponentDescriptionType &name)
 
virtual ObjectContainerPointer CreateComponents (const ComponentDescriptionType &key, const ComponentDescriptionType &defaultComponentName, int &errorcode, bool mandatoryComponent=true)
 
 MainBase ()
 
 ~MainBase () override=0
 

Protected Attributes

ObjectPointer m_FinalTransform { nullptr }
 
DataObjectContainerPointer m_FixedImageContainer { nullptr }
 
DataObjectContainerPointer m_FixedMaskContainer { nullptr }
 
ObjectPointer m_InitialTransform { nullptr }
 
DataObjectContainerPointer m_MovingMaskContainer { nullptr }
 
FlatDirectionCosinesType m_OriginalFixedImageDirection {}
 
DataObjectContainerPointer m_ResultImageContainer { nullptr }
 
ParameterMapType m_TransformParameterMap {}
 
- Protected Attributes inherited from elastix::MainBase
DBIndexType m_DBIndex { 0 }
 
ObjectPointer m_Elastix { nullptr }
 
ImageDimensionType m_FixedImageDimension { 0 }
 
PixelTypeDescriptionType m_FixedImagePixelType {}
 
DataObjectContainerPointer m_MovingImageContainer { nullptr }
 
ImageDimensionType m_MovingImageDimension { 0 }
 
PixelTypeDescriptionType m_MovingImagePixelType {}
 
DataObjectContainerPointer m_ResultDeformationFieldContainer { nullptr }
 
DataObjectContainerPointer m_ResultImageContainer { nullptr }
 
std::vector< Configuration::ConstPointerm_TransformConfigurations {}
 

Member Typedef Documentation

◆ ConstPointer

using elastix::ElastixMain::ConstPointer = itk::SmartPointer<const Self>

Definition at line 77 of file elxElastixMain.h.

◆ Pointer

using elastix::ElastixMain::Pointer = itk::SmartPointer<Self>

Definition at line 76 of file elxElastixMain.h.

◆ Self

Standard itk.

Definition at line 74 of file elxElastixMain.h.

◆ Superclass

Definition at line 75 of file elxElastixMain.h.

Constructor & Destructor Documentation

◆ ElastixMain()

elastix::ElastixMain::ElastixMain ( )
protected

◆ ~ElastixMain()

elastix::ElastixMain::~ElastixMain ( )
overrideprotected

Member Function Documentation

◆ GetClassName()

virtual const char * elastix::ElastixMain::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from elastix::MainBase.

◆ GetElastixLevel()

unsigned int elastix::ElastixMain::GetElastixLevel ( ) const

◆ GetImageInformationFromFile()

void elastix::ElastixMain::GetImageInformationFromFile ( const std::string & filename,
ImageDimensionType & imageDimension ) const
protected

Helper function to obtain information from images on disk.

◆ GetOriginalFixedImageDirectionFlat()

virtual const FlatDirectionCosinesType & elastix::ElastixMain::GetOriginalFixedImageDirectionFlat ( ) const
virtual

◆ GetTotalNumberOfElastixLevels()

unsigned int elastix::ElastixMain::GetTotalNumberOfElastixLevels ( ) const

◆ GetTransformParameterMap()

virtual ParameterMapType elastix::ElastixMain::GetTransformParameterMap ( ) const
virtual

GetTransformParameterMap

◆ InitDBIndex()

int elastix::ElastixMain::InitDBIndex ( )
overrideprotectedvirtual

InitDBIndex sets m_DBIndex by asking the ImageTypes from the Configuration object and obtaining the corresponding DB index from the ComponentDatabase.

Implements elastix::MainBase.

◆ ITK_DISALLOW_COPY_AND_MOVE()

elastix::ElastixMain::ITK_DISALLOW_COPY_AND_MOVE ( ElastixMain )

◆ itkGetModifiableObjectMacro() [1/5]

elastix::ElastixMain::itkGetModifiableObjectMacro ( FinalTransform ,
itk::Object  )

Get the final transform (the result of running elastix). You may pass this as an InitialTransform in an other instantiation of ElastixMain. Only valid after calling Run()!

◆ itkGetModifiableObjectMacro() [2/5]

elastix::ElastixMain::itkGetModifiableObjectMacro ( FixedImageContainer ,
DataObjectContainerType  )

◆ itkGetModifiableObjectMacro() [3/5]

elastix::ElastixMain::itkGetModifiableObjectMacro ( FixedMaskContainer ,
DataObjectContainerType  )

◆ itkGetModifiableObjectMacro() [4/5]

elastix::ElastixMain::itkGetModifiableObjectMacro ( InitialTransform ,
itk::Object  )

◆ itkGetModifiableObjectMacro() [5/5]

elastix::ElastixMain::itkGetModifiableObjectMacro ( MovingMaskContainer ,
DataObjectContainerType  )

◆ New()

static Pointer elastix::ElastixMain::New ( )
static

Method for creation through the object factory.

◆ Run() [1/3]

int elastix::ElastixMain::Run ( )
overridevirtual

Start the registration run() without command line parameters; it assumes that EnterCommandLineParameters has been invoked already, or that m_Configuration is initialized in a different way.

Implements elastix::MainBase.

◆ Run() [2/3]

virtual int elastix::MainBase::Run ( const ArgumentMapType & argmap)
virtual

Start the registration this version of 'run' first calls this->EnterCommandLineParameters(argc,argv) and then calls run().

Reimplemented from elastix::MainBase.

◆ Run() [3/3]

virtual int elastix::MainBase::Run ( const ArgumentMapType & argmap,
const ParameterMapType & inputMap )
virtual

Reimplemented from elastix::MainBase.

◆ RunWithInitialTransformParameterMaps()

int elastix::ElastixMain::RunWithInitialTransformParameterMaps ( const ArgumentMapType & argmap,
const ParameterMapType & inputMap,
const std::vector< ParameterMapType > & initialTransformParameterMaps )

◆ SetElastixLevel()

void elastix::ElastixMain::SetElastixLevel ( unsigned int level)

Get and Set the elastix level.

◆ SetFixedImageContainer()

virtual void elastix::ElastixMain::SetFixedImageContainer ( DataObjectContainerType * _arg)
virtual

Set/Get functions for the fixed images (if these are not used, elastix tries to read them from disk, according to the command line parameters).

◆ SetFixedMaskContainer()

virtual void elastix::ElastixMain::SetFixedMaskContainer ( DataObjectContainerType * _arg)
virtual

Set/Get functions for the fixed and moving masks (if these are not used, elastix tries to read them from disk, according to the command line parameters).

◆ SetInitialTransform()

virtual void elastix::ElastixMain::SetInitialTransform ( itk::Object * _arg)
virtual

Set/Get the initial transform the type is itk::Object, but the pointer should actually point to an itk::Transform type (or inherited from that one).

◆ SetMovingMaskContainer()

virtual void elastix::ElastixMain::SetMovingMaskContainer ( DataObjectContainerType * _arg)
virtual

◆ SetOriginalFixedImageDirectionFlat()

virtual void elastix::ElastixMain::SetOriginalFixedImageDirectionFlat ( const FlatDirectionCosinesType & arg)
virtual

Set/Get the original fixed image direction as a flat array (d11 d21 d31 d21 d22 etc )

◆ SetTotalNumberOfElastixLevels()

void elastix::ElastixMain::SetTotalNumberOfElastixLevels ( unsigned int levels)

Get and Set the total number of elastix levels.

Field Documentation

◆ m_FinalTransform

ObjectPointer elastix::ElastixMain::m_FinalTransform { nullptr }
protected

A transform that is the result of registration.

Definition at line 167 of file elxElastixMain.h.

◆ m_FixedImageContainer

DataObjectContainerPointer elastix::ElastixMain::m_FixedImageContainer { nullptr }
protected

The fixed images and masks.

Definition at line 161 of file elxElastixMain.h.

◆ m_FixedMaskContainer

DataObjectContainerPointer elastix::ElastixMain::m_FixedMaskContainer { nullptr }
protected

Definition at line 162 of file elxElastixMain.h.

◆ m_InitialTransform

ObjectPointer elastix::ElastixMain::m_InitialTransform { nullptr }
protected

The initial transform.

Definition at line 170 of file elxElastixMain.h.

◆ m_MovingMaskContainer

DataObjectContainerPointer elastix::ElastixMain::m_MovingMaskContainer { nullptr }
protected

Definition at line 163 of file elxElastixMain.h.

◆ m_OriginalFixedImageDirection

FlatDirectionCosinesType elastix::ElastixMain::m_OriginalFixedImageDirection {}
protected

Definition at line 177 of file elxElastixMain.h.

◆ m_ResultImageContainer

DataObjectContainerPointer elastix::ElastixMain::m_ResultImageContainer { nullptr }
protected

Definition at line 164 of file elxElastixMain.h.

◆ m_TransformParameterMap

ParameterMapType elastix::ElastixMain::m_TransformParameterMap {}
protected

Transformation parameters map containing parameters that is the result of registration.

Definition at line 175 of file elxElastixMain.h.



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