/** * @file GSCluster.h * @brief Generate Signature by Clustering Local Features (image-specific codebook!). The class can be used for the EMD kernel, but not for usual BoV approaches. * @author Erik Rodner * @date 10/30/2007 */ #ifndef GSCLUSTERINCLUDE #define GSCLUSTERINCLUDE #include "core/vector/VectorT.h" #include "core/vector/MatrixT.h" #include "GenerateSignature.h" #include "ClusterAlgorithm.h" namespace OBJREC { /** * @class GSCluster * @brief Generate Signature by Clustering Local Features (image-specific codebook!). * The class can be used for the EMD kernel, but not for usual BoV approaches. * @author Erik Rodner */ class GSCluster : public GenerateSignature { protected: int c_no_clusters; ClusterAlgorithm *clualg; public: /** standard constructor * @param conf config file specifying all relevant variable settings. You should specify in "section" the string "cluster_method" * @param _section name of the section within the configfile where the settings can be found. Default: GSCluster * @param[in] */ GSCluster( const NICE::Config *conf, const std::string & _section = "GSCluster" ); /** simple destructor */ virtual ~GSCluster(); void signature ( const NICE::VVector & features, NICE::Vector & signature ); }; } // namespace #endif