LFColorSande.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /**
  2. * @file LFColorSande.h
  3. * @brief interface to ColorSande implementation
  4. * @author Erik Rodner
  5. * @date 11/19/2007
  6. */
  7. #ifndef LFColorSandeINCLUDE
  8. #define LFColorSandeINCLUDE
  9. #include "core/vector/VectorT.h"
  10. #include "core/vector/MatrixT.h"
  11. #include "core/image/ImageT.h"
  12. #include "LocalFeatureRepresentation.h"
  13. #include "core/basics/Config.h"
  14. namespace OBJREC {
  15. /** interface to ColorSande implementation */
  16. class LFColorSande : public LocalFeatureRepresentation
  17. {
  18. protected:
  19. std::string c_binaryExecutable;
  20. std::string c_params;
  21. double c_minScale;
  22. //! size of the descriptor
  23. int descriptor_size;
  24. //! use grid for SIFT Positions
  25. bool usegrid;
  26. //! size of the grid
  27. std::string gridsize;
  28. //! used scales
  29. std::string scales;
  30. public:
  31. /** simple constructor */
  32. LFColorSande( const NICE::Config *conf, std::string section = "LFColorSande" );
  33. /** simple destructor */
  34. virtual ~LFColorSande();
  35. int getDescSize () const;
  36. /**
  37. * get the colorSIFT features
  38. * @param img grayvalue input image
  39. * @param features features (output)
  40. * @param positions position of the features
  41. * @return
  42. */
  43. int extractFeatures ( const NICE::Image & img, NICE::VVector & features,
  44. NICE::VVector & positions ) const;
  45. /**
  46. * get the colorSIFT features
  47. * @param img color input image
  48. * @param features features (output)
  49. * @param positions position of the features
  50. * @return
  51. */
  52. int extractFeatures ( const NICE::ColorImage & img, NICE::VVector & features,
  53. NICE::VVector & positions ) const;
  54. };
  55. } // namespace
  56. #endif