Main Page   Compound List   File List   Compound Members   File Members   Related Pages  

GraphDynaCluster Class Reference

Object to ceate the graph of dynamic cluster trajectories. More...

#include <graphCharac.hh>

List of all members.

Public Methods

 GraphDynaCluster ()
virtual ~GraphDynaCluster ()
void Initialise (char *path_in_Temporal, char *path_in_Timeless, int dimx_tmp, int dimy_tmp, int nb_bands)
 Initialisation of the graph object : Allocate memory and read the input files.

void Build (float PrecisionFactor)
 Method to infer the graph trajectories. More...

void MIEstimation ()
 Method to characterize the graph with mutual information. More...

void Out_Evolutions (int format, bool intensiveCalculus)
 Method to characterize the graph and write the graph output. More...


Public Attributes

int nb_TimelessClasses
 Number of MT clusters or Classes.


Private Methods

void Allocate_variables ()
 Memory alocation method.

void Acquire_path (char *path_in_Temporal, int nb_bands, char *path_in_Timeless)
 Method to read the input output file names.

void Aquire_data ()
 Method to read the input data.

void Load_Current (int j1, int j2)
 Method to load a TL and a MT cluster Gaussian attributes for divergence calculation. More...

void LoadpreTLTL (int prekTL, int kTL)
 Method to load 2 consecutive TL cluster Gaussian attributes for divergence calculation. More...

void Load_CurrentPMT (int kMT)
 Method to load MT cluster Gaussian attributes for mutual information calculation. The time sample is given by the private attribute "Index_CurrentImage".

void Load_MonoCurrentPMT (int kMT)
 Method to load a single MT cluster Gaussian attribute at a given time.The time sample is given by the private attribute "Index_CurrentImage".

void Create_TxtGraphOutPutVersion1 (bool intensiveCalculus)
 method to characterize and write the graph file in standard format (format 1)
.
More...


void Create_TxtGraphOutPutVersion2 (bool intensiveCalculus)
 method to characterize and write the graph file (format 2)
output file name "./grapheV2"
.
More...


void ReadWriteGraphVersion2JAVA (char *path, int edge)
 Method to read a graphe at the format 2 and create a graphe at at format adapted to the JAVA GUI.
output file name"./grapheV2JAVA"
.
More...



Private Attributes

int nb_dim
 number of dimension of the feature space.

int nb_images
 number of images time sample.

unsigned long int dim
 number of samples in each image.

int nx
 size of a image (in pixels).

int ny
 size of a image (in pixels).

int Index_CurrentImage
char *** PathInTemp_Classfile
 path of the TL classfiles.

char *** PathInTemp_MeanCov
 path of the TL attributes.

char *** PathInTimeless_Classfile
 path of the MT classfile.

char *** PathInTimeless_MeanCov
 path of the MT attribute file.

Image< unsigned char > Temp_classfile
 TL Classfile images.

Image< float > Temp_MeanCov
 TL Attribute variables.

Image< unsigned char > Timeless_classfile
 MT Classfile image.

Image< float > Timeless_MeanCov
 MT Attribute variable.

float ** Current_C_A
 Current covariance matrice considered for divergence (or mutual information) calculation.

float ** Current_C_B
 Current covariance matrice considered for divergence (or mutual information) calculation.

float * Current_M_A
 Current mean vector considered for divergence (or mutual information) calculation.

float * Current_M_B
 Current mean vector considered for divergence (or mutual information) calculation.

float ** Current_C_AB
 Current joint MT covariance matrice considered for mutual information calculation.

float * Current_M_AB
 Current joint MT mean vector considered for mutual information calculation.

float PrecisionFactor
 Resolution of the Gaussian-Approximated divergence Integration.

DynaClassTmpClass
 DynamicCluster : an array of DynamicCluster objects is used to manage the MT cluster trajectories.

SuperposeClasssupClass
 Object for classfiles intersection calculations.

MI mi
 Object for mutual infroamtion calculation.


Detailed Description

