Autoware.Auto
|
|
A Kalman filter implementation. More...
#include <kalman_filter.hpp>
Public Types | |
using | State = typename MotionModelT::State |
using | StateMatrix = typename State::Matrix |
using | MotionModel = MotionModelT |
using | NoiseModel = NoiseModelT |
Public Member Functions | |
KalmanFilter (MotionModelT motion_model, NoiseModelT noise_model, const State &initial_state, const StateMatrix &initial_covariance) | |
Constructs a new instance of a Kalman filter. More... | |
State | crtp_predict (const std::chrono::nanoseconds &dt) |
Predict next state. More... | |
template<typename MeasurementT > | |
State | crtp_correct (const MeasurementT &measurement) |
Correct the predicted state given a measurement. More... | |
void | crtp_reset (const State &state, const StateMatrix &covariance) |
Reset the state of the filter to a given state and covariance. More... | |
auto & | crtp_state () |
Get current state. More... | |
const auto & | crtp_state () const |
Get current state. More... | |
auto & | crtp_covariance () |
Get current covariance. More... | |
const auto & | crtp_covariance () const |
Get current covariance. More... | |
![]() | |
auto | predict (const std::chrono::nanoseconds &dt) |
Predict the state by dt into the future. More... | |
auto | correct (const MeasurementT &measurement) |
Correct the state with a measurement. More... | |
void | reset (const StateT &state, const typename StateT::Matrix &covariance) |
Reset the internal state of the vector to the given state and covariance. More... | |
auto & | state () |
Return current state. More... | |
const auto & | state () const |
Return current state. More... | |
auto & | covariance () |
Return current covariance. More... | |
const auto & | covariance () const |
Return current covariance. More... | |
Additional Inherited Members | |
![]() | |
const KalmanFilter< MotionModelT, NoiseModelT > & | impl () const |
KalmanFilter< MotionModelT, NoiseModelT > & | impl () |
A Kalman filter implementation.
MotionModelT | Type of the motion model. |
NoiseModelT | Type of the noise model. |
using autoware::common::state_estimation::KalmanFilter< MotionModelT, NoiseModelT >::MotionModel = MotionModelT |
using autoware::common::state_estimation::KalmanFilter< MotionModelT, NoiseModelT >::NoiseModel = NoiseModelT |
using autoware::common::state_estimation::KalmanFilter< MotionModelT, NoiseModelT >::State = typename MotionModelT::State |
using autoware::common::state_estimation::KalmanFilter< MotionModelT, NoiseModelT >::StateMatrix = typename State::Matrix |
|
inlineexplicit |
Constructs a new instance of a Kalman filter.
[in] | motion_model | The motion model to be used to predict the movement. |
[in] | noise_model | The noise model that models the motion noise. |
[in] | initial_state | The initial state of the filter. |
[in] | initial_covariance | The initial state covariance. |
|
inline |
Correct the predicted state given a measurement.
[in] | measurement | Current measurement. |
MeasurementT | Measurement type. |
|
inline |
Get current covariance.
|
inline |
Get current covariance.
|
inline |
Predict next state.
[in] | dt | Time difference to the time at which prediction is needed. |
|
inline |
Reset the state of the filter to a given state and covariance.
[in] | state | The new state that overwrites one stored in the filter. |
[in] | covariance | The new covariance that overwrites one stored in the filter. |
|
inline |
Get current state.
|
inline |
Get current state.