1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- /**
- * @file VecClassifier.h
- * @brief Simple classification interface
- * @author Erik Rodner
- * @date 07.09.2007
- */
- #ifndef VecClassifierINCLUDE
- #define VecClassifierINCLUDE
- #include "core/basics/Persistent.h"
- #include "core/basics/Config.h"
- #include "vislearning/cbaselib/LabeledSet.h"
- #include "vislearning/cbaselib/ClassificationResult.h"
- #define ROADWORKS fthrow(Exception, "clone(): not yet implemented!");
- namespace OBJREC {
- /** Simple classification interface */
- class VecClassifier : public NICE::Persistent
- {
- protected:
- int maxClassNo;
- public:
-
- VecClassifier() { maxClassNo = 0; };
- /** simple constructor */
- VecClassifier( const NICE::Config *conf );
- /** simple destructor */
- virtual ~VecClassifier();
- virtual void setMaxClassNo ( int maxClassNo );
-
- virtual int getMaxClassNo () const;
- /** classify using simple vector */
- virtual ClassificationResult classify ( const NICE::Vector & x ) const = 0;
- /** teach classifier with a labeled set of feature vectors */
- virtual void teach ( const LabeledSetVector & teachSet ) = 0;
-
- /** calculate classifier stuff as the last training step */
- virtual void finishTeaching() = 0;
- /** clone this object */
- virtual VecClassifier *clone(void) const { ROADWORKS; };
- };
- #undef ROADWORKS
- } // namespace
- #endif
|