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

graphCharac+.hh

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*/
00012 /*---------------------------------------------------------------------------*/
00013 #ifndef TREE_BUIDLER_H
00014 #define TREE_BUIDLER_H
00015 #include "./Image_basics.hh"
00016 #include "./DynaClass.hh"
00017 #include "./divergence.h"
00018 #include "MatchCost+.hh"
00019 #include "ParaSearch.hh"
00028 class GraphManipulator
00029 {
00030   
00031   public:
00032 
00033   // Operations
00034   
00035         GraphManipulator();
00036         virtual ~GraphManipulator();
00037         
00038         /**********************graph reading public methods********************************************************************/
00039     
00043         void ReadGraphVersion3(char * path,char *pathTime);
00044      
00045      
00046      /**********************graph matching with a parametric similarity model public methods***********************************/
00048         void CreateMatchCostObject();
00050         void InitGraphforMatch(int nb_sample,int firstSample1,float seuilDiv,int kMT1a,int kMT1b);
00052         void InitGraphforMatchNeg(int nb_samples,float seuilDiv, int b);
00063         void FixWeights(float weightMTinTLDiff,float TL1TL2Div,float flowDiff,float divDiff,float MIDiff,float divMTaMTbCost, float timeDiff,bool meanCalcul);
00071         void FixLearnedWeights(int posOrNeg, bool meanCalcul, float factorReducList);
00090         float Match(int posOrNeg, int minSample, int maxSample,int nbMiniBranches);
00097         void SaveSortedList(int a,int b);
00098                 
00099      /**********************************Supervised parameter learning public methods*******************************************/
00100     
00115         float Learn(int posOrNeg,int interestkMTa,int interestkMTb,int interestfirstSample);    
00120         void LearnRefGraph(int posOrNeg);
00124         void PrintAPostList();
00126         void WriteAPostList();  
00132         void InitParaLearn(int a,int b);
00139         void ScaleParaLearnForSG(int a, int b,bool scale);
00144         void EraseMemLearn(int posNeg);
00146         void StrengthProbLink();
00148         void ConvergenceQuality();
00150         void VariancePosterior();
00152         void PrintProbaLink();
00153         
00154   // Attributes
00155          
00157          int nb_TimelessClasses;
00159          int minSample,maxSample;
00161          float * TimeDelay;
00163          int nbSamples;
00164          
00166          ParaSearch paraSearchObject; 
00168          SearchTree ****searchTreeCollec;
00170          float ****costs;
00172          vector<float> costSorted;
00174          vector<int> kMT2aSorted;
00176          int *kMT2aSortedAux;
00178          int *firstSample2aSortedAux;
00180          float *kMT2aCostAux; 
00182          vector<int> kMT2bSorted;
00184          int *kMT2bSortedAux;
00186          int *firstSample2bSortedAux;
00188          float *kMT2bCostAux;
00190          vector<int> firstSample2Sorted;         
00192          ParaSearch paraSearchObjectNeg;
00194          SearchTree ****searchTreeCollecNeg;
00196          float ****costsNeg;
00198          float * divergences;
00199          
00200   private:
00201 
00202   // Attributes
00204         int nb_dim;
00206         int nb_images;
00208         unsigned long int dim;
00210         int nx,ny;
00212         int Index_CurrentImage;
00213                 
00215         DynaClass *TmpClass;
00216         
00218         SubGraph *graph1;
00220         SubGraph *graph2;
00221         
00223         MatchCost *matchCostObject;
00225         float seuilDivergence;
00227         int sizeList;
00229         bool predefinedList;
00231         float factorReducList;
00232         
00234         bool noTree;
00236         bool noTreeNeg;
00238         float meanPosterior;
00240         float varPosterior;
00242         float convQualityPos;
00244         float convQualityNeg;
00245   // Operations
00246     
00247       //Graph matching private methods
00255         void AddMTtoSubGraph(int subGraph,int kMT,float seuilDiv,int firstSample,int nb_samples);
00256         
00257         
00258         
00259 };
00260 #endif

Generated on Thu Feb 17 11:03:19 2005 for Interactive Learning of Sub-Graphs Semantics by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002