ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkGaussianMembershipFunction.h>
GaussianMembershipFunction models class membership through a multivariate Gaussian function.
GaussianMembershipFunction is a subclass of MembershipFunctionBase that models class membership (or likelihood) using a multivariate Gaussian function. The mean and covariance structure of the Gaussian are established using the methods SetMean() and SetCovariance(). The mean is a vector-type that is the same vector-type as the measurement vector but guarenteed to have a real element type. For instance, if the measurement type is an Vector<int,3>, then the mean is Vector<double,3>. If the measurement type is a VariableLengthVector<float>, then the mean is VariableLengthVector<double>. In contrast to this behavior, the covariance is always a VariableSizeMatrix<double>.
If the covariance is singular or nearly singular, the membership function behaves somewhat like an impulse located at the mean. In this case, we specify the covariance to be a diagonal matrix with large values along the diagonal. This membership function, therefore, will return small but differentiable values everywher and increase sharply near the mean.
Definition at line 55 of file itkGaussianMembershipFunction.h.
typedef SmartPointer< const Self > itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::ConstPointer |
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 63 of file itkGaussianMembershipFunction.h.
typedef VariableSizeMatrix< double > itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::CovarianceMatrixType |
Type of the covariance matrix
Definition at line 85 of file itkGaussianMembershipFunction.h.
typedef MeasurementVectorRealType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::MeanVectorType |
Definition at line 82 of file itkGaussianMembershipFunction.h.
typedef itk::NumericTraits< MeasurementVectorType >::RealType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::MeasurementVectorRealType |
Type of the mean vector. RealType on a vector-type is the same vector-type but with a real element type.
Definition at line 81 of file itkGaussianMembershipFunction.h.
typedef Superclass::MeasurementVectorSizeType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::MeasurementVectorSizeType |
Length of each measurement vector
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 77 of file itkGaussianMembershipFunction.h.
typedef TMeasurementVector itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::MeasurementVectorType |
Typedef alias for the measurement vectors
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 74 of file itkGaussianMembershipFunction.h.
typedef Superclass::Pointer itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::MembershipFunctionPointer |
SmartPointer class for superclass
Definition at line 67 of file itkGaussianMembershipFunction.h.
typedef SmartPointer< Self > itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::Pointer |
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 62 of file itkGaussianMembershipFunction.h.
typedef GaussianMembershipFunction itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::Self |
Standard class typedefs
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 60 of file itkGaussianMembershipFunction.h.
typedef MembershipFunctionBase< TMeasurementVector > itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::Superclass |
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
Definition at line 61 of file itkGaussianMembershipFunction.h.
itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GaussianMembershipFunction | ( | void | ) | [protected] |
virtual itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::~GaussianMembershipFunction | ( | void | ) | [inline, protected, virtual] |
Definition at line 119 of file itkGaussianMembershipFunction.h.
itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GaussianMembershipFunction | ( | const Self & | ) | [private] |
virtual::itk::LightObject::Pointer itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::CreateAnother | ( | void | ) | const [virtual] |
Standard macros
Reimplemented from itk::Object.
double itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::Evaluate | ( | const MeasurementVectorType & | measurement | ) | const [virtual] |
Evaluate the probability density of a measurement vector.
Implements itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
virtual const CovarianceMatrixType& itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GetCovariance | ( | ) | [virtual] |
virtual const CovarianceMatrixType& itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GetInverseCovariance | ( | ) | [virtual] |
virtual const MeanVectorType& itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GetMean | ( | ) | [virtual] |
Get the mean of the Gaussian distribution. Mean is a vector type similar to the measurement type but with a real element type.
virtual const char* itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::GetNameOfClass | ( | ) | const [virtual] |
Standard macros
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
virtual LightObject::Pointer itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::InternalClone | ( | ) | const [virtual] |
Method to clone a membership function, i.e. create a new instance of the same type of membership function and configure its ivars to match.
Reimplemented from itk::LightObject.
static Pointer itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::New | ( | ) | [static] |
Standard macros
Reimplemented from itk::Object.
void itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::operator= | ( | const Self & | ) | [private] |
Mutex lock to protect modification to the reference count
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
void itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by 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.
Reimplemented from itk::Statistics::MembershipFunctionBase< TMeasurementVector >.
void itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::SetCovariance | ( | const CovarianceMatrixType & | cov | ) |
Set the covariance matrix. Covariance matrix is a VariableSizeMatrix of doubles. The inverse of the covariance matrix and the normlization term for the multivariate Gaussian are calculate whenever the covaraince matrix is changed.
void itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::SetMean | ( | const MeanVectorType & | mean | ) |
Set the mean of the Gaussian distribution. Mean is a vector type similar to the measurement type but with a real element type.
CovarianceMatrixType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::m_Covariance [private] |
Definition at line 127 of file itkGaussianMembershipFunction.h.
bool itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::m_CovarianceNonsingular [private] |
Boolean to cache whether the covarinace is singular or nearly singular
Definition at line 138 of file itkGaussianMembershipFunction.h.
CovarianceMatrixType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::m_InverseCovariance [private] |
Definition at line 131 of file itkGaussianMembershipFunction.h.
MeanVectorType itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::m_Mean [private] |
Definition at line 126 of file itkGaussianMembershipFunction.h.
double itk::Statistics::GaussianMembershipFunction< TMeasurementVector >::m_PreFactor [private] |
Definition at line 135 of file itkGaussianMembershipFunction.h.