MAC-VO: Metrics-aware Covariance for Learning-based Stereo Visual Odometry

Yuheng Qiu, Yutian Chen, Zihao Zhang, Wenshan Wang, Sebastian Scherer
9/14/2024
cs.ROcs.CV

No official code found. Best implementation: MAC-VO/MAC-VO (930 stars, MIT, last commit 2025-11-24).

Abstract

We propose the MAC-VO, a novel learning-based stereo VO that leverages the learned metrics-aware matching uncertainty for dual purposes: selecting keypoint and weighing the residual in pose graph optimization. Compared to traditional geometric methods prioritizing texture-affluent features like edges, our keypoint selector employs the learned uncertainty to filter out the low-quality features based on global inconsistency. In contrast to the learning-based algorithms that model the scale-agnostic diagonal weight matrix for covariance, we design a metrics-aware covariance model to capture the spatial error during keypoint registration and the correlations between different axes. Integrating this covariance model into pose graph optimization enhances the robustness and reliability of pose estimation, particularly in challenging environments with varying illumination, feature density, and motion patterns. On public benchmark datasets, MAC-VO outperforms existing VO algorithms and even some SLAM algorithms in challenging environments. The covariance map also provides valuable information about the reliability of the estimated poses, which can benefit decision-making for autonomous systems.

View on arXivView PDF

Code Implementations(1)

MAC-VO/MAC-VOCommunity70%
MIT

[ICRA 2025 Best Paper] MAC-VO: Metrics-aware Covariance for Learning-based Stereo Visual Odometry

93061Python, DockerfileSep 23, 202411 months agoMIT
computer-visionslam-algorithmsvisual-odometry

Similar Papers

Cite this paper

@article{qiu2024macvo,
  title  = {MAC-VO: Metrics-aware Covariance for Learning-based Stereo Visual Odometry},
  author = {Yuheng Qiu and Yutian Chen and Zihao Zhang and Wenshan Wang and Sebastian Scherer},
  year   = {2024},
  eprint = {2409.09479},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2409.09479v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2409.09479.svg)](https://codeofpaper.com/paper/2409.09479)

Discussion