Object to ceate the graph of dynamic cluster trajectories.

Todo:
redesign this object and the GraphManipulator object used for the supervised learning on graphs so that they share attributes and methods from a commun herited parent object

Definition at line 21 of file graphCharac.hh.


Member Function Documentation

void GraphDynaCluster::Build float    PrecisionFactor
 

Method to infer the graph trajectories.

This method calculates for each MT cluster, the probabilities of association with the TL clusters at each time sample. Thus, for each time sample, collections of time-localized clusters, sorted according the assocation probabilities, are attached to each MT cluster.
The calculus of the assocations probabilities are derived using a Divergence object. The probabilities and the collection of TL clusters are stored in the attributes of the GraphDynaCluster object.

Definition at line 167 of file graphCharac.cpp.

void GraphDynaCluster::Create_TxtGraphOutPutVersion1 bool    intensiveCalculus [private]
 

method to characterize and write the graph file in standard format (format 1)
.

This format is the right one to be adopted in future : the learning and visualization algorithms using the graph must be adpated. However, for the moment, this format is useless
output file name "./grapheV1"

Parameters:
intensiveCalculus  Characterize the edge by calculating the TL cluster distrubution change in consecutive times using Kullback Leibler divergence (true) or with a simple mean difference (false)

Definition at line 322 of file graphCharac.cpp.

void GraphDynaCluster::Create_TxtGraphOutPutVersion2 bool    intensiveCalculus [private]
 

method to characterize and write the graph file (format 2)
output file name "./grapheV2"
.

Parameters:
intensiveCalculus  Characterize the edge by calculating the TL cluster distrubution change in consecutive times using Kullback Leibler divergence (true) or with a simple mean difference (false)

Definition at line 398 of file graphCharac.cpp.

void GraphDynaCluster::Load_Current int    j1,
int    j2
[private]
 

Method to load a TL and a MT cluster Gaussian attributes for divergence calculation.

Parameters:
j1  index of the TL cluster
j2  index of the MT cluster

Definition at line 139 of file graphCharac.cpp.

void GraphDynaCluster::LoadpreTLTL int    prekTL,
int    kTL
[private]
 

Method to load 2 consecutive TL cluster Gaussian attributes for divergence calculation.

Parameters:
prekTL  index of the TL cluster at t-1
kTL  index of the TL cluster at t

Definition at line 667 of file graphCharac.cpp.

void GraphDynaCluster::MIEstimation  
 

Method to characterize the graph with mutual information.

Calculates the mutual information between two consecutive times for each MT cluster by an analytical calculation based on the covariance determinants
The calculus of the mutual information measurements are derived using an object named MI

Definition at line 693 of file graphCharac.cpp.

void GraphDynaCluster::Out_Evolutions int    format,
bool    intensiveCalculus
 

Method to characterize the graph and write the graph output.

The characterization of the other graph's edge attributes (flow and the change of distributions of TL clusters) is done while writing the graph output on the disk.

Parameters:
format  a value of 1 is for the standard graph output, a value of 2 or 3 are for formats compatible with the actual learning programm and GUI (graphe used by the GUI with (2) or without (3) edges).
intensiveCalculus  This variable is true if the the change of distributions of TL clusters is quantified with Kullback-Leibler divergence, and false if a simple mean difference is used.

Definition at line 303 of file graphCharac.cpp.

void GraphDynaCluster::ReadWriteGraphVersion2JAVA char *    path,
int    edge
[private]
 

Method to read a graphe at the format 2 and create a graphe at at format adapted to the JAVA GUI.
output file name"./grapheV2JAVA"
.

Parameters:
path  input graph format 2 to read
edge  set this variable to "0" or "1" for writing a graph format for the GUI, which displayd ("1") or not ("0") the edges of graph

Definition at line 487 of file graphCharac.cpp.


The documentation for this class was generated from the following files:
Generated on Thu Feb 17 11:01:55 2005 for Inference of a Graph of Dynamic Cluster Trajectories by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002