Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::fem::ImageMetricLoad< TMoving, TFixed > Class Template Reference

#include <itkFEMImageMetricLoad.h>

Inheritance diagram for itk::fem::ImageMetricLoad< TMoving, TFixed >:

Inheritance graph
[legend]
Collaboration diagram for itk::fem::ImageMetricLoad< TMoving, TFixed >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class TMoving, class TFixed>
class itk::fem::ImageMetricLoad< TMoving, TFixed >

General image pair load that uses the itkImageToImageMetrics.

LoadImageMetric computes FEM gravity loads by using derivatives provided by itkImageToImageMetrics (e.g. mean squares intensity difference.) The function responsible for this is called Fg, as required by the FEMLoad standards. It takes a vnl_vector as input. We assume the vector input is of size 2*ImageDimension. The 0 to ImageDimension-1 elements contain the position, p, in the reference (moving) image. The next ImageDimension to 2*ImageDimension-1 elements contain the value of the vector field at that point, v(p).

Then, we evaluate the derivative at the point p+v(p) with respect to some region of the target (fixed) image by calling the metric with the translation parameters as provided by the vector field at p. The metrics return both a scalar similarity value and vector-valued derivative. The derivative is what gives us the force to drive the FEM registration. These values are computed with respect to some region in the Fixed image. This region size may be set by the user by calling SetMetricRadius. As the metric derivative computation evolves, performance should improve and more functionality will be available (such as scale selection).

Definition at line 93 of file itkFEMImageMetricLoad.h.

Public Types

typedef FEMPArray< SelfArrayType
typedef Self Baseclass
typedef Float ComputationType
typedef const SelfConstPointer
typedef double CoordinateRepresentationType
typedef MeanSquaresMetricType DefaultMetricType
typedef TranslationTransform<
CoordinateRepresentationType,
itkGetStaticConstMacro(ImageDimension) 
DefaultTransformType )
typedef std::vector< Element::ConstPointerElementPointersVectorType
typedef FixedType::ConstPointer FixedConstPointer
typedef FixedNeighborhoodIteratorType::IndexType FixedNeighborhoodIndexType
typedef NeighborhoodIterator<
FixedType
FixedNeighborhoodIteratorType
typedef FixedTypeFixedPointer
typedef FixedNeighborhoodIteratorType::RadiusType FixedRadiusType
typedef TFixed FixedType
typedef LoadElement::Float Float
typedef GradientRecursiveGaussianImageFilter<
ImageType, GradientImageType
GradientImageFilterType
typedef SmartPointer< GradientImageTypeGradientImagePointer
typedef Image< GradientPixelType,
itkGetStaticConstMacro(ImageDimension) 
GradientImageType )
typedef CovariantVector< RealType,
itkGetStaticConstMacro(ImageDimension) 
GradientPixelType )
typedef Image< PixelType,
itkGetStaticConstMacro(ImageDimension) 
ImageType )
typedef LinearInterpolateImageFunction<
MovingType, double > 
InterpolatorType
typedef DefaultTransformType::JacobianType JacobianType
typedef MeanSquaresImageToImageMetric<
MovingType, FixedType
MeanSquaresMetricType
typedef ImageToImageMetric<
FixedType, MovingType
MetricBaseType
typedef MetricBaseType::Pointer MetricBaseTypePointer
typedef MovingType::ConstPointer MovingConstPointer
typedef MovingNeighborhoodIteratorType::IndexType MovingNeighborhoodIndexType
typedef NeighborhoodIterator<
MovingType
MovingNeighborhoodIteratorType
typedef MovingTypeMovingPointer
typedef MovingNeighborhoodIteratorType::RadiusType MovingRadiusType
typedef TMoving MovingType
typedef MutualInformationImageToImageMetric<
MovingType, FixedType
MutualInformationMetricType
typedef NormalizedCorrelationImageToImageMetric<
MovingType, FixedType
NormalizedCorrelationMetricType
typedef DefaultTransformType::ParametersType ParametersType
typedef Float PixelType
typedef SelfPointer
typedef Image< RefPixelType,
itkGetStaticConstMacro(ImageDimension) 
RefImageType )
typedef MovingType::PixelType RefPixelType
typedef ImageRegionIteratorWithIndex<
MovingType
RefRegionIteratorType
typedef ImageMetricLoad Self
typedef LoadElement Superclass
typedef Image< TarPixelType,
itkGetStaticConstMacro(ImageDimension) 
TarImageType )
typedef FixedType::PixelType TarPixelType
typedef ImageRegionIteratorWithIndex<
FixedType
TarRegionIteratorType
typedef Transform< CoordinateRepresentationType,
itkGetStaticConstMacro(ImageDimension),
itkGetStaticConstMacro(ImageDimension) 
TransformBaseType )
typedef vnl_vector< FloatVectorType

