Classes | Public Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes

cmtk::ImagePairNonrigidRegistration Class Reference
[cmtkRegistration Library]

Generic multiresolution voxel-registration class. More...

#include <cmtkImagePairNonrigidRegistration.h>

Inheritance diagram for cmtk::ImagePairNonrigidRegistration:
Inheritance graph
[legend]
Collaboration diagram for cmtk::ImagePairNonrigidRegistration:
Collaboration graph
[legend]

List of all members.

Classes

class  LevelParameters
 Base class for registration level parameters. More...

Public Types

typedef
ImagePairNonrigidRegistration 
Self
 This class.
typedef ImagePairRegistration Superclass
 Parent class.

Protected Member Functions

 cmtkGetSetMacro (bool, MatchFltToRefHistogram)
 Flag whether to adjust floating image histogram to match reference image.
 cmtkGetSetMacroDefault (bool, RepeatMatchFltToRefHistogram, true)
 Flag for repeated application of histogram-based intensity matching.
 cmtkGetSetMacro (int, RefineGrid)
 This value determines how often the control point grid is refined.
 cmtkGetSetMacro (bool, DelayRefineGrid)
 Flag whether to delay grid refinement.
 cmtkGetSetMacro (Types::Coordinate, GridSpacing)
 Initial spacing of the control point grid.
 cmtkGetSetMacro (bool, ExactGridSpacing)
 Force exact grid spacing.
 cmtkGetSetMacro (bool, FastMode)
 Flag for fast mode (less accurate) of spline deformations.
 cmtkGetSetMacro (bool, AdaptiveFixParameters)
 Flag for adaptive selection of active and passive parameters.
 cmtkGetSetMacro (float, AdaptiveFixThreshFactor)
 Set threshold factor for selecting passive warp parameters adaptively.
 cmtkGetSetMacro (float, JacobianConstraintWeight)
 Weighting of Jacobian constraint relative to similairy measure.
 cmtkGetSetMacro (float, GridEnergyWeight)
 Weighting of grid bending energy constraint relative to image similarity.
 cmtkGetSetMacro (float, RelaxWeight)
 Factor by which to relax constraint weights for a relaxation step.
 cmtkGetSetMacro (float, InverseConsistencyWeight)
 Weight for inverse consistency weight.
 cmtkGetSetMacro (float, LandmarkErrorWeight)
 Weighting factor of landmark registration error vs. image similarity.
 ImagePairNonrigidRegistration ()
 Default constructor.
virtual ~ImagePairNonrigidRegistration ()
 Destructor.
SplineWarpXform::SmartPtr GetTransformation () const
 Return final transformation.
const UniformVolume::SmartPtr GetReformattedFloatingImage (Interpolators::InterpolationEnum interpolator=Interpolators::LINEAR) const
 Get reformatted floating image.
Member functions to be overwritten.
virtual CallbackResult InitRegistration ()
 Initialize registration.
virtual void EnterResolution (CoordinateVector::SmartPtr &, Functional::SmartPtr &, const int, const int)
 Enter resolution level.
virtual int DoneResolution (CoordinateVector::SmartPtr &, Functional::SmartPtr &, const int, const int)
 Finish resolution level.

Protected Attributes

SplineWarpXform::SmartPtr InitialWarpXform
 Initial deformation.
SplineWarpXform::SmartPtr InverseWarpXform
 Optional inverse warp for inverse-consistent registration.
unsigned int IgnoreEdge
 This counter determines how many edge control points are fixed.
const char * RestrictToAxes
 Restrict deformation to one or more coordinate axes.
bool m_RelaxToUnfold
 Flag to turn on deformation unfolding before each level.

Private Member Functions

SplineWarpXform::SmartPtr MakeWarpXform (const UniformVolume::CoordinateVectorType &size, const AffineXform *initialAffine) const
 Create warp transformation with current settings.
virtual FunctionalMakeFunctional (const int level, const Superclass::LevelParameters *levelParameters)
 Create functional with current level settings.

Private Attributes

MatchedLandmarkList::SmartPtr m_MatchedLandmarks
 (Optional) matched landmark list.
int RefinedGridAtLevel
 Level on which the last control grid refinement was performend.
int RefineGridCount
 Number of refinements so far.
bool RelaxationStep
 Are we currently doing a relaxation step?
bool RefineDelayed
 Have we already run the current level before refining the grid?

Detailed Description

Generic multiresolution voxel-registration class.

By implementing member functions to retrieve parameters and report results in derived classes, registration can be integrated into various environments.

Version:
Revision:
2752
Date:
2011-01-17 11:33:31 -0800 (Mon, 17 Jan 2011)

