Go to the documentation of this file.
22 #ifndef OV_MSCKF_UPDATER_HELPER_H
23 #define OV_MSCKF_UPDATER_HELPER_H
25 #include <Eigen/Eigen>
27 #include <unordered_map>
60 std::unordered_map<size_t, std::vector<Eigen::VectorXf>>
uvs;
63 std::unordered_map<size_t, std::vector<Eigen::VectorXf>>
uvs_norm;
66 std::unordered_map<size_t, std::vector<double>>
timestamps;
100 std::vector<Eigen::MatrixXd> &H_x, std::vector<std::shared_ptr<ov_type::Type>> &x_order);
113 Eigen::MatrixXd &H_x, Eigen::VectorXd &res, std::vector<std::shared_ptr<ov_type::Type>> &x_order);
142 #endif // OV_MSCKF_UPDATER_HELPER_H
int anchor_cam_id
What camera ID our pose is anchored in!! By default the first measurement is the anchor.
static void get_feature_jacobian_full(std::shared_ptr< State > state, UpdaterHelperFeature &feature, Eigen::MatrixXd &H_f, Eigen::MatrixXd &H_x, Eigen::VectorXd &res, std::vector< std::shared_ptr< ov_type::Type >> &x_order)
Will construct the "stacked" Jacobians for a single feature from all its measurements.
Eigen::Vector3d p_FinA
Triangulated position of this feature, in the anchor frame.
static void get_feature_jacobian_representation(std::shared_ptr< State > state, UpdaterHelperFeature &feature, Eigen::MatrixXd &H_f, std::vector< Eigen::MatrixXd > &H_x, std::vector< std::shared_ptr< ov_type::Type >> &x_order)
This gets the feature and state Jacobian in respect to the feature representation.
std::unordered_map< size_t, std::vector< Eigen::VectorXf > > uvs
UV coordinates that this feature has been seen from (mapped by camera ID)
size_t featid
Unique ID of this feature.
Extended Kalman Filter estimator.
Feature object that our UpdaterHelper leverages, has all measurements and means.
std::unordered_map< size_t, std::vector< Eigen::VectorXf > > uvs_norm
ov_type::LandmarkRepresentation::Representation feat_representation
What representation our feature is in.
static void measurement_compress_inplace(Eigen::MatrixXd &H_x, Eigen::VectorXd &res)
This will perform measurement compression.
Eigen::Vector3d p_FinG
Triangulated position of this feature, in the global frame.
Eigen::Vector3d p_FinA_fej
Triangulated position of this feature, in the anchor frame first estimate.
Class that has helper functions for our updaters.
double anchor_clone_timestamp
Timestamp of anchor clone.
Eigen::Vector3d p_FinG_fej
Triangulated position of this feature, in the global frame first estimate.
static void nullspace_project_inplace(Eigen::MatrixXd &H_f, Eigen::MatrixXd &H_x, Eigen::VectorXd &res)
This will project the left nullspace of H_f onto the linear system.
std::unordered_map< size_t, std::vector< double > > timestamps
Timestamps of each UV measurement (mapped by camera ID)
ov_msckf
Author(s): Patrick Geneva
, Kevin Eckenhoff , Guoquan Huang
autogenerated on Mon Dec 16 2024 03:06:54