Open Source Robotics

Una colección curada de proyectos, herramientas y software de robótica de código abierto de alta calidad.

MAC-VO: Metrics-Aware Covariance for Learning-Based Stereo Visual Odometry

Autores: Yuheng Qiu, Yutian Chen, Zihao Zhang, Wenshan Wang, Sebastian Scherer · ICRA 2025

Licencias

  • Acceso abierto
  • Artículo: CC BY 4.0

Todo lo que sigue se basa en el artículo completo bajo su licencia CC BY 4.0; su figura se muestra con crédito a los autores.

En resumen

MAC-VO aprende la incertidumbre del flujo y de la profundidad por píxel, la convierte en covarianzas 3D métricas completas de los puntos clave y las usa para seleccionar puntos clave y ponderar la optimización de la pose entre dos fotogramas.

Por qué importa

Las covarianzas con escala métrica real le dicen a un robot cuánto fiarse de cada estimación de pose y dan una base coherente para fusionar la VO con otros sensores. MAC-VO obtiene sus resultados solo con optimización entre dos fotogramas, sin cierre de bucle ni bundle adjustment, y se transfiere de datos de entrenamiento sintéticos a conjuntos de datos reales sin ajuste fino.

Problema

La odometría visual se degrada con poca luz, en escenas dinámicas y en zonas sin textura. La VO geométrica selecciona puntos clave mediante umbrales de gradiente de imagen y usa covarianzas constantes ajustadas a mano, mientras que los sistemas aprendidos como DROID-SLAM usan pesos de confianza independientes de la escala y diagonales. Esos pesos no reflejan el error 3D real, son inconsistentes entre las escalas de interior y de exterior y son difíciles de combinar con otros sensores.

Solución propuesta

Una red de emparejamiento compartida, construida sobre FlowFormer con un agregador de movimiento GMA y un decodificador de incertidumbre añadido, predice la profundidad estéreo, el flujo óptico y sus incertidumbres; se entrena con una pérdida de log-verosimilitud negativa únicamente en el conjunto de datos sintético TartanAir. Los puntos clave pasan un filtro de incertidumbre (que descarta los píxeles por encima de 1,5× la incertidumbre mediana del fotograma), un filtro geométrico y una supresión de no mínimos. Las incertidumbres 2D se propagan a través del modelo pinhole a una covarianza 3D completa con términos fuera de la diagonal, que pondera los residuos de un grafo de poses entre dos fotogramas resuelto mediante Levenberg-Marquardt en PyPose.

Ideas clave

  • La incertidumbre aprendida funciona como selector de puntos clave en lugar del selector aleatorio de DPVO o de los rasgos diseñados a mano de ORB-SLAM: elimina puntos sobre vehículos en movimiento, objetos ocluidos, superficies reflectantes y zonas sin rasgos.
  • Los términos de covarianza fuera de la diagonal importan: eliminarlos (DiagCov) elevó el error de traslación en TartanAir v2 Hard de 0,0141 a 0,0461 m/fotograma.
  • La consistencia de escala importa: una covarianza independiente de la escala (normalizada) elevó el error de traslación a 0,0204 m/fotograma en TartanAir v2 Hard y de 0,0051 a 0,0086 m/fotograma en el conjunto Easy.
  • La incertidumbre de profundidad de un punto emparejado se estima como una varianza de la profundidad ponderada por una gaussiana en su parche local, lo que vincula la incertidumbre del flujo con el error de profundidad.
  • Usar rasgos dispersos en el back end mantiene la memoria de GPU en 4,20 GB, 6,7 veces menos que DROID-SLAM (28,34 GB).

