ACE Zero

Brachmann 2024 · 论文

一句话总结 — ACE Zero(ACE0)将增量式运动恢复结构(SfM)重新诠释为对一个场景坐标回归重定位器进行反复训练与应用的过程,能够在没有任何预先构建的三维地图的情况下,恢复出一组无位姿信息图像集合的相机位姿。

问题

诸如DSAC*和ACE这类场景坐标回归(SCR)重定位器精度高且体积小,但训练其场景特定网络需要真实的相机位姿——而这在实践中通常来自像COLMAP这样的基于特征的SfM工具。这就形成了一个循环依赖:你需要一个地图来训练重定位器,但又需要一个重定位器来构建地图。ACE0提出的问题是:重定位器本身能否自举出重建结果——即在没有任何位姿先验、没有顺序信息、也没有预先构建三维地图的情况下,为一组图像估计出相机参数H={(Ki,Ti)}\mathcal{H}=\{(K_i, T_i)\}?

方法与架构

SfM即迭代式重定位。 ACE0在两个阶段之间循环,直到所有图像都被赋予位姿:神经建图(在当前已配准的图像上训练一个ACE风格的SCR模型)与重定位(用该模型配准更多图像)。场景表示为ACE头——一个9层、512通道的MLP(fp16下为4 MB),搭建在一个冻结的、在ScanNet上预训练的卷积骨干网络之上;像素位置、位姿与场景坐标通过投影关系pij=π(Ki,Ti,yij)\mathbf{p}_{ij}=\boldsymbol{\pi}(K_{i},T_{i},\mathbf{y}_{ij})相互关联,其中yij=fSCR(pij,Ii)\mathbf{y}_{ij}=f_{\text{SCR}}(\mathbf{p}_{ij},I_{i})

神经建图。 在第tt次迭代时,已配准集合IRegt\mathcal{I}^{t}_{\text{Reg}}及其位姿估计Tit,KitT^t_i, K^t_i充当伪真值,场景模型通过最小化逐像素重投影误差进行训练:

IiIRegt  jIipijπ(Kit,Tit,yijt).\sum_{I_{i}\in\mathcal{I}^{t}_{\text{Reg}}}\;\sum_{j\in I_{i}}\left\|\mathbf{p}_{ij}-\boldsymbol{\pi}(K_{i}^{t},T_{i}^{t},\mathbf{y}_{ij}^{t})\right\|.

由于早期的配准结果只是近似值,位姿会在建图过程中被精细化:一个MLP Tit=fPoset(T~it)T_{i}^{t}=f^{t}_{\text{Pose}}(\tilde{T}^{t}_{i})接收每个初始位姿作为12个数值,并预测出12个加性偏移量(旋转部分通过Gram-Schmidt重新正交化),与fSCRf_{\text{SCR}}在AdamW权重衰减下联合优化,该权重衰减使更新趋向于保持较小——与逐位姿反向传播不同,该MLP能够建模相机之间的相关性。焦距也会被精细化,通过一个单一参数实现:fit=finit(1+αt)f^{t}_{i}=f^{\text{init}}\cdot(1+\alpha^{t}),其中finitf^{\text{init}}设定为图像对角线长度的70%。位姿精细化MLP在每次建图迭代后都会被丢弃;这种联合精细化是SCR中对应于光束法平差的操作。

重定位。 所有图像(无论是否已配准)都被送入fSCRtf^{t}_{\text{SCR}},PnP + RANSAC返回一个位姿及置信度:T~it+1,sit+1=g(Kit,{(pij,yijt)})\tilde{T}^{t+1}_{i},\,s^{t+1}_{i}=g\left(K^{t}_{i},\{(\mathbf{p}_{ij},\mathbf{y}^{t}_{ij})\}\right)。以内点数作为ss,下一次的训练集为IRegt+1={Iisit+1>τs}\mathcal{I}^{t+1}_{\text{Reg}}=\{I_{i}\,|\,s^{t+1}_{i}>\tau_{s}\}

从单张图像初始化。 对于单一视角,重投影目标是欠约束的,因此种子网络的训练目标来自一个单目深度估计(ZoeDepth)反投影得到的坐标:y^ij=dij(Kseedinit)1pij\hat{\mathbf{y}}_{ij}=d_{ij}(K_{\text{seed}}^{\text{init}})^{-1}\mathbf{p}_{ij},在种子位姿固定为单位矩阵的情况下最小化jy^ijyij\sum_{j}\|\hat{\mathbf{y}}_{ij}-\mathbf{y}_{ij}\|。系统会尝试5个随机种子,选取在1000张留出图像中重定位成功数量最多的一个(每个约耗时1分钟)。深度信息在此处使用。自适应图像块采样与提前停止机制(当70%的批次重投影误差在连续100个批次内保持低于10像素时停止)使每轮建图的耗时远低于ACE的5分钟。

实验结果

在三个数据集共31个场景上进行评测;由于COLMAP的位姿本身也只是估计值,位姿质量是以自监督方式衡量的——用各方法给出的位姿训练Nerfacto,并报告测试视角的PSNR。所有ACE0的耗时数据均在单张V100上测得。

对SLAM的意义

ACE Zero补全了SCR这一脉络(DSAC → DSAC* → ACE),去除了它最后一项经典依赖:训练所需的由SfM生成的真实位姿。这使得基于学习的重定位实现了自包含——地图完全存在于网络权重之中,因此无需存储原始图像或显式的三维点,这对于众包式和保护隐私的建图具有吸引力,并使SCR成为COLMAP式重建的一种基于学习的替代方案。它还启发了后续将SCR推向实时SLAM(ACE-SLAM)以及推向泛化能力(ACE-G)的研究工作。

相关条目