Public Member Functions

virtual int ClassID () const
virtual Baseclass::Pointer Clone () const
Float EvaluateMetricGivenSolution (Element::ArrayType *el, Float step=1.0)
VectorType Fe (VectorType, VectorType)
*Compute the image based load
implemented with ITK metric
derivatives *VectorType 
Fe1 (VectorType)
double GetCurrentEnergy ()
FixedPointer GetFixedImage ()
*This method returns the total
metric evaluated over the
image with respect to the
current solution *Float 
GetMetric (VectorType InVec)
GradientImageTypeGetMetricGradientImage ()
MovingRadiusType GetMetricRadius ()
MovingPointer GetMovingImage ()
unsigned int GetNumberOfIntegrationPoints ()
VectorType GetPolynomialFitToMetric (VectorType PositionInElement, VectorType SolutionAtPosition)
Float GetSolution (unsigned int i, unsigned int which=0)
Solution::ConstPointer GetSolution ()
 ImageMetricLoad ()
void InitializeMetric (void)
 itkStaticConstMacro (ImageDimension, unsigned int, MovingType::ImageDimension)
VectorType MetricFiniteDiff (VectorType PositionInElement, VectorType SolutionAtPosition)
void PrintCurrentEnergy ()
virtual void Read (std::istream &f, void *info)
Define the reference (moving) image.*/void SetMovingImage(MovingType *R)
void SetCurrentEnergy (double e)
void SetGamma (Float s)
void SetMetric (MetricBaseTypePointer MP)
void SetMetricFixedImage (FixedType *T)
Set Get the metric gradient
image *void 
SetMetricGradientImage (GradientImageType *g)
void SetMetricMovingImage (MovingType *R)
void SetMetricRadius (MovingRadiusType T)
Set Get methods for the number
of integration points to use
*in each dimensional line
integral when evaluating the
load *This value is passed
to the load implementation
*void 
SetNumberOfIntegrationPoints (unsigned int i)
void SetSign (Float s)
void SetSolution (Solution::ConstPointer ptr)
void SetTemp (Float s)
Define the target (fixed) image.*/void SetFixedImage(FixedType *T)
void Write (std::ostream &f) const

Static Public Member Functions

static FEMLightObject::Pointer CreateFromStream (std::istream &f, void *info)
static Self::Pointer New ()
static BaseclassNewImageMetricLoad (void)
static void SkipWhiteSpace (std::istream &f)

Public Attributes

*Sets the pointer to solution
vector This function is automatically
*called by the Solver class
on every load object **Some
types of external Loads may
need access to previous values
of *solution vector If a derived
class needs that it should
implement *this 
function
int GN
Gradient filtering *typedef
float 
RealType
*Sets the pointer to solution
vector This function is automatically
*called by the Solver class
on every load object **Some
types of external Loads may
need access to previous values
of *solution vector If a derived
class needs that it should
implement *this and store
the passed pointer accordingly
If the result *vector is not 
required
*Sets the pointer to solution
vector This function is automatically
*called by the Solver class
on every load object **Some
types of external Loads may
need access to previous values
of *solution vector If a derived
class needs that it should
implement *this and store
the passed pointer accordingly
If the result *vector is not
the functionn should be left 
unimplemented

Static Public Attributes

static const int CLID
static const std::string whitespaces


Member Typedef Documentation

typedef FEMPArray<Self> itk::fem::Load::ArrayType [inherited]
 

Array class that holds special pointers to the load objects

