NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
itk::MultiStageImageRegistrationMethod< TInputImageType > Class Template Reference

Base Class specifically for doing multiple stage registrations. More...

Inheritance diagram for itk::MultiStageImageRegistrationMethod< TInputImageType >:
Inheritance graph
[legend]
Collaboration diagram for itk::MultiStageImageRegistrationMethod< TInputImageType >:
Collaboration graph
[legend]

Public Types

typedef
MultiStageImageRegistrationMethod 
Self
 
typedef
MaskedImageRegistrationMethod
< TInputImageType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef ImageToImageMetric
< TInputImageType,
TInputImageType > 
MetricType
 
typedef
MetricType::TransformParametersType 
ParametersType
 
typedef MetricType::DerivativeType DerivativeType
 
typedef
itk::EulerAffineTransform
< double,
TInputImageType::ImageDimension,
TInputImageType::ImageDimension > 
TransformType
 
typedef TransformTypeTransformPointer
 
typedef UCLRegularStepOptimizer OptimizerType
 
typedef OptimizerTypeOptimizerPointer
 
typedef OptimizerType::ScalesType ScalesType
 
- Public Types inherited from itk::MaskedImageRegistrationMethod< TInputImageType >
typedef
MaskedImageRegistrationMethod 
Self
 
typedef
SingleResolutionImageRegistrationMethod
< TInputImageType,
TInputImageType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef TInputImageType InputImageType
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef InputImageType::SizeType InputImageSizeType
 
typedef InputImageType::IndexType InputImageIndexType
 
typedef InputImageType::SpacingType InputImageSpacingType
 
typedef InputImageType::PointType InputImageOriginType
 
typedef
InputImageType::DirectionType 
InputImageDirectionType
 
typedef
BoundaryValueRescaleIntensityImageFilter
< InputImageType
RescaleFilterType
 
typedef RescaleFilterType::Pointer RescaleFilterPointer
 
typedef
SmoothingRecursiveGaussianImageFilter
< InputImageType,
InputImageType
SmoothingFilterType
 
typedef
SmoothingFilterType::Pointer 
SmoothingFilterPointer
 
typedef
BinaryThresholdImageFilter
< InputImageType,
InputImageType
ThresholdFilterType
 
typedef
ThresholdFilterType::Pointer 
ThresholdFilterPointer
 
typedef
BinaryCrossStructuringElement
< InputImagePixelType,
InputImageType::ImageDimension > 
StructuringType
 
typedef
BinaryDilateImageFilter
< InputImageType,
InputImageType,
StructuringType
DilateMaskFilterType
 
typedef
DilateMaskFilterType::Pointer 
DilateMaskFilterPointer
 
typedef MultiplyImageFilter
< InputImageType,
InputImageType
MultiplyFilterType
 
typedef MultiplyFilterType::Pointer MultiplyFilterPointer
 
typedef unsigned char MaskPixelType
 
typedef Image< MaskPixelType,
InputImageType::ImageDimension > 
MaskImageType
 
typedef CastImageFilter
< InputImageType,
MaskImageType
CastToMaskImageTypeFilterType
 
typedef
CastToMaskImageTypeFilterType::Pointer 
CastToMaskImageTypeFilterPointer
 
typedef ImageMaskSpatialObject
< InputImageType::ImageDimension > 
MaskFilterType
 
typedef MaskFilterType::Pointer MaskFilterPointer
 
typedef Superclass::TransformType TransformType
 
- Public Types inherited from itk::SingleResolutionImageRegistrationMethod< TInputImageType, TInputImageType >
typedef
SingleResolutionImageRegistrationMethod 
Self
 
typedef
ImageRegistrationMethod
< TInputImageType,
TInputImageType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef itk::IterationUpdateCommand IterationUpdateCommandType
 
typedef
IterationUpdateCommandType::Pointer 
IterationUpdateCommandPointer
 
typedef Superclass::ParametersType ParametersType
 
typedef Superclass::TransformType TransformType
 
typedef
Superclass::InterpolatorType 
InterpolatorType
 

Public Member Functions

virtual const char * GetClassName () const
 
- Public Member Functions inherited from itk::MaskedImageRegistrationMethod< TInputImageType >
void SetFixedMask (const InputImageType *fixedMask)
 
virtual const InputImageTypeGetFixedMask ()
 
void SetMovingMask (const InputImageType *movingMask)
 
virtual const InputImageTypeGetMovingMask ()
 
virtual void SetUseFixedMask (bool _arg)
 
virtual bool GetUseFixedMask () const
 
virtual void SetUseMovingMask (bool _arg)
 
virtual bool GetUseMovingMask () const
 
virtual void SetNumberOfDilations (unsigned int _arg)
 
virtual unsigned int GetNumberOfDilations ()
 
