FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField > Class Template Reference
[Evaluation tools]

Computes a mean vector field out of a set of passed fields. More...

#include <freMeanVectorFieldGenerator.h>

List of all members.

Public Types

typedef TInputVectorField InputImageType
typedef
TOutputVectorField 
OutputImageType
typedef
InputImageType::ValueType 
InputVectorType
typedef
OutputImageType::Pointer 
OutputImagePointer
typedef
OutputImageType::ValueType 
OutputVectorType
typedef
OutputImageType::RegionType 
OutputRegionType
typedef
OutputImageType::PointType 
OutputPointType

Public Member Functions

OutputRegionType GetOutputRegion () const
void SetOutputGeometry (const OutputRegionType &outputRegion, const OutputPointType &origin)
void AddField (const InputImageType *vectorField)
OutputImagePointer GetOutput (void) const
void Reset ()
 MeanVectorFieldGenerator ()
virtual ~MeanVectorFieldGenerator ()

Private Member Functions

void ResizeSumField (OutputImageType *elementField)

Private Attributes

OutputImageType::Pointer m_SumVectorField
unsigned int m_iFieldCount
bool m_bUserRegion
OutputRegionType m_OutputRegion
OutputPointType m_OutputOrigin


Detailed Description

template<class TInputVectorField, class TOutputVectorField>
class FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >

Computes a mean vector field out of a set of passed fields.

MeanVectorFieldGenerator uses a given set of vector fields to calculate a mean vector field. Depending on its setting the region of the output will be the same then the first added element or can be defined by user.

Remarks:
In this version the generator assumes that all images have the same spacing

Definition at line 39 of file freMeanVectorFieldGenerator.h.


Member Typedef Documentation

template<class TInputVectorField, class TOutputVectorField>
typedef TInputVectorField FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::InputImageType

Definition at line 42 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef TOutputVectorField FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputImageType

Definition at line 43 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef InputImageType::ValueType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::InputVectorType

Definition at line 44 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef OutputImageType::Pointer FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputImagePointer

Definition at line 45 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef OutputImageType::ValueType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputVectorType

Definition at line 46 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef OutputImageType::RegionType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputRegionType

Definition at line 47 of file freMeanVectorFieldGenerator.h.

template<class TInputVectorField, class TOutputVectorField>
typedef OutputImageType::PointType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputPointType

Definition at line 48 of file freMeanVectorFieldGenerator.h.


Constructor & Destructor Documentation

template<class TInputVectorField, class TOutputVectorField>
FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::MeanVectorFieldGenerator (  )  [inline]

Definition at line 139 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::Reset().

Here is the call graph for this function:

FREE::MeanVectorFieldGenerator::Reset

template<class TInputVectorField, class TOutputVectorField>
FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::~MeanVectorFieldGenerator (  )  [inline, virtual]

Definition at line 146 of file freMeanVectorFieldGenerator.txx.


Member Function Documentation

template<class TInputVectorField, class TOutputVectorField>
void FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField ( OutputImageType elementField  )  [inline, private]

Function checks if the sum field must be extendend because of the element field which will be added to the set. Behaviour depends on m_bDynamicResize.

Parameters:
[in] elementField Pointer to the field which should be added to the set.

Definition at line 34 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_bUserRegion, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_iFieldCount, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputOrigin, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion, and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_SumVectorField.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::AddField().

template<class TInputVectorField, class TOutputVectorField>
MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputRegionType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutputRegion (  )  const [inline]

Definition at line 153 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion.

template<class TInputVectorField, class TOutputVectorField>
void FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::SetOutputGeometry ( const OutputRegionType outputRegion,
const OutputPointType origin 
) [inline]

Definition at line 161 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_bUserRegion, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputOrigin, and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion.

template<class TInputVectorField, class TOutputVectorField>
void FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::AddField ( const InputImageType vectorField  )  [inline]

Adds a vector field to the set of fields, that will be used to compute the mean field. The value of the added field will be copied, so after calling the function the added field isn't needed anymore.

Parameters:
[in] vectorField Pointer to a vector field, that should be used for the calculation.

Definition at line 60 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_iFieldCount, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_SumVectorField, and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField().

Referenced by FREE::VectorFieldSetVarianceCalculator< VImageDimension >::Compute().

Here is the call graph for this function:

FREE::MeanVectorFieldGenerator::ResizeSumField

template<class TInputVectorField, class TOutputVectorField>
MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::OutputImagePointer FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutput ( void   )  const [inline]

Function creates an output vector field containing the mean of every vector.

Definition at line 99 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_iFieldCount, FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion, and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_SumVectorField.

Referenced by FREE::VectorFieldSetVarianceCalculator< VImageDimension >::Compute().

template<class TInputVectorField, class TOutputVectorField>
void FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::Reset (  )  [inline]

Resets the set of contributing vector fields. After the reset output vector field will be empty as long as no new field has been added.

Definition at line 131 of file freMeanVectorFieldGenerator.txx.

References FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_bUserRegion, and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_iFieldCount.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::MeanVectorFieldGenerator().


Member Data Documentation

template<class TInputVectorField, class TOutputVectorField>
OutputImageType::Pointer FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_SumVectorField [private]

Pointer to the vector field containing the sum of all vectors.

Definition at line 52 of file freMeanVectorFieldGenerator.h.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::AddField(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutput(), and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField().

template<class TInputVectorField, class TOutputVectorField>
unsigned int FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_iFieldCount [private]

Count of the elements used to calculate the mean

Definition at line 55 of file freMeanVectorFieldGenerator.h.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::AddField(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutput(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::Reset(), and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField().

template<class TInputVectorField, class TOutputVectorField>
bool FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_bUserRegion [private]

Flag indicates if the output region has been set by the user.

Definition at line 59 of file freMeanVectorFieldGenerator.h.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::Reset(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField(), and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::SetOutputGeometry().

template<class TInputVectorField, class TOutputVectorField>
OutputRegionType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputRegion [private]

Definition at line 61 of file freMeanVectorFieldGenerator.h.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::AddField(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutput(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::GetOutputRegion(), FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField(), and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::SetOutputGeometry().

template<class TInputVectorField, class TOutputVectorField>
OutputPointType FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::m_OutputOrigin [private]

Definition at line 62 of file freMeanVectorFieldGenerator.h.

Referenced by FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::ResizeSumField(), and FREE::MeanVectorFieldGenerator< TInputVectorField, TOutputVectorField >::SetOutputGeometry().


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