Definition at line 45 of file itkFEMLoadBase.h.

typedef Self itk::fem::FEMLightObject::Baseclass [inherited]
 

Store the base class typedef for easy access from derived classes. FEM_CLASS macro also expects this for the FEMOF...

Definition at line 67 of file itkFEMLightObject.h.

template<class TMoving, class TFixed>
typedef Float itk::fem::ImageMetricLoad< TMoving, TFixed >::ComputationType
 

Definition at line 134 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef const Self* itk::fem::ImageMetricLoad< TMoving, TFixed >::ConstPointer
 

Const pointer or SmartPointer to an object.

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef double itk::fem::ImageMetricLoad< TMoving, TFixed >::CoordinateRepresentationType
 

Definition at line 145 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MeanSquaresMetricType itk::fem::ImageMetricLoad< TMoving, TFixed >::DefaultMetricType
 

Definition at line 164 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef TranslationTransform<CoordinateRepresentationType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::DefaultTransformType)
 

Definition at line 147 of file itkFEMImageMetricLoad.h.

typedef std::vector<Element::ConstPointer> itk::fem::LoadElement::ElementPointersVectorType [inherited]
 

Type of array of pointers to element objects

Definition at line 57 of file itkFEMLoadElementBase.h.

template<class TMoving, class TFixed>
typedef FixedType::ConstPointer itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedConstPointer
 

Definition at line 106 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef FixedNeighborhoodIteratorType::IndexType itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedNeighborhoodIndexType
 

Definition at line 125 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef NeighborhoodIterator<FixedType> itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedNeighborhoodIteratorType
 

Definition at line 123 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef FixedType* itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedPointer
 

Definition at line 105 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef FixedNeighborhoodIteratorType::RadiusType itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedRadiusType
 

Definition at line 127 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef TFixed itk::fem::ImageMetricLoad< TMoving, TFixed >::FixedType
 

Definition at line 104 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef LoadElement::Float itk::fem::ImageMetricLoad< TMoving, TFixed >::Float
 

Float type used in Element and derived classes

Reimplemented from itk::fem::LoadElement.

Definition at line 99 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef GradientRecursiveGaussianImageFilter< ImageType, GradientImageType > itk::fem::ImageMetricLoad< TMoving, TFixed >::GradientImageFilterType
 

Definition at line 183 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef SmartPointer<GradientImageType> itk::fem::ImageMetricLoad< TMoving, TFixed >::GradientImagePointer
 

Definition at line 180 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Image<GradientPixelType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::GradientImageType)
 

Definition at line 179 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef CovariantVector<RealType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::GradientPixelType)
 

Definition at line 177 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Image< PixelType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::ImageType)
 

Definition at line 137 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef LinearInterpolateImageFunction< MovingType, double > itk::fem::ImageMetricLoad< TMoving, TFixed >::InterpolatorType
 

Definition at line 172 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef DefaultTransformType::JacobianType itk::fem::ImageMetricLoad< TMoving, TFixed >::JacobianType
 

Definition at line 166 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MeanSquaresImageToImageMetric< MovingType, FixedType > itk::fem::ImageMetricLoad< TMoving, TFixed >::MeanSquaresMetricType
 

Definition at line 155 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef ImageToImageMetric<FixedType,MovingType > itk::fem::ImageMetricLoad< TMoving, TFixed >::MetricBaseType
 

Type of supported metrics.

Definition at line 150 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MetricBaseType::Pointer itk::fem::ImageMetricLoad< TMoving, TFixed >::MetricBaseTypePointer
 

Definition at line 151 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MovingType::ConstPointer itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingConstPointer
 

Definition at line 102 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MovingNeighborhoodIteratorType::IndexType itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingNeighborhoodIndexType
 

Definition at line 119 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef NeighborhoodIterator<MovingType> itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingNeighborhoodIteratorType
 

Definition at line 117 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MovingType* itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingPointer
 

Definition at line 103 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MovingNeighborhoodIteratorType::RadiusType itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingRadiusType
 

Definition at line 121 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef TMoving itk::fem::ImageMetricLoad< TMoving, TFixed >::MovingType
 

