3 #include <itkProcessObject.h> 4 #include <itkDataObjectDecorator.h> 13 #include <itkStationaryVelocityFieldTransform.h> 14 #include <rpiDisplacementFieldTransform.h> 15 #include <itkAffineTransform.h> 18 #include <itkImageToImageFilter.h> 23 template <
typename TInputImageType>
52 typedef itk::StationaryVelocityFieldTransform <AgregatorScalarType, TInputImageType::ImageDimension>
SVFTransformType;
56 typedef itk::AffineTransform <typename AgregatorType::ScalarType, TInputImageType::ImageDimension>
AffineTransformType;
66 typedef itk::Image <
unsigned char, TInputImageType::ImageDimension>
MaskImageType;
70 itkSetObjectMacro (FixedImage, InputImageType)
71 itkGetMacro (FixedImage, InputImageType *)
74 itkSetObjectMacro (MovingImage, InputImageType)
75 itkGetMacro (MovingImage, InputImageType *)
87 itkSetMacro (MaximumIterations,
unsigned int)
88 itkGetMacro (MaximumIterations,
unsigned int)
91 itkSetMacro(MinimalTransformError,
double)
92 itkGetMacro(MinimalTransformError,
double)
94 itkSetMacro (SVFElasticRegSigma,
double)
95 itkGetMacro (SVFElasticRegSigma,
double)
97 itkSetMacro (BCHCompositionOrder,
unsigned int)
98 itkGetMacro (BCHCompositionOrder,
unsigned int)
100 itkSetMacro (ExponentiationOrder,
unsigned int)
101 itkGetMacro (ExponentiationOrder,
unsigned int)
103 itkSetMacro(VerboseProgression,
bool)
104 itkGetMacro(VerboseProgression,
bool)
120 using Superclass::MakeOutput;
127 virtual void PrintSelf(std::ostream& os, itk::Indent indent)
const ITK_OVERRIDE;
143 unsigned int m_MaximumIterations;
144 double m_MinimalTransformError;
154 double m_SVFElasticRegSigma;
155 unsigned int m_BCHCompositionOrder;
156 unsigned int m_ExponentiationOrder;
159 bool m_VerboseProgression;
TransformOutputType::Pointer TransformOutputPointer
SVFTransformType::Pointer SVFTransformPointer
AgregatorType::BaseInputTransformType BaseInputTransformType
TransformPointer & GetInitialTransform()
ResamplerFilterType::Pointer ResamplerFilterPointer
TInputImageType InputImageType
DisplacementFieldTransformType::Pointer DisplacementFieldTransformPointer
BaseBMRegistrationMethod()
ResamplerFilterPointer & GetMovingImageResampler()
void SetReferenceImageResampler(ResamplerFilterType *filter)
virtual void ResampleImages(TransformType *currentTransform, InputImagePointer &refImage, InputImagePointer &movingImage)
AgregatorType::BaseOutputTransformType TransformType
TInputImageType::IOPixelType ImageScalarType
rpi::DisplacementFieldTransform< AgregatorScalarType, TInputImageType::ImageDimension > DisplacementFieldTransformType
MaskImageType::Pointer MaskImagePointer
virtual DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx) ITK_OVERRIDE
itk::AffineTransform< typename AgregatorType::ScalarType, TInputImageType::ImageDimension > AffineTransformType
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const ITK_OVERRIDE
InputImageType::Pointer InputImagePointer
virtual void SetupTransform(TransformPointer &optimizedTransform)
itk::SmartPointer< Self > Pointer
void SetBlockMatcher(BlockMatcherType *matcher)
itk::DataObjectDecorator< TransformType > TransformOutputType
itk::ProcessObject Superclass
BlockMatcherType * GetBlockMatcher()
TransformOutputType * GetOutput()
itk::ImageToImageFilter< InputImageType, InputImageType > ResamplerFilterType
AffineTransformType::Pointer AffineTransformPointer
void GenerateData() ITK_OVERRIDE
virtual ~BaseBMRegistrationMethod()
void SetMovingImageResampler(ResamplerFilterType *filter)
virtual bool ComposeAddOnWithTransform(TransformPointer &computedTransform, TransformType *addOn)
BaseBMRegistrationMethod Self
ResamplerFilterPointer & GetReferenceImageResampler()
itk::StationaryVelocityFieldTransform< AgregatorScalarType, TInputImageType::ImageDimension > SVFTransformType
AgregatorType::ScalarType AgregatorScalarType
virtual void PerformOneIteration(InputImageType *refImage, InputImageType *movingImage, TransformPointer &addOn)=0
itk::Image< unsigned char, TInputImageType::ImageDimension > MaskImageType
itk::SmartPointer< const Self > ConstPointer
itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
TransformType::Pointer TransformPointer
AgregatorType::BaseOutputTransformType BaseOutputTransformType