Main Page   Class Hierarchy   Compound List   File List   Compound Members  

GraphSegmentation.h

00001 #ifndef GraphSegmentation_H
00002 #define GraphSegmentation_H
00003 
00004 #include <TeAdoDB.h>
00005 #include <TeDatabase.h>
00006 #include "Som.h"
00007 
00020 class GraphSegmentation  {
00021 public:
00022 
00024         GraphSegmentation(){};
00025 
00027         TIntVector Segment( SOM* som, int min_neurons_per_cluster );
00028 
00029         Value_Type  Davies_Bouldin( Value_Type p, Value_Type q );  
00030 
00031         Value_Type  Davies_Bouldin_Data( Value_Type p, Value_Type q );  
00032 
00034         int  getNumClusters() { return _num_clusters; };
00035 
00036         TIntVector Siponen();
00037 
00039         void createField( vector<string> params );
00040 
00041 
00042 private:
00043 
00044         void Init( SOM* som );
00045 
00047         TMatrix Centroid( );
00048 
00049         TMatrix Distance( );
00050 
00051         TVector Winner( );
00052 
00053         TVector MeanDistance( );
00054 
00055         TMatrix AdjacentNode( );
00056 
00057         Value_Type    Hmin( );
00058 
00059         void  Label( int i, int& group, TIntVector& vec, bool& changed );
00060         
00061         
00062 private:
00063         SOM * _som;
00064         
00065         TMatrix _adjacentNode;
00066         TMatrix _distance;
00067         TVector _winner;
00068         TVector _meanDistance;
00069         TMatrix _centroid;
00070 
00071         Value_Type      _Hmin;
00072         Value_Type      _delta;
00073         int             m;
00074 
00075         TIntVector  _clusters;
00076         TVector    _S;
00077         TMatrix    _M;
00078         int                _num_clusters;
00079         TIntVector _num_vector_cluster;
00080         TMatrix    _cluster_centroid;
00081         TMatrix    _R;
00082         
00083 };
00084 
00085 
00086 #endif

Generated on Thu Apr 8 15:04:10 2004 for SOMCode by doxygen1.2.18