Definition at line 101 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MutualInformationImageToImageMetric< MovingType, FixedType > itk::fem::ImageMetricLoad< TMoving, TFixed >::MutualInformationMetricType
 

Definition at line 153 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef NormalizedCorrelationImageToImageMetric< MovingType, FixedType > itk::fem::ImageMetricLoad< TMoving, TFixed >::NormalizedCorrelationMetricType
 

Definition at line 157 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef DefaultTransformType::ParametersType itk::fem::ImageMetricLoad< TMoving, TFixed >::ParametersType
 

Definition at line 165 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Float itk::fem::ImageMetricLoad< TMoving, TFixed >::PixelType
 

Definition at line 133 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Self* itk::fem::ImageMetricLoad< TMoving, TFixed >::Pointer
 

Pointer or SmartPointer to an object.

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Image< RefPixelType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::RefImageType)
 

Definition at line 135 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef MovingType::PixelType itk::fem::ImageMetricLoad< TMoving, TFixed >::RefPixelType
 

Definition at line 131 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef ImageRegionIteratorWithIndex<MovingType> itk::fem::ImageMetricLoad< TMoving, TFixed >::RefRegionIteratorType
 

Definition at line 112 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef ImageMetricLoad itk::fem::ImageMetricLoad< TMoving, TFixed >::Self
 

Standard Self typedef.

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef LoadElement itk::fem::ImageMetricLoad< TMoving, TFixed >::Superclass
 

Standard Superclass typedef.

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Image< TarPixelType, itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::TarImageType)
 

Definition at line 136 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef FixedType::PixelType itk::fem::ImageMetricLoad< TMoving, TFixed >::TarPixelType
 

Definition at line 132 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef ImageRegionIteratorWithIndex<FixedType> itk::fem::ImageMetricLoad< TMoving, TFixed >::TarRegionIteratorType
 

Definition at line 113 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef Transform< CoordinateRepresentationType,itkGetStaticConstMacro(ImageDimension), itkGetStaticConstMacro(ImageDimension) itk::fem::ImageMetricLoad< TMoving, TFixed >::TransformBaseType)
 

Definition at line 146 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
typedef vnl_vector<Float> itk::fem::ImageMetricLoad< TMoving, TFixed >::VectorType
 

Definition at line 138 of file itkFEMImageMetricLoad.h.


Constructor & Destructor Documentation

template<class TMoving, class TFixed>
itk::fem::ImageMetricLoad< TMoving, TFixed >::ImageMetricLoad  ) 
 


Member Function Documentation

template<class TMoving, class TFixed>
virtual int itk::fem::ImageMetricLoad< TMoving, TFixed >::ClassID  )  const [inline, virtual]
 

Virtual function to access the class ID

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
virtual Baseclass::Pointer itk::fem::ImageMetricLoad< TMoving, TFixed >::Clone  )  const [virtual]
 

Create a new object from the existing one

Reimplemented from itk::fem::LoadElement.

static FEMLightObject::Pointer itk::fem::FEMLightObject::CreateFromStream std::istream &  f,
void *  info
[static, inherited]
 

Read object of any derived type from stream.

This static function creates an object of a class, which is derived from FEMLightObject. The class of object is first determined from the stream, then the object of that class is constructed using the FEMObjectFactory. Finally the data for this object is read from the stream, by calling the Read() member function.

template<class TMoving, class TFixed>
Float itk::fem::ImageMetricLoad< TMoving, TFixed >::EvaluateMetricGivenSolution Element::ArrayType el,
Float  step = 1.0
 

template<class TMoving, class TFixed>
VectorType itk::fem::ImageMetricLoad< TMoving, TFixed >::Fe VectorType  ,
VectorType 
 

template<class TMoving, class TFixed>
* Compute the image based load implemented with ITK metric derivatives* VectorType itk::fem::ImageMetricLoad< TMoving, TFixed >::Fe1 VectorType   ) 
 

template<class TMoving, class TFixed>
double itk::fem::ImageMetricLoad< TMoving, TFixed >::GetCurrentEnergy  )  [inline]
 