virtual void SetMaskImageDirectly (bool _arg)
 
virtual bool GetMaskImageDirectly ()
 
virtual void SetRescaleFixedImage (bool _arg)
 
virtual bool GetRescaleFixedImage () const
 
virtual void SetRescaleFixedMinimum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleFixedMinimum () const
 
virtual void SetRescaleFixedMaximum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleFixedMaximum () const
 
virtual void SetRescaleFixedBoundaryValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleFixedBoundaryValue () const
 
virtual void SetRescaleFixedLowerThreshold (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleFixedLowerThreshold () const
 
virtual void SetRescaleFixedUpperThreshold (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleFixedUpperThreshold () const
 
virtual void SetRescaleMovingImage (bool _arg)
 
virtual bool GetRescaleMovingImage () const
 
virtual void SetRescaleMovingMinimum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleMovingMinimum () const
 
virtual void SetRescaleMovingMaximum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleMovingMaximum () const
 
virtual void SetRescaleMovingBoundaryValue (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleMovingBoundaryValue () const
 
virtual void SetRescaleMovingLowerThreshold (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleMovingLowerThreshold () const
 
virtual void SetRescaleMovingUpperThreshold (InputImagePixelType _arg)
 
virtual InputImagePixelType GetRescaleMovingUpperThreshold () const
 
virtual void SetThresholdFixedMask (bool _arg)
 
virtual bool GetThresholdFixedMask () const
 
virtual void SetFixedMaskMinimum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetFixedMaskMinimum () const
 
virtual void SetFixedMaskMaximum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetFixedMaskMaximum () const
 
virtual void SetThresholdMovingMask (bool _arg)
 
virtual bool GetThresholdMovingMask () const
 
virtual void SetMovingMaskMinimum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetMovingMaskMinimum () const
 
virtual void SetMovingMaskMaximum (InputImagePixelType _arg)
 
virtual InputImagePixelType GetMovingMaskMaximum () const
 
virtual void SetSigma (float _arg)
 
virtual float GetSigma ()
 
InputImageTypeGetFixedImageCopy ()
 
InputImageTypeGetMovingImageCopy ()
 
- Public Member Functions inherited from itk::SingleResolutionImageRegistrationMethod< TInputImageType, TInputImageType >
virtual void SetIterationUpdateCommand (IterationUpdateCommandType *_arg)
 
virtual
IterationUpdateCommandType
GetIterationUpdateCommand ()
 
virtual void SetFixedImageInterpolator (InterpolatorType *_arg)
 
virtual void SetMovingImageInterpolator (InterpolatorType *_arg)
 
virtual InterpolatorTypeGetFixedImageInterpolator ()
 
virtual InterpolatorTypeGetMovingImageInterpolator ()
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::MaskedImageRegistrationMethod< TInputImageType >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::SingleResolutionImageRegistrationMethod< TInputImageType, TInputImageType >
static Pointer New ()
 

Protected Member Functions

 MultiStageImageRegistrationMethod ()
 
virtual ~MultiStageImageRegistrationMethod ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void DoRegistration () throw (ExceptionObject)
 
virtual void DoMultiStageRegistration (OptimizerPointer optimizer, TransformPointer transform) throw (ExceptionObject)
 
virtual void SetLoopTolerance (double _arg)
 
virtual double GetLoopTolerance ()
 
virtual void SetMaxNumberOfLoops (unsigned int _arg)
 
virtual unsigned int GetMaxNumberOfLoops ()
 
virtual void SetLoopStepSizeReductionFactor (double _arg)
 
virtual double GetLoopStepSizeReductionFactor ()
 
- Protected Member Functions inherited from itk::MaskedImageRegistrationMethod< TInputImageType >
 MaskedImageRegistrationMethod ()
 
virtual ~MaskedImageRegistrationMethod ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void Initialize () throw (ExceptionObject)
 
void CopyImage (const InputImageType *source, InputImageType *target)
 
- Protected Member Functions inherited from itk::SingleResolutionImageRegistrationMethod< TInputImageType, TInputImageType >
 SingleResolutionImageRegistrationMethod ()
 
virtual ~SingleResolutionImageRegistrationMethod ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
void GenerateData ()
 

Additional Inherited Members

- Protected Attributes inherited from itk::SingleResolutionImageRegistrationMethod< TInputImageType, TInputImageType >
InterpolatorType::Pointer m_FixedImageInterpolator
 
InterpolatorType::Pointer m_MovingImageInterpolator
 

Detailed Description

template<typename TInputImageType>
class itk::MultiStageImageRegistrationMethod< TInputImageType >

Base Class specifically for doing multiple stage registrations.

The aim is so that we can test registration methods that do things like:

1.) Optimize translations then rotations.

2.) Optimize translations then rotations then scales.

3.) Optimize rigid parameters (translations & rotations) then scales.

We have an initial step size. We loop round a combination such as translate, rotate, scale, calling StartOptimization for each. We keep looping until neither translation, rotation and scale have less change on cost function than the tolerance. We then reduce the step size and try again.

Member Typedef Documentation

template<typename TInputImageType >
typedef SmartPointer<const Self> itk::MultiStageImageRegistrationMethod< TInputImageType >::ConstPointer
template<typename TInputImageType >
typedef MetricType::DerivativeType itk::MultiStageImageRegistrationMethod< TInputImageType >::DerivativeType
template<typename TInputImageType >
typedef ImageToImageMetric< TInputImageType, TInputImageType > itk::MultiStageImageRegistrationMethod< TInputImageType >::MetricType

Typedefs.

template<typename TInputImageType >
typedef OptimizerType* itk::MultiStageImageRegistrationMethod< TInputImageType >::OptimizerPointer
template<typename TInputImageType >
typedef UCLRegularStepOptimizer itk::MultiStageImageRegistrationMethod< TInputImageType >::OptimizerType

Subclasses all RELY on this optimizer.

template<typename TInputImageType >
typedef MetricType::TransformParametersType itk::MultiStageImageRegistrationMethod< TInputImageType >::ParametersType
template<typename TInputImageType >
typedef SmartPointer<Self> itk::MultiStageImageRegistrationMethod< TInputImageType >::Pointer
template<typename TInputImageType >
typedef OptimizerType::ScalesType itk::MultiStageImageRegistrationMethod< TInputImageType >::ScalesType
template<typename TInputImageType >
typedef MultiStageImageRegistrationMethod itk::MultiStageImageRegistrationMethod< TInputImageType >::Self

Standard class typedefs.

template<typename TInputImageType >
typedef MaskedImageRegistrationMethod<TInputImageType> itk::MultiStageImageRegistrationMethod< TInputImageType >::Superclass
template<typename TInputImageType >
typedef TransformType* itk::MultiStageImageRegistrationMethod< TInputImageType >::TransformPointer
template<typename TInputImageType >
typedef itk::EulerAffineTransform<double, TInputImageType::ImageDimension, TInputImageType::ImageDimension> itk::MultiStageImageRegistrationMethod< TInputImageType >::TransformType

Subclasses all RELY on this transformation.

Constructor & Destructor Documentation

template<typename TInputImageType >
itk::MultiStageImageRegistrationMethod< TInputImageType >::MultiStageImageRegistrationMethod ( )
protected
template<typename TInputImageType >
virtual itk::MultiStageImageRegistrationMethod< TInputImageType >::~MultiStageImageRegistrationMethod ( )
inlineprotectedvirtual

Member Function Documentation

template<typename TInputImageType >
virtual void itk::MultiStageImageRegistrationMethod< TInputImageType >::DoMultiStageRegistration ( OptimizerPointer  optimizer,
TransformPointer  transform 
)
throw (ExceptionObject
)
inlineprotectedvirtual
template<typename TInputImageType >
virtual void itk::MultiStageImageRegistrationMethod< TInputImageType >::DoRegistration ( )
throw (ExceptionObject
)
protectedvirtual
template<typename TInputImageType >
virtual const char* itk::MultiStageImageRegistrationMethod< TInputImageType >::GetClassName ( ) const
virtual
template<typename TInputImageType >
virtual double itk::MultiStageImageRegistrationMethod< TInputImageType >::GetLoopStepSizeReductionFactor ( )
protectedvirtual
template<typename TInputImageType >
virtual double itk::MultiStageImageRegistrationMethod< TInputImageType >::GetLoopTolerance ( )
protectedvirtual
template<typename TInputImageType >
virtual unsigned int itk::MultiStageImageRegistrationMethod< TInputImageType >::GetMaxNumberOfLoops ( )
protectedvirtual
template<typename TInputImageType >
static Pointer itk::MultiStageImageRegistrationMethod< TInputImageType >::New ( )
static

Method for creation through the object factory.

template<typename TInputImageType >
void itk::MultiStageImageRegistrationMethod< TInputImageType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected
template<typename TInputImageType >
virtual void itk::MultiStageImageRegistrationMethod< TInputImageType >::SetLoopStepSizeReductionFactor ( double  _arg)
protectedvirtual

Set the reduction factor.

template<typename TInputImageType >
virtual void itk::MultiStageImageRegistrationMethod< TInputImageType >::SetLoopTolerance ( double  _arg)
protectedvirtual

Set the tolerance.

template<typename TInputImageType >
virtual void itk::MultiStageImageRegistrationMethod< TInputImageType >::SetMaxNumberOfLoops ( unsigned int  _arg)
protectedvirtual

Maximum times round the loop


The documentation for this class was generated from the following file: