Kalman Filter Package

Implements Kalman Filter, Extended Kalman Filter, Dual Kalman Filter, and Square Root Kalman Filters
17.3K Downloads
Updated 24 Sep 2012

View License

This package implements the following Kalman filters:

1) Standard Kalman Filter
2) Extended Kalman Filter
3) Dual Kalman Filter
4) Square Root Kalman Filter

This package also contains instructive examples for each filter type demonstrating their practical application.

In all 4 cases, the KF functions accept as input noisy samples of a multi-dimensional system and produce the KF estimate of the true system state based on the time-varying process/noise covariances inherent in the noisy samples.

Exponentially-weighted (or unweighted) moving averages are used to estimate the time-varying system covariances from the noisy measurements.

The Standard Kalman Filter is the most basic KF implementation. It assumes a model that the noisy measurements contain the true system state plus white noise.

The Extended Kalman Filter is a generalization of the Standard Kalman Filter that allows the user to specify a nonlinear system model, which is then iteratively linearized during EKF execution.

The Dual Kalman filter simultaneously solves two Standard Kalman filter problems:

1) Fits an auto-regressive model to the data and applies a Kalman Filter to update the AR model

2) Applies the AR model at each iteration before performing the Standard KF update

Square Root Kalman Filters are a more robust and numerically stable method to perform Standard/Dual Kalman Filtering, especially when the covariance matrices of interest are ill-conditioned or nearly not positive definite. The Square Root Kalman Filtering idea is to propagate the process error covariance P in square root form P = U D U', where U and D are iteratively updated and P is not explicitly computed. Doing so will guarantee P is positive definite and thus increase the numerically stability of the KF.

Cite As

Brian Moore (2024). Kalman Filter Package (https://www.mathworks.com/matlabcentral/fileexchange/38302-kalman-filter-package), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Online Estimation in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0.0