TartanVO
Wang 2021 · 论文
一句话总结 —— 首个能够在多个真实世界数据集上泛化、且无需微调的基于学习的视觉里程计模型,完全在来自 TartanAir 的多样化合成数据上训练而成。
问题
以往基于学习的视觉里程计方法在同一个数据集(通常是 KITTI)上训练和测试,导致无法跨域泛化,而经典的基于几何的视觉里程计虽然能够泛化,却难以应对运动模糊、剧烈旋转和光照变化。论文指出了两个根本原因:(1)训练数据在场景和运动模式上多样性不足,以及(2)忽略了来自多视图几何的两个基本歧义——单目尺度歧义以及对相机内参的依赖——因此”一个从某个数据集学到的模型,无论特征提取器多好,在另一个数据集上很可能都会失败。“
方法与架构
两阶段网络。 给定连续的去畸变图像 ,匹配模块 (预训练的 PWC-Net)估计稠密光流 ,位姿模块 (一个改进的 ResNet50,平移和旋转分支分离,不使用批归一化)回归相对运动 ,其中 ,。端到端目标函数联合监督两者:
尺度无关损失。 由于运动尺度在单目图像中不可观测,只监督平移的方向(旋转损失不变)。论文中使用的归一化距离形式为
(余弦相似度的变体表现相近)。这弥合了尺度感知损失所留下的训练/测试平移损失差距。
内参层(IL)。 为解决内参歧义,基于内参 构建了一个二通道图 ,在送入位姿网络之前与光流拼接:
从而为每个光流向量提供其归一化的二维位置——这正是几何方法从匹配点恢复位姿所需的信息。由于 TartanAir 使用固定相机(,,),随机裁剪和缩放(RCR,缩放因子最高 2.5)合成了视场角从 到 的多种相机。
训练。 仅在 TartanAir 上训练(超过 40 万帧,20 个环境,留出 3 个):首先单独训练 ,使用真值光流(10 万次迭代,批大小 100),然后与 联合训练(5 万次迭代,批大小 64)。在 GTX 1080 上每对图像的推理耗时 40 ms。所有测试数据集均使用同一权重——完全不做微调。
实验结果
- 消融实验:随着训练数据从 2 万帧增加到 10 万帧再到 40 万帧,训练/测试泛化差距单调缩小;一旦内参发生变化,IL 就变得至关重要(在 RCR 条件下,使用 IL 的测试损失为 0.0723,不使用则为 0.1999);使用 RCR + IL 训练的泛化能力优于单一内参训练。
- KITTI(零样本,仅两帧视觉里程计):在序列 06/07/09/10 上平均 为 5.48%, 为 3.05°/100 m——优于 DeepVO(5.81/6.41,在 KITTI 上训练过)以及基于几何的 VISO2-M(15.04/7.62)和单目 ORB-SLAM 的 (12.16),尽管从未见过 KITTI。
- EuRoC(零样本):在没有任何后端优化的情况下,ATE 与基于几何的方法相当,并且在两个最难的序列上优于所有对比方法——VR1-03(0.64,DSO 为 0.93;SVO/ORB-SLAM/LSD-SLAM 均失败)以及 VR2-03(1.04,DSO 为 1.16)。
- TartanAir 挑战序列:成功跟踪了全部 16 条困难测试轨迹(MH000-007 平均 ATE 为 1.92),而 ORB-SLAM 在 8 条中的 2 条上失败,在 MH006 上误差达到 21.47。
- 真实红外相机:在 RealSense D435i 的红外输入上,其轨迹与专用的 T265 跟踪相机(鱼眼立体+IMU)高度吻合,尽管训练中从未见过真实或红外图像。
对SLAM的意义
TartanVO 证明了视觉里程计的从仿真到真实(sim-to-real)迁移是可行的:一个纯粹在仿真中训练的单一模型能够泛化到 KITTI、EuRoC 以及真实红外画面,并在经典几何流水线失效的条件(运动模糊、剧烈的飞行器运动、低光照)下依然稳健。它留下的两条经久不衰的经验——在海量多样化的合成数据上训练,以及将几何不变性(尺度、内参)内嵌进模型——直接延续到了 DROID-SLAM、DPVO 和 MAC-VO 中,这些系统都在 TartanAir 上训练;MAC-VO 甚至将 TartanVO 用作其运动模型的初始化器。