NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkSingleResolutionImageRegistrationMethod.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef itkSingleResolutionImageRegistrationMethod_h
16 #define itkSingleResolutionImageRegistrationMethod_h
17 
18 
19 #include <itkImageRegistrationMethod.h>
21 #include <itkSimilarityMeasure.h>
22 
23 namespace itk
24 {
25 
36 template <typename TFixedImage, typename TMovingImage>
37 class ITK_EXPORT SingleResolutionImageRegistrationMethod : public ImageRegistrationMethod<TFixedImage, TMovingImage>
38 {
39 public:
42  typedef ImageRegistrationMethod<TFixedImage, TMovingImage> Superclass;
43  typedef SmartPointer<Self> Pointer;
44  typedef SmartPointer<const Self> ConstPointer;
46  typedef IterationUpdateCommandType::Pointer IterationUpdateCommandPointer;
47 
49  itkNewMacro(Self);
50 
52  itkTypeMacro(SingleResolutionImageRegistrationMethod, ImageRegistrationMethod);
53 
55  typedef typename Superclass::ParametersType ParametersType;
57  typedef typename Superclass::InterpolatorType InterpolatorType;
58 
60  itkSetObjectMacro( IterationUpdateCommand, IterationUpdateCommandType );
61  itkGetObjectMacro( IterationUpdateCommand, IterationUpdateCommandType );
62 
66  itkSetObjectMacro(FixedImageInterpolator, InterpolatorType);
67  itkSetObjectMacro(MovingImageInterpolator, InterpolatorType);
68  itkGetObjectMacro(FixedImageInterpolator, InterpolatorType);
69  itkGetObjectMacro(MovingImageInterpolator, InterpolatorType);
70 
75  virtual void Initialize() throw (ExceptionObject);
76 
77 protected:
79  virtual ~SingleResolutionImageRegistrationMethod() {};
80  void PrintSelf(std::ostream& os, Indent indent) const;
81 
86  void GenerateData ();
87 
89  virtual void DoRegistration() throw (ExceptionObject);
90 
97  typename InterpolatorType::Pointer m_FixedImageInterpolator;
101  typename InterpolatorType::Pointer m_MovingImageInterpolator;
102 
103 private:
104 
105  SingleResolutionImageRegistrationMethod(const Self&); //purposely not implemented
106  void operator=(const Self&); //purposely not implemented
107 
109  IterationUpdateCommandPointer m_IterationUpdateCommand;
110 
111 };
112 
113 
114 } // end namespace itk
115 
116 
117 #ifndef ITK_MANUAL_INSTANTIATION
118 #include "itkSingleResolutionImageRegistrationMethod.txx"
119 #endif
120 
121 #endif
122 
123 
124 
Superclass::TransformType TransformType
Definition: itkSingleResolutionImageRegistrationMethod.h:56
IterationUpdateCommandType::Pointer IterationUpdateCommandPointer
Definition: itkSingleResolutionImageRegistrationMethod.h:46
Superclass::ParametersType ParametersType
Definition: itkSingleResolutionImageRegistrationMethod.h:52
itk::IterationUpdateCommand IterationUpdateCommandType
Definition: itkSingleResolutionImageRegistrationMethod.h:45
Simply prints out the registration params, so we can track registration.
Definition: itkIterationUpdateCommand.h:38
ImageRegistrationMethod< TFixedImage, TMovingImage > Superclass
Definition: itkSingleResolutionImageRegistrationMethod.h:42
Definition: niftkITKAffineResampleImage.cxx:74
itk::EulerAffineTransform< double, 2, 2 > TransformType
Definition: EulerAffine2DJacobianTest.cxx:27
SmartPointer< Self > Pointer
Definition: itkSingleResolutionImageRegistrationMethod.h:43
Superclass::InterpolatorType InterpolatorType
Definition: itkSingleResolutionImageRegistrationMethod.h:57
SmartPointer< const Self > ConstPointer
Definition: itkSingleResolutionImageRegistrationMethod.h:44
Base class for NifTK Image Registration Methods.
Definition: itkSingleResolutionImageRegistrationMethod.h:37
SingleResolutionImageRegistrationMethod Self
Definition: itkSingleResolutionImageRegistrationMethod.h:41