00001 /******************************************************************************* 00002 * KeyPointExtractor.h 00003 * 00004 * (C) 2008 AG Aktives Sehen <agas@uni-koblenz.de> 00005 * Universitaet Koblenz-Landau 00006 * 00007 *******************************************************************************/ 00008 00009 #ifndef KeyPointExtractor_H 00010 #define KeyPointExtractor_H 00011 00012 #include <vector> 00013 #include <string> 00014 00015 #include <opencv2/opencv.hpp> 00016 00017 #include "Workers/Math/Box2D.h" 00018 #include "Workers/Math/Point2D.h" 00019 00020 #include "KeyPoint.h" 00021 00027 class KeyPointExtractor 00028 { 00029 public: 00030 00031 KeyPointExtractor( ) {}; 00032 00033 virtual ~KeyPointExtractor( ) {}; 00034 00036 virtual void setImage ( const cv::Mat &image ) = 0; 00037 00039 virtual void getKeyPoints ( std::vector< KeyPoint >& keyPoints ) = 0; 00040 00041 virtual std::string getName() = 0; 00042 00044 virtual std::string getDescription() = 0; 00045 }; 00046 00047 00048 #endif 00049