16 #ifndef EKF__UPDATE__MSCKF_UPDATER_HPP_
17 #define EKF__UPDATE__MSCKF_UPDATER_HPP_
19 #include <eigen3/Eigen/Eigen>
25 #include "ekf/types.hpp"
26 #include "ekf/update/updater.hpp"
27 #include "infrastructure/data_logger.hpp"
47 bool is_cam_extrinsic,
48 const std::string & log_file_directory,
51 std::shared_ptr<DebugLogger> logger
66 Eigen::Vector3d & pos_f_in_l);
78 FeatureTracks feature_tracks,
88 const Eigen::Vector2d & uv_norm,
90 Eigen::MatrixXd & H_d);
100 bool m_is_cam_extrinsic;
103 double m_min_feat_dist{1.0};
104 double m_max_feat_dist{100.0};
105 bool m_is_first_estimate{
true};
106 bool m_use_true_triangulation{
true};
108 Eigen::Vector3d m_pos_c_in_b{0.0, 0.0, 0.0};
109 Eigen::Quaterniond m_ang_c_to_b{1.0, 0.0, 0.0, 0.0};
DataLogger class.
Definition: data_logger.hpp:26
Calibration EKF class.
Definition: ekf.hpp:39
Camera intrinsics data structure.
Definition: types.hpp:49
EKF Updater Class for MSCKF Camera Measurements.
Definition: msckf_updater.hpp:34
MsckfUpdater(int cam_id, bool is_cam_extrinsic, const std::string &log_file_directory, double data_log_rate, double min_feat_dist, std::shared_ptr< DebugLogger > logger)
MSCKF EKF Updater constructor.
Definition: msckf_updater.cpp:39
bool TriangulateFeature(double local_time, EKF &ekf, FeatureTrack &feature_track, Eigen::Vector3d &pos_f_in_l)
Triangulate feature seen from multiple camera frames.
Definition: msckf_updater.cpp:71
void distortion_jacobian(const Eigen::Vector2d &uv_norm, const Intrinsics &intrinsics, Eigen::MatrixXd &H_d)
Computes the derivative of raw distorted to normalized coordinate.
Definition: msckf_updater.cpp:168
void UpdateEKF(EKF &ekf, double time, FeatureTracks feature_tracks, double px_error)
EKF updater function.
Definition: msckf_updater.cpp:214
void projection_jacobian(const Eigen::Vector3d &position, Eigen::MatrixXd &jacobian)
Function to calculate jacobian for camera projection function.
Definition: msckf_updater.cpp:157
Base class for EKF updater classes.
Definition: updater.hpp:29
FeatureTrack structure.
Definition: types.hpp:275