18#ifndef itkExpectationMaximizationMixtureModelEstimator_h
19#define itkExpectationMaximizationMixtureModelEstimator_h
21#include "ITKStatisticsExport.h"
47extern ITKStatistics_EXPORT std::ostream &
85template <
typename TSample>
171 return m_CurrentIteration;
187#if !defined(ITK_LEGACY_REMOVE)
231 const TSample * m_Sample{};
233 int m_MaxIteration{ 100 };
234 int m_CurrentIteration{ 0 };
247#ifndef ITK_MANUAL_INSTANTIATION
248# include "itkExpectationMaximizationMixtureModelEstimator.hxx"
Control indentation during Print() invocation.
Light weight base class for most itk classes.
Base class for most ITK classes.
Decorates any "simple" data type (data types without smart pointers) with a DataObject API.
Contains all enum classes used by ExpectationMaximizationMixtureModelEstimator class.
This class generates the parameter estimates for a mixture model using expectation maximization strat...
ExpectationMaximizationMixtureModelEstimator()
unsigned int GetNumberOfComponents() const
std::vector< MembershipFunctionPointer > MembershipFunctionVectorType
void SetInitialProportions(ProportionVectorType &proportions)
const ProportionVectorType & GetProportions() const
const MembershipFunctionVectorObjectType * GetOutput() const
bool UpdateComponentParameters()
void PrintSelf(std::ostream &os, Indent indent) const override
const MembershipFunctionsWeightsArrayObjectType * GetMembershipFunctionsWeightsArray() const
typename TSample::MeasurementType MeasurementType
int AddComponent(ComponentType *component)
typename MembershipFunctionVectorObjectType::Pointer MembershipFunctionVectorObjectPointer
const ProportionVectorType & GetInitialProportions() const
typename TSample::MeasurementVectorType MeasurementVectorType
~ExpectationMaximizationMixtureModelEstimator() override=default
typename GaussianMembershipFunctionType::Pointer GaussianMembershipFunctionPointer
void SetSample(const TSample *sample)
typename MembershipFunctionsWeightsArrayObjectType::Pointer MembershipFunctionsWeightsArrayPointer
ComponentMembershipFunctionType * GetComponentMembershipFunction(int componentIndex) const
std::vector< ComponentType * > ComponentVectorType
int GetCurrentIteration()
TERMINATION_CODE_ENUM GetTerminationCode() const
typename MembershipFunctionType::ConstPointer MembershipFunctionPointer
int GetMaximumIteration() const
double CalculateExpectation() const
void SetMaximumIteration(int numberOfIterations)
const TSample * GetSample() const
bool CalculateDensities()
GaussianMembershipFunction models class membership through a multivariate Gaussian function.
MembershipFunctionBase defines common interfaces for membership functions.
base class for distribution modules that supports analytical way to update the distribution parameter...
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
ITKStatistics_EXPORT std::ostream & operator<<(std::ostream &out, const ExpectationMaximizationMixtureModelEstimatorEnums::TERMINATION_CODE value)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....