OSSIA
Open Scenario System for Interactive Application
Loading...
Searching...
No Matches
ossia::kalman_point_filter< N > Struct Template Reference

N independent position-velocity Kalman filters: a tracked N-D point. More...

Detailed Description

template<std::size_t N>
struct ossia::kalman_point_filter< N >

N independent position-velocity Kalman filters: a tracked N-D point.

[pos, vel] state per axis (so 4 states in 2D, 6 in 3D), isotropic noise.

Public Member Functions

OSSIA_INLINE void initiate (const std::array< float, N > &p0, float var_p, float var_v) noexcept
 
OSSIA_INLINE void predict (float dt, float sigma_a) noexcept
 Propagate dt seconds forward with acceleration noise sigma_a.
 
OSSIA_INLINE void update (const std::array< float, N > &z, float r) noexcept
 Fold in a position measurement with isotropic variance r.
 
OSSIA_INLINE float gating_distance2 (const std::array< float, N > &z, float r) const noexcept
 Squared Mahalanobis distance, chi-square with N DOF.
 
OSSIA_INLINE std::array< float, N > position () const noexcept
 
OSSIA_INLINE std::array< float, N > velocity () const noexcept
 
OSSIA_INLINE void set_velocity (const std::array< float, N > &v) noexcept
 

Public Attributes

std::array< kalman_pv_filter, N > axes {}