#include <frePointSetRegistrationProcessor.h>


PointSetRegistrationProcessor is realizes a registration via a fixed and a moving point set. The fixed and moving images are not used for registration. The only purpose for the moving image is to be transformed into a final image via the transformation field of the finished registration. The purpose of the fixed image is to define size, spacing and origin of the transformation field that should be computed. PointSetRegistrationProcessor
Definition at line 52 of file frePointSetRegistrationProcessor.h.
| typedef PointSetRegistrationProcessor<VImageDimension> FREE::PointSetRegistrationProcessor< VImageDimension >::Self |
Standard typedefs
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 60 of file frePointSetRegistrationProcessor.h.
| typedef RegistrationProcessorBase<VImageDimension> FREE::PointSetRegistrationProcessor< VImageDimension >::Superclass |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 61 of file frePointSetRegistrationProcessor.h.
| typedef itk::SmartPointer<Self> FREE::PointSetRegistrationProcessor< VImageDimension >::Pointer |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 62 of file frePointSetRegistrationProcessor.h.
| typedef itk::SmartPointer<const Self> FREE::PointSetRegistrationProcessor< VImageDimension >::ConstPointer |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 63 of file frePointSetRegistrationProcessor.h.
| typedef Superclass::PointType FREE::PointSetRegistrationProcessor< VImageDimension >::PointType |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 71 of file frePointSetRegistrationProcessor.h.
| typedef ImageTypes<VImageDimension>::PointSetType FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetType |
Definition at line 72 of file frePointSetRegistrationProcessor.h.
| typedef PointSetType::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetPointer |
Definition at line 73 of file frePointSetRegistrationProcessor.h.
| typedef itk::PointSetToPointSetRegistrationMethod<PointSetType,PointSetType> FREE::PointSetRegistrationProcessor< VImageDimension >::RegistrationType |
Itk class which processes the registration.
Definition at line 76 of file frePointSetRegistrationProcessor.h.
| typedef RegistrationType::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::RegistrationPointer |
Pointer to itk class which processes the registration.
Definition at line 78 of file frePointSetRegistrationProcessor.h.
| typedef itk::PointSetToPointSetMetric<PointSetType,PointSetType> FREE::PointSetRegistrationProcessor< VImageDimension >::MetricType |
Base class of a metric, derivates used in every point set registration.
Definition at line 81 of file frePointSetRegistrationProcessor.h.
| typedef MetricType::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::MetricPointer |
Definition at line 82 of file frePointSetRegistrationProcessor.h.
| typedef MetricType::TransformType FREE::PointSetRegistrationProcessor< VImageDimension >::TransformType |
Base class of transformations, derivates used in every point set registration.
Reimplemented from FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 84 of file frePointSetRegistrationProcessor.h.
| typedef TransformType::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::TransformPointer |
Reimplemented from FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 85 of file frePointSetRegistrationProcessor.h.
| typedef itk::MultipleValuedNonLinearOptimizer FREE::PointSetRegistrationProcessor< VImageDimension >::OptimizerType |
Base class of an optimizer, derivates used in every point set registration.
Definition at line 87 of file frePointSetRegistrationProcessor.h.
| typedef OptimizerType::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::OptimizerPointer |
Definition at line 88 of file frePointSetRegistrationProcessor.h.
| typedef TransformBasedRegistrationProcessorInterface< TransformType, VImageDimension > FREE::PointSetRegistrationProcessor< VImageDimension >::TransformInterface |
Definition at line 90 of file frePointSetRegistrationProcessor.h.
| typedef Superclass::ImageType FREE::PointSetRegistrationProcessor< VImageDimension >::ImageType |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 92 of file frePointSetRegistrationProcessor.h.
| typedef Superclass::RegionType FREE::PointSetRegistrationProcessor< VImageDimension >::RegionType |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 93 of file frePointSetRegistrationProcessor.h.
| typedef Superclass::SpacingType FREE::PointSetRegistrationProcessor< VImageDimension >::SpacingType |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 94 of file frePointSetRegistrationProcessor.h.
| typedef Superclass::ImagePointer FREE::PointSetRegistrationProcessor< VImageDimension >::ImagePointer |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 95 of file frePointSetRegistrationProcessor.h.
| typedef TransformInterface::TransformFieldType FREE::PointSetRegistrationProcessor< VImageDimension >::TransformFieldType |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 97 of file frePointSetRegistrationProcessor.h.
| typedef TransformInterface::TransformFieldPointer FREE::PointSetRegistrationProcessor< VImageDimension >::TransformFieldPointer |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 98 of file frePointSetRegistrationProcessor.h.
| typedef TransformInterface::TransformParametersType FREE::PointSetRegistrationProcessor< VImageDimension >::TransformParametersType |
Reimplemented from FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 99 of file frePointSetRegistrationProcessor.h.
| typedef TransformInterface::TransformFunctionMediaType FREE::PointSetRegistrationProcessor< VImageDimension >::TransformFunctionMediaType |
Reimplemented from FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 100 of file frePointSetRegistrationProcessor.h.
| typedef TransformInterface::TransformFunctionMediaPointer FREE::PointSetRegistrationProcessor< VImageDimension >::TransformFunctionMediaPointer |
Reimplemented from FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 101 of file frePointSetRegistrationProcessor.h.
| FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor | ( | ) | [inline, protected] |
Definition at line 154 of file frePointSetRegistrationProcessor.txx.
References FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent, FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationObserver, FREE::PointSetRegistrationProcessor< VImageDimension >::m_Metric, FREE::PointSetRegistrationProcessor< VImageDimension >::m_Optimizer, FREE::PointSetRegistrationProcessor< VImageDimension >::m_pOptimizerCache, and FREE::PointSetRegistrationProcessor< VImageDimension >::m_Registration.
| FREE::PointSetRegistrationProcessor< VImageDimension >::~PointSetRegistrationProcessor | ( | ) | [inline, protected, virtual] |
Definition at line 168 of file frePointSetRegistrationProcessor.txx.
| virtual const char* FREE::PointSetRegistrationProcessor< VImageDimension >::GetNameOfClass | ( | ) | const [inline, virtual] |
Run-time type information (and related methods).
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 66 of file frePointSetRegistrationProcessor.h.
| static Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::New | ( | void | ) | [inline, static] |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 67 of file frePointSetRegistrationProcessor.h.
| virtual ::itk::LightObject::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::CreateAnother | ( | void | ) | const [inline, virtual] |
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 67 of file frePointSetRegistrationProcessor.h.
| virtual MetricType* FREE::PointSetRegistrationProcessor< VImageDimension >::GetMetric | ( | ) | [inline, virtual] |
Definition at line 103 of file frePointSetRegistrationProcessor.h.
| virtual void FREE::PointSetRegistrationProcessor< VImageDimension >::SetMetric | ( | MetricType * | _arg | ) | [inline, virtual] |
Definition at line 104 of file frePointSetRegistrationProcessor.h.
| virtual OptimizerType* FREE::PointSetRegistrationProcessor< VImageDimension >::GetOptimizer | ( | ) | [inline, virtual] |
Definition at line 106 of file frePointSetRegistrationProcessor.h.
| virtual void FREE::PointSetRegistrationProcessor< VImageDimension >::SetOptimizer | ( | OptimizerType * | _arg | ) | [inline, virtual] |
Definition at line 107 of file frePointSetRegistrationProcessor.h.
| virtual RegistrationType* FREE::PointSetRegistrationProcessor< VImageDimension >::GetRegistration | ( | ) | [inline, virtual] |
Definition at line 109 of file frePointSetRegistrationProcessor.h.
| virtual PointSetType* FREE::PointSetRegistrationProcessor< VImageDimension >::GetMovingPointSet | ( | ) | [inline, virtual] |
Definition at line 111 of file frePointSetRegistrationProcessor.h.
| virtual void FREE::PointSetRegistrationProcessor< VImageDimension >::SetMovingPointSet | ( | PointSetType * | _arg | ) | [inline, virtual] |
Definition at line 112 of file frePointSetRegistrationProcessor.h.
| virtual PointSetType* FREE::PointSetRegistrationProcessor< VImageDimension >::GetFixedPointSet | ( | ) | [inline, virtual] |
Definition at line 114 of file frePointSetRegistrationProcessor.h.
| virtual void FREE::PointSetRegistrationProcessor< VImageDimension >::SetFixedPointSet | ( | PointSetType * | _arg | ) | [inline, virtual] |
Definition at line 115 of file frePointSetRegistrationProcessor.h.
| const long FREE::PointSetRegistrationProcessor< VImageDimension >::GetMaxIterationCount | ( | ) | const [inline, virtual] |
Returns the max count of iteration steps of the actual resolution level. The return of the function depends on the derived classes. If the return -1 the count is unknown (e.g optimizer has a threshold value as stopping criterion)
Implementation of FREE::PointSetRegistrationProcessor //////////////
Reimplemented from FREE::LightRegistrationProcessorBase.
Definition at line 40 of file frePointSetRegistrationProcessor.txx.
References FREE::cComp_MainOptimizer, FREE::SessionComponentCache::Controller(), FREE::OptimizerControllerInterface::GetMaxIterationCount(), FREE::LightRegistrationProcessorBase::m_pComponentCache, FREE::SessionComponentCache::SubCaches(), and throwExceptionMacro.

