TartanVO
Wang 2021 · Paper
One-line summary — The first learning-based visual odometry model that generalizes across multiple real-world datasets without fine-tuning, trained entirely on diverse synthetic data from TartanAir.
Problem
Prior learning-based VO methods trained and tested on the same dataset (usually KITTI) and failed to generalize across domains, while classical geometric VO generalizes but struggles with motion blur, aggressive rotation, and lighting changes. The paper identifies two causes: (1) training data with insufficient diversity in scenes and motion patterns, and (2) ignoring two fundamental ambiguities from multi-view geometry — monocular scale ambiguity and dependence on camera intrinsics — so that “a model learned from one dataset would likely fail in another dataset, no matter how good the feature extractor is.”
Method & architecture
Two-stage network. Given consecutive undistorted images , a matching module (pre-trained PWC-Net) estimates dense optical flow , and a pose module (a modified ResNet50 with separate translation and rotation heads, no batch norm) regresses the relative motion , , . The end-to-end objective jointly supervises both:
Up-to-scale loss. Since motion scale is unobservable from monocular images, only the translation direction is supervised (rotation loss unchanged). The normalized-distance form used in the paper is
(a cosine-similarity variant performs similarly). This closes the train/test translation-loss gap that scale-aware losses leave open.
Intrinsics layer (IL). To resolve intrinsics ambiguity, a 2-channel map built from the intrinsics is concatenated to the flow before the pose network:
giving each flow vector its normalized 2D position — the same information geometric methods need to recover pose from matches. Since TartanAir has one fixed camera (, , ), random cropping and resizing (RCR, resize factors up to 2.5) synthesizes cameras with FoV from to .
Training. Trained only on TartanAir (>400,000 frames, 20 environments, 3 held out): first alone on ground-truth flow (100k iterations, batch 100), then jointly with (50k iterations, batch 64). Inference takes 40 ms per pair on a GTX 1080. The same weights are used on every test dataset — no fine-tuning anywhere.
Results
- Ablations: the train/test generalization gap shrinks monotonically as training data grows from 20k to 100k to 400k frames; the IL is critical once intrinsics vary (test loss 0.0723 with IL vs 0.1999 without, under RCR), and training with RCR + IL generalizes better than single-intrinsics training.
- KITTI (zero-shot, two-frame VO only): average 5.48% / 3.05°/100 m over seqs 06/07/09/10 — better than DeepVO (5.81/6.41, trained on KITTI) and far better than geometry-based VISO2-M (15.04/7.62) and monocular ORB-SLAM’s (12.16), despite never seeing KITTI.
- EuRoC (zero-shot): ATE competitive with geometry-based methods without any backend optimization, and best of all compared methods on the two hardest sequences — VR1-03 (0.64 vs DSO 0.93; SVO/ORB-SLAM/LSD-SLAM fail) and VR2-03 (1.04 vs DSO 1.16).
- TartanAir challenge sequences: tracks all 16 hard test trajectories (avg ATE 1.92 on MH000-007) where ORB-SLAM fails on 2 of 8 and hits 21.47 on MH006.
- Real IR camera: on RealSense D435i infrared input it closely matches the trajectory of a dedicated T265 tracking camera (fisheye stereo + IMU), despite never seeing real or IR images in training.
Why it matters for SLAM
TartanVO demonstrated that sim-to-real transfer is viable for visual odometry: a single model trained purely in simulation generalized to KITTI, EuRoC, and real IR footage, and held up in conditions (motion blur, aggressive MAV motion, low light) where classical geometric pipelines fail. Its two lasting lessons — train on massive diverse synthetic data, and bake geometric invariances (scale, intrinsics) into the model — flow directly into DROID-SLAM, DPVO, and MAC-VO, all trained on TartanAir; MAC-VO even uses TartanVO as its motion-model initializer.
Related
- DROID-SLAM — learned SLAM that adopted a similar synthetic-training strategy
- DPVO — sparse patch-based successor in learned visual odometry
- MAC-VO — learned stereo VO with metrics-aware covariance
- DeepVO — earlier end-to-end pose regression that lacked cross-dataset generalization
- PWC-Net — the optical-flow backbone family used by TartanVO
- RAFT — the flow architecture that powered the next generation of learned VO