Definition at line 294 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
FixedPointer itk::fem::ImageMetricLoad< TMoving, TFixed >::GetFixedImage void   )  [inline]
 

Definition at line 222 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
* This method returns the total metric evaluated over the image with respect to the current solution* Float itk::fem::ImageMetricLoad< TMoving, TFixed >::GetMetric VectorType  InVec  ) 
 

template<class TMoving, class TFixed>
GradientImageType* itk::fem::ImageMetricLoad< TMoving, TFixed >::GetMetricGradientImage  )  [inline]
 

Definition at line 289 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
MovingRadiusType itk::fem::ImageMetricLoad< TMoving, TFixed >::GetMetricRadius  )  [inline]
 

Get the metric region size.

Definition at line 228 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
MovingPointer itk::fem::ImageMetricLoad< TMoving, TFixed >::GetMovingImage void   )  [inline]
 

Definition at line 221 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
unsigned int itk::fem::ImageMetricLoad< TMoving, TFixed >::GetNumberOfIntegrationPoints  )  [inline]
 

Definition at line 235 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
VectorType itk::fem::ImageMetricLoad< TMoving, TFixed >::GetPolynomialFitToMetric VectorType  PositionInElement,
VectorType  SolutionAtPosition
 

template<class TMoving, class TFixed>
Float itk::fem::ImageMetricLoad< TMoving, TFixed >::GetSolution unsigned int  i,
unsigned int  which = 0
[inline]
 

Definition at line 263 of file itkFEMImageMetricLoad.h.

References itk::fem::Solution::GetSolutionValue().

template<class TMoving, class TFixed>
Solution::ConstPointer itk::fem::ImageMetricLoad< TMoving, TFixed >::GetSolution  )  [inline, virtual]
 

Reimplemented from itk::fem::Load.

Definition at line 251 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::InitializeMetric void   ) 
 

template<class TMoving, class TFixed>
itk::fem::ImageMetricLoad< TMoving, TFixed >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
MovingType::ImageDimension 
 

Dimensionality of input and output data is assumed to be the same.

template<class TMoving, class TFixed>
VectorType itk::fem::ImageMetricLoad< TMoving, TFixed >::MetricFiniteDiff VectorType  PositionInElement,
VectorType  SolutionAtPosition
 

template<class TMoving, class TFixed>
static Self::Pointer itk::fem::ImageMetricLoad< TMoving, TFixed >::New void   )  [inline, static]
 

Object creation in an itk compatible way

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
static Baseclass* itk::fem::ImageMetricLoad< TMoving, TFixed >::NewImageMetricLoad void   )  [inline, static]
 

Definition at line 282 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::PrintCurrentEnergy  )  [inline]
 

Definition at line 293 of file itkFEMImageMetricLoad.h.

virtual void itk::fem::LoadElement::Read std::istream &  f,
void *  info
[virtual, inherited]
 

pointers to element objects on which the load acts

Reimplemented from itk::fem::FEMLightObject.

Reimplemented in itk::fem::LoadEdge, itk::fem::LoadGravConst, itk::fem::LoadLandmark, and itk::fem::LoadTest< TClass >.

Referenced by itk::fem::LoadTest< TClass >::Read().

template<class TMoving, class TFixed>
Define the itk::fem::ImageMetricLoad< TMoving, TFixed >::reference moving   )  [inline]
 

Definition at line 193 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetCurrentEnergy double  e  )  [inline]
 

Definition at line 295 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetGamma Float  s  )  [inline]
 

Scaling of the similarity energy term

Definition at line 248 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetMetric MetricBaseTypePointer  MP  )  [inline]
 

Set/Get the Metric.

Definition at line 191 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetMetricFixedImage FixedType T  )  [inline]
 

Definition at line 213 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
Set Get the metric gradient image* void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetMetricGradientImage GradientImageType g  )  [inline]
 

Definition at line 288 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetMetricMovingImage MovingType R  )  [inline]
 

Definition at line 201 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetMetricRadius MovingRadiusType  T  )  [inline]
 

Define the metric region size.