| PointSetRegistrationProcessor< VImageDimension >::TransformFunctionMediaPointer FREE::PointSetRegistrationProcessor< VImageDimension >::GetTransformationFunction | ( | ) | [inline] |
This Function returns the transformation function for current registration status. In this version of the function no field information will be set. The result is only valid, if the StartRegistration() function has been called before. Calling the function before will cause an exception.
Definition at line 199 of file frePointSetRegistrationProcessor.txx.
| PointSetRegistrationProcessor< VImageDimension >::TransformFunctionMediaPointer FREE::PointSetRegistrationProcessor< VImageDimension >::GetInverseTransformationFunction | ( | ) | [inline] |
This Function returns the inverse transformation function for current registration status.In this version of the function no field information will be set. The result is only valid, if the StartRegistration() function has been called before. Calling the function before will cause an exception.
Definition at line 221 of file frePointSetRegistrationProcessor.txx.
| void FREE::PointSetRegistrationProcessor< VImageDimension >::ReleaseInputs | ( | ) | [inline, protected, virtual] |
It releases the inputs of the registration. This function is called via StartRegistration() after the registration is processed and if m_ReleaseInputsAfterRegistration is true. Reimplement of a derivate class owns additional inputs.
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 243 of file frePointSetRegistrationProcessor.txx.
References FREE::PointSetRegistrationProcessor< VImageDimension >::m_FixedPointSet, and FREE::PointSetRegistrationProcessor< VImageDimension >::m_MovingPointSet.
| void FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration | ( | ) | [inline, protected, virtual] |
This function processes the registration itself. starts the registration. It checks if the controller built all needed components. Here the observer will also be created and plugged to the registration process.
The function will be called be StartRegistration and should be reimplemented in derived classes.
Reimplemented from FREE::RegistrationProcessorBase< VImageDimension >.
Definition at line 58 of file frePointSetRegistrationProcessor.txx.
References catchAllNPassMacro, FREE::cComp_MainOptimizer, FREE::cComp_MainTransform, FREE::cIDPSelf, FREE::ComponentSetup::Components(), FREE::SessionComponentCache::GetCacheByIDPath(), FREE::LightRegistrationProcessorBase::GetComponentSetup(), FREE::TransformSetupAdaptor::GetCurrentTransformParameters(), FREE::KeyedCollectionBase< TKey, TElement, TIdentifierClass >::GetElement(), FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >::m_CurrentTransformParameters, FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent, FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationObserver, FREE::LightRegistrationProcessorBase::m_lCurIteration, FREE::PointSetRegistrationProcessor< VImageDimension >::m_Optimizer, FREE::LightRegistrationProcessorBase::m_pComponentCache, FREE::PointSetRegistrationProcessor< VImageDimension >::m_pOptimizerCache, FREE::PointSetRegistrationProcessor< VImageDimension >::m_Registration, FREE::RSTInitProcessor, FREE::RSTProcessing, throwExceptionMacro, and FREE::Convert::ToStr().

