UpdaterMSCKF.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_MSCKF_UPDATER_MSCKF_H
23 #define OV_MSCKF_UPDATER_MSCKF_H
24 
25 #include <Eigen/Eigen>
26 #include <memory>
27 
29 
30 #include "UpdaterOptions.h"
31 
32 namespace ov_core {
33 class Feature;
34 class FeatureInitializer;
35 } // namespace ov_core
36 
37 namespace ov_msckf {
38 
39 class State;
40 
48 class UpdaterMSCKF {
49 
50 public:
61 
68  void update(std::shared_ptr<State> state, std::vector<std::shared_ptr<ov_core::Feature>> &feature_vec);
69 
70 protected:
73 
75  std::shared_ptr<ov_core::FeatureInitializer> initializer_feat;
76 
78  std::map<int, double> chi_squared_table;
79 };
80 
81 } // namespace ov_msckf
82 
83 #endif // OV_MSCKF_UPDATER_MSCKF_H
ov_msckf::UpdaterMSCKF::_options
UpdaterOptions _options
Options used during update.
Definition: UpdaterMSCKF.h:72
ov_msckf::UpdaterOptions
Struct which stores general updater options.
Definition: UpdaterOptions.h:32
FeatureInitializerOptions.h
ov_msckf
Extended Kalman Filter estimator.
Definition: VioManager.h:46
ov_core::FeatureInitializerOptions
ov_msckf::UpdaterMSCKF::initializer_feat
std::shared_ptr< ov_core::FeatureInitializer > initializer_feat
Feature initializer class object.
Definition: UpdaterMSCKF.h:75
ov_msckf::UpdaterMSCKF::UpdaterMSCKF
UpdaterMSCKF(UpdaterOptions &options, ov_core::FeatureInitializerOptions &feat_init_options)
Default constructor for our MSCKF updater.
Definition: UpdaterMSCKF.cpp:42
ov_msckf::UpdaterMSCKF::chi_squared_table
std::map< int, double > chi_squared_table
Chi squared 95th percentile table (lookup would be size of residual)
Definition: UpdaterMSCKF.h:78
ov_msckf::UpdaterMSCKF
Will compute the system for our sparse features and update the filter.
Definition: UpdaterMSCKF.h:48
ov_msckf::UpdaterMSCKF::update
void update(std::shared_ptr< State > state, std::vector< std::shared_ptr< ov_core::Feature >> &feature_vec)
Given tracked features, this will try to use them to update the state.
Definition: UpdaterMSCKF.cpp:58
UpdaterOptions.h
ov_core


ov_msckf
Author(s): Patrick Geneva , Kevin Eckenhoff , Guoquan Huang
autogenerated on Mon Dec 16 2024 03:06:54