Go to the documentation of this file.00001
00024 #ifndef RGBDTOOLS_GFT_DETECTOR_H
00025 #define RGBDTOOLS_GFT_DETECTOR_H
00026
00027 #include <opencv2/core/core.hpp>
00028 #include <opencv2/features2d/features2d.hpp>
00029
00030 #include "rgbdtools/features/feature_detector.h"
00031
00032 namespace rgbdtools {
00033
00036 class GftDetector: public FeatureDetector
00037 {
00038 public:
00039
00042 GftDetector();
00043
00046 ~GftDetector();
00047
00053 void findFeatures(RGBDFrame& frame, const cv::Mat& input_img);
00054
00058 void setNFeatures(int n_features);
00059
00063 void setMinDistance(double min_distance);
00064
00065 private:
00066
00067 int n_features_;
00068 double min_distance_;
00069
00070 boost::shared_ptr<cv::GoodFeaturesToTrackDetector> gft_detector_;
00071
00072 cv::OrbDescriptorExtractor orb_descriptor_;
00073 };
00074
00075 typedef boost::shared_ptr<GftDetector> GftDetectorPtr;
00076
00077 }
00078
00079 #endif // RGBDTOOLS_GFT_DETECTOR_H