Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef CObjectDetection_H
00031 #define CObjectDetection_H
00032
00033 #include <mrpt/detectors/CDetectableObject.h>
00034 #include <mrpt/utils/CConfigFile.h>
00035 #include <mrpt/utils/CImage.h>
00036
00037 namespace mrpt
00038 {
00039 namespace detectors
00040 {
00041 using namespace std;
00042 using namespace mrpt::slam;
00043 using namespace mrpt::utils;
00044
00045 typedef std::vector<CDetectableObjectPtr> vector_detectable_object;
00046
00047 class DETECTORS_IMPEXP CObjectDetection
00048 {
00049 public:
00050
00051
00052
00053 inline void init(const std::string &configFile)
00054 {
00055 mrpt::utils::CConfigFile cfg(configFile);
00056 init(cfg);
00057 }
00058
00059
00060 virtual void init(const mrpt::utils::CConfigFileBase &cfg )=0;
00061
00062 inline void detectObjects(const CObservationPtr obs, vector_detectable_object &detected)
00063 {
00064 detectObjects_Impl(obs.pointer(), detected);
00065 };
00066
00067 inline void detectObjects( const CObservation *obs, vector_detectable_object &detected)
00068 {
00069 detectObjects_Impl( obs, detected );
00070 };
00071
00072 void detectObjects(const CImage *img, vector_detectable_object &detected);
00073
00074 protected:
00075
00076 virtual void detectObjects_Impl( const CObservation *obs, vector_detectable_object &detected) = 0;
00077
00078 };
00079 }
00080
00081 }
00082
00083 #endif
00084
00085
00086
00087