Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Temporal_MDL_classifier Class Reference

Kernel Object of the program, supporting the algorithm organisation in 4 steps : Initialization, Adaptation, Selection and Convergence. More...

#include <TimeGaussMIX_MDL.hh>

List of all members.

Public Methods

 Temporal_MDL_classifier ()
void Initialise (char *path_in, char *path_fileout, int dimx_tmp, int dimy_tmp, int nb_bands, int ofx_tmp, int ofy_tmp, int Dy_tmp, int subx_tmp, int suby_tmp, int nb)
 initialization of a first Gaussian mixture. More...

void Cluster_optimiser ()
 chained optimisation procedures for consecutive modeling. More...


Private Methods

void Acquire_parameters_allocateImage (int dimx_tmp, int dimy_tmp, int ofx_tmp, int ofy_tmp, int Dy_tmp, int subx_tmp, int suby_tmp)
 Allocation of memory for storing the data.

void Acquire_next_image ()
 Reading the next image.

void Acquire_path (char *path_in, int nb_bands, char *path_fileout)
 Reading the text input file names and counting the number of multi-band images to classify.

void Acquire_Pathoutput (char *path_fileout)
 Reading the text file names for saving the classifiles.

void Allocate_OutMeanCov ()
 Allocating memory to store the Gaussian Mixture parameters.

void Make_OutMeanCov ()
 Storing the Gaussian Mixture parameters.

void Write_OutMeanCov ()
 Writing the infered Gaussian parameters on the disk.

void Create_OutMeanCov ()
 Storing and writing the Gaussian Mixture parameters.

void Allocate_classfile ()
 Allocate memory for classfiles.

void Make_classfile ()
 Storing classfiles.

void Write_classfile ()
 Writing classfiles on the disk.

void Create_classfile ()
 Storing and writing classfiles on the disk.

void Begin_procedure (int nb)
 Objects initialisation. More...


Private Attributes

int nb_images
 number of multiband images to classify.

int dimx
 image attributes.

int dimy
int ofx
int ofy
int Dy
int subx
int suby
char *** PathOutPut
 array of paths for the output files.

char *** PathInPut
 array of paths for the input files.

int Curent_images_index
 Index of the Image time sample which is currently processed.

char *** Current_Path
 Paths of the Image which is currently processed.

Image< PIXEL > data
 Multiband image data.

Image< unsigned char > classfile
 Classfile.

Image< float > OutMeanCov
 attribute file.

InliersI
 Inliers object used for managing the feature points grouped into clusters.

OutliersO
 Outliers object not used anymore (TO BE REMOVED!).


Detailed Description

Kernel Object of the program, supporting the algorithm organisation in 4 steps : Initialization, Adaptation, Selection and Convergence.

Definition at line 21 of file TimeGaussMIX_MDL.hh.


Member Function Documentation

void Temporal_MDL_classifier::Begin_procedure int    nb [inline, private]
 

Objects initialisation.

Initialisation of the Inliers (and Outliers) and initialisation of the pointer to the image data

Definition at line 290 of file TimeGaussMIX_MDL.hh.

void Temporal_MDL_classifier::Cluster_optimiser   [inline]
 

chained optimisation procedures for consecutive modeling.

the optimisation procedure comprises 4 steps :

  • 1- If the initialisation has not been performed yet (all except first multi-band image to model), the modeling parameters infered at the last modeling itération are used
  • 2- Adaptation : At a given iteration, we consider K Gaussians in the mixture. An Expectation Maximization (EM) algorithm is used to perform a ML estimation of the Gaussian mixture parameters.
  • 3- Selection : For the same iteration, we remove the Gaussian which induces the biggest decrease in the description length. Then we go back to step 2 if a decrease is observed. If not, then we do not remove any Gaussians and go to the convergence step.
  • 4- Convergence : To avoid local minima, we iterate step 2 and 3 until the variation in the description lenght does not exceed a given treshold. When stability is reached, we obtain the estimated number of Gaussians with the ML estimates of the parameters of the mixture model

Definition at line 49 of file TimeGaussMIX_MDL.hh.

void Temporal_MDL_classifier::Initialise char *    path_in,
char *    path_fileout,
int    dimx_tmp,
int    dimy_tmp,
int    nb_bands,
int    ofx_tmp,
int    ofy_tmp,
int    Dy_tmp,
int    subx_tmp,
int    suby_tmp,
int    nb
[inline]
 

initialization of a first Gaussian mixture.

Initialization : A initial Gaussian mixture is produced. It is composed of a high number of Gaussian (number provided *by the user). The initialization is done by randomly spreading the clusters according to a Gaussian distribution of mean and variance learned from each data feature component.

Definition at line 29 of file TimeGaussMIX_MDL.hh.


The documentation for this class was generated from the following file:
Generated on Thu Feb 17 11:01:08 2005 for Gaussian Mixture Modeling by the MDL principle by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002