00001
00003 #ifndef TREE_BUIDLER_H
00004 #define TREE_BUIDLER_H
00005 #include "./Image_basics.hh"
00006 #include "./DynaClass.hh"
00007 #include "./SuperposeClass.hh"
00008 #include "./divergence.h"
00009 #include "./MI.hh"
00010
00012 #define alpha0 1;
00013
00014 #define alpha1 1;
00015
00016 #define alpha2 1;
00017
00021 class GraphDynaCluster
00022 {
00023
00024 public:
00025
00026
00027
00028
00029 GraphDynaCluster();
00030 virtual ~GraphDynaCluster();
00032 void Initialise(char * path_in_Temporal, char * path_in_Timeless, int dimx_tmp, int dimy_tmp, int nb_bands);
00037 void Build(float PrecisionFactor);
00042 void MIEstimation();
00048 void Out_Evolutions(int format, bool intensiveCalculus);
00049
00050
00051
00052
00054 int nb_TimelessClasses;
00055
00056 private:
00057
00058
00060 int nb_dim;
00062 int nb_images;
00064 unsigned long int dim;
00066 int nx,ny;
00067
00068 int Index_CurrentImage;
00069
00070
00071
00072
00074 char ***PathInTemp_Classfile;
00076 char ***PathInTemp_MeanCov;
00078 char ***PathInTimeless_Classfile;
00080 char ***PathInTimeless_MeanCov;
00082 Image<unsigned char> Temp_classfile;
00084 Image<float> Temp_MeanCov;
00086 Image<unsigned char> Timeless_classfile;
00088 Image<float> Timeless_MeanCov;
00089
00090
00092 float **Current_C_A;
00094 float **Current_C_B;
00096 float *Current_M_A;
00098 float *Current_M_B;
00100 float **Current_C_AB;
00102 float *Current_M_AB;
00104 float PrecisionFactor;
00105
00107 DynaClass *TmpClass;
00109 SuperposeClass *supClass;
00111 MI mi;
00112
00113
00114
00116 void Allocate_variables();
00118 void Acquire_path(char * path_in_Temporal, int nb_bands, char* path_in_Timeless);
00120 void Aquire_data();
00125 void Load_Current(int j1,int j2);
00129 void LoadpreTLTL(int prekTL,int kTL);
00131 void Load_CurrentPMT(int kMT);
00133 void Load_MonoCurrentPMT(int kMT);
00139 void Create_TxtGraphOutPutVersion1(bool intensiveCalculus);
00143 void Create_TxtGraphOutPutVersion2(bool intensiveCalculus);
00148 void ReadWriteGraphVersion2JAVA(char * path, int edge);
00149
00150
00151 };
00152 #endif