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  * Copyright UMC Utrecht and contributors
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef __elxMultiResolutionRegistration_H__
19 #define __elxMultiResolutionRegistration_H__
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
23 
24 namespace elastix
25 {
26 
44 template< class TElastix >
46  public
48  public
49  RegistrationBase< TElastix >
50 {
51 public:
52 
55  typedef typename RegistrationBase< TElastix >
58  typedef itk::SmartPointer< Self > Pointer;
59  typedef itk::SmartPointer< const Self > ConstPointer;
60 
62  itkNewMacro( Self );
63 
65  itkTypeMacro( MultiResolutionRegistration, MultiResolutionImageRegistrationMethod );
66 
71  elxClassNameMacro( "MultiResolutionRegistration" );
72 
79 
83 
87 
91 
95 
98 
102 
106 
111 
121 
123  itkStaticConstMacro( FixedImageDimension, unsigned int, Superclass2::FixedImageDimension );
125  itkStaticConstMacro( MovingImageDimension, unsigned int, Superclass2::MovingImageDimension );
126 
131  void BeforeRegistration( void ) override;
132 
135  void BeforeEachResolution( void ) override;
136 
137 protected:
138 
143 
154 
156  void UpdateMasks( unsigned int level );
157 
159  virtual void SetComponents( void );
160 
161 private:
162 
164  MultiResolutionRegistration( const Self & ); // purposely not implemented
166  void operator=( const Self & ); // purposely not implemented
167 
168 };
169 
170 } // end namespace elastix
171 
172 #ifndef ITK_MANUAL_INSTANTIATION
173 #include "elxMultiResolutionRegistration.hxx"
174 #endif
175 
176 #endif // end #ifndef __elxMultiResolutionRegistration_H__
A class that deals with user given parameters and command line arguments.
A registration framework based on the itk::MultiResolutionImageRegistrationMethod.
Superclass1::FixedImageRegionType FixedImageRegionType
Superclass2::MovingMaskImageType MovingMaskImageType
itkStaticConstMacro(MovingImageDimension, unsigned int, Superclass2::MovingImageDimension)
void UpdateMasks(unsigned int level)
Superclass1::FixedImagePyramidType FixedImagePyramidType
Superclass2::FixedMaskImagePointer FixedMaskImagePointer
Superclass2::UseMaskErosionArrayType UseMaskErosionArrayType
Superclass1::FixedImagePyramidPointer FixedImagePyramidPointer
Superclass2::FixedMaskSpatialObjectType FixedMaskSpatialObjectType
Superclass2::FixedMaskImageType FixedMaskImageType
Superclass1::MovingImagePyramidPointer MovingImagePyramidPointer
void BeforeRegistration(void) override
Superclass2::MovingMaskSpatialObjectPointer MovingMaskSpatialObjectPointer
Superclass1::MovingImagePyramidType MovingImagePyramidType
Superclass2::RegistrationPointer RegistrationPointer
Superclass1::InterpolatorPointer InterpolatorPointer
Superclass1::MovingImageConstPointer MovingImageConstPointer
elxClassNameMacro("MultiResolutionRegistration")
Superclass2::MovingMaskSpatialObjectType MovingMaskSpatialObjectType
itkStaticConstMacro(FixedImageDimension, unsigned int, Superclass2::FixedImageDimension)
Superclass2::ConfigurationPointer ConfigurationPointer
Superclass1::FixedImageConstPointer FixedImageConstPointer
Superclass2::FixedMaskSpatialObjectPointer FixedMaskSpatialObjectPointer
Superclass2::MovingMaskImagePointer MovingMaskImagePointer
RegistrationBase< TElastix >::ITKBaseType Superclass1
void BeforeEachResolution(void) override
This class is the elastix base class for all Registration schemes.
Superclass::RegistrationPointer RegistrationPointer
FixedMaskSpatialObjectType::Pointer FixedMaskSpatialObjectPointer
itk::ImageMaskSpatialObject< itkGetStaticConstMacro(MovingImageDimension) > MovingMaskSpatialObjectType
Superclass::RegistrationType RegistrationType
FixedMaskImageType::Pointer FixedMaskImagePointer
ElastixType::MovingMaskType MovingMaskImageType
std::vector< bool > UseMaskErosionArrayType
ElastixType::FixedMaskType FixedMaskImageType
itk::ImageMaskSpatialObject< itkGetStaticConstMacro(FixedImageDimension) > FixedMaskSpatialObjectType
Superclass::ConfigurationPointer ConfigurationPointer
MovingMaskImageType::Pointer MovingMaskImagePointer
MovingMaskSpatialObjectType::Pointer MovingMaskSpatialObjectPointer
Superclass::ElastixPointer ElastixPointer
Superclass::ElastixType ElastixType
ElastixType::MaskPixelType MaskPixelType
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics.
Transform maps points, vectors and covariant vectors from an input space to an output space.
Base class for multi-resolution image registration methods.
MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > FixedImagePyramidType
MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > MovingImagePyramidType


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.9.1 elastix logo