15 #ifndef HELPER_FUNCTIONS__MAHALANOBIS_DISTANCE_HPP_ 16 #define HELPER_FUNCTIONS__MAHALANOBIS_DISTANCE_HPP_ 18 #include <Eigen/Cholesky> 24 namespace helper_functions
33 template<
typename T, std::
int32_t kNumOfStates>
35 const Eigen::Matrix<T, kNumOfStates, 1> &
sample,
36 const Eigen::Matrix<T, kNumOfStates, 1> & mean,
37 const Eigen::Matrix<T, kNumOfStates, kNumOfStates> & covariance_factor
48 const auto diff = sample - mean;
49 const auto x = covariance_factor.ldlt().solve(diff);
50 return x.transpose() *
x;
60 template<
typename T, std::
int32_t kNumOfStates>
62 const Eigen::Matrix<T, kNumOfStates, 1> &
sample,
63 const Eigen::Matrix<T, kNumOfStates, 1> & mean,
64 const Eigen::Matrix<T, kNumOfStates, kNumOfStates> & covariance_factor
73 #endif // HELPER_FUNCTIONS__MAHALANOBIS_DISTANCE_HPP_ float float32_t
Definition: types.hpp:36
types::float32_t calculate_mahalanobis_distance(const Eigen::Matrix< T, kNumOfStates, 1 > &sample, const Eigen::Matrix< T, kNumOfStates, 1 > &mean, const Eigen::Matrix< T, kNumOfStates, kNumOfStates > &covariance_factor)
Calculate mahalanobis distance.
Definition: mahalanobis_distance.hpp:61
DifferentialState x
Definition: kinematic_bicycle.snippet.hpp:28
void sample(const Trajectory &in, Trajectory &out, std::chrono::nanoseconds period, SlerpF slerp_fn)
Sample a trajectory using interpolation; does not extrapolate.
Definition: motion_common.hpp:194
types::float32_t calculate_squared_mahalanobis_distance(const Eigen::Matrix< T, kNumOfStates, 1 > &sample, const Eigen::Matrix< T, kNumOfStates, 1 > &mean, const Eigen::Matrix< T, kNumOfStates, kNumOfStates > &covariance_factor)
Calculate square of mahalanobis distance.
Definition: mahalanobis_distance.hpp:34
This file defines the lanelet2_map_provider_node class.
Definition: quick_sort.hpp:24