00001 #ifndef FACE_CONTOUR_DETECTOR_FILTERS_CANNY_H_ 00002 #define FACE_CONTOUR_DETECTOR_FILTERS_CANNY_H_ 00003 00004 #include <face_contour_detector/filters/Filter.h> 00005 #include <face_contour_detector/filters/Parameter.h> 00006 #include <vector> 00007 #include <string> 00008 #include <opencv/cv.h> 00009 00010 namespace face_contour_detector { 00011 namespace filters { 00012 00014 class Canny : public Filter { 00015 public: 00016 Canny(); 00017 00018 virtual std::vector<filters::Parameter> GetParameters(); 00019 virtual void Apply(const cv::Mat& input, cv::Mat& result); 00020 virtual void ResetParameters(); 00021 virtual const std::string& GetFilterName(); 00022 protected: 00023 double m_threshold1; 00024 double m_threshold2; 00025 int m_apertureSize; 00026 bool m_l2gradients; 00027 00028 //static 00029 static std::string m_filterName; 00030 }; 00031 } //namespace filters 00032 } //namespace face_contour_detector 00033 00034 00035 #endif //FACE_CONTOUR_DETECTOR_FILTERS_CANNY_H_