Definition at line 56 of file cmtkImagePairNonrigidRegistration.h.


Member Typedef Documentation

This class.

Reimplemented from cmtk::ImagePairRegistration.

Reimplemented in cmtk::ImagePairNonrigidRegistrationCommandLine.

Definition at line 62 of file cmtkImagePairNonrigidRegistration.h.

Parent class.

Reimplemented in cmtk::ImagePairNonrigidRegistrationCommandLine.

Definition at line 65 of file cmtkImagePairNonrigidRegistration.h.


Constructor & Destructor Documentation

virtual cmtk::ImagePairNonrigidRegistration::~ImagePairNonrigidRegistration (  ) [inline, protected, virtual]

Destructor.

Free local objects for this class.

Definition at line 156 of file cmtkImagePairNonrigidRegistration.h.


Member Function Documentation

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( bool  ,
MatchFltToRefHistogram   
) [protected]

Flag whether to adjust floating image histogram to match reference image.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( bool  ,
DelayRefineGrid   
) [protected]

Flag whether to delay grid refinement.

If this flag is set, a newly entered image resolution level is run with the previous, coarser deformation grid first before refining.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( bool  ,
AdaptiveFixParameters   
) [protected]

Flag for adaptive selection of active and passive parameters.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
AdaptiveFixThreshFactor   
) [protected]

Set threshold factor for selecting passive warp parameters adaptively.

If the flag AdaptiveFixParameters is set, this value determines the threshold by which active vs. passive parameters are selected. All control points are set to passive for which the local region entropy is below this factor times sum of min and max region entropy. The default value is 0.5.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( Types::Coordinate  ,
GridSpacing   
) [protected]

Initial spacing of the control point grid.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
JacobianConstraintWeight   
) [protected]

Weighting of Jacobian constraint relative to similairy measure.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
GridEnergyWeight   
) [protected]

Weighting of grid bending energy constraint relative to image similarity.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( int  ,
RefineGrid   
) [protected]

This value determines how often the control point grid is refined.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
LandmarkErrorWeight   
) [protected]

Weighting factor of landmark registration error vs. image similarity.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
InverseConsistencyWeight   
) [protected]

Weight for inverse consistency weight.

If this is set to a value greater than 0, inverse consistency of the transformation is enforced. In fact, both forward and backward transformation are optimized simultaneously.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( bool  ,
ExactGridSpacing   
) [protected]

Force exact grid spacing.

If this flag is set, then the CPG will be spaced at exactly the distance given in the GridSpacing field. Otherwise, the grid spacing will be adjusted so that there is an integral number of CPG cells that cover the reference image domain.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( float  ,
RelaxWeight   
) [protected]

Factor by which to relax constraint weights for a relaxation step.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacro ( bool  ,
FastMode   
) [protected]

Flag for fast mode (less accurate) of spline deformations.

cmtk::ImagePairNonrigidRegistration::cmtkGetSetMacroDefault ( bool  ,
RepeatMatchFltToRefHistogram  ,
true   
) [protected]

Flag for repeated application of histogram-based intensity matching.

If this flag is set, histogram-based intensity matching is repeatedly applied throughout the registration process to match the floating image intensities with consideration for changing volume proportions as the deformation progresses.

SplineWarpXform::SmartPtr cmtk::ImagePairNonrigidRegistration::GetTransformation (  ) const [inline, protected]

Return final transformation.

Definition at line 183 of file cmtkImagePairNonrigidRegistration.h.

Referenced by GetReformattedFloatingImage().


Member Data Documentation

This counter determines how many edge control points are fixed.

Definition at line 105 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration(), and InitRegistration().

Initial deformation.

Definition at line 69 of file cmtkImagePairNonrigidRegistration.h.

Referenced by InitRegistration().

Optional inverse warp for inverse-consistent registration.

Definition at line 72 of file cmtkImagePairNonrigidRegistration.h.

Referenced by InitRegistration().

(Optional) matched landmark list.

Definition at line 193 of file cmtkImagePairNonrigidRegistration.h.

Referenced by InitRegistration().

Flag to turn on deformation unfolding before each level.

Definition at line 146 of file cmtkImagePairNonrigidRegistration.h.

Have we already run the current level before refining the grid?

Definition at line 205 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration().

Level on which the last control grid refinement was performend.

Definition at line 196 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration().

Number of refinements so far.

Definition at line 199 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration().

Are we currently doing a relaxation step?

Definition at line 202 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration().

Restrict deformation to one or more coordinate axes.

Definition at line 109 of file cmtkImagePairNonrigidRegistration.h.

Referenced by ImagePairNonrigidRegistration().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines