go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxMultiResolutionRegistrationWithFeatures.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 __elxMultiResolutionRegistrationWithFeatures_H__
16 #define __elxMultiResolutionRegistrationWithFeatures_H__
17 
19 
20 #include "elxIncludes.h"
21 
22 namespace elastix
23 {
24 using namespace itk;
25 
51  template <class TElastix>
53  public
55  ITK_TYPENAME RegistrationBase<TElastix>::FixedImageType,
56  ITK_TYPENAME RegistrationBase<TElastix>::MovingImageType >,
57  public
58  RegistrationBase<TElastix>
59  {
60  public:
61 
69  typedef SmartPointer<Self> Pointer;
70  typedef SmartPointer<const Self> ConstPointer;
71 
73  itkNewMacro( Self );
74 
78 
83  elxClassNameMacro( "MultiResolutionRegistrationWithFeatures" );
84 
91 
95 
99 
103 
107 
111 
115 
119 
124 
126  //typedef typename Superclass1::CombinationMetricType CombinationMetricType;
127  //typedef typename Superclass1::CombinationMetricPointer CombinationMetricPointer;
128 
138 
140  itkStaticConstMacro( FixedImageDimension, unsigned int, Superclass2::FixedImageDimension );
141 
143  itkStaticConstMacro( MovingImageDimension, unsigned int, Superclass2::MovingImageDimension );
144 
151  virtual void BeforeRegistration( void );
152 
157  virtual void BeforeEachResolution( void );
158 
159  protected:
160 
163 
166 
168  typedef tmr::Timer TimerType;
170 
181 
183  void UpdateFixedMasks( unsigned int level );
184  void UpdateMovingMasks( unsigned int level );
185 
187  virtual void GetAndSetComponents( void );
188 
190  virtual void GetAndSetFixedImageRegions( void );
191 
193  virtual void GetAndSetFixedImageInterpolators( void );
194 
195  private:
196 
198  MultiResolutionRegistrationWithFeatures( const Self& ); // purposely not implemented
200  void operator=( const Self& ); // purposely not implemented
201 
202  }; // end class MultiResolutionRegistrationWithFeatures
203 
204 
205 } // end namespace elastix
206 
207 #ifndef ITK_MANUAL_INSTANTIATION
208 #include "elxMultiResolutionRegistrationWithFeatures.hxx"
209 #endif
210 
211 #endif // end #ifndef __elxMultiResolutionRegistrationWithFeatures_H__
ElastixType::FixedMaskType FixedMaskImageType
Superclass::RegistrationType RegistrationType
Base class for multi-resolution image registration methods.
ElastixType::MaskPixelType MaskPixelType
#define elxClassNameMacro(_name)
Definition: elxMacro.h:254
SmartPointer< Self > Pointer
Definition: elxTimer.h:73
Implementation of an image mask as spatial object.
MultiResolutionImageRegistrationMethodWithFeatures< typename RegistrationBase< TElastix >::FixedImageType, typename RegistrationBase< TElastix >::MovingImageType > Superclass1
FixedMaskImageType::Pointer FixedMaskImagePointer
MovingMaskImageType::Pointer MovingMaskImagePointer
Superclass::ConfigurationType ConfigurationType
This class is the elastix base class for all Registration schemes.
A class to time the different parts of the registration.
Definition: elxTimer.h:67
Superclass::ConfigurationPointer ConfigurationPointer
ElastixType::FixedImageType FixedImageType
ElastixType::MovingImageType MovingImageType
Superclass2::MovingMaskSpatialObjectPointer MovingMaskSpatialObjectPointer
Superclass::RegistrationPointer RegistrationPointer
FixedMaskSpatialObjectType::Pointer FixedMaskSpatialObjectPointer
MovingMaskSpatialObjectType::Pointer MovingMaskSpatialObjectPointer
Superclass::ElastixType ElastixType
std::vector< bool > UseMaskErosionArrayType
ElastixType::MovingMaskType MovingMaskImageType
Superclass::ElastixPointer ElastixPointer
A registration framework based on the itk::MultiResolutionImageRegistrationMethodWithFeatures.


Generated on 05-12-2013 for elastix by doxygen 1.8.5 elastix logo