#include <freRigidRegistrationProcessor.h>


Public Types | |
| typedef MultiRigidRegistrationProcessor < VImageDimension > | Self |
| typedef RigidRegistrationProcessorBase < itk::MultiResolutionImageRegistrationMethod < typename ImageTypes < VImageDimension > ::InternalImageType, typename ImageTypes < VImageDimension > ::InternalImageType >, itk::Transform < ScalarType, VImageDimension, VImageDimension >, itk::InterpolateImageFunction < typename ImageTypes < VImageDimension > ::InternalImageType, ScalarType >, itk::ImageToImageMetric < typename ImageTypes < VImageDimension > ::InternalImageType, typename ImageTypes < VImageDimension > ::InternalImageType >, itk::SingleValuedNonLinearOptimizer, VImageDimension > | Superclass |
| typedef itk::SmartPointer < Self > | Pointer |
| typedef itk::SmartPointer < const Self > | ConstPointer |
| typedef Superclass::RegistrationType | RegistrationType |
| typedef Superclass::RegistrationPointer | RegistrationPointer |
| typedef Superclass::TransformType | TransformType |
| typedef Superclass::TransformPointer | TransformPointer |
| typedef Superclass::InterpolatorType | InterpolatorType |
| typedef Superclass::InterpolatorPointer | InterpolatorPointer |
| typedef Superclass::MetricType | MetricType |
| typedef Superclass::MetricPointer | MetricPointer |
| typedef Superclass::OptimizerType | OptimizerType |
| typedef Superclass::OptimizerPointer | OptimizerPointer |
| typedef Superclass::ImageType | ImageType |
| typedef Superclass::RegionType | RegionType |
| typedef Superclass::ImagePointer | ImagePointer |
| typedef Superclass::PointType | PointType |
| typedef Superclass::TransformFieldType | TransformFieldType |
| typedef Superclass::TransformFieldPointer | TransformFieldPointer |
| typedef itk::MultiResolutionPyramidImageFilter < ImageType, ImageType > | PyramidType |
| typedef PyramidType::Pointer | PyramidPointer |
Public Member Functions | |
| virtual const char * | GetNameOfClass () const |
| virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
| virtual const int | GetResolutionLevelCount () const |
Static Public Member Functions | |
| static Pointer | New (void) |
Public Attributes | |
| IterationObserver::Pointer | m_LevelObserver |
| NotificationEvent < Self >::Pointer | m_LevelNotificationEvent |
| PyramidPointer | smpFixedImagePyramid |
| PyramidPointer | smpMovingImagePyramid |
Protected Member Functions | |
| MultiRigidRegistrationProcessor () | |
| virtual | ~MultiRigidRegistrationProcessor () |
| virtual void | ComputeRegistration () |
| void | OnNewLevel (void *pSender, long threadID) |
Protected Attributes | |
| bool | m_bFirstResLevel |
RigidRegistrationProcessor is a class for rigid registration process with multiple levels of image resolution and is set up by ControllerCentral and the controllers, calling their BuildSetup function. In the normal process of registration a registration processor isn't needed to be created by the user, it is normally created by a TransformController. There also the decision is made, which derivate of the Registration- ProcessorBase is to be used. The registration processor is templated with the Image type and the type of the transformation field.
Definition at line 181 of file freRigidRegistrationProcessor.h.
| typedef MultiRigidRegistrationProcessor<VImageDimension> FREE::MultiRigidRegistrationProcessor< VImageDimension >::Self |
Standard typedefs
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 189 of file freRigidRegistrationProcessor.h.
| typedef RigidRegistrationProcessorBase<itk::MultiResolutionImageRegistrationMethod < typename ImageTypes<VImageDimension>::InternalImageType , typename ImageTypes<VImageDimension>::InternalImageType >, itk::Transform< ScalarType, VImageDimension, VImageDimension >, itk::InterpolateImageFunction< typename ImageTypes<VImageDimension>::InternalImageType, ScalarType >, itk::ImageToImageMetric< typename ImageTypes<VImageDimension>::InternalImageType, typename ImageTypes<VImageDimension>::InternalImageType >, itk::SingleValuedNonLinearOptimizer, VImageDimension > FREE::MultiRigidRegistrationProcessor< VImageDimension >::Superclass |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 194 of file freRigidRegistrationProcessor.h.
| typedef itk::SmartPointer<Self> FREE::MultiRigidRegistrationProcessor< VImageDimension >::Pointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 196 of file freRigidRegistrationProcessor.h.
| typedef itk::SmartPointer<const Self> FREE::MultiRigidRegistrationProcessor< VImageDimension >::ConstPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 197 of file freRigidRegistrationProcessor.h.
| typedef Superclass::RegistrationType FREE::MultiRigidRegistrationProcessor< VImageDimension >::RegistrationType |
Itk class which processes the registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 199 of file freRigidRegistrationProcessor.h.
| typedef Superclass::RegistrationPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::RegistrationPointer |
Pointer to itk class which processes the registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 200 of file freRigidRegistrationProcessor.h.
| typedef Superclass::TransformType FREE::MultiRigidRegistrationProcessor< VImageDimension >::TransformType |
Base class of transformations, derivates used in every rigid registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 202 of file freRigidRegistrationProcessor.h.
| typedef Superclass::TransformPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::TransformPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 203 of file freRigidRegistrationProcessor.h.
| typedef Superclass::InterpolatorType FREE::MultiRigidRegistrationProcessor< VImageDimension >::InterpolatorType |
Base class of interpolation, derivates used in every rigid registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 205 of file freRigidRegistrationProcessor.h.
| typedef Superclass::InterpolatorPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::InterpolatorPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 206 of file freRigidRegistrationProcessor.h.
| typedef Superclass::MetricType FREE::MultiRigidRegistrationProcessor< VImageDimension >::MetricType |
Base class of a metric, derivates used in every rigid registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 208 of file freRigidRegistrationProcessor.h.
| typedef Superclass::MetricPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::MetricPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 209 of file freRigidRegistrationProcessor.h.
| typedef Superclass::OptimizerType FREE::MultiRigidRegistrationProcessor< VImageDimension >::OptimizerType |
Base class of an optimizer, derivates used in every rigid registration.
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 211 of file freRigidRegistrationProcessor.h.
| typedef Superclass::OptimizerPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::OptimizerPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 212 of file freRigidRegistrationProcessor.h.
| typedef Superclass::ImageType FREE::MultiRigidRegistrationProcessor< VImageDimension >::ImageType |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 214 of file freRigidRegistrationProcessor.h.
| typedef Superclass::RegionType FREE::MultiRigidRegistrationProcessor< VImageDimension >::RegionType |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 215 of file freRigidRegistrationProcessor.h.
| typedef Superclass::ImagePointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::ImagePointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 216 of file freRigidRegistrationProcessor.h.
| typedef Superclass::PointType FREE::MultiRigidRegistrationProcessor< VImageDimension >::PointType |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 217 of file freRigidRegistrationProcessor.h.
| typedef Superclass::TransformFieldType FREE::MultiRigidRegistrationProcessor< VImageDimension >::TransformFieldType |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 218 of file freRigidRegistrationProcessor.h.
| typedef Superclass::TransformFieldPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::TransformFieldPointer |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 219 of file freRigidRegistrationProcessor.h.
| typedef itk::MultiResolutionPyramidImageFilter< ImageType, ImageType > FREE::MultiRigidRegistrationProcessor< VImageDimension >::PyramidType |
Itk class which computes the different versions of resolution.
Definition at line 225 of file freRigidRegistrationProcessor.h.
| typedef PyramidType::Pointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::PyramidPointer |
smart pointer to itk class which processes the registration.
Definition at line 230 of file freRigidRegistrationProcessor.h.
| FREE::MultiRigidRegistrationProcessor< VImageDimension >::MultiRigidRegistrationProcessor | ( | ) | [inline, protected] |
Definition at line 283 of file freRigidRegistrationProcessor.txx.
References FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelNotificationEvent, FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelObserver, FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpFixedImagePyramid, and FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpMovingImagePyramid.
| FREE::MultiRigidRegistrationProcessor< VImageDimension >::~MultiRigidRegistrationProcessor | ( | ) | [inline, protected, virtual] |
Definition at line 293 of file freRigidRegistrationProcessor.txx.
| virtual const char* FREE::MultiRigidRegistrationProcessor< VImageDimension >::GetNameOfClass | ( | ) | const [inline, virtual] |
Run-time type information (and related methods).
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 222 of file freRigidRegistrationProcessor.h.
| static Pointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::New | ( | void | ) | [inline, static] |
New macro for creation of through a Smart Pointer
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 225 of file freRigidRegistrationProcessor.h.
| virtual ::itk::LightObject::Pointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::CreateAnother | ( | void | ) | const [inline, virtual] |
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 225 of file freRigidRegistrationProcessor.h.
| const int FREE::MultiRigidRegistrationProcessor< VImageDimension >::GetResolutionLevelCount | ( | ) | const [inline, virtual] |
Implementation of FREE::MultiRigidRegistrationProcessor ////////////
Reimplemented from FREE::LightRegistrationProcessorBase.
Definition at line 161 of file freRigidRegistrationProcessor.txx.
References FREE::cParam_MRRegLevel.
| void FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration | ( | ) | [inline, protected, virtual] |
This function starts the registration. It checks if the controller built all needed components. Plugs the last things (e.g. Observer) and runs the registration, after this the processor manages to compute the final image and transformation field, if needed. The observer will also be created and plugged to the registration process. Also the initial parameters will be set by the processor. After computing the registration, the final parameters going to be stored in TransformSetup (part of ComponentSetup).
Reimplemented from FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >.
Definition at line 173 of file freRigidRegistrationProcessor.txx.
References FREE::SessionBuilder::ActualizeComponent(), catchAllNPassMacro, FREE::cComp_MainTransform, FREE::ComponentSetup::Components(), FREE::RegistrationProcessorBase< VImageDimension >::ComputeRegistration(), FREE::cParam_MRRegLevel, FREE::cParam_MRRegResolutionSchedule, FREE::cParam_MRRegUseSchedule, FREE::LightRegistrationProcessorBase::GetComponentSetup(), FREE::TransformSetupAdaptor::GetCurrentTransformParameters(), FREE::KeyedCollectionBase< TKey, TElement, TIdentifierClass >::GetElement(), FREE::ParameterCollection::GetParameterValue(), FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_bFirstResLevel, FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >::m_CurrentTransformParameters, FREE::LightRegistrationProcessorBase::m_iResolutionLevel, FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >::m_IterationNotificationEvent, FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >::m_IterationObserver, FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelNotificationEvent, FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelObserver, FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >::m_Optimizer, FREE::RigidRegistrationProcessorBase< TRegistrationMethod, TTransformBase, TInterpolateBase, TMetricBase, TOptimizerBase, VImageDimension >::m_Registration, FREE::ComponentSetup::Parameters(), FREE::RSTInitProcessor, FREE::RSTProcessing, FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpFixedImagePyramid, FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpMovingImagePyramid, throwExceptionMacro, and FREE::Convert::ToStr().

