TrackSIM.h
Go to the documentation of this file.
1 /*
2  * OpenVINS: An Open Platform for Visual-Inertial Research
3  * Copyright (C) 2018-2023 Patrick Geneva
4  * Copyright (C) 2018-2023 Guoquan Huang
5  * Copyright (C) 2018-2023 OpenVINS Contributors
6  * Copyright (C) 2018-2019 Kevin Eckenhoff
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <https://www.gnu.org/licenses/>.
20  */
21 
22 #ifndef OV_CORE_TRACK_SIM_H
23 #define OV_CORE_TRACK_SIM_H
24 
25 #include "TrackBase.h"
26 
27 namespace ov_core {
28 
35 class TrackSIM : public TrackBase {
36 
37 public:
43  TrackSIM(std::unordered_map<size_t, std::shared_ptr<CamBase>> cameras, int numaruco)
44  : TrackBase(cameras, 0, numaruco, false, HistogramMethod::NONE) {}
45 
51  void feed_new_camera(const CameraData &message) override {
52  PRINT_ERROR(RED "[SIM]: SIM TRACKER FEED NEW CAMERA CALLED!!!\n" RESET);
53  PRINT_ERROR(RED "[SIM]: THIS SHOULD NEVER HAPPEN!\n" RESET);
54  std::exit(EXIT_FAILURE);
55  }
56 
63  void feed_measurement_simulation(double timestamp, const std::vector<int> &camids,
64  const std::vector<std::vector<std::pair<size_t, Eigen::VectorXf>>> &feats);
65 };
66 
67 } // namespace ov_core
68 
69 #endif /* OV_CORE_TRACK_SIM_H */
ov_core::TrackSIM::TrackSIM
TrackSIM(std::unordered_map< size_t, std::shared_ptr< CamBase >> cameras, int numaruco)
Public constructor with configuration variables.
Definition: TrackSIM.h:43
ov_core::TrackBase::HistogramMethod
HistogramMethod
Desired pre-processing image method.
Definition: TrackBase.h:78
ov_core::TrackBase::NONE
@ NONE
Definition: TrackBase.h:78
TrackBase.h
ov_core::CameraData
Struct for a collection of camera measurements.
Definition: sensor_data.h:55
PRINT_ERROR
#define PRINT_ERROR(x...)
Definition: print.h:100
ov_core::TrackSIM::feed_new_camera
void feed_new_camera(const CameraData &message) override
Process a new image.
Definition: TrackSIM.h:51
RED
#define RED
Definition: colors.h:27
RESET
#define RESET
Definition: colors.h:25
ov_core
Core algorithms for OpenVINS.
Definition: CamBase.h:30
ov_core::TrackBase
Visual feature tracking base class.
Definition: TrackBase.h:72
ov_core::TrackSIM
Simulated tracker for when we already have uv measurements!
Definition: TrackSIM.h:35
ov_core::TrackSIM::feed_measurement_simulation
void feed_measurement_simulation(double timestamp, const std::vector< int > &camids, const std::vector< std::vector< std::pair< size_t, Eigen::VectorXf >>> &feats)
Feed function for a synchronized simulated cameras.
Definition: TrackSIM.cpp:30


ov_core
Author(s): Patrick Geneva , Kevin Eckenhoff , Guoquan Huang
autogenerated on Mon Jan 22 2024 03:08:17