ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
itk::KalmanLinearEstimator< T, VEstimatorDimension > Class Template Reference

#include <itkKalmanLinearEstimator.h>

List of all members.

Public Types

typedef vnl_matrix_fixed< T,
VEstimatorDimension,
VEstimatorDimension > 
MatrixType
typedef T ValueType
typedef vnl_vector_fixed< T,
VEstimatorDimension > 
VectorType

Public Member Functions

void ClearEstimation (void)
void ClearVariance (void)
const VectorTypeGetEstimator (void) const
const MatrixTypeGetVariance (void) const
void SetVariance (const MatrixType &m)
void UpdateWithNewMeasure (const ValueType &newMeasure, const VectorType &newPredictor)
void SetVariance (const ValueType &var=1.0)

Static Public Attributes

static const unsigned int Dimension = VEstimatorDimension

Private Member Functions

void UpdateVariance (const VectorType &)

Private Attributes

VectorType m_Estimator
MatrixType m_Variance

Detailed Description

template<class T, unsigned int VEstimatorDimension>
class itk::KalmanLinearEstimator< T, VEstimatorDimension >

Implement a linear recursive estimator.

KalmanLinearEstimator class implements a linear recursive estimator. The class is templated over the type of the parameters to be estimated and over the number of parameters. Recursive estimation is a fast mechanism for getting information about a system for which we only have access to measures that are linearly related with the parameters we want to estimate.

Definition at line 42 of file itkKalmanLinearEstimator.h.


Member Typedef Documentation

template<class T , unsigned int VEstimatorDimension>
typedef vnl_matrix_fixed< T, VEstimatorDimension, VEstimatorDimension > itk::KalmanLinearEstimator< T, VEstimatorDimension >::MatrixType

Matrix type defines a generic matrix type that is used for the matricial operations performed during estimation.

Definition at line 56 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
typedef T itk::KalmanLinearEstimator< T, VEstimatorDimension >::ValueType

Type is the type associated with the parameters to be estimated. All the parameters are of the same type. Natural choices could be floats and doubles, because Type also is used for all the internal computations.

Definition at line 62 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
typedef vnl_vector_fixed< T, VEstimatorDimension > itk::KalmanLinearEstimator< T, VEstimatorDimension >::VectorType

Vector type defines a generic vector type that is used for the matricial operations performed during estimation.

Definition at line 52 of file itkKalmanLinearEstimator.h.


Member Function Documentation

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::ClearEstimation ( void  ) [inline]

This method resets the estimator. It set all the parameters to null. The covariance matrix is not changed.

See also:
Estimator
Variance
ClearVariance

Definition at line 74 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::ClearVariance ( void  ) [inline]

This method resets the covariance matrix. It is set to an identity matrix

See also:
Estimator
Variance
ClearEstimation

Definition at line 79 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
const VectorType& itk::KalmanLinearEstimator< T, VEstimatorDimension >::GetEstimator ( void  ) const [inline]

This method returns the vector of estimated parameters

See also:
Estimator

Definition at line 107 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
const MatrixType& itk::KalmanLinearEstimator< T, VEstimatorDimension >::GetVariance ( void  ) const [inline]

This method returns the covariance matrix of the estimated parameters

See also:
Variance

Definition at line 112 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::SetVariance ( const ValueType var = 1.0) [inline]

This method sets the covariance matrix to a diagonal matrix with equal values. It is useful when the variance of all the parameters be estimated are the same and the parameters are considered independents.

See also:
Estimator
Variance
ClearEstimation

Definition at line 90 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::SetVariance ( const MatrixType m) [inline]

This method sets the covariance matrix to known matrix. It is intended to initialize the estimator with a priori information about the statistical distribution of the parameters. It can also be used to resume the operation of a previously used estimator using it last known state.

See also:
Estimator
Variance
ClearEstimation

Definition at line 102 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::UpdateVariance ( const VectorType newPredictor) [private]

This methods performs the update of the parameter's covariance matrix. It is called by updateWithNewMeasure() method. Users are not expected to call this method directly.

See also:
updateWithNewMeasure

Definition at line 158 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
void itk::KalmanLinearEstimator< T, VEstimatorDimension >::UpdateWithNewMeasure ( const ValueType newMeasure,
const VectorType newPredictor 
)

Update the estimation using the information provided by a new measure along with a new line of the linear predictor. This method is the one that should be called iteratively in order to estimate the parameter's vector. It internally updates the covariance matrix.

Definition at line 138 of file itkKalmanLinearEstimator.h.


Member Data Documentation

template<class T , unsigned int VEstimatorDimension>
const unsigned int itk::KalmanLinearEstimator< T, VEstimatorDimension >::Dimension = VEstimatorDimension [static]

Dimension of the vector of parameters to be estimated. It is equivalent to the number of parameters to estimate.

Definition at line 48 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
VectorType itk::KalmanLinearEstimator< T, VEstimatorDimension >::m_Estimator [private]

Vector of parameters to estimate.

See also:
GetEstimator

Definition at line 124 of file itkKalmanLinearEstimator.h.

template<class T , unsigned int VEstimatorDimension>
MatrixType itk::KalmanLinearEstimator< T, VEstimatorDimension >::m_Variance [private]

Estimation of the parameter's covariance matrix. This matrix contains the information about the estate of the estimator. It holds all the information obtained from previous measures provided to the estimator. The initialization of this matrix is critical to the behavior of the estimator, at least to ensure a short trasient period for estabilizing the estimation.

See also:
SetVariance
GetVariance

Definition at line 132 of file itkKalmanLinearEstimator.h.


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