BYU Invariant Extended Kalman Filter Library
Project description
Invariant Extended Kalman Filter
InEKF is a C++ library with python bindings that implements the Invariant Extend Kalman Filter (InEKF) in a modular to enable easy application to any system.
Features
- Support for Right & Left filters.
- Base classes provide easy extension via inheritance.
- Coded using static Eigen types for efficient structure.
- Fully featured python interface for use in classroom, prototyping, etc.
- C++14 and above supported.
- Fullly templated Lie Groups SO2, SO3, SE2, SE3 to enable additional tracking of Euclidean states and multiple extra columns in SE2/SE3.
- Dynamic Lie Groups types to add columns to SE2/SE3 on the fly (for InEKF SLAM and others).
- Various examples to get started.
Documentation
To get started, please read the docs. We have attempted to thoroughly document everything, and it should be fairly straightforward to get up and running. They have information on all of the following (and more!)
- Installation
- Getting Started
- Making Custom Models
- Full API Documentation
Structure
InEKF is split into a couple different libraries
Core
This library includes all the Lie Groups and InEKF
classes along with the base classes MeasureModel
and ProcessModel
.
Inertial
This is the implementation of the Lie Group SE_2(3)
along with an augmented bias state. Along with it are various process/measurement models defined on this group including as of now DVLSensor
, DepthSensor
, and InertialProcess
.
SE2Models
Exactly what it sounds like, is used for SLAM in SE2. Includes dynamic models that adjust as more landmarks are seen, including a GPSSensor
and LandmarkSensor
.
Contributing
This is an open-source project and contributions are more then welcome. If any there are any features or bugs you'd like to report, please add then to the issue tracker. If you would like to contribute code, please feel free to fork, modify, and create a pull request.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file inekf-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: inekf-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09358071fb9bb6754bf2f2aaad648a4e74384fdc3112ce26c89cfd7fa33202a9 |
|
MD5 | 090be22e86d6d07b4e937cf54b4519e3 |
|
BLAKE2b-256 | b0685c174cd4c23b0640698a8af7bf86d034cc79553dab405de9c7b6aea43a36 |
File details
Details for the file inekf-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: inekf-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9216ae1095f4bb6ec3ef6cfd715f55525296bb80dcb4ba0888dd644c0ff50603 |
|
MD5 | 7ef1e809c3d8f599ae95f105d212184e |
|
BLAKE2b-256 | 237ac37b8c465e8d86a3c225c514bf231d7cc8b77ede8978780ea239b16d6109 |
File details
Details for the file inekf-0.1.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: inekf-0.1.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1e237ea691a302331a1d9e9452c86c685a796d7d0347f4bd8bde5ba6c2a2f2e |
|
MD5 | b607bb81e123b397b26a77dfeda5101e |
|
BLAKE2b-256 | ebf55494421498aebc1aa23790e9a6192f2353cd77a58511af60d8c874cc8be3 |
File details
Details for the file inekf-0.1.0-cp37-cp37m-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: inekf-0.1.0-cp37-cp37m-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.7m, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | be43d8f042d347a117b58b119385f48fdf79100e509f1e11b3e213586a826732 |
|
MD5 | d7081f9e3145f9be9463956a0fe05724 |
|
BLAKE2b-256 | 4451cfe4f7450308d278e34418d2a200b8e441d0c3f64d9b1eb8321d321b7a58 |