41 #ifndef FACE_DETECTOR_FACES_H
42 #define FACE_DETECTOR_FACES_H
47 #include <opencv2/core/core_c.h>
48 #include <opencv2/objdetect.hpp>
51 #include <boost/thread/mutex.hpp>
52 #include <boost/bind.hpp>
53 #include <boost/thread/thread.hpp>
54 #include <boost/thread/condition.hpp>
56 #define FACE_SIZE_MIN_M 0.1
57 #define FACE_SIZE_MAX_M 0.5
58 #define MAX_FACE_Z_M 8.0
59 // Default thresholds for face tracking.
60 #define FACE_SEP_DIST_M 1.0
122 std::vector<Box2D3D> detectAllFacesDisparity(
const cv::Mat &image,
double threshold,
const cv::Mat &disparity_image,
137 std::vector<Box2D3D> detectAllFacesDepth(
const cv::Mat &image,
double threshold,
const cv::Mat &depth_image,
148 void initFaceDetectionDisparity(uint num_cascades, std::string haar_classifier_filename,
double face_size_min_m,
149 double face_size_max_m,
double max_face_z_m,
double face_sep_dist_m);
159 void initFaceDetectionDepth(uint num_cascades, std::string haar_classifier_filename,
double face_size_min_m,
160 double face_size_max_m,
double max_face_z_m,
double face_sep_dist_m);
172 boost::mutex face_mutex_, face_done_mutex_,
t_mutex_;
182 void faceDetectionThreadDisparity(uint i);
183 void faceDetectionThreadDepth(uint i);
187 #endif // FACE_DETECTOR_FACES_H