A Versatile Quaternion-based Filter for IMU Orientation Estimation
Project description
This is the implementation of the IMU orientation estimation filter described in the following publication:
D. Laidig and T. Seel. “VQF: Highly Accurate IMU Orientation Estimation with Bias Estimation and Magnetic Disturbance Rejection.” Information Fusion 2023, 91, 187–204. doi:10.1016/j.inffus.2022.10.014. [Accepted manuscript available at arXiv:2203.17024.]
The filter can perform simultaneous 6D (magnetometer-free) and 9D (gyr+acc+mag) sensor fusion and can also be used without magnetometer data. Different sampling rates for gyroscopes, accelerometers, and magnetometers are supported as well. While in most cases, the defaults will be reasonable, the algorithm can be influenced via two tuning parameters.
Documentation
Detailed documentation can be found at https://vqf.readthedocs.io/.
Installation
The VQF Python package can easily be installed from PyPI via pip, e.g.:
pip install vqf
For more information, please refer to the documentation.
License
VQF is licensed under the terms of the MIT license.
Contact
Daniel Laidig <laidig at control.tu-berlin.de>
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 Distribution
Built Distributions
Hashes for vqf-2.0.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29244c8b800de5ee8c3c95a54f86d33720a67c652f75737aa77782b19b80aab0 |
|
MD5 | dca1416fac466670274f407b070196d0 |
|
BLAKE2b-256 | 6019624c9e6d1120df499c09fafaeb19d02d19078faa32ff406fbe65da69c81e |
Hashes for vqf-2.0.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b7a8e757d95dbb2406ddb51f3f506d74a1199e563bb0d5a95be40ee1b85ad64 |
|
MD5 | 178e7d90ef2058fb4e2ea4894e7ab52b |
|
BLAKE2b-256 | 03ebc8d2a33658725ef65ba672f190fdc121b20efb7b58beb8f68be88e0bc9f6 |
Hashes for vqf-2.0.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07d6e90160af4ffce0cc717a34a5bc0a19606dd6d7a4e4293545a17fc97d27c9 |
|
MD5 | 27f33b59ef951ee66a689d4dfb943371 |
|
BLAKE2b-256 | 3b003990387227358b35e4c30cebe43b89c8e6de3fe9b765a260c0cb0877d0dc |
Hashes for vqf-2.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8358cb51d1577d076e2819c3b97b68fb2f25169f31a21b7d7ccf9549fac09ad3 |
|
MD5 | 7b2cf530253b5c3c1f1afcbbacb55d3d |
|
BLAKE2b-256 | ccd843c45afd566c6fdf7f1f09ed316f91ccc6084bb70061ab8fe67a6a882ade |
Hashes for vqf-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b266d9c1850544a96853b878a22f4a28a73f5717e6041e28e26edbcd8b46896 |
|
MD5 | 8f944eab1dacee27164abee4bf00adab |
|
BLAKE2b-256 | b133ebb51d31f080400fe73dd60b7d639d4b9437a109fec4dab70beee830c6bd |
Hashes for vqf-2.0.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c076fc1dd705158cd63a080d6f85aaf029348a7f6ec82bfe1ad65fea12fdf99 |
|
MD5 | 357b75e6d89004eab217c3e692ff6325 |
|
BLAKE2b-256 | 81cb2527f174e1a7bf5f583f66a7e7582891f81f72249d0d3748caef76a67e0a |
Hashes for vqf-2.0.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b81b034f81e6044a12ce60da33374d654f8023ba590d471ddfcf5601fed1e53c |
|
MD5 | a9d2a4cefd76c8ead274fd24b7995c1d |
|
BLAKE2b-256 | e0aa6cda53ab1fa5c2054571a47f840d92bbfad74804ae25f49102eac78becbc |
Hashes for vqf-2.0.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e7d111c9385e804edb232d4437432aceb0b0c32230d5ff4f777a3207a92044c |
|
MD5 | 05c797c1b37bb82d4bc3a06fe2abcb7c |
|
BLAKE2b-256 | 619280207e6324d1b160801d9f98efcd3af82609fb80222d84d0cff2c9cb957a |
Hashes for vqf-2.0.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95eceeded64b350d93a384ab1d30defabd8290b3e8b10bf5c39a79cea77ec592 |
|
MD5 | 5eea0d05e64472de43732a18bb59cea8 |
|
BLAKE2b-256 | 16a1660321c85b313a67fa34acb06fef1bfc0f6882e31ee2f65250bbbaecc16e |
Hashes for vqf-2.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c4feca143cd3157b6d3cc9fff80cad37b49f8d55c42157bd7ce4f830309ce4e |
|
MD5 | 308029ee1d13c81ed1e1858c96fbfc1d |
|
BLAKE2b-256 | bba2edcd0992dd8a69edeb91ec234b65f6aacde75ebe6e00212c292291696743 |
Hashes for vqf-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08f34672d6fd565de331852bc05ca1c5b8b25ae41f7d6a4f893859b35ea4a5d7 |
|
MD5 | e818c95d2ab4dc0a684c977c49df2335 |
|
BLAKE2b-256 | 0bb2f40e25907259b9e35586465fe7e499ffc6164f64fc8fc48039416c6bbcd9 |
Hashes for vqf-2.0.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7b613c5193f03af756ef217120c0e1a3a4094297eeecbbd19ffeaffffb44b84 |
|
MD5 | 62905b7dcfc49ee5d142c2c7b602c955 |
|
BLAKE2b-256 | 9c9a23946d4b1ba6d9bf0252bffa66077ca81f89a4aff9908dacbd31c7e98318 |
Hashes for vqf-2.0.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59045049c0a5cb7c179dc0b68b30705fe247e29509a604e3392e0621c8d100d1 |
|
MD5 | 3d8e720998d905d4fea4dd1c109ab5bc |
|
BLAKE2b-256 | e056b48b0438f55662474f5c58e79a3ebd6372ac51113ffa4cdb2be2d4d1885b |
Hashes for vqf-2.0.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35a08c1570207a8f32ecbf6b3290571e06c1d9c98502063087f42fa450370da9 |
|
MD5 | fc70cf809de29e9a02303e45af3fc295 |
|
BLAKE2b-256 | bad24b61c4c198201ae7d9859a53395219d6f7657cfedad6a4ce8f661009c397 |
Hashes for vqf-2.0.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b655a9b38c117704ea1edb1f116fd0adae00e3ca77f578ec021651e7e6553ea5 |
|
MD5 | 856723940dd027f9f2069a4ce351f96f |
|
BLAKE2b-256 | 93b807c02af445ff8297aa1d8d4f10b00b8bd8d670a60e084f484a8f17383caf |
Hashes for vqf-2.0.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 89fad0ffd1f6a917d48f7eabcd441ffe67baf116d4f1813dde6cce64da9e4dc2 |
|
MD5 | 04615b9f078429c5fab17417a5707acd |
|
BLAKE2b-256 | 1dfeb86e6ccc0ef5d7b9a4e62377bbcf1e05f1c861650ded467510f6582fd24d |
Hashes for vqf-2.0.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f872cb391d9624f66f099b3714d3711afe937c1fb05fdd02909b1c3d8570631 |
|
MD5 | 0f82c6ef05859513aecbaf42a57ee491 |
|
BLAKE2b-256 | 73504b468b4e65176b41f8ca44e13834a6c1e909caf6199f58e643c027c19580 |
Hashes for vqf-2.0.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e479a39e034a28e93f72f99638b21757ce636333b9d372633ad8b701af3c408 |
|
MD5 | e7e04279c9c33ee31df891dbcd147995 |
|
BLAKE2b-256 | df2d9a4a73e0a7e72421971d082e2380ca4a92ee257bbc3877795cb3cdc7e0a6 |
Hashes for vqf-2.0.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d6170b7902e1725d9b2bd3d98be6a10154c798c3feccbfbb973f93fcc842cfc |
|
MD5 | 4a95acd9522e527bd231e50e3a506b2f |
|
BLAKE2b-256 | e5937c03a7529e41aff01d5a6d3787321594fce8015854a2a5f6b1d340f5f72c |
Hashes for vqf-2.0.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9af975a11672b9fd756bfbcf75509b66b32d80ac60518ff9ea25ab4a93451750 |
|
MD5 | 7bab4ca9568be9f949c764bae76d4ecc |
|
BLAKE2b-256 | da89605085c91974ade9c8d050026bd706169f49f3ce3a904c530df3efa17987 |
Hashes for vqf-2.0.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69408a07caf4e9a0adde8118d38732962cdd797f8c1192880c3b73e592c4c12a |
|
MD5 | b66dda65659cb19a2863ae756f2749ec |
|
BLAKE2b-256 | 724baaad406ff25979ee6dcda32e46ddee706a798154d32799403c5ac867a8cc |
Hashes for vqf-2.0.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81f1e8fa9bdcde0c7ec256482f41c3b10fb58309dfe6bf42403dfbbb05c59af7 |
|
MD5 | 0c27d746752ac75283d774a8714dc4f8 |
|
BLAKE2b-256 | 2ef3c6e6a9e25f0aef26d3fd12455f310b5b6ac729e1682164e492bb2b276809 |
Hashes for vqf-2.0.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ebc01b60264c45bd7cd119d00a807a5e74bc763306de3028d8310238b6922c07 |
|
MD5 | 2a6bb7705971330c6b087ed9969440d6 |
|
BLAKE2b-256 | cee90fdfbd0eb0548205fcef45cedfa01fbbe1fcc0503009bddbf2fa29f09cd6 |
Hashes for vqf-2.0.0-cp38-cp38-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d35f7faf2a476e97b07e34f3bd3f17a53c9cf48aefdfd38a2b7807e14dad7e1 |
|
MD5 | 70a8ac331e3dc41439cfcb8a001552e0 |
|
BLAKE2b-256 | 6db1141e55055d74ff24b951f57312116d5d169c6d166b31542d4d77d46164eb |
Hashes for vqf-2.0.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4715597f611a97b8d3b466f8e0a6ed7ff01288e5309ff1c505c9d0843099cc3c |
|
MD5 | 247a18acf2fbdbaa56c8e2f8c1c3bf0c |
|
BLAKE2b-256 | a850d0f057b0f60224f93bf420595211c9c57dfbca87a527197b7dc982cd58b1 |
Hashes for vqf-2.0.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | db5eaee6b6a0b8f382fd54fd49b85673e9a16a83bd50738dedecc249ab6c91ff |
|
MD5 | d4a1886b3463612d5b3bbfd2610a98c3 |
|
BLAKE2b-256 | a64ce452e2adb93631e9e7923475d6aac07309aeb32ab7b234c531d8d681c283 |
Hashes for vqf-2.0.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c43b125a2bf612296c659fe0b3b629520f1eed7684463a38e07fdca092c55803 |
|
MD5 | 1990c396de66cdec865cde4ab01b75c5 |
|
BLAKE2b-256 | 5bcd65122e6445e53d07becaa630b4f385cf40d1266ed61933a4bf6211c22d58 |
Hashes for vqf-2.0.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d3c62764d353f4b9492a56a0470bf7471de08606d6b29d078841d12ad912282 |
|
MD5 | b914c28452c6d2aaa5f990413475017f |
|
BLAKE2b-256 | b327ad597af0f03164fa8e9f6f7246167de107d764c136e2cdeca0e9ddc66be9 |