Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
slam_base_observation_model.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <Eigen/Dense>
4#include <vector>
5
8public:
10 virtual ~SLAMObservationModel() = default;
11
21 virtual Eigen::VectorXd observation_model(const Eigen::VectorXd& state,
22 const std::vector<int> matched_landmarks) const;
23
34 virtual Eigen::VectorXd inverse_observation_model(const Eigen::VectorXd& state,
35 const Eigen::VectorXd& observations) const;
36
46 virtual Eigen::MatrixXd observation_model_jacobian(
47 const Eigen::VectorXd& state, const std::vector<int>& matched_landmarks) const;
48
58 virtual Eigen::MatrixXd inverse_observation_model_jacobian_pose(
59 const Eigen::VectorXd& state, const Eigen::VectorXd& new_landmarks) const;
60
72 const Eigen::VectorXd& state, const Eigen::VectorXd& new_landmarks) const;
73};
virtual Eigen::MatrixXd inverse_observation_model_jacobian_landmarks(const Eigen::VectorXd &state, const Eigen::VectorXd &new_landmarks) const
get the Gz matrix used in the state augmentation function of the EKF, calculated as the jacobian of t...
virtual ~SLAMObservationModel()=default
virtual Eigen::MatrixXd observation_model_jacobian(const Eigen::VectorXd &state, const std::vector< int > &matched_landmarks) const
jacobian of the observation model
virtual Eigen::VectorXd inverse_observation_model(const Eigen::VectorXd &state, const Eigen::VectorXd &observations) const
transforms the landmarks' coordinates from the car's frame to the global frame
virtual Eigen::VectorXd observation_model(const Eigen::VectorXd &state, const std::vector< int > matched_landmarks) const
transform landmarks' positions from global frame to the car's frame
virtual Eigen::MatrixXd inverse_observation_model_jacobian_pose(const Eigen::VectorXd &state, const Eigen::VectorXd &new_landmarks) const
get the Gv matrix used in the state augmentation function, calculated as the jacobian of the inverse ...
SLAMObservationModel()=default