Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

FD::GMM Class Reference

#include <gmm.h>

Inheritance diagram for FD::GMM:

Inheritance graph
[legend]
Collaboration diagram for FD::GMM:

Collaboration graph
[legend]
List of all members.

Public Types

enum  GMM_Mode { real, accum }

Public Member Functions

 GMM (int nb_gauss, int dim, Covariance *(*cov_new)(int))
 nb_gaussians (0)
 mode (accum)
 nb_frames_aligned (0)
 dimensions (1)
 using_gaussianIDs (false)
void save (std::string file)
int get_nb_gaussians () const
Gaussiangaussian (int i) const
void accum_to_gaussian (int i, const float *fr)
void init (std::vector< float * > frames)
void kmeans1 (std::vector< float * > frames, int nb_iterations=1)
void split1 ()
void kmeans2 (std::vector< float * > frames, GMM *gmm)
void adaptMAP (std::vector< float * > frame, GMM *gmm)
void to_real ()
void reset_to_accum_mode ()
Score minDistance (float *fr, Covariance *cov) const
Score score (float *fr) const
void binary_split ()
std::vector< ScoreminDistance (std::vector< float * > fr) const
std::vector< Scorescore (std::vector< float * > fr) const
void toIDsUsing (GaussianSet &gauss)
void toPtrsUsing (const GaussianSet &gauss)
DiagGMMcreateDiagGMM ()
virtual void printOn (std::ostream &out=std::cout) const
void readFrom (std::istream &in=std::cin)

Public Attributes

 __pad0__: gaussians(std::vector<RCPtr<Gaussian> >())

Protected Attributes

std::vector< RCPtr< Gaussian > > gaussians
std::vector< float > apriori
int nb_gaussians
int mode
int nb_frames_aligned
int dimensions
bool using_gaussianIDs
std::vector< int > gaussianIDs

Friends

std::istream & operator>> (std::istream &in, GMM &gmm)

Detailed Description

Gaussian Mixture Model (GMM) class


Constructor & Destructor Documentation

FD::GMM::GMM int  nb_gauss,
int  dim,
Covariance *(*)(int)  cov_new
[inline]
 

Construct a GMM with nb_gauss gaussians, dim dimensions and a covariance pseudo-factory


Member Function Documentation

void FD::GMM::accum_to_gaussian int  i,
const float *  fr
[inline]
 

Accumulates (adds) the frame to the i'th gaussian

void FD::GMM::adaptMAP std::vector< float * >  frame,
GMM gmm
 

Perform MAP adaptation (using another GMM to score)

void FD::GMM::binary_split  ) 
 

Double the number of gaussians

DiagGMM* FD::GMM::createDiagGMM  ) 
 

Creates a DiagGMM object from a GMM

Gaussian& FD::GMM::gaussian int  i  )  const [inline]
 

Returns the i'th gaussian

int FD::GMM::get_nb_gaussians  )  const [inline]
 

Returns the number of gaussians in the GMM

void FD::GMM::init std::vector< float * >  frames  ) 
 

Randomly init the GMM with a list (STL vector) of frames

void FD::GMM::kmeans1 std::vector< float * >  frames,
int  nb_iterations = 1
 

Performs k-means training

void FD::GMM::kmeans2 std::vector< float * >  frames,
GMM gmm
 

Performs k-means training (using another GMM to score)

std::vector<Score> FD::GMM::minDistance std::vector< float * >  fr  )  const
 

Score a list (STL vector) of frames against the GMM without using the covariances (nearest euclidian distance)

Score FD::GMM::minDistance float *  fr,
Covariance cov
const
 

Score a frame against the GMM without using the covariances (nearest euclidian distance)

virtual void FD::GMM::printOn std::ostream &  out = std::cout  )  const [virtual]
 

print function used for operator <<

Implements FD::Object.

void FD::GMM::readFrom std::istream &  in = std::cin  )  [virtual]
 

Read function used for operator >>

Reimplemented from FD::Object.

void FD::GMM::reset_to_accum_mode  ) 
 

Converts the GMM from real mode to accum mode and set everything to zero

std::vector<Score> FD::GMM::score std::vector< float * >  fr  )  const
 

Score a list (STL vector) of frames against the GMM

Score FD::GMM::score float *  fr  )  const
 

Score a frame against the GMM

void FD::GMM::split1  ) 
 

splits the largest gaussian in two

void FD::GMM::to_real  ) 
 

Converts the GMM from accum mode to real mode


Friends And Related Function Documentation

std::istream& operator>> std::istream &  in,
GMM gmm
[friend]
 

extractor for GMM


Member Data Documentation

std::vector<float> FD::GMM::apriori [protected]
 

STL vector containing all the apriori weights of the gaussians

int FD::GMM::dimensions [protected]
 

Number of dimensions

std::vector<int> FD::GMM::gaussianIDs [protected]
 

STL vector containing all the gaussian IDs in the GMM

std::vector<RCPtr<Gaussian> > FD::GMM::gaussians [protected]
 

STL vector containing all the gaussians in the GMM

int FD::GMM::mode [protected]
 

Whether of not the GMM trained (like real/accum mode) (GMM_Mode)

int FD::GMM::nb_frames_aligned [protected]
 

Number of frames aligned to (used to train) the GMM

int FD::GMM::nb_gaussians [protected]
 

Number of gaussians in the GMM

bool FD::GMM::using_gaussianIDs [protected]
 

Was the gaussian loaded using indexes for mean


The documentation for this class was generated from the following file:
Generated on Wed Oct 5 14:30:22 2005 for FlowDesigner by  doxygen 1.4.4