FREE::DemonRegistrationProcessor< VImageDimension > Class Template Reference

#include <freDemonRegistrationProcessor.h>

Inheritance diagram for FREE::DemonRegistrationProcessor< VImageDimension >:

Inheritance graph
FREE::ImageRegistrationProcessorBase\< VImageDimension \>FREE::RegistrationProcessorBase\< VImageDimension \>FREE::LightRegistrationProcessorBase
[legend]
Collaboration diagram for FREE::DemonRegistrationProcessor< VImageDimension >:

Collaboration graph
FREE::ImageRegistrationProcessorBase\< VImageDimension \>FREE::RegistrationProcessorBase\< VImageDimension \>FREE::LightRegistrationProcessorBaseFREE::SessionInfoFREE::StatisticsFREE::XMLStreamObjectFREE::SetupFREE::XMLStringMultiMapFREE::SessionComponentCacheFREE::ComponentCacheCollection\< TCache \>FREE::KeyedCollectionBase\< std::string, TCache, FREE::ComponentCacheIdentifier\< TCache \> \>FREE::SmartCollectionBase\< TElement \>FREE::CollectionBase\< TElement, itk::SmartPointer\< TElement \> \>FREE::ComponentControllerInterfaceFREE::CtrlProfile::ProfileInheritance
[legend]

List of all members.

Public Types

typedef
DemonRegistrationProcessor
< VImageDimension > 
Self
typedef
ImageRegistrationProcessorBase
< VImageDimension > 
Superclass
typedef
itk::SmartPointer
< Self
Pointer
typedef
itk::SmartPointer
< const Self
ConstPointer
typedef
Superclass::ImageType 
ImageType
typedef
Superclass::RegionType 
RegionType
typedef
Superclass::SpacingType 
SpacingType
typedef
Superclass::ImagePointer 
ImagePointer
typedef
Superclass::PointType 
PointType
typedef
Superclass::TransformFieldType 
TransformFieldType
typedef
Superclass::TransformFieldPointer 
TransformFieldPointer
typedef
itk::InterpolateImageFunction
< ImageType,
ScalarType
InterpolateType
typedef
InterpolateType::Pointer 
InterpolatePointer
typedef
itk::DemonsRegistrationFilter
< ImageType,
ImageType,
TransformFieldType
RegistrationType
typedef
RegistrationType::Pointer 
RegistrationPointer
typedef
itk::HistogramMatchingImageFilter
< ImageType,
ImageType
HistoMatchFilterType

Public Member Functions

virtual const char * GetNameOfClass () const
virtual
::itk::LightObject::Pointer 
CreateAnother (void) const

Static Public Member Functions

static Pointer New (void)

Public Attributes

InterpolatePointer smpInterpolate
RegistrationPointer smpRegistration
IterationObserver::Pointer m_IterationObserver
NotificationEvent
< Self >::Pointer 
m_IterationNotificationEvent

Protected Member Functions

 DemonRegistrationProcessor ()
virtual ~DemonRegistrationProcessor ()
virtual void ComputeRegistration ()
virtual
TransformFieldPointer 
ComputeTransformationField (const PointType &origin, const RegionType &region, const SpacingType &spacing)
void OnNewIteration (void *pSender, long threadID)


Detailed Description

template<unsigned int VImageDimension>
class FREE::DemonRegistrationProcessor< VImageDimension >

Definition at line 36 of file freDemonRegistrationProcessor.h.


Member Typedef Documentation

template<unsigned int VImageDimension>
typedef DemonRegistrationProcessor<VImageDimension> FREE::DemonRegistrationProcessor< VImageDimension >::Self

Standard typedefs

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 41 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef ImageRegistrationProcessorBase<VImageDimension> FREE::DemonRegistrationProcessor< VImageDimension >::Superclass

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 42 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<Self> FREE::DemonRegistrationProcessor< VImageDimension >::Pointer

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 43 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<const Self> FREE::DemonRegistrationProcessor< VImageDimension >::ConstPointer

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 44 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::ImageType FREE::DemonRegistrationProcessor< VImageDimension >::ImageType

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 46 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::RegionType FREE::DemonRegistrationProcessor< VImageDimension >::RegionType

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 47 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::SpacingType FREE::DemonRegistrationProcessor< VImageDimension >::SpacingType

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 48 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::ImagePointer FREE::DemonRegistrationProcessor< VImageDimension >::ImagePointer

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 49 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::PointType FREE::DemonRegistrationProcessor< VImageDimension >::PointType

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 50 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::TransformFieldType FREE::DemonRegistrationProcessor< VImageDimension >::TransformFieldType

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 51 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef Superclass::TransformFieldPointer FREE::DemonRegistrationProcessor< VImageDimension >::TransformFieldPointer

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 52 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef itk::InterpolateImageFunction< ImageType, ScalarType > FREE::DemonRegistrationProcessor< VImageDimension >::InterpolateType

Base class of interpolation, derivates used in every rigid registration.

Definition at line 56 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef InterpolateType::Pointer FREE::DemonRegistrationProcessor< VImageDimension >::InterpolatePointer

smart pointer to itk class which processes the registration.

Definition at line 62 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef itk::DemonsRegistrationFilter< ImageType, ImageType, TransformFieldType > FREE::DemonRegistrationProcessor< VImageDimension >::RegistrationType

Itk class which processes the fem registration.

Definition at line 64 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef RegistrationType::Pointer FREE::DemonRegistrationProcessor< VImageDimension >::RegistrationPointer

smart pointer to itk class which processes the registration.

Definition at line 66 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
typedef itk::HistogramMatchingImageFilter<ImageType, ImageType > FREE::DemonRegistrationProcessor< VImageDimension >::HistoMatchFilterType

Itk class which realizes the histogram matching.

