This project provides the code accompanying the paper entitled Efficient and Accurate Downfacing Visual Inertial Odometry (preprint available soon).
This project requires the GAP SDK for GAP9. The project can either be run in GVSoC or on a physical GAP9 board.
The downfacing VIO system can be executed on GVSoC using the following commands:
ORB Feature Tracker
cd orb_gap9_project
cmake -B build
cmake --build build --target runSuperPoint Feature Tracker
cd superpoint_gap9_project
cmake -B build
cmake --build build --target runParallelized PX4FLOW Feature Tracker
cd px4flow_gap9_project
cmake -B build
cmake --build build --target runNote: The code is executed on GVSoC by default. If you want to execute it on a physical GAP9 system, adjust the target in the menuconfig.
cmake --build build --target menuconfigORB and PX4FLOW will be executed on a single cluster core by default. For multicore execution change the following line in the main.c file:
uint8_t SINGLE_CORE = 1;If you found our work helpful in your research, we would appreciate if you cite it as follows:
Efficient and Accurate Downfacing Visual Inertial Odometry arXiv
@article{kuhne2025efficient,
title={Efficient and Accurate Downfacing Visual Inertial Odometry},
author={K{\"u}hne, Jonas and Vogt, Christian and Magno, Michele and Benini, Luca},
journal={IEEE Internet of Things Journal},
year={2025},
publisher={IEEE}
}
Parallelizing Optical Flow Estimation on an Ultra-Low Power RISC-V Cluster for Nano-UAV Navigation arXiv
@inproceedings{kuhne2022parallelizing,
title={Parallelizing optical flow estimation on an ultra-low power risc-v cluster for nano-uav navigation},
author={K{\"u}hne, Jonas and Magno, Michele and Benini, Luca},
booktitle={2022 IEEE International Symposium on Circuits and Systems (ISCAS)},
pages={301--305},
year={2022},
organization={IEEE}
}