| bool FREE::PointSetRegistrationProcessor< VImageDimension >::TransformationIsValid | ( | ) | const [inline, protected, virtual] |
Implements FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 182 of file frePointSetRegistrationProcessor.txx.
References FREE::LightRegistrationProcessorBase::m_bRegistrationStarted.
| void FREE::PointSetRegistrationProcessor< VImageDimension >::NotifyProgress | ( | const RegistrationStatusType | status, | |
| const std::string & | sComment | |||
| ) | [inline, protected, virtual] |
Implements FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >.
Definition at line 190 of file frePointSetRegistrationProcessor.txx.
| PointSetRegistrationProcessor< VImageDimension >::TransformFieldPointer FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeTransformationField | ( | const PointType & | origin, | |
| const RegionType & | region, | |||
| const SpacingType & | spacing | |||
| ) | [inline, protected, virtual] |
This function computes a transformation field of actual registration. The largest possible region of the field is defined by the passed region, the spacing is determined by the spacing of the fixed image. This function computes a transformation field by calculating the transform vector of every point with the help of the transformer and actual parameters of the optimizer.
Definition at line 174 of file frePointSetRegistrationProcessor.txx.

| void FREE::PointSetRegistrationProcessor< VImageDimension >::OnNewIteration | ( | void * | pSender, | |
| long | threadID | |||
| ) | [inline, protected] |
This function is plugged to the IterationObserver and reacts to a new iteration. The actual optimizer values will be computed and passed by the NextIterationEvent function pointer to e.g. the Registrator
| [in] | pSender | The origin of the event, in this case IterationObserver. |
| [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 253 of file frePointSetRegistrationProcessor.txx.
References FREE::SessionComponentCache::Controller(), FREE::OptimizerControllerInterface::GetCurrentPosition(), FREE::TransformBasedRegistrationProcessorInterface< TTransformBase, VImageDimension >::m_CurrentTransformParameters, FREE::LightRegistrationProcessorBase::m_lCurIteration, FREE::PointSetRegistrationProcessor< VImageDimension >::m_pOptimizerCache, and throwExceptionMacro.

const unsigned int FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetDimension = VImageDimension [static] |
Definition at line 69 of file frePointSetRegistrationProcessor.h.
| IterationObserver::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationObserver |
The IterationObserver waits for a notifications (itk::IterationEvent) of the optimizer and triggers the OnNewIteration function.
Definition at line 115 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
| NotificationEvent<PointSetRegistrationProcessor>::Pointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent |
Definition at line 120 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
SessionComponentCache* FREE::PointSetRegistrationProcessor< VImageDimension >::m_pOptimizerCache [protected] |
Pointer to the component cache of the optimizer. Set by ComputeRegistration().
Definition at line 180 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration(), FREE::PointSetRegistrationProcessor< VImageDimension >::OnNewIteration(), and FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
MetricPointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_Metric [protected] |
Pointer to a metric object created and managed by a ferComponentControllerBase defined by the ComponentSetup of the RegistrationProcessor.
Definition at line 185 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
OptimizerPointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_Optimizer [protected] |
Pointer to an optimizer object created and managed by a ferOptimizerController defined by the ComponentSetup of the RegistrationProcessor.
Definition at line 190 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
RegistrationPointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_Registration [protected] |
Instance of an ImageRegistrationMethod, all components will be plugged to it.
Definition at line 193 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::PointSetRegistrationProcessor< VImageDimension >::PointSetRegistrationProcessor().
PointSetPointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_FixedPointSet [protected] |
Fixed point set used for registration
Definition at line 196 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ReleaseInputs().
PointSetPointer FREE::PointSetRegistrationProcessor< VImageDimension >::m_MovingPointSet [protected] |
Moving point set used for registration
Definition at line 198 of file frePointSetRegistrationProcessor.h.
Referenced by FREE::PointSetRegistrationProcessor< VImageDimension >::ReleaseInputs().
1.5.3 written by Dimitri van Heesch,
© 1997-2000