| void FREE::MultiRigidRegistrationProcessor< VImageDimension >::OnNewLevel | ( | void * | pSender, | |
| long | threadID | |||
| ) | [inline, protected] |
This function is plugged to the LevelObserver and reacts to a new resolution levels. The setup parameter will be actualized by the controller, if needed. And the level ID will be passed by the NextLevelEvent function pointer to e.g. the Registrator.
| [in] | pSender | The origin of the event, in this case LevelObserver. |
| [in] | threadID | ID of the Thread executing the event. By default this value is 0. This ID is not unique over the complete system, it should only be assumed that it is unique in the context of the sender. |
Definition at line 300 of file freRigidRegistrationProcessor.txx.
References FREE::SessionBuilder::ActualizeComponent(), catchAllNPassMacro, FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_bFirstResLevel, FREE::LightRegistrationProcessorBase::m_iResolutionLevel, and FREE::LightRegistrationProcessorBase::m_lCurIteration.

| IterationObserver::Pointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelObserver |
The LevelObserver waits for a notifications (itk::IterationEvent) of the Optimzer and triggers the OnNewLevel function.
Definition at line 234 of file freRigidRegistrationProcessor.h.
Referenced by FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::MultiRigidRegistrationProcessor< VImageDimension >::MultiRigidRegistrationProcessor().
| NotificationEvent<Self>::Pointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_LevelNotificationEvent |
Definition at line 235 of file freRigidRegistrationProcessor.h.
Referenced by FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::MultiRigidRegistrationProcessor< VImageDimension >::MultiRigidRegistrationProcessor().
| PyramidPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpFixedImagePyramid |
Instance of image pyramid for the fixed image. The pyramid manages to calculate the different resolutions for the registration process.
Definition at line 239 of file freRigidRegistrationProcessor.h.
Referenced by FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::MultiRigidRegistrationProcessor< VImageDimension >::MultiRigidRegistrationProcessor().
| PyramidPointer FREE::MultiRigidRegistrationProcessor< VImageDimension >::smpMovingImagePyramid |
Instance of image pyramid for the moving image. The pyramid manages to calculate the different resolutions for the registration process.
Definition at line 242 of file freRigidRegistrationProcessor.h.
Referenced by FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::MultiRigidRegistrationProcessor< VImageDimension >::MultiRigidRegistrationProcessor().
bool FREE::MultiRigidRegistrationProcessor< VImageDimension >::m_bFirstResLevel [protected] |
Definition at line 273 of file freRigidRegistrationProcessor.h.
Referenced by FREE::MultiRigidRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::MultiRigidRegistrationProcessor< VImageDimension >::OnNewLevel().
1.5.3 written by Dimitri van Heesch,
© 1997-2000