LocalFeatureRepresentation.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * @file LocalFeatureRepresentation.h
  3. * @brief absract class for the representation of an image with local feature descriptors
  4. * @author Erik Rodner
  5. * @date 11/19/2007
  6. */
  7. #ifndef LOCALFEATUREREPRESENTATIONINCLUDE
  8. #define LOCALFEATUREREPRESENTATIONINCLUDE
  9. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include <vector>
  15. #include "core/vector/VVector.h"
  16. namespace OBJREC {
  17. /** absract class for the representation of an image with local feature descriptors */
  18. class LocalFeatureRepresentation
  19. {
  20. protected:
  21. public:
  22. /** simple constructor */
  23. LocalFeatureRepresentation();
  24. /** simple destructor */
  25. virtual ~LocalFeatureRepresentation();
  26. virtual int getDescSize () const = 0;
  27. virtual int extractFeatures ( const NICE::Image & img,
  28. NICE::VVector & features,
  29. NICE::VVector & positions ) const = 0;
  30. virtual int extractFeatures ( const NICE::ColorImage & img,
  31. NICE::VVector & features,
  32. NICE::VVector & positions ) const;
  33. virtual void visualizeFeatures ( NICE::Image & mark,
  34. const NICE::VVector & positions,
  35. size_t color ) const;
  36. virtual void visualize ( NICE::Image & img,
  37. const NICE::Vector & feature ) const;
  38. };
  39. } // namespace
  40. #endif