#include <itkLevelSetMotionRegistrationFunction.h>
Inheritance diagram for itk::LevelSetMotionRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >:


Non-integer moving image values are obtained by using interpolation. The default interpolator is of type LinearInterpolateImageFunction. The user may set other interpolators via method SetMovingImageInterpolator. Note that the input interpolator must derive from baseclass InterpolateImageFunction.
This class is templated over the fixed image type, moving image type, and the deformation field type.
Definition at line 54 of file itkLevelSetMotionRegistrationFunction.h.
Public Types | |
| typedef SmartPointer< const Self > | ConstPointer |
| typedef double | CoordRepType |
| typedef CovariantVector< double, itkGetStaticConstMacro(ImageDimension) | CovariantVectorType ) |
| typedef ZeroFluxNeumannBoundaryCondition< ImageType > | DefaultBoundaryConditionType |
| typedef LinearInterpolateImageFunction< MovingImageType, CoordRepType > | DefaultInterpolatorType |
| typedef Superclass::DeformationFieldType | DeformationFieldType |
| typedef Superclass::DeformationFieldTypePointer | DeformationFieldTypePointer |
| typedef Superclass::FixedImagePointer | FixedImagePointer |
| typedef Superclass::FixedImageType | FixedImageType |
| typedef Superclass::FloatOffsetType | FloatOffsetType |
| typedef TDeformationField | ImageType |
| typedef FixedImageType::IndexType | IndexType |
| typedef InterpolatorType::Pointer | InterpolatorPointer |
| typedef InterpolateImageFunction< MovingImageType, CoordRepType > | InterpolatorType |
| typedef Superclass::MovingImagePointer | MovingImagePointer |
| typedef MovingImageSmoothingFilterType::Pointer | MovingImageSmoothingFilterPointer |
| typedef SmoothingRecursiveGaussianImageFilter< MovingImageType > | MovingImageSmoothingFilterType |
| typedef Superclass::MovingImageType | MovingImageType |
| typedef MovingImageType::SpacingType | MovingSpacingType |
| typedef Superclass::NeighborhoodType | NeighborhoodType |
| typedef double | PixelRealType |
| typedef Superclass::PixelType | PixelType |
| typedef SmartPointer< Self > | Pointer |
| typedef InterpolatorType::PointType | PointType |
| typedef Superclass::RadiusType | RadiusType |
| typedef LevelSetMotionRegistrationFunction | Self |
| typedef FixedImageType::SizeType | SizeType |
| typedef FixedImageType::SpacingType | SpacingType |
| typedef PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField > | Superclass |
| typedef Superclass::TimeStepType | TimeStepType |
Public Member Functions | |
| Set Get the parameter alpha Alpha is added to the calculated *gradient magnitude prior to normalizing the gradient to protect *against numerical instability as the gradient magnitude *approaches zero This should be set as a small fraction of the *intensity dynamic for instance Default is the * | absolute (not percentage) value of 0.1.*/virtual void SetAlpha(double) |
| virtual TimeStepType | ComputeGlobalTimeStep (void *GlobalData) const |
| virtual PixelType | ComputeUpdate (const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) |
| virtual Pointer | CreateAnother () const |
| virtual void | Delete () |
| virtual double | GetAlpha () const |
| DeformationFieldTypePointer | GetDeformationField (void) |
| double | GetEnergy () const |
| const FixedImageType * | GetFixedImage (void) const |
| Return a pointer to a global data structure that is passed to *this object from the solver at each calculation *virtual void * | GetGlobalDataPointer () const |
| virtual double | GetGradientMagnitudeThreshold () const |
| virtual double | GetGradientSmoothingStandardDeviations () const |
| double | GetGradientStep () const |
| virtual double | GetIntensityDifferenceThreshold () const |
| virtual double | GetMetric () const |
| const MovingImageType * | GetMovingImage (void) const |
| InterpolatorType * | GetMovingImageInterpolator (void) |
| virtual const char * | GetNameOfClass () const |
| bool | GetNormalizeGradient () const |
| const RadiusType & | GetRadius () const |
| virtual int | GetReferenceCount () const |
| virtual double | GetRMSChange () const |
| virtual void | InitializeIteration () |
| itkStaticConstMacro (ImageDimension, unsigned int, ImageType::ImageDimension) | |
| itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension) | |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| virtual void | ReleaseGlobalDataPointer (void *GlobalData) const |
| void | SetDeformationField (DeformationFieldTypePointer ptr) |
| void | SetEnergy (double e) |
| void | SetFixedImage (const FixedImageType *ptr) |
| Set Get the threshold below which the gradient magnitude is *considered the zero vector Default is e *virtual void | SetGradientMagnitudeThreshold (double) |
| Set Get the standard deviation used for smoothing the moving *image prior to calculating gradients *virtual void | SetGradientSmoothingStandardDeviations (double) |
| void | SetGradientStep (double e) |
| void | SetMovingImage (const MovingImageType *ptr) |
| void | SetMovingImageInterpolator (InterpolatorType *ptr) |
| void | SetNormalizeGradient (bool e) |
| void | SetRadius (const RadiusType &r) |
| virtual void | SetReferenceCount (int) |
| Set the ScaleCoefficients for the difference *operators The defaults a These can be set to take the image *spacing into account *void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
| virtual void | UnRegister () const |
| Set Get the threshold below which the absolute difference of *intensity yields a match When the intensities match between a *moving and fixed image the update | vector (for that *iteration) will be the zero vector.Default is 0.001.*/virtual void SetIntensityDifferenceThreshold(double) |
Static Public Member Functions | |
| static void | BreakOnError () |
| static Pointer | New () |
Public Attributes | |
| Set Get the threshold below which the absolute difference of *intensity yields a match When the intensities match between a *moving and fixed image | pixel |
| Set Get the parameter alpha Alpha is added to the calculated *gradient magnitude prior to normalizing the gradient to protect *against numerical instability as the gradient magnitude *approaches zero This should be set as a small fraction of the *intensity dynamic | range |
| Vector types *typedef Vector< double, itkGetStaticConstMacro(ImageDimension) | VectorType ) |
Protected Types | |
| typedef ConstNeighborhoodIterator< FixedImageType > | FixedImageNeighborhoodIteratorType |
Protected Member Functions | |
| FiniteDifferenceFunction () | |
| LevelSetMotionRegistrationFunction () | |
| void | PrintSelf (std::ostream &os, Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| ~LevelSetMotionRegistrationFunction () | |
Protected Attributes | |
| DeformationFieldTypePointer | m_DeformationField |
| double | m_Energy |
| FixedImagePointer | m_FixedImage |
| double | m_GradientStep |
| MovingImagePointer | m_MovingImage |
| bool | m_NormalizeGradient |
| RadiusType | m_Radius |
| int | m_ReferenceCount |
| SimpleFastMutexLock | m_ReferenceCountLock |
| PixelRealType | m_ScaleCoefficients [ImageDimension] |
| Methods invoked by virtual Print() to print information about the object *including superclasses.Typically not called by the user(use Print()*instead) but used in the hierarchical print process to combine the *output of several classes.*/virtual void PrintSelf(std voi | PrintHeader )(std::ostream &os, Indent indent) const |
Classes | |
| struct | GlobalDataStruct |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 67 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Interpolator type. Definition at line 105 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 117 of file itkLevelSetMotionRegistrationFunction.h. |
|
|
The default boundary condition for finite difference functions that is used unless overridden in the Evaluate() method. Definition at line 93 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
Definition at line 111 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Deformation field type. Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 89 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 91 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
FixedImage image neighborhood iterator type. Definition at line 211 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 83 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
FixedImage image type. Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 82 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood. Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 101 of file itkLevelSetMotionRegistrationFunction.h. |
|
|
Extract some parameters from the image type Definition at line 77 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
Definition at line 84 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 108 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 107 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 78 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 124 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Moving image gradient calculator type. Definition at line 122 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
MovingImage image type. Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 74 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 79 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
The type of data structure that is passed to this function object to evaluate at a pixel that does not lie on a data set boundary. Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 100 of file itkLevelSetMotionRegistrationFunction.h. |
|
|
Definition at line 82 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
Inherit some enums from the superclass. Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 98 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 66 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 109 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Neighborhood radius type Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 99 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Standard class typedefs. Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 62 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 85 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 86 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. Definition at line 65 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Define the TimeStepType to always be double. Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 102 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||||||
|
|
|
|||||||||
|
Definition at line 206 of file itkLevelSetMotionRegistrationFunction.h. |
|
||||||||||
|
|
|
|
This method is called when itkExceptionMacro executes. It allows the debugger to break on error. |
|
||||||||||
|
Compute the time step that can taken for this iterations. In this context, the timestep is a function of the maximum gradients. Implements itk::FiniteDifferenceFunction< TDeformationField >. |
|
||||||||||||||||||||
|
This method is called by a finite difference solver image filter at each pixel that does not lie on a data set boundary Implements itk::FiniteDifferenceFunction< TDeformationField >. |
|
|
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class. Reimplemented in itk::Object. |
|
|
Delete an itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting. |
|
|
Definition at line 182 of file itkFiniteDifferenceFunction.h. |
|
|||||||||
|
|
|
||||||||||
|
Get the fixed image. Definition at line 87 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||||||
|
Definition at line 92 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Get the fixed image. Definition at line 79 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||||||
|
Returns a pointer to a global data structure that is passed to this object from the solver at each calculation. The idea is that the solver holds the state of any global values needed to calculate the time step, while the equation object performs the actual calculations. The global data should also be initialized in this method. Implements itk::FiniteDifferenceFunction< TDeformationField >. Definition at line 140 of file itkLevelSetMotionRegistrationFunction.h. References itk::LevelSetMotionRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GlobalDataStruct::m_MaxL1Norm, itk::LevelSetMotionRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GlobalDataStruct::m_NumberOfPixelsProcessed, itk::LevelSetMotionRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GlobalDataStruct::m_SumOfSquaredChange, and itk::LevelSetMotionRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GlobalDataStruct::m_SumOfSquaredDifference. |
|
|||||||||
|
|
|
|||||||||
|
|
|
|||||||||
|
Definition at line 94 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||||||
|
|
|
|||||||||
|
Get the metric value. The metric value is the mean square difference in intensity between the fixed image and transforming moving image computed over the the overlapping region between the two images. Definition at line 167 of file itkLevelSetMotionRegistrationFunction.h. |
|
||||||||||
|
Get the moving image. Definition at line 71 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Get the moving image interpolator. Definition at line 131 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||||||
|
Run-time type information (and related methods). Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. |
|
|||||||||
|
Definition at line 96 of file itkPDEDeformableRegistrationFunction.h. |
|
|
Returns the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations. Definition at line 142 of file itkFiniteDifferenceFunction.h. |
|
|
Gets the reference count on this object. Definition at line 98 of file itkLightObject.h. |
|
|||||||||
|
Get the rms change in deformation field. Definition at line 171 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||||||
|
Set the object's state before each iteration. Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >. |
|
||||||||||||||||
|
Save image dimension. |
|
||||||||||||||||||||
|
Inherit some enums from the superclass. |
|
|||||||||
|
Method for creation through the object factory. Reimplemented from itk::LightObject. |
|
||||||||||||
|
Cause the object to print itself out. |
|
||||||||||||||||
|
Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >. |
|
||||||||||||
|
|
|
|
Increase the reference count (mark as used by another object). Reimplemented in itk::Object. |
|
||||||||||
|
Release memory for global data structure. Implements itk::FiniteDifferenceFunction< TDeformationField >. |
|
||||||||||
|
Set the fixed image. Definition at line 83 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Definition at line 91 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Set the fixed image. Definition at line 75 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
|
|
||||||||||
|
|
|
||||||||||
|
Definition at line 93 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Set the moving image. Definition at line 67 of file itkPDEDeformableRegistrationFunction.h. |
|
||||||||||
|
Set the moving image interpolator. Definition at line 127 of file itkLevelSetMotionRegistrationFunction.h. |
|
||||||||||
|
Definition at line 95 of file itkPDEDeformableRegistrationFunction.h. |
|
|
Sets the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations. Definition at line 137 of file itkFiniteDifferenceFunction.h. |
|
|
Sets the reference count on this object. This is a dangerous method, use it with care. Reimplemented in itk::Object. |
|
|
Definition at line 148 of file itkFiniteDifferenceFunction.h. |
|
|
Decrease the reference count (release by another object). Reimplemented in itk::Object. |
|
||||||||||
|
|
|
|||||
|
The deformation field. Definition at line 128 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||
|
Definition at line 130 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||
|
The fixed image. Definition at line 125 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||
|
Definition at line 132 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||
|
The moving image. Definition at line 119 of file itkPDEDeformableRegistrationFunction.h. |
|
|||||
|
Definition at line 131 of file itkPDEDeformableRegistrationFunction.h. |
|
|
Definition at line 194 of file itkFiniteDifferenceFunction.h. |
|
|
Number of uses of this object by other objects. Definition at line 119 of file itkLightObject.h. |
|
|
Mutex lock to protect modification to the reference count Definition at line 122 of file itkLightObject.h. |
|
|
Definition at line 195 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
Definition at line 186 of file itkLevelSetMotionRegistrationFunction.h. |
|
|
|
|
|||||
|
Definition at line 178 of file itkLevelSetMotionRegistrationFunction.h. |
|
|||||
|
Definition at line 115 of file itkLevelSetMotionRegistrationFunction.h. |
1.4.2 written by Dimitri van Heesch,
© 1997-2000