abstract_face_recognizer.h
Go to the documentation of this file.
00001 
00060 #ifndef __ABSTRACT_FACE_RECOGNIZER_H__
00061 #define __ABSTRACT_FACE_RECOGNIZER_H__
00062 
00063 #ifdef __LINUX__
00064 #else
00065 #include "cob_vision/cob_vision_ipa_utils/common/include/cob_vision_ipa_utils/MathUtils.h"
00066 #include "cob_vision/cob_sensor_fusion/common/include/cob_sensor_fusion/ColoredPointCloud.h"    // todo: necessary?
00067 #endif
00068 
00069 // opencv
00070 #include <opencv/cv.h>
00071 
00072 namespace ipa_PeopleDetector
00073 {
00074 
00075 class AbstractFaceRecognizer
00076 {
00077 public:
00078 
00080         AbstractFaceRecognizer(void); 
00081         ~AbstractFaceRecognizer(void); 
00082 
00089         virtual unsigned long recognizeFaces(std::vector<cv::Mat>& color_images, std::vector<std::vector<cv::Rect> >& face_coordinates,
00090                         std::vector<std::vector<std::string> >& identification_labels);
00091         virtual unsigned long recognizeFaces(std::vector<cv::Mat>& color_images, std::vector<cv::Mat>& depth_images, std::vector<std::vector<cv::Rect> >& face_coordinates,
00092                         std::vector<std::vector<std::string> >& identification_labels);
00093 
00097         virtual unsigned long trainRecognitionModel(std::vector<std::string>& identification_labels_to_train) = 0;
00098 
00101         virtual unsigned long saveRecognitionModel() = 0;
00102 
00106         virtual unsigned long loadRecognitionModel(std::vector<std::string>& identification_labels_to_recognize) = 0;
00107 
00108 protected:
00115         virtual unsigned long recognizeFace(cv::Mat& color_image, std::vector<cv::Rect>& face_coordinates, std::vector<std::string>& identification_labels) = 0;
00116         virtual unsigned long recognizeFace(cv::Mat& color_image, cv::Mat& depth_image, std::vector<cv::Rect>& face_coordinates, std::vector<std::string>& identification_labels) = 0;
00117 };
00118 
00119 } // end namespace
00120 
00121 #endif // __ABSTRACT_FACE_RECOGNIZER_H__


cob_people_detection
Author(s): Richard Bormann , Thomas Zwölfer
autogenerated on Fri Aug 28 2015 10:24:12