/** * @file VCNormalize.h // refactor-nice.pl: check this substitution // old: * @brief interface to Vector Transformation * @brief interface to NICE::Vector Transformation * @author Michael Koch * @date 11/28/2007 */ #ifndef VCNormalizeINCLUDE #define VCNormalizeINCLUDE #include "core/vector/VectorT.h" #include "core/vector/MatrixT.h" #include "vislearning/math/ftransform/FTransform.h" #include "vislearning/classifier/classifierbase/VecClassifier.h" namespace OBJREC { /** VC with Feature Transformation */ class VCNormalize: public VecClassifier { protected: VecClassifier * classifier; LabeledSetVector transformedSet; uint mode; NICE::Vector vector_max; NICE::Vector vector_min; NICE::Vector vector_span; NICE::Vector getNormalizedVector(const NICE::Vector &x) const; public: /** simple constructor */ VCNormalize(const NICE::Config *conf, VecClassifier * classifier); /** simple destructor */ virtual ~VCNormalize(); /** classify using simple vector */ ClassificationResult classify(const NICE::Vector & x) const; void teach(const LabeledSetVector & teachSet); void finishTeaching(); void restore(std::istream & is, int format = 0); void store(std::ostream & is, int format = 0) const; void clear(); }; } // namespace #endif