/** * @file RFBoVCodebook.h * @brief Bag of Visual Words with an local feature * @author Björn Fröhlich * @date 02-11-2010 */ #ifndef RFBoVCodebookINCLUDE #define RFBoVCodebookINCLUDE #include #include "core/basics/Config.h" #include "vislearning/cbaselib/LabeledSet.h" #include "vislearning/segmentation/RegionGraph.h" #include "vislearning/features/localfeatures/LocalFeature.h" #include "vislearning/math/ftransform/PCA.h" #include "vislearning/math/cluster/GMM.h" #include "vislearning/features/regionfeatures/RegionFeatures.h" #include "vislearning/features/regionfeatures/RFBoV.h" #include "vislearning/features/simplefeatures/Codebook.h" namespace OBJREC { class RFBoVCodebook : public RFBoV { protected: //! codebook Codebook *cb; public: /** simple constructor */ RFBoVCodebook( const NICE::Config *_conf, LocalFeature *_lf ); /** simple destructor */ virtual ~RFBoVCodebook(); /** * set the codebook * @param _cb codebook */ void setCodebook(Codebook *_cb); /** * bags the features for each region * @param mask region mask * @param rg region graph * @param infeats input features for image * @param outfeats output features for regions * @param positions positions of the input features */ void convert(const NICE::Matrix &mask, const RegionGraph &rg, NICE::VVector &infeats, NICE::VVector &outfeats, NICE::VVector &positions); }; } // namespace #endif