#include <unscented_kalman_filter.h>
Public Types | |
using | StateCovarianceType = Eigen::Matrix< FloatType, N, N > |
using | StateType = Eigen::Matrix< FloatType, N, 1 > |
Public Member Functions | |
const GaussianDistribution< FloatType, N > & | GetBelief () const |
template<int K> | |
void | Observe (std::function< Eigen::Matrix< FloatType, K, 1 >(const StateType &)> h, const GaussianDistribution< FloatType, K > &delta) |
void | Predict (std::function< StateType(const StateType &)> g, const GaussianDistribution< FloatType, N > &epsilon) |
UnscentedKalmanFilter (const GaussianDistribution< FloatType, N > &initial_belief, std::function< StateType(const StateType &state, const StateType &delta)> add_delta=[](const StateType &state, const StateType &delta){return state+delta;}, std::function< StateType(const StateType &origin, const StateType &target)> compute_delta=[](const StateType &origin, const StateType &target){return target-origin;}) | |
Private Member Functions | |
StateType | ComputeMean (const std::vector< StateType > &states) |
StateType | ComputeWeightedError (const StateType &mean_estimate, const std::vector< StateType > &states) |
Private Attributes | |
const std::function< StateType(const StateType &state, const StateType &delta)> | add_delta_ |
GaussianDistribution< FloatType, N > | belief_ |
const std::function< StateType(const StateType &origin, const StateType &target)> | compute_delta_ |
Static Private Attributes | |
static constexpr FloatType | kAlpha = 1e-3 |
static constexpr FloatType | kBeta = 2. |
static constexpr FloatType | kCovWeight0 |
static constexpr FloatType | kCovWeightI = kMeanWeightI |
static constexpr FloatType | kKappa = 0. |
static constexpr FloatType | kLambda = sqr(kAlpha) * (N + kKappa) - N |
static constexpr FloatType | kMeanWeight0 = kLambda / (N + kLambda) |
static constexpr FloatType | kMeanWeightI = 1. / (2. * (N + kLambda)) |
Definition at line 83 of file unscented_kalman_filter.h.
using cartographer::kalman_filter::UnscentedKalmanFilter< FloatType, N >::StateCovarianceType = Eigen::Matrix<FloatType, N, N> |
Definition at line 86 of file unscented_kalman_filter.h.
using cartographer::kalman_filter::UnscentedKalmanFilter< FloatType, N >::StateType = Eigen::Matrix<FloatType, N, 1> |
Definition at line 85 of file unscented_kalman_filter.h.
|
inlineexplicit |
Definition at line 88 of file unscented_kalman_filter.h.
|
inlineprivate |
Definition at line 225 of file unscented_kalman_filter.h.
|
inlineprivate |
Definition at line 213 of file unscented_kalman_filter.h.
|
inline |
Definition at line 208 of file unscented_kalman_filter.h.
|
inline |
Definition at line 144 of file unscented_kalman_filter.h.
|
inline |
Definition at line 105 of file unscented_kalman_filter.h.
|
private |
Definition at line 265 of file unscented_kalman_filter.h.
|
private |
Definition at line 263 of file unscented_kalman_filter.h.
|
private |
Definition at line 268 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 253 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 255 of file unscented_kalman_filter.h.
|
staticprivate |
|
staticprivate |
Definition at line 261 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 254 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 256 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 257 of file unscented_kalman_filter.h.
|
staticprivate |
Definition at line 260 of file unscented_kalman_filter.h.