AirVO

Xu 2023 · Paper

One-line summary — An illumination-robust stereo visual odometry that combines accelerated learned point features (SuperPoint + SuperGlue) with LSD line features matched through the points, running in real time (~15 Hz) on low-power embedded platforms.

Problem

Hand-crafted front-ends (ORB, FAST, BRISK) and optical-flow tracking assume brightness roughly constant between frames. In dynamic-illumination environments — onboard lights in tunnels, lights switching off, auto-exposure swings — tracking quality collapses exactly when a robot needs it most. Learned features are far more robust but “often require huge computational resources,” making them impractical on lightweight platforms like UAVs. Line features add structure in low-texture scenes, but classic line matching (LBD descriptors, tracked sample points) is itself unstable under changing light. AirVO targets all three gaps at once: a hybrid learned/classical point-line VO that is illumination-robust and embedded-real-time.

Method & architecture

A hybrid pipeline: learned front-end + traditional optimization back-end, split into a feature thread (SuperPoint on GPU in one sub-thread, LSD line detection on CPU in parallel) and an optimization thread (initial pose estimation, keyframe decision, local BA). CNN/GNN inference is converted from FP32 to FP16, making feature extraction + matching >5× faster than the original code.

Results

Evaluated (loop closure and relocalization disabled in all baselines) on two illumination-challenging datasets:

Why it matters for SLAM

AirVO was, per the authors, the first VO using both learned feature detection and learned matching in real time on low-power embedded hardware — demonstrating that learned front-ends pay off in real deployments, not just on matching benchmarks. Its point-anchored line matching is an elegant trick that sidesteps fragile line descriptors entirely. It is a good template for modernizing a classical indirect VO/VIO pipeline with deep components (the same group’s follow-up, AirSLAM, extends it with loop closure and map reuse).