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  * 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 __elxMultiResolutionRegistrationWithFeatures_H__
19 #define __elxMultiResolutionRegistrationWithFeatures_H__
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
23 
24 namespace elastix
25 {
26 
52 template< class TElastix >
54  public
56  typename RegistrationBase< TElastix >::FixedImageType,
57  typename RegistrationBase< TElastix >::MovingImageType >,
58  public
59  RegistrationBase< TElastix >
60 {
61 public:
62 
70  typedef itk::SmartPointer< Self > Pointer;
71  typedef itk::SmartPointer< const Self > ConstPointer;
72 
74  itkNewMacro( Self );
75 
79 
84  elxClassNameMacro( "MultiResolutionRegistrationWithFeatures" );
85 
92 
96 
100 
104 
108 
112 
116 
120 
125 
127  //typedef typename Superclass1::CombinationMetricType CombinationMetricType;
128  //typedef typename Superclass1::CombinationMetricPointer CombinationMetricPointer;
129 
139 
141  itkStaticConstMacro( FixedImageDimension, unsigned int, Superclass2::FixedImageDimension );
142 
144  itkStaticConstMacro( MovingImageDimension, unsigned int, Superclass2::MovingImageDimension );
145 
152  void BeforeRegistration( void ) override;
153 
158  void BeforeEachResolution( void ) override;
159 
160 protected:
161 
164 
167 
178 
180  void UpdateFixedMasks( unsigned int level );
181 
182  void UpdateMovingMasks( unsigned int level );
183 
185  virtual void GetAndSetComponents( void );
186 
188  virtual void GetAndSetFixedImageRegions( void );
189 
191  virtual void GetAndSetFixedImageInterpolators( void );
192 
193 private:
194 
196  MultiResolutionRegistrationWithFeatures( const Self & ); // purposely not implemented
198  void operator=( const Self & ); // purposely not implemented
199 
200 };
201 
202 } // end namespace elastix
203 
204 #ifndef ITK_MANUAL_INSTANTIATION
205 #include "elxMultiResolutionRegistrationWithFeatures.hxx"
206 #endif
207 
208 #endif // end #ifndef __elxMultiResolutionRegistrationWithFeatures_H__
A class that deals with user given parameters and command line arguments.
A registration framework based on the itk::MultiResolutionImageRegistrationMethodWithFeatures.
itkStaticConstMacro(MovingImageDimension, unsigned int, Superclass2::MovingImageDimension)
Superclass2::MovingMaskSpatialObjectPointer MovingMaskSpatialObjectPointer
itkStaticConstMacro(FixedImageDimension, unsigned int, Superclass2::FixedImageDimension)
elxClassNameMacro("MultiResolutionRegistrationWithFeatures")
itk::MultiResolutionImageRegistrationMethodWithFeatures< typename RegistrationBase< TElastix >::FixedImageType, typename RegistrationBase< TElastix >::MovingImageType > Superclass1
This class is the elastix base class for all Registration schemes.
Superclass::RegistrationPointer RegistrationPointer
FixedMaskSpatialObjectType::Pointer FixedMaskSpatialObjectPointer
itk::ImageMaskSpatialObject< itkGetStaticConstMacro(MovingImageDimension) > MovingMaskSpatialObjectType
ElastixType::MovingImageType MovingImageType
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::FixedImageType FixedImageType
ElastixType::MaskPixelType MaskPixelType
Base class for multi-resolution image registration methods.


Generated on 1667476801 for elastix by doxygen 1.9.1 elastix logo