15 #ifndef itkImageRegistrationFactory_h
16 #define itkImageRegistrationFactory_h
18 #include <itkProcessObject.h>
19 #include <itkConstantBoundaryCondition.h>
20 #include <itkWindowedSincInterpolateImageFunction.h>
23 #include <itkInterpolateImageFunction.h>
24 #include <itkLinearInterpolateImageFunction.h>
25 #include <itkNearestNeighborInterpolateImageFunction.h>
26 #include <itkBSplineInterpolateImageFunction.h>
42 #include <itkTransform.h>
47 #include <itkAffineTransform.h>
52 #include <itkSingleValuedNonLinearOptimizer.h>
53 #include <itkGradientDescentOptimizer.h>
56 #include <itkConjugateGradientOptimizer.h>
57 #include <itkPowellOptimizer.h>
159 template <
typename TInputImageType,
unsigned int Dimension,
class TScalarType>
190 const static unsigned int WindowRadius = 5;
192 typedef itk::WindowedSincInterpolateImageFunction<
196 BoundaryConditionType,
269 virtual typename OptimizerType::Pointer CreateOptimizer(
OptimizerTypeEnum optimizerType);
278 void PrintSelf(std::ostream& os, Indent indent)
const override;
282 void operator=(
const Self&);
289 #ifndef ITK_MANUAL_INSTANTIATION
290 #include "itkImageRegistrationFactory.txx"
InterpolationTypeEnum
Definition: itkImageRegistrationFactory.h:79
itk::EulerAffineTransform< TScalarType, Dimension, Dimension > EulerAffineTransformType
Definition: itkImageRegistrationFactory.h:215
Implements Normalized Cross Correlation similarity measure.
Definition: itkNCCImageToImageMetric.h:29
itk::ConstantBoundaryCondition< TInputImageType > BoundaryConditionType
Definition: itkImageRegistrationFactory.h:189
Definition: itkImageRegistrationFactory.h:85
Definition: itkImageRegistrationFactory.h:118
Object Superclass
Definition: itkImageRegistrationFactory.h:166
itk::WindowedSincInterpolateImageFunction< TInputImageType, WindowRadius, WindowFunctionType, BoundaryConditionType, TScalarType > SincInterpolatorType
Definition: itkImageRegistrationFactory.h:197
itk::SimilarityMeasure< TInputImageType, TInputImageType > MetricType
Definition: itkImageRegistrationFactory.h:200
Definition: itkImageRegistrationFactory.h:82
itk::TranslationThenRotationImageRegistrationMethod< TInputImageType > TranslationThenRotationRegistrationType
Definition: itkImageRegistrationFactory.h:241
itk::UCLSimplexOptimizer SimplexType
Definition: itkImageRegistrationFactory.h:224
MultiResRegistrationMethodTypeEnum
Definition: itkImageRegistrationFactory.h:139
Implements Correlation Ratio (Fixed | Moving), without a histogram.
Definition: itkCRImageToImageMetric.h:36
Implements Normalised Mutual Information of a histogram for a similarity measure. ...
Definition: itkNMIImageToImageMetric.h:29
Definition: itkImageRegistrationFactory.h:94
TransformTypeEnum
Definition: itkImageRegistrationFactory.h:105
itk::AffineTransform< TScalarType, Dimension > ITKAffineTransformType
Definition: itkImageRegistrationFactory.h:218
Definition: itkImageRegistrationFactory.h:92
SmartPointer< Self > Pointer
Definition: itkImageRegistrationFactory.h:167
Abstract base class, implementing TemplateMethod [2] for similarity measures.
Definition: itkSimilarityMeasure.h:56
Base class for NifTK Image Registration Methods employing a binary mask.
Definition: itkMaskedImageRegistrationMethod.h:55
itk::Function::WelchWindowFunction< WindowRadius > WindowFunctionType
Definition: itkImageRegistrationFactory.h:191
ImageRegistrationFactory Self
Definition: itkImageRegistrationFactory.h:165
SimplexType * SimplexPointer
Definition: itkImageRegistrationFactory.h:225
itk::NCCImageToImageMetric< TInputImageType, TInputImageType > NCCMetricType
Definition: itkImageRegistrationFactory.h:203
SmartPointer< Self > Pointer
Definition: itkSimilarityMeasure.h:64
itk::JEImageToImageMetric< TInputImageType, TInputImageType > JEMetricType
Definition: itkImageRegistrationFactory.h:207
itk::LinearInterpolateImageFunction< TInputImageType, TScalarType > LinearInterpolatorType
Definition: itkImageRegistrationFactory.h:186
itk::UCLRegularStepOptimizer UCLRegularStepOptimizerType
Definition: itkImageRegistrationFactory.h:234
GLuint GLuint GLsizei GLenum type
Definition: glew.h:1237
itk::MIImageToImageMetric< TInputImageType, TInputImageType > MIMetricType
Definition: itkImageRegistrationFactory.h:208
Simply prints out the registration params, so we can track registration.
Definition: itkVnlIterationUpdateCommand.h:42
Definition: itkImageRegistrationFactory.h:133
Definition: itkImageRegistrationFactory.h:109
Definition: itkImageRegistrationFactory.h:132
itk::InterpolateImageFunction< TInputImageType, TScalarType > InterpolatorType
Definition: itkImageRegistrationFactory.h:184
itk::UCLPowellOptimizer UCLPowellOptimizerType
Definition: itkImageRegistrationFactory.h:236
Definition: itkImageRegistrationFactory.h:124
itk::SSDImageToImageMetric< TInputImageType, TInputImageType > SSDMetricType
Definition: itkImageRegistrationFactory.h:201
RegularStepGradientDescentType * RegularStepGradientDescentPointer
Definition: itkImageRegistrationFactory.h:229
Definition: itkImageRegistrationFactory.h:112
Definition: itkImageRegistrationFactory.h:142
Implements Mean of Squared Difference similarity measure.
Definition: itkMSDImageToImageMetric.h:29
Simply prints out the registration params, so we can track registration.
Definition: itkIterationUpdateCommand.h:38
SmartPointer< Self > Pointer
Definition: itkMaskedImageRegistrationMethod.h:63
Class specifically for doing Rigid plus Scale registration.
Definition: itkRigidPlusScaleImageRegistrationMethod.h:38
itk::MSDImageToImageMetric< TInputImageType, TInputImageType > MSDMetricType
Definition: itkImageRegistrationFactory.h:202
Definition: niftkITKAffineResampleImage.cxx:74
Definition: itkImageRegistrationFactory.h:121
Definition: itkImageRegistrationFactory.h:98
Subclass itkAmoebaOptimizer to fix bug in SetCostFunction.
Definition: itkUCLSimplexOptimizer.h:32
Implements Sums of Squared Difference similarity measure.
Definition: itkSSDImageToImageMetric.h:29
ConjugateGradientType * ConjugateGradientPointer
Definition: itkImageRegistrationFactory.h:231
Definition: itkImageRegistrationFactory.h:96
Definition: itkImageRegistrationFactory.h:135
MetricTypeEnum
Definition: itkImageRegistrationFactory.h:89
Definition: itkImageRegistrationFactory.h:97
Definition: itkImageRegistrationFactory.h:119
Class specifically for doing Translate, Rotate, Scale registration.
Definition: itkTranslateRotateScaleImageRegistrationMethod.h:40
Definition: itkImageRegistrationFactory.h:86
itk::IterationUpdateCommand IterationUpdateCommandType
Definition: itkImageRegistrationFactory.h:180
Implements Sums of Absolute Differences similarity measure.
Definition: itkSADImageToImageMetric.h:29
itk::MultiResolutionImageRegistrationWrapper< TInputImageType > MultiResRegistrationType
Definition: itkImageRegistrationFactory.h:248
virtual ~ImageRegistrationFactory()
Definition: itkImageRegistrationFactory.h:277
Definition: itkImageRegistrationFactory.h:95
Implement a Regular Step Size optimizer.
Definition: itkUCLRegularStepOptimizer.h:32
Definition: itkImageRegistrationFactory.h:102
Definition: itkImageRegistrationFactory.h:83
Definition: itkImageRegistrationFactory.h:111
Definition: itkImageRegistrationFactory.h:120
Definition: itkImageRegistrationFactory.h:131
Implements Mutual Information of a histogram for a similarity measure.
Definition: itkMIImageToImageMetric.h:29
Class specifically for doing registration that alternately solves the translation components...
Definition: itkTranslationThenRotationImageRegistrationMethod.h:39
float PixelType
Definition: niftkBreastDCEandADC.cxx:88
itk::Transform< TScalarType, Dimension, Dimension > TransformType
Definition: itkImageRegistrationFactory.h:213
itk::SingleValuedNonLinearOptimizer OptimizerType
Definition: itkImageRegistrationFactory.h:223
Definition: itkImageRegistrationFactory.h:108
itk::ConjugateGradientOptimizer ConjugateGradientType
Definition: itkImageRegistrationFactory.h:230
Definition: itkImageRegistrationFactory.h:100
OptimizerTypeEnum
Definition: itkImageRegistrationFactory.h:115
itk::PerspectiveProjectionTransform< TScalarType > PerspectiveProjectionTransformType
Definition: itkImageRegistrationFactory.h:214
Definition: itkImageRegistrationFactory.h:93
itk::MaskedImageRegistrationMethod< TInputImageType > SingleResRegistrationType
Definition: itkImageRegistrationFactory.h:240
itk::NearestNeighborInterpolateImageFunction< TInputImageType, TScalarType > NearestNeighbourInterpolatorType
Definition: itkImageRegistrationFactory.h:185
itk::SmartPointer< Self > Pointer
Definition: itkIterationUpdateCommand.h:43
PowellOptimizerType * PowellOptimizerPointer
Definition: itkImageRegistrationFactory.h:233
TInputImageType::PixelType InputPixelType
Definition: itkImageRegistrationFactory.h:174
itk::RIUImageToImageMetric< TInputImageType, TInputImageType > RIUMetricType
Definition: itkImageRegistrationFactory.h:205
UCLPowellOptimizerType * UCLPowellOptimizerPointer
Definition: itkImageRegistrationFactory.h:237
Definition: itkImageRegistrationFactory.h:125
itk::GradientDescentOptimizer GradientDescentType
Definition: itkImageRegistrationFactory.h:226
Definition: itkImageRegistrationFactory.h:99
Definition: itkImageRegistrationFactory.h:123
Initial implementation of Seb Ourselin's block matching algorithm.
Definition: itkBlockMatchingMethod.h:67
itk::NMIImageToImageMetric< TInputImageType, TInputImageType > NMIMetricType
Definition: itkImageRegistrationFactory.h:209
itk::RigidPlusScaleImageRegistrationMethod< TInputImageType > RigidPlusScaleRegistrationType
Definition: itkImageRegistrationFactory.h:243
Definition: itkImageRegistrationFactory.h:122
itk::PCADeformationModelTransform< TScalarType, Dimension > PCADeformationModelTransformType
Definition: itkImageRegistrationFactory.h:219
Definition: itkImageRegistrationFactory.h:134
itk::FluidDeformableTransform< TInputImageType, TScalarType, Dimension, float > FluidDeformableTransformType
Definition: itkImageRegistrationFactory.h:217
Definition: itkImageRegistrationFactory.h:136
Definition: itkImageRegistrationFactory.h:143
Definition: itkImageRegistrationFactory.h:84
SingleResRegistrationMethodTypeEnum
Definition: itkImageRegistrationFactory.h:128
itk::BlockMatchingMethod< TInputImageType, TScalarType > BlockMatchingRegistrationType
Definition: itkImageRegistrationFactory.h:244
itk::UCLRegularStepGradientDescentOptimizer RegularStepGradientDescentType
Definition: itkImageRegistrationFactory.h:228
SmartPointer< const Self > ConstPointer
Definition: itkImageRegistrationFactory.h:168
Implements Joint Entropy of a histogram for a similarity measure.
Definition: itkJEImageToImageMetric.h:29
itk::PowellOptimizer PowellOptimizerType
Definition: itkImageRegistrationFactory.h:232
Implements Roger Woods PIU image similarity measure.
Definition: itkPIUImageToImageMetric.h:29
Implements Roger Woods Ratio Image Uniformity, but beware, its non-symetrical, as the base class does...
Definition: itkRIUImageToImageMetric.h:31
itk::UCLBSplineTransform< TInputImageType, TScalarType, Dimension, float > BSplineDeformableTransformType
Definition: itkImageRegistrationFactory.h:216
itk::TranslationPCADeformationModelTransform< TScalarType, Dimension > TranslationPCADeformationModelTransformType
Definition: itkImageRegistrationFactory.h:220
itk::SADImageToImageMetric< TInputImageType, TInputImageType > SADMetricType
Definition: itkImageRegistrationFactory.h:204
Definition: itkUCLRegularStepGradientDescentOptimizer.h:42
itk::VnlIterationUpdateCommand VnlIterationUpdateCommandType
Definition: itkImageRegistrationFactory.h:181
SmartPointer< Self > Pointer
Definition: itkMultiResolutionImageRegistrationWrapper.h:47
Definition: itkUCLPowellOptimizer.h:64
itk::TranslateRotateScaleImageRegistrationMethod< TInputImageType > TranslateRotateScaleRegistrationType
Definition: itkImageRegistrationFactory.h:242
Parameterised Factory Pattern [2] for creating registration objects.
Definition: itkImageRegistrationFactory.h:160
itk::BSplineInterpolateImageFunction< TInputImageType, TScalarType > BSplineInterpolatorType
Definition: itkImageRegistrationFactory.h:187
itk::CRImageToImageMetric< TInputImageType, TInputImageType > CRMetricType
Definition: itkImageRegistrationFactory.h:210
UCLRegularStepOptimizerType * UCLRegularStepOptimizerTypePointer
Definition: itkImageRegistrationFactory.h:235
GLsizei const GLcharARB ** string
Definition: glew.h:5194
Definition: itkImageRegistrationFactory.h:110
UCL Base class for multi-resolution image registration methods.
Definition: itkMultiResolutionImageRegistrationWrapper.h:41
Definition: itkImageRegistrationFactory.h:101
itk::PIUImageToImageMetric< TInputImageType, TInputImageType > PIUMetricType
Definition: itkImageRegistrationFactory.h:206
GradientDescentType * GradientDescentPointer
Definition: itkImageRegistrationFactory.h:227