18#ifndef itkExpectationMaximizationMixtureModelEstimator_h
19#define itkExpectationMaximizationMixtureModelEstimator_h
21#include "ITKStatisticsExport.h"
47extern ITKStatistics_EXPORT std::ostream &
85template <
typename TSample>
187#if !defined(ITK_LEGACY_REMOVE)
247#ifndef ITK_MANUAL_INSTANTIATION
248# include "itkExpectationMaximizationMixtureModelEstimator.hxx"
Array class with size defined at construction time.
Control indentation during Print() invocation.
Decorates any "simple" data type (data types without smart pointers) with a DataObject API.
SmartPointer< Self > Pointer
Implements transparent reference counting.
Contains all enum classes used by ExpectationMaximizationMixtureModelEstimator class.
SimpleDataObjectDecorator< MembershipFunctionVectorType > MembershipFunctionVectorObjectType
ExpectationMaximizationMixtureModelEstimator()
unsigned int GetNumberOfComponents() const
std::vector< MembershipFunctionPointer > MembershipFunctionVectorType
void SetInitialProportions(ProportionVectorType &proportions)
const ProportionVectorType & GetProportions() const
const MembershipFunctionVectorObjectType * GetOutput() const
ExpectationMaximizationMixtureModelEstimator Self
bool UpdateComponentParameters()
ExpectationMaximizationMixtureModelEstimatorEnums::TERMINATION_CODE TERMINATION_CODE_ENUM
SmartPointer< const Self > ConstPointer
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
ComponentVectorType m_ComponentVector
typename GaussianMembershipFunctionType::Pointer GaussianMembershipFunctionPointer
void SetSample(const TSample *sample)
typename MembershipFunctionsWeightsArrayObjectType::Pointer MembershipFunctionsWeightsArrayPointer
GaussianMembershipFunction< MeasurementVectorType > GaussianMembershipFunctionType
MixtureModelComponentBase< TSample > ComponentType
ComponentMembershipFunctionType * GetComponentMembershipFunction(int componentIndex) const
std::vector< ComponentType * > ComponentVectorType
int GetCurrentIteration()
ProportionVectorType m_Proportions
TERMINATION_CODE_ENUM GetTerminationCode() const
typename MembershipFunctionType::ConstPointer MembershipFunctionPointer
Array< double > ProportionVectorType
MembershipFunctionBase< MeasurementVectorType > ComponentMembershipFunctionType
MembershipFunctionsWeightsArrayPointer m_MembershipFunctionsWeightArrayObject
SmartPointer< Self > Pointer
ProportionVectorType m_InitialProportions
int GetMaximumIteration() const
MembershipFunctionVectorObjectPointer m_MembershipFunctionsObject
SimpleDataObjectDecorator< ProportionVectorType > MembershipFunctionsWeightsArrayObjectType
double CalculateExpectation() const
void SetMaximumIteration(int numberOfIterations)
TERMINATION_CODE_ENUM m_TerminationCode
const TSample * GetSample() const
MembershipFunctionBase< MeasurementVectorType > MembershipFunctionType
bool CalculateDensities()
GaussianMembershipFunction models class membership through a multivariate Gaussian function.
SmartPointer< Self > Pointer
MembershipFunctionBase defines common interfaces for membership functions.
SmartPointer< const Self > ConstPointer
base class for distribution modules that supports analytical way to update the distribution parameter...
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....