Resultados principales

  • EuRoC: error medio de traslación comparable al de DROID-SLAM y error de rotación alrededor de un 10 % mejor que todas las referencias, incluidos sistemas de SLAM con cierre de bucle y bundle adjustment global.
  • TartanAir v2 Hard: un 61,9 % menos de error de traslación que el competidor más cercano; en la trayectoria de superficie lunar H00, un 82,4 % menos de error de traslación y el menor error de rotación.
  • KITTI: solo por detrás de ORB-SLAM3 en error de traslación y un 53,3 % menos de error de traslación que otros métodos de VO; el error de rotación es peor, lo que los autores atribuyen a la falta de optimización multifotograma.
  • Ablación de módulos en TartanAir v2 Hard: error de traslación de 0,0141 m/fotograma para el sistema completo frente a 0,0743 con puntos clave aleatorios y covarianza identidad, 0,0679 sin optimización de la covarianza y 0,0188 sin selección de puntos clave basada en la incertidumbre.
  • Tiempo de ejecución a 640×640 en un Ryzen 9 5950X con una RTX 3090 Ti: 2,15 fps en bruto, 3,96 fps con TensorRT y multiprocesamiento, y 10,57 fps en modo Fast (Tabla V; el texto dice 10,5 fps) al 70 % del rendimiento completo; el modo Fast usa media precisión, indicada como bf16 en la Tabla V y como float16 en el Apéndice I.

Limitaciones

  • Los autores señalan que el método solo realiza optimización de la pose entre dos fotogramas y esperan mejoras con bundle adjustment, optimización multifotograma y cierre de bucle.
  • El error de rotación en KITTI es peor que el de traslación, lo que los autores atribuyen a la falta de optimización multifotograma.
  • La fusión del modelo de covarianza con otros sensores como las IMU queda para trabajo futuro.
  • El modelo completo funciona a 2,15–3,96 fps en una RTX 3090 Ti de escritorio; el modo Fast a 10,5 fps conserva alrededor del 70 % del rendimiento.
  • La aproximación de la profundidad a partir de la disparidad empeora cuando la disparidad se acerca a cero; las comprobaciones de Monte Carlo la consideran aceptable para una tasa de error γ < 0,3.

Impacto en el campo

El artículo ganó el IEEE ICRA 2025 Best Conference Paper Award y el IEEE ICRA 2025 Best Paper Award on Robot Perception, y tiene 37 citas. La página del proyecto citada en el artículo (mac-vo.github.io) enlaza a un repositorio de código público y a documentación.

Resumen

Proponemos MAC-VO, una novedosa VO estéreo basada en aprendizaje que aprovecha la incertidumbre de emparejamiento aprendida y consciente de la métrica con un doble propósito: seleccionar puntos clave y ponderar el residuo en la optimización del grafo de poses. Frente a los métodos geométricos tradicionales, que priorizan rasgos ricos en textura como los bordes, nuestro selector de puntos clave emplea la incertidumbre aprendida para descartar los rasgos de baja calidad a partir de la inconsistencia global. A diferencia de los algoritmos basados en aprendizaje que modelan para la covarianza una matriz de pesos diagonal e independiente de la escala, diseñamos un modelo de covarianza consciente de la métrica que captura el error espacial durante el registro de los puntos clave y las correlaciones entre los distintos ejes. Integrar este modelo de covarianza en la optimización del grafo de poses mejora la robustez y la fiabilidad de la estimación de la pose, en particular en entornos difíciles con iluminación, densidad de rasgos y patrones de movimiento variables. En conjuntos de datos de benchmark públicos, MAC-VO supera a los algoritmos de VO existentes e incluso a algunos algoritmos de SLAM en entornos difíciles. El mapa de covarianza también aporta información valiosa sobre la fiabilidad de las poses estimadas, lo que puede beneficiar la toma de decisiones de los sistemas autónomos.

Enlaces

  • arXiv 2409.09479: https://arxiv.org/abs/2409.09479
  • DOI 10.1109/ICRA55743.2025.11128482: https://doi.org/10.1109/ICRA55743.2025.11128482
  • PDF: https://arxiv.org/pdf/2409.09479v1
  • Código: https://github.com/MAC-VO/MAC-VO
  • Página del proyecto: https://mac-vo.github.io/

Este sitio web requiere JavaScript. Por favor, habilite JavaScript para explorar nuestros proyectos de robótica.