class
UpdaterMSCKFWill compute the system for our sparse features and update the filter.
Contents
This class is responsible for computing the entire linear system for all features that are going to be used in an update. This follows the original MSCKF, where we first triangulate features, we then nullspace project the feature Jacobian. After this we compress all the measurements to have an efficient update and update the state.
Constructors, destructors, conversion operators
-
UpdaterMSCKF(UpdaterOptions& options,
ov_core::
FeatureInitializerOptions& feat_init_options) - Default constructor for our MSCKF updater.
Public functions
-
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.
Protected variables
- UpdaterOptions _options
- Options used during update.
-
std::shared_ptr<ov_core::
FeatureInitializer> initializer_feat - Feature initializer class object.
- std::map<int, double> chi_squared_table
- Chi squared 95th percentile table (lookup would be size of residual)
Function documentation
ov_msckf:: UpdaterMSCKF:: UpdaterMSCKF(UpdaterOptions& options,
ov_core:: FeatureInitializerOptions& feat_init_options)
Default constructor for our MSCKF updater.
Parameters | |
---|---|
options | Updater options (include measurement noise value) |
feat_init_options | Feature initializer options |
Our updater has a feature initializer which we use to initialize features as needed. Also the options allow for one to tune the different parameters for update.
void ov_msckf:: UpdaterMSCKF:: 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.
Parameters | |
---|---|
state | State of the filter |
feature_vec | Features that can be used for update |
Chi2 distance check