TANDEM
Koestler 2021 · 论文
一句话总结 — 一种实时单目稠密SLAM,将DSO风格的光度光束法平差与一个学习型多视图立体网络(CVA-MVSNet)以及TSDF融合结合起来,并将新帧与从全局模型渲染出的深度进行配准跟踪。
问题
从单目相机进行实时稠密重建,比RGB-D建图(深度可以直接读出并融合)要困难得多。经典的直接法(DSO)跟踪精度高,但只能重建稀疏/半稠密的点云;精确的多视图立体传统上是离线运行的,而完全学习式的稠密SLAM在跟踪精度上落后于经典方法。TANDEM探讨的问题是:如何从单个移动相机同时获得实时跟踪与全局一致的稠密建图——这是第一个将基于学习的MVS集成到传统的基于优化的VO中的系统。
方法与架构
三个组件在一个紧密循环中运行(VO运行在CPU线程上;MVS推理与TSDF融合在GPU上异步运行):
1. 具有稠密前端的视觉里程计。 后端是DSO的直接稀疏窗口化光度光束法平差。前端通过将每个新帧与上一个关键帧进行稠密直接图像对齐来进行跟踪,使用一个组合深度缓冲区:在可用的情况下使用活动窗口中各点的稀疏深度,否则使用从增量构建的全局TSDF模型渲染出的稠密深度——这是第一个针对全局模型进行跟踪的单目稠密前端,也是相较于纯稀疏跟踪的关键鲁棒性提升点。
2. CVA-MVSNet。 给定活动关键帧,共享权重的2D U-Net提取多尺度特征;参考关键帧的深度在3个分辨率递增的级联阶段中被预测出来。每个阶段将特征扭曲到逐像素的深度假设上,形成特征体。由于滑动窗口中的关键帧基线极不均匀(存在严重遮挡/不重叠),对各视图等权重加权的标准方差代价度量被替换为自适应视图聚合:
其中是由一个浅层3D CNN根据预测出的逐体素权重,使网络能够降低错误视图的权重。代价体经过一个3D U-Net正则化,并通过softmax得到概率体;深度即为其期望:
后续阶段在上采样后的前一阶段深度周围采样较少的假设(个平面覆盖全范围,之后逐渐减少),使用在全部三个阶段上求和的损失进行训练。
3. TSDF融合。 预测出的深度图被融合进一个体素哈希化的截断有符号距离函数网格中,由此得到既用于可视化网格、也供稠密跟踪前端读取的一致全局模型。
实验结果
- 跟踪(EuRoC Vicon Room,ATE RMSE,单位为米,Sim(3)对齐,5次运行的平均值):在V101/V102/V201/V202上,TANDEM为0.09/0.17/0.09/0.12,相比DSO为0.10/0.27/0.09/0.21,ORB-SLAM2为0.31/0.11/1.40/0.84,DeepFactors为1.48/丢失/1.06/1.89。在V102/V202上相较于”DSO+稠密深度”变体的提升,分离出了跟踪全局TSDF模型所带来的收益。使用IMU的视觉惯性CodeVIO(0.06–0.10)仍然更优。
- 稠密深度(误差在真值10%范围内的像素百分比):ICL-NUIM平均为90.71(使用Replica训练的模型),相比Cas-MVSNet为86.94,Atlas(使用真值位姿)为66.93,DeepFactors为30.17,CNN-SLAM为19.77;EuRoC平均为94.40,相比CodeVIO为78.74。
- 与iMAP在Replica上的对比:网格精度/完整度相当(例如room-1:精度4.26 vs 3.69厘米,完整度4.71 vs 4.87厘米)——单目的TANDEM与一个RGB-D系统旗鼓相当。
- 消融实验:视图聚合将深度误差从2.64降至1.92厘米;将深度平面数减少到(48,4,4)仍保持2.33厘米的误差,同时将推理时间降至158毫秒、显存降至2917 MiB。完整系统在RTX 2080 Super(8 GB)+ i7-9700K上以约20 FPS运行,仅在合成的Replica轨迹上训练,却能泛化到EuRoC和ICL-NUIM。
对SLAM的意义
TANDEM清晰地展示了”经典+学习”混合设计模式:对位姿保留易于理解的几何估计器,恰好在经典方法薄弱的地方(无纹理区域的稠密深度)插入学习模块,并让稠密地图反馈回跟踪环节。它证明了单目相机无需深度传感器即可在线产生稠密的TSDF地图,是DROID-SLAM等完全学习式管线以及iMAP/NICE-SLAM等神经隐式系统之外一种务实的替代方案。
相关条目
- DSO — 直接稀疏里程计骨干
- MonoRec — 相关的单目视频稠密重建方法
- DeepFactors — 用于对比的基于编码的稠密SLAM
- CodeMapping — 稀疏SLAM结合通过编码学习的稠密深度
- DROID-SLAM — 完全学习式的替代方案
- iMAP — TANDEM在单目条件下所匹敌的RGB-D神经隐式系统
- NICE-SLAM — 神经隐式稠密SLAM的替代方案