libnxter
0.1
|
Kalman Filter implementation for multidimentional state vector. More...
Go to the source code of this file.
Data Structures | |
struct | KalmanFilter |
Kalman Filter class representing the kalman model and state updates. In practice, upto only 3 dimentional state vector is usable before hitting hardware limitation. More... | |
Functions | |
void | KalmanFilterInit (KalmanFilter &filter, Matrix &A, Matrix &B, Matrix &H, Matrix &Q, Matrix &R, Matrix &P0, Matrix &X0) |
Initializes the kalman filter with given paramters. matrix A is the state transition model, matrix B is the input transformation model, matrix H is the obervation transformation model, matrix Q is the state transition uncertainity covariance, matrix R is obervation uncertainity covariance, matrix P0 is the initial state (X0) error covariance (i.e. accuracy of the initially choose state) and matrix X0 is the initially decided state. | |
void | KalmanFilterInitUnity (KalmanFilter &filter, Matrix &Q, Matrix &R, Matrix &P0, Matrix &X0) |
Initializes the kalman filter in unity mode with given paramters. Unity mode runs the filter with the assumption A = B = H = 1. This skips many of the matrix operations and can make the filter run faster. It is better to use this mode in certain cases where state X, observation Z and control U are all in the same dimension. matrix Q is the state transition uncertainity covariance, matrix R is obervation uncertainity covariance, matrix P0 is the initial state (X0) error covariance (i.e. accuracy of the initially choose state) and matrix X0 is the initially choosen state. | |
void | KalmanFilterGetX (KalmanFilter &filter, Matrix &X) |
Gets the current estimated state in the filter and returns it in X. | |
void | KalmanFilterGetP (KalmanFilter &filter, Matrix &P) |
Gets the current error covariance of the current estimated state in the filter and returns it in P. Error covariance is defines the accuracy of the estimated state X. | |
void | KalmanFilterStep (KalmanFilter &filter, Matrix &U, Matrix &Z) |
Runs the filter step. matrix U is the current state control input and matrix Z is the current observation of the state. Control input U and obsevation Z will be transformed by matrix B and matrix H respectively before contributing to the final state transition. | |
Kalman Filter implementation for multidimentional state vector.
Definition in file KalmanFilter.nxc.