Definition at line 68 of file freDemonRegistrationProcessor.h.


Constructor & Destructor Documentation

template<unsigned int VImageDimension>
FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor (  )  [inline, protected]

Definition at line 131 of file freDemonRegistrationProcessor.txx.

References FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent, FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationObserver, FREE::DemonRegistrationProcessor< VImageDimension >::OnNewIteration(), FREE::DemonRegistrationProcessor< VImageDimension >::smpInterpolate, and FREE::DemonRegistrationProcessor< VImageDimension >::smpRegistration.

Here is the call graph for this function:

FREE::DemonRegistrationProcessor::OnNewIteration

template<unsigned int VImageDimension>
FREE::DemonRegistrationProcessor< VImageDimension >::~DemonRegistrationProcessor (  )  [inline, protected, virtual]

Definition at line 141 of file freDemonRegistrationProcessor.txx.


Member Function Documentation

template<unsigned int VImageDimension>
virtual const char* FREE::DemonRegistrationProcessor< VImageDimension >::GetNameOfClass (  )  const [inline, virtual]

Run-time type information (and related methods).

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 55 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
static Pointer FREE::DemonRegistrationProcessor< VImageDimension >::New ( void   )  [inline, static]

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 56 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
virtual ::itk::LightObject::Pointer FREE::DemonRegistrationProcessor< VImageDimension >::CreateAnother ( void   )  const [inline, virtual]

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 56 of file freDemonRegistrationProcessor.h.

template<unsigned int VImageDimension>
void FREE::DemonRegistrationProcessor< 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.

Implementation of FREE::DemonRegistrationProcessor /////////////////

Reimplemented from FREE::ImageRegistrationProcessorBase< VImageDimension >.

Definition at line 42 of file freDemonRegistrationProcessor.txx.

References catchAllNPassMacro, FREE::ImageRegistrationProcessorBase< VImageDimension >::ComputeRegistration(), FREE::cParam_HistoLevels, FREE::cParam_HistoMatch, FREE::cParam_HistoMatchPoints, FREE::cParam_HistoThreshold, FREE::cParam_Iterations, FREE::cParam_StdDev, FREE::LightRegistrationProcessorBase::GetComponentSetup(), FREE::ParameterCollection::GetParameterValue(), FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent, FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationObserver, FREE::ImageRegistrationProcessorBase< VImageDimension >::m_smpFixedImage, FREE::ImageRegistrationProcessorBase< VImageDimension >::m_smpMovingImage, FREE::ComponentSetup::Parameters(), FREE::RSTInitProcessor, FREE::DemonRegistrationProcessor< VImageDimension >::smpRegistration, and throwExceptionMacro.

Here is the call graph for this function:

FREE::ImageRegistrationProcessorBase::ComputeRegistrationFREE::LightRegistrationProcessorBase::GetComponentSetupFREE::ParameterCollection::GetParameterValueFREE::ComponentSetup::ParametersFREE::RegistrationProcessorBase::ComputeRegistrationFREE::SessionComponentCache::SetupFREE::ParameterCollection::GetParameterIndex

template<unsigned int VImageDimension>
DemonRegistrationProcessor< VImageDimension >::TransformFieldPointer FREE::DemonRegistrationProcessor< VImageDimension >::ComputeTransformationField ( const PointType origin,
const RegionType region,
const SpacingType spacing 
) [inline, protected, virtual]

Definition at line 148 of file freDemonRegistrationProcessor.txx.

References FREE::RSTFinalizing, and FREE::DemonRegistrationProcessor< VImageDimension >::smpRegistration.

template<unsigned int VImageDimension>
void FREE::DemonRegistrationProcessor< VImageDimension >::OnNewIteration ( void *  pSender,
long  threadID 
) [inline, protected]

This function is plugged to the observer and reacts to a notify event.

Definition at line 212 of file freDemonRegistrationProcessor.txx.

Referenced by FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor().


Member Data Documentation

template<unsigned int VImageDimension>
InterpolatePointer FREE::DemonRegistrationProcessor< VImageDimension >::smpInterpolate

Pointer to an interpolator object created and managed by a ferComponentControllerBase defined by the ComponentSetup of the RegistrationProcessor.

Definition at line 74 of file freDemonRegistrationProcessor.h.

Referenced by FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor().

template<unsigned int VImageDimension>
RegistrationPointer FREE::DemonRegistrationProcessor< VImageDimension >::smpRegistration

Pointer to a DemonsRegistrationFilter object created and managed by a DemonsRegistrationProcessorController defined by the ComponentSetup of the RegistrationProcessor. It is the same like a transform object of rigid registrations, it only calls registration, because it combines both and is the place where the registration is computed.

Definition at line 81 of file freDemonRegistrationProcessor.h.

Referenced by FREE::DemonRegistrationProcessor< VImageDimension >::ComputeRegistration(), FREE::DemonRegistrationProcessor< VImageDimension >::ComputeTransformationField(), and FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor().

template<unsigned int VImageDimension>
IterationObserver::Pointer FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationObserver

The IterationObserver waits for a notifications (itk::IterationEvent) of the optimizer and triggers the OnNewIteration function.

Definition at line 85 of file freDemonRegistrationProcessor.h.

Referenced by FREE::DemonRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor().

template<unsigned int VImageDimension>
NotificationEvent<Self>::Pointer FREE::DemonRegistrationProcessor< VImageDimension >::m_IterationNotificationEvent

Definition at line 86 of file freDemonRegistrationProcessor.h.

Referenced by FREE::DemonRegistrationProcessor< VImageDimension >::ComputeRegistration(), and FREE::DemonRegistrationProcessor< VImageDimension >::DemonRegistrationProcessor().


The documentation for this class was generated from the following files:
Generated at Sat Oct 13 18:17:32 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000