1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- /**
- * @file LocalFeatureSift.h
- * @brief local feature with sift (without detector)
- * @author Erik Rodner
- * @date 02/05/2008
- */
- #ifndef LOCALFEATURESIFTINCLUDE
- #define LOCALFEATURESIFTINCLUDE
- #include "core/vector/VectorT.h"
- #include "core/vector/MatrixT.h"
- #include "core/image/ImageT.h"
- #include "core/imagedisplay/ImageDisplay.h"
- #include "core/basics/Config.h"
- #include "LocalFeature.h"
- namespace OBJREC {
- /** local feature with sift */
- class LocalFeatureSift : public LocalFeature
- {
- protected:
- int octaves;
- int levels;
- bool normalizeFeature;
- int first_octave;
- double magnif;
- bool deletemode;
- bool integerValues;
- float threshold;
- float edgeThreshold;
- public:
-
- /** simple constructor */
- LocalFeatureSift ( const NICE::Config *conf );
-
- /** simple destructor */
- virtual ~LocalFeatureSift();
-
- /**
- * returns the size of each the SIFT-Feature
- * @return 128
- */
- int getDescSize() const { return 128; };
-
- /**
- * get the descriptor
- * @param img input image
- * @param positions positions for the SIFT features
- * @param descriptors output
- * @return 0
- */
- virtual int getDescriptors ( const NICE::Image & img,
- NICE::VVector & positions,
- NICE::VVector & descriptors ) const;
-
- /**
- * computes the descriptor for a single image
- * @param img
- * @param positions
- * @param descriptors
- */
- void computeDesc( const NICE::Image & img, NICE::VVector & positions, NICE::VVector & descriptors ) const;
-
- /**
- * sort positions by scales for faster computing of the Keypoint orientation
- * @param positions
- */
- void sortPositions(NICE::VVector & positions) const;
-
- void visualizeFeatures ( NICE::Image & mark, const NICE::VVector & positions, size_t color ) const;
-
- };
- } // namespace
- #endif
|