GaussianMixtureDistribution Class Reference

The GaussianMixtureDistribution class. More...

#include <MemoryX/core/entity/ProbabilityMeasures.h>

+ Inheritance diagram for GaussianMixtureDistribution:

Public Member Functions

void addComponent (const GaussianMixtureComponent &component, const ::Ice::Current &=Ice::emptyCurrent) override
 
void addComponent (const NormalDistributionBasePtr &gaussian, float weight)
 
void addComponents (const GaussianMixtureDistributionBasePtr &other, const ::Ice::Current &=Ice::emptyCurrent) override
 Multiply weight of each GM component with a given constant. More...
 
void addGaussian (const NormalDistributionBasePtr &gaussian, float weight, const ::Ice::Current &=Ice::emptyCurrent) override
 
void clear (const ::Ice::Current &=Ice::emptyCurrent) override
 
armarx::VariantDataClassPtr clone (const Ice::Current &c=Ice::emptyCurrent) const override
 
void deserialize (const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override
 
 GaussianMixtureDistribution ()
 GaussianMixtureDistribution implementation. More...
 
 GaussianMixtureDistribution (const GaussianMixtureDistribution &other)
 
GaussianMixtureComponent getComponent (::Ice::Int index, const ::Ice::Current &=Ice::emptyCurrent) const override
 
virtual float getDensity (const Eigen::VectorXf &point)
 
::Ice::Int getDimensions (const ::Ice::Current &=Ice::emptyCurrent) const override
 
GaussianMixtureComponent getModalComponent (const ::Ice::Current &=Ice::emptyCurrent) const override
 
armarx::VariantTypeId getType (const Ice::Current &c=Ice::emptyCurrent) const override
 
Ice::ObjectPtr ice_clone () const override
 
void normalize (const ::Ice::Current &=Ice::emptyCurrent) override
 Normalize components weights (i.e. More...
 
std::string output (const Ice::Current &c=Ice::emptyCurrent) const override
 
void pruneComponents (::Ice::Float threshold, const ::Ice::Current &=Ice::emptyCurrent) override
 Remove all components with weights lower than threshold value. More...
 
void removeComponent (::Ice::Int index, const ::Ice::Current &=Ice::emptyCurrent) override
 
void scaleComponents (::Ice::Float factor, const ::Ice::Current &=Ice::emptyCurrent) override
 Multiply weight of each GM component with a given constant. More...
 
void serialize (const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
 
void setComponent (::Ice::Int index, const GaussianMixtureComponent &component, const ::Ice::Current &=Ice::emptyCurrent) override
 
::Ice::Int size (const ::Ice::Current &=Ice::emptyCurrent) const override
 
bool validate (const Ice::Current &c=Ice::emptyCurrent) override
 

Static Public Member Functions

static GaussianMixtureDistributionPtr FromProbabilityMeasure (const ProbabilityMeasureBasePtr &probMeasure)
 Convert or approximate given ProbabilityMeasure to a gaussian mixture. More...
 

Detailed Description

The GaussianMixtureDistribution class.

Definition at line 298 of file ProbabilityMeasures.h.

Constructor & Destructor Documentation

◆ GaussianMixtureDistribution() [1/2]

GaussianMixtureDistribution implementation.

Definition at line 471 of file ProbabilityMeasures.cpp.

+ Here is the caller graph for this function:

◆ GaussianMixtureDistribution() [2/2]

Definition at line 476 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ addComponent() [1/2]

void addComponent ( const GaussianMixtureComponent &  component,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Definition at line 523 of file ProbabilityMeasures.cpp.

+ Here is the caller graph for this function:

◆ addComponent() [2/2]

void addComponent ( const NormalDistributionBasePtr &  gaussian,
float  weight 
)

Definition at line 537 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

◆ addComponents()

void addComponents ( const GaussianMixtureDistributionBasePtr &  other,
const ::Ice::Current &  c = Ice::emptyCurrent 
)
override

Multiply weight of each GM component with a given constant.

Parameters
factorconstant to multiply with (scaling factor)

Definition at line 600 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

◆ addGaussian()

void addGaussian ( const NormalDistributionBasePtr &  gaussian,
float  weight,
const ::Ice::Current &  c = Ice::emptyCurrent 
)
override

Definition at line 545 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

◆ clear()

void clear ( const ::Ice::Current &  = Ice::emptyCurrent)
override

Definition at line 578 of file ProbabilityMeasures.cpp.

+ Here is the caller graph for this function:

◆ clone()

armarx::VariantDataClassPtr clone ( const Ice::Current &  c = Ice::emptyCurrent) const
inlineoverride

Definition at line 360 of file ProbabilityMeasures.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deserialize()

void deserialize ( const armarx::ObjectSerializerBasePtr &  serializer,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Definition at line 712 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

◆ FromProbabilityMeasure()

GaussianMixtureDistributionPtr FromProbabilityMeasure ( const ProbabilityMeasureBasePtr &  probMeasure)
static

Convert or approximate given ProbabilityMeasure to a gaussian mixture.

To special cases implemented so far: probMeasure is a gaussian (NormalDistibution) -> create GM with a single component probMeasure probMeasure is a gaussian mixture -> just return probMeasure itself

probMeasure probability measure to approximate/convert

Definition at line 658 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getComponent()

GaussianMixtureComponent getComponent ( ::Ice::Int  index,
const ::Ice::Current &  = Ice::emptyCurrent 
) const
override

Definition at line 496 of file ProbabilityMeasures.cpp.

◆ getDensity()

float getDensity ( const Eigen::VectorXf &  point)
virtual

Definition at line 644 of file ProbabilityMeasures.cpp.

◆ getDimensions()

Ice::Int getDimensions ( const ::Ice::Current &  = Ice::emptyCurrent) const
override

Definition at line 491 of file ProbabilityMeasures.cpp.

◆ getModalComponent()

GaussianMixtureComponent getModalComponent ( const ::Ice::Current &  = Ice::emptyCurrent) const
override

Definition at line 505 of file ProbabilityMeasures.cpp.

◆ getType()

armarx::VariantTypeId getType ( const Ice::Current &  c = Ice::emptyCurrent) const
inlineoverride

Definition at line 364 of file ProbabilityMeasures.h.

◆ ice_clone()

Ice::ObjectPtr ice_clone ( ) const
inlineoverride

Definition at line 356 of file ProbabilityMeasures.h.

+ Here is the call graph for this function:

◆ normalize()

void normalize ( const ::Ice::Current &  = Ice::emptyCurrent)
override

Normalize components weights (i.e.

sum of weights = 1.0)

Definition at line 634 of file ProbabilityMeasures.cpp.

◆ output()

std::string output ( const Ice::Current &  c = Ice::emptyCurrent) const
override

Definition at line 683 of file ProbabilityMeasures.cpp.

+ Here is the call graph for this function:

◆ pruneComponents()

void pruneComponents ( ::Ice::Float  threshold,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Remove all components with weights lower than threshold value.

Parameters
threshold

Definition at line 616 of file ProbabilityMeasures.cpp.

◆ removeComponent()

void removeComponent ( ::Ice::Int  index,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Definition at line 566 of file ProbabilityMeasures.cpp.

◆ scaleComponents()

void scaleComponents ( ::Ice::Float  factor,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Multiply weight of each GM component with a given constant.

Parameters
factorconstant to multiply with (scaling factor)

Definition at line 608 of file ProbabilityMeasures.cpp.

◆ serialize()

void serialize ( const armarx::ObjectSerializerBasePtr &  serializer,
const ::Ice::Current &  = Ice::emptyCurrent 
) const
override

Definition at line 696 of file ProbabilityMeasures.cpp.

◆ setComponent()

void setComponent ( ::Ice::Int  index,
const GaussianMixtureComponent &  component,
const ::Ice::Current &  = Ice::emptyCurrent 
)
override

Definition at line 550 of file ProbabilityMeasures.cpp.

◆ size()

Ice::Int size ( const ::Ice::Current &  = Ice::emptyCurrent) const
override

Definition at line 583 of file ProbabilityMeasures.cpp.

◆ validate()

bool validate ( const Ice::Current &  c = Ice::emptyCurrent)
inlineoverride

Definition at line 368 of file ProbabilityMeasures.h.


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