/** * @file ColorHistogramFeature.h * @brief simple color histograms * @author Erik Rodner * @date 26/08/2008 */ #ifndef ColorHistogramFeatureINCLUDE #define ColorHistogramFeatureINCLUDE #include "core/vector/VectorT.h" #include "core/vector/MatrixT.h" #include "core/basics/Config.h" #include "vislearning/cbaselib/Feature.h" namespace OBJREC { /** simple color histograms */ class ColorHistogramFeature : public Feature { protected: /** @{ feature parameter */ int window_size_x; int window_size_y; int bin; /** @} */ /** @{ parameter for feature generation */ int numScales; int numBins; double scaleStep; /** @} */ public: /** simple constructor */ ColorHistogramFeature ( const NICE::Config *conf ); /** internally used by ColorHistogramFeature::explode */ ColorHistogramFeature () {}; /** simple destructor */ virtual ~ColorHistogramFeature(); double val ( const Example *example ) const; void explode ( FeaturePool & featurePool, bool variableWindow = true ) const; Feature *clone() const; Feature *generateFirstParameter () const; void restore ( std::istream & is, int format = 0 ); void store ( std::ostream & os, int format = 0 ) const; void clear (); }; } // namespace #endif