Go to the documentation of this file.00001
00060 #ifdef __LINUX__
00061 #include "cob_people_detection/abstract_face_recognizer.h"
00062 #include "cob_vision_utils/GlobalDefines.h"
00063 #else
00064 #include "cob_vision/cob_people_detection/common/include/cob_people_detection/PeopleDetector.h"
00065 #include "cob_common/cob_vision_utils/common/include/cob_vision_utils/GlobalDefines.h"
00066 #endif
00067
00068
00069 #include <fstream>
00070
00071
00072 #include <opencv/cv.h>
00073 #include <opencv/cvaux.h>
00074
00075 using namespace ipa_PeopleDetector;
00076
00077 AbstractFaceRecognizer::AbstractFaceRecognizer(void)
00078 {
00079 }
00080
00081 AbstractFaceRecognizer::~AbstractFaceRecognizer(void)
00082 {
00083 }
00084
00085 unsigned long AbstractFaceRecognizer::recognizeFaces(std::vector<cv::Mat>& color_images, std::vector<std::vector<cv::Rect> >& face_coordinates,
00086 std::vector<std::vector<std::string> >& identification_labels)
00087 {
00088
00089 identification_labels.clear();
00090 identification_labels.resize(face_coordinates.size());
00091
00092
00093 for (unsigned int i = 0; i < color_images.size(); i++)
00094 {
00095 identification_labels[i].resize(face_coordinates[i].size());
00096 unsigned long result_state = recognizeFace(color_images[i], face_coordinates[i], identification_labels[i]);
00097 if (result_state == ipa_Utils::RET_FAILED)
00098 return ipa_Utils::RET_FAILED;
00099 }
00100 return ipa_Utils::RET_OK;
00101 }
00102 unsigned long AbstractFaceRecognizer::recognizeFaces(std::vector<cv::Mat>& color_images, std::vector<cv::Mat>& depth_images, std::vector<std::vector<cv::Rect> >& face_coordinates,
00103 std::vector<std::vector<std::string> >& identification_labels)
00104 {
00105
00106 identification_labels.clear();
00107 identification_labels.resize(face_coordinates.size());
00108
00109
00110 for (unsigned int i = 0; i < color_images.size(); i++)
00111 {
00112 identification_labels[i].resize(face_coordinates[i].size());
00113 unsigned long result_state = recognizeFace(color_images[i], depth_images[i], face_coordinates[i], identification_labels[i]);
00114 if (result_state == ipa_Utils::RET_FAILED)
00115 return ipa_Utils::RET_FAILED;
00116 }
00117
00118 return ipa_Utils::RET_OK;
00119 }
00120