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

itk::Statistics::MixtureModelComponentBase< TSample > Class Template Reference

base class for distribution modules that supports analytical way to update the distribution parameters More...

#include <itkMixtureModelComponentBase.h>

Inheritance diagram for itk::Statistics::MixtureModelComponentBase< TSample >:

Inheritance graph
[legend]
Collaboration diagram for itk::Statistics::MixtureModelComponentBase< TSample >:

Collaboration graph
[legend]
List of all members.

[NOHEADER]

virtual const char * GetClassName () const
Pointer New ()

Public Types

typedef MixtureModelComponentBase Self
typedef Object Superclass
typedef SmartPointer< SelfPointer
typedef TSample::MeasurementVectorType MeasurementVectorType
typedef MembershipFunctionBase<
MeasurementVectorType
MembershipFunctionType
typedef Array< double > WeightArrayType
typedef Array< double > ParametersType

Public Member Functions

virtual void SetSample (TSample *sample)
TSample * GetSample ()
MembershipFunctionTypeGetMembershipFunction ()
void SetMinimalParametersChange (double change)
double GetMinimalParametersChange ()
virtual void SetParameters (const ParametersType &parameters)
virtual ParametersType GetFullParameters ()
void AreParametersModified (bool flag)
bool AreParametersModified ()
void SetWeight (int index, double value)
double GetWeight (int index)
double Evaluate (MeasurementVectorType &measurements)
WeightArrayTypeGetWeights ()
virtual void Update ()

Protected Member Functions

 MixtureModelComponentBase ()
virtual ~MixtureModelComponentBase ()
void PrintSelf (std::ostream &os, Indent indent) const
void CreateWeightArray ()
void DeleteWeightArray ()
void SetMembershipFunction (MembershipFunctionType *function)
virtual void GenerateData ()

Detailed Description

template<class TSample>
class itk::Statistics::MixtureModelComponentBase< TSample >

base class for distribution modules that supports analytical way to update the distribution parameters

This class expects that its subclasses (distribution components) should have analytical expressions for updating its paraters using only the measurement vectors and their associated weights.

This class can be considered as a macro class that encapsulates the storage for the weights, model (subclasses of MembershipFunctionBase), and model parameter estimators (implemenation of analytical expressions).

Subclasses of this class should define their own distribution specific membership function. For example, GaussianMixtureModelComponent class defines and creates a GaussianDensityFunction object for that matter. Subclasses should also cast such membership function object to MembershipFunctionBase object. By doing that, users can get pointers to membership functions from different distributional model

See also:
ExpectationMaximizationMixtureModelEstimator

Definition at line 53 of file itkMixtureModelComponentBase.h.


Member Typedef Documentation

template<class TSample>
typedef TSample::MeasurementVectorType itk::Statistics::MixtureModelComponentBase< TSample >::MeasurementVectorType
 

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 67 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef MembershipFunctionBase< MeasurementVectorType > itk::Statistics::MixtureModelComponentBase< TSample >::MembershipFunctionType
 

typedef for the MembershipFunctionBase

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 71 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef Array< double > itk::Statistics::MixtureModelComponentBase< TSample >::ParametersType
 

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 76 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef SmartPointer<Self> itk::Statistics::MixtureModelComponentBase< TSample >::Pointer
 

Reimplemented from itk::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 60 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef MixtureModelComponentBase itk::Statistics::MixtureModelComponentBase< TSample >::Self
 

Standard class typedefs.

Reimplemented from itk::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 58 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef Object itk::Statistics::MixtureModelComponentBase< TSample >::Superclass
 

Reimplemented from itk::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 59 of file itkMixtureModelComponentBase.h.

template<class TSample>
typedef Array< double > itk::Statistics::MixtureModelComponentBase< TSample >::WeightArrayType
 

typedef of strorage for the weights

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

Definition at line 74 of file itkMixtureModelComponentBase.h.


Constructor & Destructor Documentation

template<class TSample>
itk::Statistics::MixtureModelComponentBase< TSample >::MixtureModelComponentBase  )  [protected]
 

template<class TSample>
virtual itk::Statistics::MixtureModelComponentBase< TSample >::~MixtureModelComponentBase  )  [protected, virtual]
 


Member Function Documentation

template<class TSample>
bool itk::Statistics::MixtureModelComponentBase< TSample >::AreParametersModified  ) 
 

returns the value of parameter modified tag

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::AreParametersModified bool  flag  ) 
 

sets the parameters modified tag. if one or more of the membership funtion's parameters are changed, then flag should be true

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::CreateWeightArray  )  [protected]
 

allocates the weights array

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::DeleteWeightArray  )  [protected]
 

deallocates the weights array

template<class TSample>
double itk::Statistics::MixtureModelComponentBase< TSample >::Evaluate MeasurementVectorType measurements  ) 
 

returns the membership score of the "measurements" vector

template<class TSample>
virtual void itk::Statistics::MixtureModelComponentBase< TSample >::GenerateData  )  [protected, virtual]
 

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
virtual const char* itk::Statistics::MixtureModelComponentBase< TSample >::GetClassName  )  const [virtual]
 

Standard Macros

Reimplemented from itk::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
virtual ParametersType itk::Statistics::MixtureModelComponentBase< TSample >::GetFullParameters  )  [inline, virtual]
 

Definition at line 98 of file itkMixtureModelComponentBase.h.

template<class TSample>
MembershipFunctionType* itk::Statistics::MixtureModelComponentBase< TSample >::GetMembershipFunction  ) 
 

returns the pointer to the membership function object. Subclasses of this class are responsible for creating the actual membership function objects and cast them to MembershipFunctionBase objects

template<class TSample>
double itk::Statistics::MixtureModelComponentBase< TSample >::GetMinimalParametersChange  )  [inline]
 

Definition at line 93 of file itkMixtureModelComponentBase.h.

template<class TSample>
TSample* itk::Statistics::MixtureModelComponentBase< TSample >::GetSample  ) 
 

returns the sample pointer

template<class TSample>
double itk::Statistics::MixtureModelComponentBase< TSample >::GetWeight int  index  ) 
 

returns the index-th weight

template<class TSample>
WeightArrayType* itk::Statistics::MixtureModelComponentBase< TSample >::GetWeights  ) 
 

returns the pointer to the weights array

template<class TSample>
Pointer itk::Statistics::MixtureModelComponentBase< TSample >::New  )  [static]
 

Standard Macros

Reimplemented from itk::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::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::Object.

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::SetMembershipFunction MembershipFunctionType function  )  [protected]
 

stores the pointer to the membership function. subclasses use this funtion to store their membership function object after dynamic creation

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::SetMinimalParametersChange double  change  )  [inline]
 

Definition at line 90 of file itkMixtureModelComponentBase.h.

template<class TSample>
virtual void itk::Statistics::MixtureModelComponentBase< TSample >::SetParameters const ParametersType parameters  )  [virtual]
 

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
virtual void itk::Statistics::MixtureModelComponentBase< TSample >::SetSample TSample *  sample  )  [virtual]
 

stores the sample pointer

Reimplemented in itk::Statistics::GaussianMixtureModelComponent< TSample >.

template<class TSample>
void itk::Statistics::MixtureModelComponentBase< TSample >::SetWeight int  index,
double  value
 

sets the index-th weight with the "value"

template<class TSample>
virtual void itk::Statistics::MixtureModelComponentBase< TSample >::Update  )  [virtual]
 


The documentation for this class was generated from the following file:
Generated at Sat Mar 31 03:13:46 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000