Gyro-Aided Epipolar Filtering for Visual-Inertial Odometry on KITTI and EuRoC: An Empirical Study with Failure Analysis
Abstract
This contains the complete implementation, notebook environments, and evaluation data for a compact error-state Kalman filter (ESKF) pipeline for Visual-Inertial Odometry (VIO) optimized for low-cost embedded platforms. Built and evaluated step by step using both the KITTI raw dataset (high-grade INS IMU, 10 Hz camera) and a 4× downscaled copy of the EuRoC dataset (consumer MEMS IMU, 20 Hz camera), the pipeline utilizes gyro-predicted rotation, a two-view epipolar translation-direction vision measurement, and zero-velocity updates (ZUPT) for stationary periods. Along with repairing critical timestamp faults in the raw KITTI OXTS logs, the project includes code for quantitative verification that reveals a tight median vision-gyro rotation disagreement of 0.087° per frame against 0.89° of motion, while demonstrating how uncorrected dead reckoning fails catastrophically with a 77–516 m Absolute Trajectory Error (ATE) within 70 seconds on EuRoC. Rather than omitting tracking anomalies, this deposit provides a completely transparent account of state-estimation design by explicitly reporting every configuration tried, the hypotheses the data refuted, and the unexplained tracking failures encountered—such as failing on 2 of 5 EuRoC sequences, or improving upon exact-start IMU-only dead reckoning on only 2 of 5 KITTI drives despite robustly recovering from incorrect initial velocities across all five.
// Source
Authors: Souparna Chatterjee