SLProject  4.2.000
A platform independent 3D computer graphics framework for desktop OS, Android, iOS and online in web browsers
CVTrackedWAI.h
Go to the documentation of this file.
1 /**
2  * \file CVTrackedWAI.h
3  * \date Spring 2020
4  * \remarks Please use clangformat to format the code. See more code style on
5  * https://github.com/cpvrlab/SLProject4/wiki/SLProject-Coding-Style
6  * \authors Michael Goettlicher, Jan Dellsperger
7  * \copyright http://opensource.org/licenses/GPL-3.0
8 */
9 
10 #ifndef CVTrackedWAI_H
11 #define CVTrackedWAI_H
12 
13 #include <CVTracked.h>
14 #include <WAIOrbVocabulary.h>
15 #include <WAISlam.h>
16 
17 //-----------------------------------------------------------------------------
18 //! Tracker that uses the ORB-Slam based WAI library (Where Am I)
19 /*
20  This tracker can can track a on-the-fly built 3D point cloud generated by
21  the ORB-SLAM2 library that is integrated within the lib-WAI. It only works
22  well if the camera is calibrated. SLAM stands for Simultaneous Localisation
23  And Mapping. See the app-demo Demo Scene > Video > Track WAI.
24  */
25 class CVTrackedWAI : public CVTracked
26 {
27 public:
28  explicit CVTrackedWAI(const string& vocabularyFile);
29  ~CVTrackedWAI() override;
30 
31  bool track(CVMat imageGray,
32  CVMat imageBgr,
33  CVCalibration* calib) final;
34 
35 private:
36  WAISlam* _waiSlamer = nullptr;
37  ORB_SLAM2::ORBextractor* _trackingExtractor = nullptr;
38  ORB_SLAM2::ORBextractor* _initializationExtractor = nullptr;
40 };
41 //-----------------------------------------------------------------------------
42 #endif
cv::Mat CVMat
Definition: CVTypedefs.h:38
Live video camera calibration class with OpenCV an OpenCV calibration.
Definition: CVCalibration.h:71
CVTracked is the pure virtual base class for tracking features in video.
Definition: CVTracked.h:50
Tracker that uses the ORB-Slam based WAI library (Where Am I)
Definition: CVTrackedWAI.h:26
WAIOrbVocabulary * _voc
Definition: CVTrackedWAI.h:39
ORB_SLAM2::ORBextractor * _initializationExtractor
Definition: CVTrackedWAI.h:38
ORB_SLAM2::ORBextractor * _trackingExtractor
Definition: CVTrackedWAI.h:37
CVTrackedWAI(const string &vocabularyFile)
~CVTrackedWAI() override
bool track(CVMat imageGray, CVMat imageBgr, CVCalibration *calib) final
WAISlam * _waiSlamer
Definition: CVTrackedWAI.h:36