go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxMultiResolutionRegistration.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 
15 #ifndef __elxMultiResolutionRegistration_H__
16 #define __elxMultiResolutionRegistration_H__
17 
19 
20 #include "elxIncludes.h"
21 
22 namespace elastix
23 {
24 
42  template <class TElastix>
44  public
46  public
47  RegistrationBase<TElastix>
48  {
49  public:
50 
53  typedef typename RegistrationBase<TElastix>
56  typedef itk::SmartPointer<Self> Pointer;
57  typedef itk::SmartPointer<const Self> ConstPointer;
58 
60  itkNewMacro( Self );
61 
63  itkTypeMacro( MultiResolutionRegistration, MultiResolutionImageRegistrationMethod );
64 
69  elxClassNameMacro( "MultiResolutionRegistration" );
70 
77 
81 
85 
89 
93 
96 
100 
104 
109 
119 
121  itkStaticConstMacro( FixedImageDimension, unsigned int, Superclass2::FixedImageDimension );
123  itkStaticConstMacro( MovingImageDimension, unsigned int, Superclass2::MovingImageDimension );
124 
129  virtual void BeforeRegistration( void );
130 
133  virtual void BeforeEachResolution( void );
134 
135  protected:
136 
141 
143  typedef tmr::Timer TimerType;
146 
157 
159  void UpdateMasks( unsigned int level );
160 
162  virtual void SetComponents( void );
163 
164  private:
165 
167  MultiResolutionRegistration( const Self& ); // purposely not implemented
169  void operator=( const Self& ); // purposely not implemented
170 
171  }; // end class MultiResolutionRegistration
172 
173 
174 } // end namespace elastix
175 
176 #ifndef ITK_MANUAL_INSTANTIATION
177 #include "elxMultiResolutionRegistration.hxx"
178 #endif
179 
180 #endif // end #ifndef __elxMultiResolutionRegistration_H__
ElastixType::FixedMaskType FixedMaskImageType
Superclass::RegistrationType RegistrationType
Superclass2::ConfigurationPointer ConfigurationPointer
Base class for multi-resolution image registration methods.
Superclass1::FixedImageConstPointer FixedImageConstPointer
elxClassNameMacro("MultiResolutionRegistration")
ElastixType::MaskPixelType MaskPixelType
Superclass2::RegistrationPointer RegistrationPointer
A registration framework based on the itk::MultiResolutionImageRegistrationMethod.
itk::SmartPointer< Self > Pointer
Definition: elxTimer.h:72
Superclass1::InterpolatorPointer InterpolatorPointer
Superclass2::MovingMaskSpatialObjectPointer MovingMaskSpatialObjectPointer
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics...
Superclass1::MovingImagePyramidPointer MovingImagePyramidPointer
Implementation of an image mask as spatial object.
Superclass1::MovingImageConstPointer MovingImageConstPointer
FixedMaskImageType::Pointer FixedMaskImagePointer
Superclass1::FixedImagePyramidType FixedImagePyramidType
MovingMaskImageType::Pointer MovingMaskImagePointer
Superclass2::FixedMaskImagePointer FixedMaskImagePointer
Superclass::ConfigurationType ConfigurationType
This class is the elastix base class for all Registration schemes.
Superclass2::FixedMaskSpatialObjectPointer FixedMaskSpatialObjectPointer
A class to time the different parts of the registration.
Definition: elxTimer.h:66
Superclass::ConfigurationPointer ConfigurationPointer
Transform maps points, vectors and covariant vectors from an input space to an output space...
Superclass2::FixedMaskSpatialObjectType FixedMaskSpatialObjectType
Superclass2::UseMaskErosionArrayType UseMaskErosionArrayType
Superclass2::MovingMaskImageType MovingMaskImageType
MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > FixedImagePyramidType
Superclass1::MovingImagePyramidType MovingImagePyramidType
virtual void BeforeEachResolution(void)
Superclass::RegistrationPointer RegistrationPointer
itkStaticConstMacro(FixedImageDimension, unsigned int, Superclass2::FixedImageDimension)
void UpdateMasks(unsigned int level)
FixedMaskSpatialObjectType::Pointer FixedMaskSpatialObjectPointer
MovingMaskSpatialObjectType::Pointer MovingMaskSpatialObjectPointer
MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > MovingImagePyramidType
Superclass1::FixedImagePyramidPointer FixedImagePyramidPointer
Superclass::ElastixType ElastixType
std::vector< bool > UseMaskErosionArrayType
Superclass2::MovingMaskSpatialObjectType MovingMaskSpatialObjectType
Superclass2::MovingMaskImagePointer MovingMaskImagePointer
RegistrationBase< TElastix >::ITKBaseType Superclass1
ElastixType::MovingMaskType MovingMaskImageType
Superclass2::FixedMaskImageType FixedMaskImageType
Superclass::ElastixPointer ElastixPointer
Superclass1::FixedImageRegionType FixedImageRegionType


Generated on 04-01-2014 for elastix by doxygen 1.8.5 elastix logo