Definition at line 225 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
Set Get methods for the number of integration points to use* in each dimensional line integral when evaluating the load* This value is passed to the load implementation* void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetNumberOfIntegrationPoints unsigned int  i  )  [inline]
 

Definition at line 234 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetSign Float  s  )  [inline]
 

Set the direction of the gradient (uphill or downhill). E.g. the mean squares metric should be minimized while NCC and PR should be maximized.

Definition at line 241 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetSolution Solution::ConstPointer  ptr  )  [inline, virtual]
 

Reimplemented from itk::fem::Load.

Definition at line 250 of file itkFEMImageMetricLoad.h.

template<class TMoving, class TFixed>
void itk::fem::ImageMetricLoad< TMoving, TFixed >::SetTemp Float  s  )  [inline]
 

Set the sigma in a gaussian measure.

Definition at line 244 of file itkFEMImageMetricLoad.h.

static void itk::fem::FEMLightObject::SkipWhiteSpace std::istream &  f  )  [static, inherited]
 

Helper function that skips all the whitespace and comments in an input stream.

template<class TMoving, class TFixed>
Define the itk::fem::ImageMetricLoad< TMoving, TFixed >::target fixed   )  [inline]
 

Definition at line 207 of file itkFEMImageMetricLoad.h.

void itk::fem::LoadElement::Write std::ostream &  f  )  const [virtual, inherited]
 

Write an object to the output stream. Call this member to write the data members in the current object to the output stream. Here we also need to know which derived class we actually are, so that we can write the class name. The class name is obtained by calling the virtual ClassID() member function and passing the result to the FEMObjectFactory.

Implementations of Write member funtion in derived classes should first call the parent's implementation of Write and finaly write whatever they need.

Reimplemented from itk::fem::FEMLightObject.

Reimplemented in itk::fem::LoadEdge, itk::fem::LoadGravConst, itk::fem::LoadLandmark, and itk::fem::LoadTest< TClass >.

Referenced by itk::fem::LoadTest< TClass >::Write().


Member Data Documentation

template<class TMoving, class TFixed>
const int itk::fem::ImageMetricLoad< TMoving, TFixed >::CLID [static]
 

Class ID for FEM object factory

Reimplemented from itk::fem::LoadElement.

Definition at line 95 of file itkFEMImageMetricLoad.h.

* Sets the pointer to solution vector This function is automatically* called by the Solver class on every load object* * Some types of external Loads may need access to previous values of* solution vector If a derived class needs that it should implement* this itk::fem::Load::function [inherited]
 

Definition at line 52 of file itkFEMLoadBase.h.

int itk::fem::FEMLightObject::GN [inherited]
 

Global number of an object (ID of an object) In general the ID's are required to be unique only within a specific type of derived classes (Elements, Nodes, ...) If the GN is not required, it can be ignored. (normally you need the GN when writing or reading objects to/from stream.

Definition at line 168 of file itkFEMLightObject.h.

Referenced by itk::fem::FEMLightObject::FEMLightObject().

template<class TMoving, class TFixed>
Gradient filtering* typedef float itk::fem::ImageMetricLoad< TMoving, TFixed >::RealType
 

Definition at line 175 of file itkFEMImageMetricLoad.h.

* Sets the pointer to solution vector This function is automatically* called by the Solver class on every load object* * Some types of external Loads may need access to previous values of* solution vector If a derived class needs that it should implement* this and store the passed pointer accordingly If the result* vector is not itk::fem::Load::required [inherited]
 

Definition at line 52 of file itkFEMLoadBase.h.

* Sets the pointer to solution vector This function is automatically* called by the Solver class on every load object* * Some types of external Loads may need access to previous values of* solution vector If a derived class needs that it should implement* this and store the passed pointer accordingly If the result* vector is not the functionn should be left itk::fem::Load::unimplemented [inherited]
 

Definition at line 52 of file itkFEMLoadBase.h.

const std::string itk::fem::FEMLightObject::whitespaces [static, inherited]
 

Const string of all whitespace characters. This string is used by SkipWhiteSpace function.

Definition at line 138 of file itkFEMLightObject.h.


The documentation for this class was generated from the following file:
Generated at Sun Jul 9 23:35:25 2006 for ITK by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2000