Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/auralius/kalman-cpp
Kalman Filter, Extended Kalman Filter, and Unscented Kalman Filter implementation in C++
https://github.com/auralius/kalman-cpp
armadillo extended filter kalman second-order unscented-kalman-filter
Last synced: 6 days ago
JSON representation
Kalman Filter, Extended Kalman Filter, and Unscented Kalman Filter implementation in C++
- Host: GitHub
- URL: https://github.com/auralius/kalman-cpp
- Owner: auralius
- Created: 2017-01-14T20:48:57.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2023-02-15T03:47:06.000Z (over 1 year ago)
- Last Synced: 2024-08-01T21:42:01.932Z (3 months ago)
- Topics: armadillo, extended, filter, kalman, second-order, unscented-kalman-filter
- Language: C++
- Homepage: https://auralius.github.io/kalman-cpp/
- Size: 27 MB
- Stars: 30
- Watchers: 4
- Forks: 7
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-made-by-indonesian - kalman-cpp - `Kalman Filter, Extended Kalman Filter, and Unscented Kalman Filter implementation in C++` *by [Auralius Manurung](https://github.com/auralius)* (K)
- made-in-indonesia - kalman-cpp - `Kalman Filter, Extended Kalman Filter, and Unscented Kalman Filter implementation in C++` *by [Auralius Manurung](https://github.com/auralius)* (K)
README
# kalman-cpp
[![C/C++ CI](https://github.com/auralius/kalman-cpp/actions/workflows/c-cpp.yml/badge.svg)](https://github.com/auralius/kalman-cpp/actions/workflows/c-cpp.yml)
## Kalman filter and extended Kalman filter implementation in C++
Implemented filters so far:
* Kalman filter
* Extended Kalman filter
* Second-order extended Kalman filter
* Unscented Kalman filterPlease use cmake to build all the codes.
The steps to compile are:
```
mkdir build
cd build
cmake ..
make
```## Windows System
In a Windows system, a Visual Studio solution file (VS 2019) is provided.
## Dependencies
This library utilizes [Armadillo](http://arma.sourceforge.net).
In Windows system, the armadillo library is provided in "windows-libs" folder.
**The contents of windows-libs.zip need to be first extracted.**
Armadillo itself is very easy to use.
More information on the Armadillo can be found [here](http://arma.sourceforge.net/docs.html).## blas and lapack
By default, now kalman-cpp uses blas and lapack. For Windows machine, working with blas and lapack is a messy stuff. Thus, we will use the precompiled blas and lapack from: https://www.fi.muni.cz/~xsvobod2/misc/lapack/.The precompiled blas and lapack libraries are included in **windows-libs.zip**. There are four LIB files. Additionally, in "bin" folder, there are four corresponding DLL files as well. There are four files because two files are for the 32-bit platform, and the other two files are for the 64-bit platform.
**The compiled binary must always be located in the same folder as these DLL files.**
## MATLAB m-files for plotting
MATLAB m-files for each example are provided in 'm-files' folder. Octave can also be used instead of MATLAB.
## Documentation
https://auralius.github.io/kalman-cpp/