LFColorSande.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  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. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include "LocalFeatureRepresentation.h"
  15. #include "core/basics/Config.h"
  16. namespace OBJREC {
  17. /** interface to ColorSande implementation */
  18. class LFColorSande : public LocalFeatureRepresentation
  19. {
  20. protected:
  21. std::string c_binaryExecutable;
  22. std::string c_params;
  23. double c_minScale;
  24. //! size of the descriptor
  25. int descriptor_size;
  26. //! use grid for SIFT Positions
  27. bool usegrid;
  28. //! size of the grid
  29. std::string gridsize;
  30. //! used scales
  31. std::string scales;
  32. public:
  33. /** simple constructor */
  34. LFColorSande( const NICE::Config *conf, std::string section = "LFColorSande" );
  35. /** simple destructor */
  36. virtual ~LFColorSande();
  37. int getDescSize () const;
  38. /**
  39. * get the colorSIFT features
  40. * @param img grayvalue input image
  41. * @param features features (output)
  42. * @param positions position of the features
  43. * @return
  44. */
  45. int extractFeatures ( const NICE::Image & img, NICE::VVector & features,
  46. NICE::VVector & positions ) const;
  47. /**
  48. * get the colorSIFT features
  49. * @param img color input image
  50. * @param features features (output)
  51. * @param positions position of the features
  52. * @return
  53. */
  54. int extractFeatures ( const NICE::ColorImage & img, NICE::VVector & features,
  55. NICE::VVector & positions ) const;
  56. };
  57. } // namespace
  58. #endif