Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
ObservationModel Class Reference

Observation Model class compiled of functions for observation model. More...

#include <observation_models.hpp>

Collaboration diagram for ObservationModel:
Collaboration graph

Public Member Functions

 ObservationModel (const Eigen::MatrixXf &observation_noise_covariance_matrix)
 Construct a new Observation Model object.
 
Eigen::Vector2f observation_model (const Eigen::VectorXf &expected_state, const unsigned int landmark_index) const
 Calculate expected observation from the state vector.
 
Eigen::VectorXf observation_model_n_landmarks (const Eigen::VectorXf &current_state, const std::vector< int > &matched_ids) const
 
Eigen::VectorXf format_observation (const std::vector< Eigen::Vector2f > &observations) const
 
Eigen::MatrixXf get_jacobian_of_observation_model (const Eigen::VectorXf &current_state, const std::vector< int > &matched_ids) const
 
Eigen::MatrixXf get_full_observation_noise_covariance_matrix (const int observation_size) const
 
Eigen::Vector2f inverse_observation_model (const Eigen::VectorXf &expected_state, const ObservationData &observation_data) const
 Calculate landmark position from observation.
 
Eigen::MatrixXf get_gv (const Eigen::VectorXf &expected_state, const ObservationData &observation_data) const
 
Eigen::MatrixXf get_gz (const Eigen::VectorXf &expected_state, const ObservationData &observation_data) const
 
Eigen::MatrixXf get_state_to_observation_matrix (const Eigen::VectorXf &expected_state, const unsigned int landmark_index, const unsigned int state_size) const
 Get the state to observation matrix of the observation model (H in LaTeX documentation)
 
Eigen::MatrixXf get_observation_noise_covariance_matrix () const
 Get the observation noise covariance matrix (C or H)
 

Static Public Member Functions

static Eigen::MatrixXf create_observation_noise_covariance_matrix (float noise_value)
 Create a Q matrix from a given noise value.
 

Private Attributes

Eigen::MatrixXf _observation_noise_covariance_matrix_
 H or C.
 

Detailed Description

Observation Model class compiled of functions for observation model.

Definition at line 29 of file observation_models.hpp.

Constructor & Destructor Documentation

◆ ObservationModel()

ObservationModel::ObservationModel ( const Eigen::MatrixXf &  observation_noise_covariance_matrix)
explicit

Construct a new Observation Model object.

Parameters
observation_noise_covariance_matrixcovariance matrix of the observation noise (Q)

Definition at line 5 of file observation_models.cpp.

Member Function Documentation

◆ create_observation_noise_covariance_matrix()

Eigen::MatrixXf ObservationModel::create_observation_noise_covariance_matrix ( float  noise_value)
static

Create a Q matrix from a given noise value.

Returns
Eigen::Matrix2f

Definition at line 215 of file observation_models.cpp.

Here is the caller graph for this function:

◆ format_observation()

Eigen::VectorXf ObservationModel::format_observation ( const std::vector< Eigen::Vector2f > &  observations) const

Definition at line 79 of file observation_models.cpp.

◆ get_full_observation_noise_covariance_matrix()

Eigen::MatrixXf ObservationModel::get_full_observation_noise_covariance_matrix ( const int  observation_size) const

Definition at line 209 of file observation_models.cpp.

Here is the call graph for this function:

◆ get_gv()

Eigen::MatrixXf ObservationModel::get_gv ( const Eigen::VectorXf &  expected_state,
const ObservationData observation_data 
) const

Definition at line 32 of file observation_models.cpp.

◆ get_gz()

Eigen::MatrixXf ObservationModel::get_gz ( const Eigen::VectorXf &  expected_state,
const ObservationData observation_data 
) const

Definition at line 46 of file observation_models.cpp.

◆ get_jacobian_of_observation_model()

Eigen::MatrixXf ObservationModel::get_jacobian_of_observation_model ( const Eigen::VectorXf &  current_state,
const std::vector< int > &  matched_ids 
) const

Definition at line 117 of file observation_models.cpp.

◆ get_observation_noise_covariance_matrix()

Eigen::MatrixXf ObservationModel::get_observation_noise_covariance_matrix ( ) const

Get the observation noise covariance matrix (C or H)

Returns
Eigen::MatrixXf

Definition at line 205 of file observation_models.cpp.

Here is the caller graph for this function:

◆ get_state_to_observation_matrix()

Eigen::MatrixXf ObservationModel::get_state_to_observation_matrix ( const Eigen::VectorXf &  expected_state,
const unsigned int  landmark_index,
const unsigned int  state_size 
) const

Get the state to observation matrix of the observation model (H in LaTeX documentation)

Parameters
landmark_indexindex of the x variable of the landmark in the state vector
state_sizesize of the state vector
Returns
Eigen::MatrixXf

Definition at line 148 of file observation_models.cpp.

Here is the caller graph for this function:

◆ inverse_observation_model()

Eigen::Vector2f ObservationModel::inverse_observation_model ( const Eigen::VectorXf &  expected_state,
const ObservationData observation_data 
) const

Calculate landmark position from observation.

Translates from the car's frame to the map frame.

Parameters
expected_state
observation_data
Returns
Eigen::Vector2f

Definition at line 8 of file observation_models.cpp.

Here is the caller graph for this function:

◆ observation_model()

Eigen::Vector2f ObservationModel::observation_model ( const Eigen::VectorXf &  expected_state,
const unsigned int  landmark_index 
) const

Calculate expected observation from the state vector.

Correponds to h in LaTeX documentation.

Parameters
expected_state
landmark_indexindex of the x variable of the landmark in the state vector
Returns
Eigen::Vector2f

Definition at line 56 of file observation_models.cpp.

Here is the caller graph for this function:

◆ observation_model_n_landmarks()

Eigen::VectorXf ObservationModel::observation_model_n_landmarks ( const Eigen::VectorXf &  current_state,
const std::vector< int > &  matched_ids 
) const

Definition at line 89 of file observation_models.cpp.

Member Data Documentation

◆ _observation_noise_covariance_matrix_

Eigen::MatrixXf ObservationModel::_observation_noise_covariance_matrix_
private

H or C.

Definition at line 30 of file observation_models.hpp.


The documentation for this class was generated from the following files: