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.
|
|
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 |
| |