/** * @file LocalFeature.h * @brief Abstract class for Local Features ( ONLY DESCRIPTORS, NO DETECTORS ) * @author Erik Rodner, Alexander Freytag * @date 02/05/2008 */ #ifndef LOCALFEATUREINCLUDE #define LOCALFEATUREINCLUDE #include "core/vector/VectorT.h" #include "core/vector/MatrixT.h" #include "core/image/ImageT.h" #include "core/vector/VVector.h" namespace OBJREC { /** @class LocalFeature * @brief Abstract class for Local Features ( ONLY DESCRIPTORS, NO DETECTORS ) * */ class LocalFeature { protected: public: /** simple constructor */ LocalFeature(); /** simple destructor */ virtual ~LocalFeature(); virtual int getDescSize() const = 0; virtual int getDescriptors ( const NICE::Image & img, NICE::VVector & positions, NICE::VVector & descriptors) const = 0; virtual int getDescriptors ( const NICE::ColorImage & img, NICE::VVector & positions, NICE::VVector & descriptors) const; virtual void visualizeFeatures ( NICE::Image & mark, const NICE::VVector & positions, size_t color ) const; }; } // namespace #endif