FPCDecisionTree.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /**
  2. * @file FPCDecisionTree.h
  3. * @brief simple decision tree classifier
  4. * @author Erik Rodner
  5. * @date 04/21/2008
  6. */
  7. #ifndef FPCDECISIONTREEINCLUDE
  8. #define FPCDECISIONTREEINCLUDE
  9. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include "core/basics/Config.h"
  15. #include "vislearning/classifier/classifierbase/FeaturePoolClassifier.h"
  16. #include "vislearning/cbaselib/CachedExample.h"
  17. #include "DecisionTreeBuilder.h"
  18. #include "DecisionTree.h"
  19. #undef ROADWORKS
  20. #define ROADWORKS fthrow( Exception, "Persistent interface not yet implemented.");
  21. namespace OBJREC {
  22. /** simple decision tree classifier */
  23. class FPCDecisionTree : public FeaturePoolClassifier
  24. {
  25. protected:
  26. const NICE::Config *conf;
  27. DecisionTree *dt;
  28. DecisionTreeBuilder *builder;
  29. public:
  30. /** simple constructor */
  31. FPCDecisionTree( const NICE::Config *conf, std::string section );
  32. /** simple destructor */
  33. virtual ~FPCDecisionTree();
  34. virtual ClassificationResult classify ( Example & pce );
  35. virtual void train ( FeaturePool & fp, Examples & examples );
  36. DecisionTree & getTree () { return *dt; };
  37. void restore (std::istream & is, int format = 0) { ROADWORKS };
  38. void store (std::ostream & os, int format = 0) const { ROADWORKS };
  39. void clear () { ROADWORKS };
  40. FeaturePoolClassifier *clone () const { ROADWORKS };
  41. };
  42. } // namespace
  43. #undef ROADWORKS
  44. #endif