10 #ifndef CFaceDetection_H
11 #define CFaceDetection_H
70 void experimental_showMeasurements();
72 void debug_returnResults(
const vector_uint &falsePositives,
const vector_uint &ignore,
unsigned int &falsePositivesDeleted,
unsigned int &realFacesDeleted );
129 void thread_checkIfFacePlaneCov( );
136 void thread_checkIfFaceRegions( );
143 void thread_checkIfDiagonalSurface( );
153 void experimental_viewFacePointsScanned(
const std::vector<float> &xs,
const std::vector<float> &ys,
const std::vector<float> &zs );
157 void experimental_viewFacePointsScanned(
const std::vector<mrpt::math::TPoint3D> &
points );
161 void experimental_viewRegions(
const std::vector<mrpt::math::TPoint3D> regions[9],
const mrpt::math::TPoint3D meanPos[3][3] );
167 void experimental_calcHist(
const mrpt::utils::CImage &
face,
const size_t &c1,
const size_t &r1,
const size_t &c2,
Specific class for face detection.
mrpt::system::TThreadHandle m_thread_checkIfFacePlaneCov
Thread that execute checkIfFacePlaneCov filter.
bool m_checkIfFaceRegions_res
Save result of checkIfFaceRegions filter.
mrpt::synch::CSemaphore m_leave_checkIfFacePlaneCov
Indicates to main thread that thread_checkIfFacePlaneCov has been completed analisis of the last face...
std::vector< double > m_meanHist
mrpt::system::TThreadHandle m_thread_checkIfDiagonalSurface
Thread that execute checkIfDiagonalSurface filter.
mrpt::system::TThreadHandle m_thread_checkIfFaceRegions
Thread that execute checkIfFaceRegions filter.
mrpt::synch::CSemaphore m_enter_checkIfFaceRegions
Indicates to thread_checkIfFaceRegions that exist a new face to analyze.
mrpt::synch::CSemaphore m_leave_checkIfDiagonalSurface
Indicates to main thread that thread_checkIfDiagonalSurface has been completed analisis of the last f...
mrpt::synch::CSemaphore m_leave_checkIfFaceRegions
Indicates to main thread that thread_checkIfFaceRegions has been completed analisis of the last face ...
mrpt::obs::CObservation3DRangeScan m_lastFaceDetected
Last face detected.
mrpt::utils::CTimeLogger m_timeLog
CCascadeClassifierDetection cascadeClassifier
bool m_end_threads
Indicates to all threads that must finish their execution.
bool m_checkIfFacePlaneCov_res
Save result of checkIfFacePlaneCov filter.
mrpt::synch::CSemaphore m_enter_checkIfFacePlaneCov
Indicates to thread_checkIfFacePlaneCov that exist a new face to analyze.
mrpt::synch::CSemaphore m_enter_checkIfDiagonalSurface
Indicates to thread_checkIfDiagonalSurface that exist a new face to analyze.
bool m_checkIfDiagonalSurface_res
Save result of checkIfDiagonalSurface filter.
Column vector, like Eigen::MatrixX*, but automatically initialized to zeros since construction.
Declares a class derived from "CObservation" that encapsules a 3D range scan measurement,...
Declares a class that represents any robot's observation.
A semaphore for inter-thread synchronization.
This class allows loading and storing values and vectors of different types from a configuration text...
A class for storing images as grayscale or RGB bitmaps.
A versatile "profiler" that logs the time spent within each pair of calls to enter(X)-leave(X),...
GLsizei GLsizei GLuint * obj
GLenum GLuint GLint GLenum face
GLsizei const GLfloat * points
std::vector< uint32_t > vector_uint
std::vector< CDetectableObjectPtr > vector_detectable_object
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
mrpt::math::CVectorDouble sumDistances
mrpt::math::CVectorDouble meanRegions
bool saveMeasurementsToFile
mrpt::math::CVectorDouble errorEstimations
int numPossibleFacesDetected
vector_uint deletedRegions
mrpt::math::CVectorDouble lessEigenVals
bool useSizeDistanceRelationFilter
bool useDiagonalDistanceFilter
double regionsTest_sumDistThreshold_bottom
double regionsTest_sumDistThreshold_top
double planeTest_eigenVal_top
double planeTest_eigenVal_bottom