irtkImageFluidRegistration Class Reference

#include <irtkImageFluidRegistration.h>

Inheritance diagram for irtkImageFluidRegistration:

Inheritance graph
[legend]
Collaboration diagram for irtkImageFluidRegistration:

Collaboration graph
[legend]

List of all members.


Detailed Description

Filter for non-rigid registration based on voxel similarity measures.

Definition at line 23 of file irtkImageFluidRegistration.h.


Public Member Functions

 irtkImageFluidRegistration ()
 Constructor.
virtual void SetOutput (irtkTransformation *)
 Set output for the registration filter.
virtual void Run ()
 Runs the registration filter.
virtual const char * NameOfClass ()
 Returns the name of the class.
virtual void Print ()
 Print some information.
virtual void GuessParameter ()
 Guess parameters.
virtual Bool Read (char *, char *, int &)
 Read single line of registration parameters.
virtual void Write (ostream &)
 Write registration parameters to file.

Protected Member Functions

virtual void Initialize ()
 Initial set up for the registration.
virtual void Initialize (int)
 Initial set up for the registration.
virtual void Finalize ()
 Final set up for the registration.
virtual void Finalize (int)
 Final set up for the registration.
virtual double Evaluate ()
 Evaluates the registration.
virtual double EvaluateDerivative (int, double)
 Evaluates the registration.
virtual double EvaluateGradient (float, float *)
 Evaluates the gradient of the similarity metric.
virtual void UpdateLUT ()

Protected Attributes

irtkBSplineFreeFormTransformation * _affd
 Pointer to the local transformation which is currently optimized.
irtkFluidFreeFormTransformation_mffd
 Pointer to the global transformation which is constant.
double _DX
 Control point spacing in the x-direction.
double _DY
 Control point spacing in the y-direction.
double _DZ
 Control point spacing in the z-direction.
int _NumberOfTimeSteps
 Number of time steps for fluid registration.
double _SpeedupFactor
 Speedup factor when calculating derivative.

Friends

float irtkFluidRegistration_Ptr2NRfunc (float *x)
 Friend declaration of NR optimization routines.
void irtkFluidRegistration_Ptr2NRdfunc (float *x, float *dx)
 Friend declaration of NR optimization routines.

Member Function Documentation

virtual double irtkImageFluidRegistration::Evaluate (  )  [protected, virtual]

Evaluates the registration.

This function evaluates the registration by looping over the target image and interpolating the transformed source image while filling the joint histogram. This function returns the value of the similarity measure using Similarity().

Implements irtkImageRegistration.

Reimplemented in irtkImageFluidRegistration2D.

virtual double irtkImageFluidRegistration::EvaluateDerivative ( int  ,
double   
) [protected, virtual]

Evaluates the registration.

This function evaluates the registration by looping over the target image and interpolating the transformed source image while filling the joint histogram. This function returns the value of the similarity measure using Similarity(). This function uses the cached result of any previous call to Evaluate() and recalculates the similarity measure in the specified region of interest.

Reimplemented in irtkImageFluidRegistration2D.

virtual double irtkImageFluidRegistration::EvaluateGradient ( float  ,
float *   
) [protected, virtual]

Evaluates the gradient of the similarity metric.

This function evaluates the gradient of the similarity metric of the registration by looping over the target image and interpolating the transformed source image while filling the joint histogram. The partial derivatives are approximated using a finite difference scheme. The step size for the finite difference scheme is passed as a parameter to the function. The function returns the norm of the gradient vector as well as the gradient vector containing the partial derivatives.

Reimplemented from irtkImageRegistration.


The documentation for this class was generated from the following file: