/** * @file LFMikolajczyk.h * @brief interface to Mikolajczyk implementation * @author Erik Rodner * @date 11/19/2007 */ #ifndef LFMIKOLAJCZYKINCLUDE #define LFMIKOLAJCZYKINCLUDE #include "core/vector/VectorT.h" #include "core/vector/MatrixT.h" #include "core/image/ImageT.h" #include "LocalFeatureRepresentation.h" #include "core/basics/Config.h" namespace OBJREC { /** interface to Mikolajczyk implementation */ class LFMikolajczyk : public LocalFeatureRepresentation { protected: std::string c_binaryExecutable; std::string c_params; double c_minScale; int descriptor_size; public: ///////////////////// ///////////////////// ///////////////////// // CONSTRUCTORS / DESTRUCTORS ///////////////////// ///////////////////// ///////////////////// /** * @brief default constructor * @date 10-02-2014 (dd-mm-yyyy ) * @author Alexander Freytag */ LFMikolajczyk(); /** simple constructor */ LFMikolajczyk( const NICE::Config *conf ); /** simple destructor */ virtual ~LFMikolajczyk(); ///////////////////// ///////////////////// ///////////////////// // FEATURE STUFF ///////////////////// ///////////////////// ////////////////// int getDescSize () const; int extractFeatures ( const NICE::Image & img, NICE::VVector & features, NICE::VVector & positions ) const; ///////////////////// INTERFACE PERSISTENT ///////////////////// // interface specific methods for store and restore ///////////////////// INTERFACE PERSISTENT ///////////////////// /** * @brief Load object from external file (stream) * @author Alexander Freytag * @date 10-02-2014 ( dd-mmyyyy) */ virtual void restore ( std::istream & is, int format = 0 ); /** * @brief Save object to external file (stream) * @author Alexander Freytag * @date 10-02-2014 ( dd-mmyyyy) */ virtual void store( std::ostream & os, int format = 0 ) const; /** * @brief Clear object * @author Alexander Freytag * @date 10-02-2014 ( dd-mmyyyy) */ virtual void clear (); }; } // namespace #endif