When Do Learned Priors Help Visual Inertial Estimation? A Controlled Study of Prior Integration, Calibration, Initialization, and Backend Consistency
Organizations: Department of Computer Science, Indiana University, Bloomington, IN 47405, USA.
Abstract
Learned components are increasingly integrated into geometric visual--inertial estimators to provide motion, depth, bias, uncertainty, or confidence cues. Yet it remains unclear whether gains arise from useful learned priors or from changes in the backend, calibration, initialization, temporal association, or evaluation gauge. We present a controlled framework for learning-augmented visual--inertial estimation that separates fusion gain from the incremental value of a learned prior and evaluates four evidence layers: local motion consistency, global trajectory accuracy, physical-state correctness, and numerical consistency. We instantiate the framework with a MonoViT-based monocular motion prior added as a local relative-motion factor to an unchanged VINS backend. We compare Original VINS and learned-prior VINS under matched sensor streams, timestamps, initialization, frontend/backend settings, and camera--IMU extrinsics, while probing calibration, initialization, state coupling, scale, bundle adjustment, and loop closure. On KITTI, with fixed reference extrinsics, translation APE RMSE is 31.4 m for Original VINS and 31.8 m with the learned prior. Across four recordings, the prior changes mean APE by only -0.2%, while a five-times-higher weight worsens it by 8.2%. Online extrinsic updates increase mean APE by 45.7% and 52.1%, respectively, while mean RPE changes by less than 2%. These results show that fusion performance alone cannot establish the value of learned priors. Reliable evaluation requires same-backend controls and joint analysis of prior compatibility, calibration, initialization, global drift, physical-state error, and backend consistency.
Figures & tables
| Claim | Minimum controlled evidence | Required reporting |
|---|---|---|
| Incremental value of the learned prior in the tested settings | Same backend, images, IMU, initialization, Fixed extrinsics, and output convention, with and without the prior | APE/RPE, exact tested weight setting, per-sequence deltas, and the scope of the available repeatability check |
| Online-calibration sensitivity is characterized | Same data and backend with a declared initial calibration; compare initial and final states with a physical reference where the transform convention is verified | Common-frame and translation error where available, convergence history, APE/RPE, and nominal-setting limitations |
| Initialization sensitivity is characterized | Representative sequences, available controlled extrinsic settings, and the recorded alternative start window | Initial/final calibration or trajectory error, restart outcome, and an explicit statement that a population success rate is not estimated |
| Accuracy effect of the loop-closure pipeline is characterized | Matched loop-off/loop-on runs with identical front end, calibration, and pipeline state | Pre/post-toggle APE and RPE and global correction magnitude; do not infer accepted-loop behavior without acceptance logs |
| Reported backend cost is a matched diagnostic | Same recording, residual construction, active measurements, and weights | Total cost together with APE/RPE and calibration error; no cross-recording or per-residual claim when residual counts are unavailable |
| RQ | Core question | Primary section | Main evidence |
|---|---|---|---|
| RQ1 | What information does each component provide, and what are its local and global failure modes? | Component-Level Characterization | MonoViT, IMU-only, EKF, Original VINS |
| RQ2 | Under an unchanged VINS backend and matched inputs, does the learned pose prior provide identifiable incremental value? | Incremental Effect of Learned Pose Priors | Original VINS versus VINS+Pose; Fixed/Online; higher-weight control |
| RQ3 | How do the extrinsic initial value, covariance, and Fixed/Online strategy affect calibration and trajectory estimation? | Calibration and Initialization Robustness | EKF perturbations; Fixed/Online; initialization-to-final states; EuRoC |
| RQ4 | Which sequence and initialization-window conditions lead to success, partial convergence, or failure? | Sequence-Dependent Failure and Initialization Conditions | Recordings 1 and 9; frame-300 restart; qualitative tracks |
| RQ5 | Why can local error, backend cost, scale, and global trajectory criteria yield different judgments? | Backend State Coupling, Scale Consistency, and Global Correction | late injection; cost; BA/scale; loop closure |
| Name | Definition |
|---|---|
| Original VINS | Unmodified VINS backend without the learned pose residual |
| VINS+Pose | Same backend with the adjacent-frame MonoViT relative-pose residual |
| VINS+Pose+Depth | VINS+Pose with the learned-depth diagnostic additionally enabled |
| Fixed (F) | Reference camera–IMU extrinsic excluded from optimization |
| Online (O) | Reference extrinsic used for initialization and then optimized |
| Higher weight (H) | Tested pose-prior scalar weight set to its current value |
| Method / Setting | Roll ( ∘ ) | Pitch ( ∘ ) | Yaw ( ∘ ) | (m) | (m) | (m) |
|---|---|---|---|---|---|---|
| VINS with initial guess | 0.12920883 | 0.94205661 | 89.11134805 | -0.01392613 | -0.07202541 | -0.00905363 |
| VINS-without-ROS with initial guess | 0.10204582 | 0.91859205 | 89.10573467 | -0.01316146 | -0.06939931 | -0.00847115 |
| VINS without initial guess | 0.14282301 | 0.94385202 | 89.10850337 | -0.01489817 | -0.07309295 | -0.00928658 |
| VINS-without-ROS without initial guess | 0.11465889 | 0.92032762 | 89.09702679 | -0.01446791 | -0.07011650 | -0.00863906 |
| Evaluation | Run / Setting | Roll ( ∘ ) | Pitch ( ∘ ) | Yaw ( ∘ ) | (m) | (m) | (m) |
|---|---|---|---|---|---|---|---|
| Final extrinsic | 1st run w/ init. guess | 0.12919693 | 0.94206166 | 89.11135918 | -0.0720239866276594 | ||
| 2nd run w/ init. guess | 0.12918814 | 0.94200657 | 89.11134995 | -0.0720255163554694 | |||
| Final extrinsic | 1st run w/o init. guess | 0.14281396 | 0.94385622 | 89.10850764 | -0.0730929617086037 | ||
| 2nd run w/o init. guess | 0.14282443 | 0.94385065 | 89.10850354 | -0.0730929245318574 | |||
| Final odometry pose | 1st run w/ accurate extrinsic | -165.09126635 | -71.98699933 | 3.52874976 | -0.51332 | 0.41103 | -0.13349 |
| 2nd run w/ accurate extrinsic | -165.08909602 | -71.98689964 | 3.52576963 | -0.51344 | 0.41119 | -0.13327 |
| Method | APE gauge/ alignment | Trans. APE RMSE (m) | Trans. APE Max (m) | Rot. APE RMSE ( ∘ ) | Trans. RPE RMSE (m) | Rot. RPE RMSE ( ∘ ) | ( ∘ ) | (m) |
|---|---|---|---|---|---|---|---|---|
| MonoViT | , scale-free | 42.6 | 106.8 | 5.2 | 2.4 | 0.81 | – | – |
| IMU, 10 Hz | , metric | 38.3 | 67.1 | 8.4 | 30.1 | 2.86 | – | – |
| EKF | , metric | 47.5 | 99.4 | 6.1 | 18.7 | 2.12 | 2.9 | 0.018 |
| Original VINS–F | , metric | 31.4 | 43.6 | 4.0 | 29.0 | 1.76 | – † | – † |
| Original VINS–O | , metric | 88.6 | 116.9 | 4.2 | 29.2 | 1.78 | 4.5 | 0.28 |
| VINS+Pose–F | , metric | 31.8 | 44.1 | 3.9 | 28.8 | 1.72 | – † | – † |
| Configuration | Rec. 1 | Rec. 6 | Rec. 7 | Rec. 9 | Mean |
|---|---|---|---|---|---|
| Original VINS–F | 79.2 | 65.1 | 24.8 | 31.4 | 50.1 |
| Original VINS–O | 91.8 | 79.6 | 31.9 | 88.6 | 73.0 |
| VINS+Pose–F | 78.5 | 65.9 | 23.9 | 31.8 | 50.0 |
| VINS+Pose–O | 95.4 | 83.8 | 30.7 | 95.0 | 76.2 |
| VINS+Pose–F–H | 84.1 | 71.8 | 25.2 | 35.7 | 54.2 |
| Configuration | Mean Trans. RPE (m) | Mean ( ∘ ) | Mean (m) | Prior APE | Online APE |
|---|---|---|---|---|---|
| Original VINS–F | 17.7 | – | – | – | – |
| Original VINS–O | 17.9 | 5.2 | 0.26 | – | +45.7% |
| VINS+Pose–F | 17.6 | – | – | % | – |
| VINS+Pose–O | 18.0 | 5.5 | 0.30 | +4.4% | +52.1% |
| VINS+Pose–F–H | 19.0 | – | – | +8.2% | – |
| Configuration | Initialization | Type | (m) | (m) | (m) | |||
|---|---|---|---|---|---|---|---|---|
| Ground truth | – | Reference | -90.48729137 | -0.38888106 | -90.06237834 | 1.14397089 | -0.24640917 | 0.726095982 |
| Original VINS | With initial guess | Initial | -89 | -1.3 | -92 | 1.1 | -0.33 | -0.76 |
| Final | -90.35956866 | -0.22624389 | -90.88670221 | 1.53586 | -0.26856 | 0.025663 | ||
| Without initial guess | Final | -90.3724879 | -0.23212652 | -90.85027338 | 1.53325 | -0.25550 | 0.025118 | |
| VINS + Pose | With initial guess | Initial | -89 | -1.3 | -92 | 1.1 | -0.33 | -0.76 |
| Final | -90.35184219 | -0.22184828 | -90.92993365 | 1.53766 | -0.27628 | 0.028382 |
| Euler X (degree) | Euler Y (degree) | Euler Z (degree) | Translation X (m) | Translation Y (m) | Translation Z (m) | |
|---|---|---|---|---|---|---|
| Initial extrinsic | ||||||
| Final extrinsic |
| Euler X (degree) | Euler Y (degree) | Euler Z (degree) | Translation X (m) | Translation Y (m) | Translation Z (m) | |
|---|---|---|---|---|---|---|
| noise: | noise: | noise: | noise: m | noise: m | noise: m | |
| Initial extrinsic | ||||||
| Initial extrinsic with noise | ||||||
| Final extrinsic |
| Euler X (degree) | Euler Y (degree) | Euler Z (degree) | Translation X (m) | Translation Y (m) | Translation Z (m) | |
|---|---|---|---|---|---|---|
| Initial extrinsic | ||||||
| Final extrinsic |
| Euler X (degree) | Euler Y (degree) | Euler Z (degree) | Translation X (m) | Translation Y (m) | Translation Z (m) | |
|---|---|---|---|---|---|---|
| noise: | noise: | noise: | noise: m | noise: m | noise: m | |
| Initial extrinsic | ||||||
| Initial extrinsic with noise | ||||||
| Final extrinsic |
| Recording | ( ∘ ) | ( ∘ ) | (m) | (m) | Trans. APE RMSE (m) | Final Status |
|---|---|---|---|---|---|---|
| 00 | 91.8 | 78.6 | 0.84 | 0.72 | 84.5 | Failure |
| 01 | 19.4 | 14.8 | 0.32 | 0.24 | 44.2 | Partial |
| 02 | 29.7 | 24.6 | 0.47 | 0.39 | 61.8 | Partial |
| 04 | 17.7 | 12.9 | 0.29 | 0.22 | 58.7 | Partial |
| 05 | 11.0 | 10.4 | 0.18 | 0.16 | 36.4 | Partial |
| 06 | 87.1 | 71.5 | 0.79 | 0.67 | 88.9 | Failure |
| Record | Setting | Type | (m) | (m) | (m) | |||
|---|---|---|---|---|---|---|---|---|
| Platform Comparison | VINS | Final | 0.14281475 | 0.94385128 | 89.108527 | -0.0148978 | -0.0730938 | -0.00928565 |
| VINS w/o ROS | Final | 0.14305244 | 0.94385065 | 89.10844729 | -0.0148932 | -0.0730920 | -0.00928351 | |
| Easy | w/o initial guess | Ground truth | 0.21528577 | 1.47693 | 89.14795267 | -0.02164015 | -0.06467699 | 0.00981073 |
| VINS initial | 4.75384824 | 2.87952249 | 90.81859944 | -0.0423088 | -0.0822441 | -0.0292757 | ||
| VINS final | 0.14301377 | 0.9436808 | 89.10860882 | -0.0148989 | -0.0730824 | -0.00927712 | ||
| with initial guess | Ground truth | 0.21528577 | 1.47693 | 89.14795267 | -0.02164015 | -0.06467699 | 0.00981073 |
| Rec. | Setting | (%) | (%) | Trans. APE RMSE (m) | Trans. RPE RMSE (m) | ( ∘ ) | (m) | Normalized Cost |
|---|---|---|---|---|---|---|---|---|
| 00 | Accurate | 82.2 | 2.8 | 38.6 | 12.4 | 3.1 | 0.09 | 1.00 |
| 00 | Perturbed | 80.3 | 3.0 | 46.8 | 12.8 | 4.7 | 0.13 | 1.03 |
| 01 | Accurate | 90.3 | 2.4 | 34.2 | 10.7 | 4.3 | 0.11 | 1.00 |
| 01 | Perturbed | 94.1 | 2.6 | 36.1 | 10.9 | 5.8 | 0.15 | 1.03 |
| 02 | Accurate | 99.6 | 8.9 | 71.4 | 18.6 | 12.7 | 0.29 | 0.98 |
| 02 | Perturbed | 99.7 | 9.7 | 94.8 | 20.1 | 16.9 | 0.36 | 1.02 |
| Configuration | APE No Loop | APE Loop | APE | RPE No Loop | RPE Loop | RPE | Global Correction Magnitude (m) |
|---|---|---|---|---|---|---|---|
| VINS+Pose, accurate ext. | 39.8 | 31.7 | 11.6 | 11.4 | 28.4 | ||
| Original VINS, default ext. | 52.6 | 58.9 | 13.4 | 13.1 | 41.7 | ||
| Original VINS, accurate ext. | 36.4 | 29.8 | 10.9 | 10.7 | 25.9 |
Visual-Inertial Odometry
Visual-inertial odometry estimates camera motion by combining image geometry with inertial measurements for metric navigation.
See all 54 papers