00001
00015 #ifndef MDS_TETRAMEMBERSHIPFCM_H
00016 #define MDS_TETRAMEMBERSHIPFCM_H
00017
00018 #include "mdsTetraMembershipFunc.h"
00019 #include "mdsTetraContainer.h"
00020
00021
00022 #include <MDSTk/Math/Algorithm/mdsFuzzyCMeans.h>
00023
00024
00025 namespace mds
00026 {
00027 namespace seg
00028 {
00029
00030
00035 class CTetraMembershipFCM : public CTetraMembershipFunc
00036 {
00037 public:
00038 CTetraMembershipFCM(double dWeight);
00039
00041 virtual ~CTetraMembershipFCM() {}
00042
00045 virtual bool operator()(vctl::MCTetra *pFirstTetrahedron);
00046
00050 virtual bool operator()(vctl::MCTetra *pFirstTetrahedron,
00051 mds::tSize NumOfClasses
00052 );
00053
00054 protected:
00056 mds::math::CFuzzyCMeans<CTetraContainer, NUM_OF_FEATURES> m_FCM;
00057 };
00058
00059
00060 }
00061 }
00062
00063 #endif // MDS_TETRAMEMBERSHIPFCM_H
00064