|
void | addState (const StateKeyType &stateKey) |
| Add a new state to the filter.
|
|
void | addStates (const std::vector< StateKeyType > &stateKeys) |
| Add new states to the filter.
|
|
void | calcPhiAndQWithVanLoanMethod (Scalar dt) |
| Numerical Method to calculate the State transition matrix ๐ฝ and System/Process noise covariance matrix ๐
|
|
void | calcTransitionMatrix_Phi_exp (Scalar tau) |
| Calculates the state transition matrix ๐ฝ using the exponential matrix.
|
|
void | calcTransitionMatrix_Phi_Taylor (Scalar tau, size_t order) |
| Calculates the state transition matrix ๐ฝ limited to specified order in ๐
๐โ
|
|
auto | checkForOutliersNIS (const std::string &nameId) |
| Performs the Normalized Innovation Squared (NIS) test on the measurement innovation ๐น๐ณ
|
|
void | correct () |
| Do a Measurement Update with a Measurement ๐ณ
|
|
void | correctWithMeasurementInnovation () |
| Do a Measurement Update with a Measurement Innovation ๐น๐ณ
|
|
void | discardPreUpdate () |
| Discards the saved xฬ, ๐, ๐ณ, ๐, ๐ a-priori (pre-update)
|
|
bool | hasAnyStates (const std::vector< StateKeyType > &stateKeys) const |
| Checks if the filter has any of the provided keys.
|
|
bool | hasState (const StateKeyType &stateKey) const |
| Checks if the filter has the key.
|
|
bool | hasStates (const std::vector< StateKeyType > &stateKeys) const |
| Checks if the filter has the keys.
|
|
bool | isNISenabled () const |
| Whether the NIS check should be performed.
|
|
bool | isPreUpdateSaved () const |
| Whether a pre-update was saved.
|
|
| KeyedKalmanFilter ()=default |
| Default Constructor.
|
|
| KeyedKalmanFilter (const std::vector< StateKeyType > &stateKeys, const std::vector< MeasKeyType > &measKeys) |
| Constructor.
|
|
void | predict () |
| Do a Time Update.
|
|
void | removeMeasurement (const MeasKeyType &measKey) |
| Remove a measurement from the filter.
|
|
void | removeMeasurements (const std::vector< MeasKeyType > &measKeys) |
| Remove measurements from the filter.
|
|
void | removeState (const StateKeyType &stateKey) |
| Remove a state from the filter.
|
|
void | removeStates (const std::vector< StateKeyType > &stateKeys) |
| Remove states from the filter.
|
|
void | replaceState (const StateKeyType &oldKey, const StateKeyType &newKey) |
| Replace the old with the new key.
|
|
void | restorePreUpdate () |
| Restores the saved xฬ, ๐, ๐ณ, ๐, ๐ a-priori (pre-update)
|
|
const SavedPreUpdate & | savedPreUpdate () const |
| Accesses the saved pre-update matrices.
|
|
void | savePreUpdate () |
| Saves xฬ, ๐, ๐ณ, ๐, ๐ a-priori (pre-update)
|
|
void | setMeasurements (const std::vector< MeasKeyType > &measKeys) |
| Sets the measurement keys and initializes matrices z, H, R, S, K with Zero.
|
|
void | setZero () |
| Sets all Vectors and matrices to 0.
|
|
bool | showKalmanFilterGUI (const char *id, float width=0.0F) |
| Shows GUI elements for the Kalman Filter.
|
|
void | showKalmanFilterMatrixViews (const char *id, int nRows=-2) |
| Shows ImGui Tree nodes for all matrices.
|
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | F |
| ๐
System model matrix (n x n)
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | G |
| ๐ Noise input matrix (n x o)
|
|
KeyedMatrixX< Scalar, MeasKeyType, StateKeyType > | H |
| ๐ Measurement sensitivity matrix (m x n)
|
|
KeyedMatrixX< Scalar, StateKeyType, MeasKeyType > | K |
| ๐ Kalman gain matrix (n x m)
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | P |
| ๐ Error covariance matrix (n x n)
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | Phi |
| ๐ฝ State transition matrix (n x n)
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | Q |
| ๐ System/Process noise covariance matrix (n x n)
|
|
KeyedMatrixX< Scalar, MeasKeyType, MeasKeyType > | R |
| ๐ = ๐ธ{๐ฐโ๐ฐโแต} Measurement noise covariance matrix (m x m)
|
|
KeyedMatrixX< Scalar, MeasKeyType, MeasKeyType > | S |
| ๐ฆ Measurement prediction covariance matrix (m x m)
|
|
KeyedMatrixX< Scalar, StateKeyType, StateKeyType > | W |
| ๐ Noise scale matrix (o x o)
|
|
KeyedVectorX< Scalar, StateKeyType > | x |
| xฬ State vector (n x 1)
|
|
KeyedVectorX< Scalar, MeasKeyType > | z |
| ๐ณ Measurement vector (m x 1)
|
|
template<typename Scalar, typename StateKeyType, typename MeasKeyType>
class NAV::KeyedKalmanFilter< Scalar, StateKeyType, MeasKeyType >
Keyed Kalman Filter class.
- Template Parameters
-
Scalar | Numeric type, e.g. float, double, int or std::complex<float>. |
StateKeyType | Type of the key used for state lookup |
MeasKeyType | Type of the key used for measurement lookup |