
论文标题Global Structure-from-Motion Revisited论文作者Linfei Pan, Dániel Baráth1, Marc Pollefeys, Johannes L. Schönberger0. 导读ETH微软最新开源-全局式GLOMAP它与以前的全局SfM系统相比其核心区别在于全局定位步骤。不是先执行不适定的平移平均然后进行全局三角测量而是进行联合相机和点位置估计。GLOMAP不仅在鲁棒性和准确性方面达到增量式COLMAP系统相当或更优的水平同时还比COLMAP快几个数量级。1. 背景简介从一组图像中恢复3D结构和相机运动一直是计算机视觉研究的焦点此类问题被称为运动恢复结构 (Structure-from-Motion, SfM)。多年来已经形成了两种主要的解决范式增量式和全局式。它们都以基于图像的特征提取和匹配开始然后通过两视图几何估计构建输入图像的初始视图。增量方法从两个视图开始重建并通过逐步配准附加的相机图像和相关的三维结构来扩展重建。这一过程交替进行绝对相机姿态估计、三角测量和捆绑调整尽管实现了高精度和鲁棒性但由于重复的捆绑调整的高成本限制了其可扩展性。相反全局方法通过联合考虑视图图中的所有两个视图几何形状在单独的旋转平均 (rotation averaging) 和平移平均 (translation averaging) 步骤中一次恢复所有输入图像的相机几何形状。通常在最终的全局束调整 (global bundle adjustment) 步骤之前将全局估计的相机几何形状用作3D结构三角测量的初始化。虽然增量方法被认为更准确、更稳健但全局方法的重建过程更具可扩展性在实践中速度更快。增量和全局SfM之间准确性和鲁棒性差距的主要原因在于全局平移平均步骤。平移平均描述了从视图图中的相对姿态集估计全局相机位置的问题其中之前通过旋转平均恢复了相机方向。这一过程在实践中面临三大挑战第一个是尺度歧义从估计的双视图几何获得的相对平移只能确定到某种尺度第二是准确地将相对双视图几何分解为旋转和平移分量需要对相机内参的先验知识第三个挑战出现在几乎共线的运动上这导致了退化的重建问题。研究者因此做了大量的研究工作致力于解决该问题。主要贡献引入了一种通用的全局SfM系统称为GLOMAP。与之前的全局SfM系统的核心区别在于全局定位步骤。本文方法不是先进行不适定的平移平均再进行全局三角测量而是执行相机和点位置的联合估计。GLOMAP在保持全局SfM流程效率的同时达到了当前最前进的增量SfM系统相似的鲁棒性和精度如图1a所示。与大多数之前的全局SfM系统不同GLOMAP系统能够处理未知的相机内参例如来自互联网照片并且稳健地处理顺序图像数据例如手持视频或自动驾驶汽车场景。图 1 GLOMAP重构对比示例2. 全局SfM相关研究全局SfM流程通常由三个主要步骤组成对应关系搜索 (Correspondence Search)、全局相机姿态估计 (Global Camera Pose Estimation) 以及联合相机和结构细化 (Global Structure and Pose Refinement)。2.1. Correspondence Search增量和全局SfM都是从输入图像中提取显著的图像特征开始。一般来说检测出的特征点与从检测周围的局部上下文中提取的紧凑签名进行描述。接下来开始在图像对之间搜索特征对应关系。然后通过稳健地恢复重叠对的双视图几何体来验证这些。基于摄像机的几何配置这可能会得到一个用于平面场景的一般运动和纯摄像机旋转的单应矩阵或者用于一般场景和一般运动的基础矩阵未标定和本质矩阵已标定。当相机内参近似已知时这些可以被分解为相对旋转和平移。与相关内点对应关系计算出的双视图几何定义了视图图G作为全局重建步骤的输入。在GLOMAP的流程中作者利用COLMAP进行对应关系搜索并结合RootSIFT特征和可扩展的词袋图像检索来找到候选的重叠图像对以便进行暴力匹配特征。2.2. Global Camera Pose Estimation全局相机位姿估计是区分全局SfM和增量SfM的关键步骤。全局SfM不是通过重复的三角测量和光束法平差 (Bundle Adjustmentl, BA) 来顺序配准相机而是利用视觉图G作为输入寻求一次性估计所有相机的位姿通常将其分解为独立的旋转和位移平均步骤。Rotation Averaging也称为旋转平均与位姿图优化 (PGO) 算法相关。该问题通常被表述为非线性优化惩罚全局旋转与估计的相对位姿之间的偏差。实际上由于噪声和异常值该问题通常通过鲁棒最小度量目标进行建模并优化为如公式1所示其中鲁棒器如Huber、旋转参数化如四元数或轴角和距离度量d如弦距离或测地线距离的各种组合。基于这些原则目前大多数工作进行展开研究。Translation Averaging平移平均描述了估计全局相机位置的问题这些位置在基于约束的条件下与成对的相对平移最大限度一致。然而由于噪声和异常值以及相对平移的未知尺度任务尤其具有挑战性。近年来提出了不同的平移平均方法。Govind的开创性工作最小化了相对相机位置和观察方向之间的叉乘。Jiang等使用三元组对问题进行了线性化。Wilson等直接优化方向的差异并设计了专门的异常值过滤机制。尽管这些研究取得了显著进展但平移平均通常仅在视图图连接良好时才能可靠工作。这个问题本质上是不适定的并且在相机受到或接近共线运动时对噪声测量敏感。此外从双视图几何中提取相对平移只有在已知相机内参的情况下才可能。当这些信息不准确时提取的平移不可靠。相反作者跳过了平移平均的步骤直接对相机和点的位置进行联合估计视为一种全局定位。Structure for Camera Pose Estimation例如直接使用双视图几何中的对应关系来估计全局平移。此外为了减少尺度漂移Holynski等将线和面特征集成到优化问题中。这些工作是将对3D场景结构的约束纳入有助于提高相机位置估计的鲁棒性和准确性。2.3. Global Structure and Pose Refinement在恢复相机后可以通过三角测量获得全局3D结构。结合相机的外部参数和内部参数3D结构通常会使用全局束调整进行精细化。Global Triangulation给定双视图匹配可以利用传递对应关系来增强完整性和准确性。多视图点的三角测量此类任务的常见做法是直接线性变换 (DLT) 和中点法以及最近的 LOST 方法。然而上述三角测量机制在存在任意水平的异常值时往往会失效。基于 RANSAC 的三角测量方案试图在存在不匹配的情况下建立多个点轨迹。Global Bundle Adjustment全局束调整对获得准确的最终3D结构相机外部参数和相机内部参数至关重要。它被形式化为一种联合鲁棒优化目标是最小化重投影误差如公式2所示2.4. Hybrid Structure-from-Motion为了结合增量方法的鲁棒性和全局结构从运动 (SfM) 的效率之前的研究提出了混合系统。HSfM提出了通过增量估计相机的位置和旋转。还有研究提出了一个图划分方法首先将整个图像集划分为重叠的簇。在每个簇内利用全局SfM方法估计相机姿态。然而根据研究公式当相机内部参数不准确时这类方法依然不可用。作者通过在全局定位步骤中对目标进行不同建模克服了这一限制。2.5. Frameworks for Structure-from-Motion目前有多个开源的结构从运动 (SfM) 框架可供使用。例如增量SfM范式的代表-COLMAP一个通用的SfM和多视角立体系统。开源的全局SfM流程例如OpenMVG它从几何验证匹配开始使用对立RANSAC估计相对姿态。之后OpenMVG通过调整循环长度加权来评估旋转一致性以消除异常边并利用剩余边通过稀疏特征值求解器求解全局旋转。全局平移通过三焦点张量进行精细化然后使用方法进行平移平均。最后OpenMVG通过逐点优化和全局束调整执行全局三角测量。类似方法还有Theia。基于学习的系统流程有PixSfM提出了一个联合优化机制用于特征和结构以实现亚像素准确重建。VGGSfM一个用于SfM任务的端到端学习框架。但是这两种方法的处理能力仅限于数十幅图像。本文出了一个新的端到端全局SfM流程如图2所示。图 2 GLOMAP系统处理流程3. 方法精析本节描述GLOMAP作为全局SfM是如何在鲁棒性和准确性方面缩小与增量SfM的差距。3.1. Feature Track Construction为了实现精确的重建必须仔细构建特征轨迹。首先只考虑由两视图几何验证产生的内点特征对应。在这一步中需要对两视图几何的初始分类进行区分如果单应矩阵最能描述两视图几何会使用矩阵来验证内点。同样的原理也适用于本质矩阵和基本矩阵。然后通过进行趋势性检验来过滤异常值。靠近任何一个极点或三角化角度较小的匹配也被移除以避免由于较大的不确定性而产生的奇异性。在对所有视图图边进行成对过滤后最后拼接所有剩余的匹配形成特征轨迹。图 3 全局定位3.2. Global Positioning of Cameras and Points这个步骤旨在共同恢复点和相机位置如图3所示。作者这里没有先执行平移平均然后进行全局三角化而是直接执行联合全局三角化和相机位置估计。针对标准增量和全局SfM系统中目标函数初始化和误差的问题本方法的目标函数使用归一化方向差异作为误差度量。原始形式是基于相对平移提出的而这里舍弃了相对平移约束仅包括相机光线约束。具体来说问题被建模和优化为其中是从相机观察点的全球旋转相机光线而是一个归一化因子。Huber作为鲁棒化函数p并且使用Levenberg-Marquardt作为优化器。所有点和相机变量均通过均匀随机分布初始化在范围[-1,1]内而归一化因子初始化为。与重投影误差相比本方法有几个优点。首先是鲁棒性。尽管重投影误差是无界的上述公式等价于其中对于最佳的是和之间的角度。因此误差严格限制在[0,1]范围内。这样异常值不会对结果产生重大偏差。其次由于其双线性形式在随机初始化时能够可靠收敛。与经典的平移平均相比在优化中舍弃相对平移项有两个关键优点。首先本方法适用于内参不准确或未知以及不遵循预期针孔模型的退化相机的数据集例如处理任意互联网照片时。这是它因为解决相对平移需要准确内参的知识。其次是全局SfM在共线运动场景中的适用性这已知是平移平均的一个退化情况。与成对的相对平移相比特征轨迹限制了多个重叠相机。因此GLOMAP可以在常见的前向或侧向运动场景中更可靠地处理。3.3. Global Bundle Adjustment全局定位步骤为相机和点提供了一个稳健的估计。但是当相机内参未知时精度受到限制。为了进一步优化利用Levenberg-Marquardt和Huber损失作为鲁棒化器进行了多轮的全局光束平差。在每一轮中首先固定相机的旋转然后与内参和点一起进行联合优化。然后根据图像空间中的重投影误差过滤轨迹。当过滤轨迹的比例低于0.1%时迭代停止。3.4. Camera Clustering解决被采集的图像不重叠的图像可能会被错误地匹配在一起。因此不同的重构可以合并为一个重构。为了克服这个问题通过对相机进行聚类来对重建进行后处理。首先通过统计每个图像对的可视点数构建可视性图G。然后寻找G中的强连通分量来发现具有良好约束的相机簇。递归地重复这个过程直到没有更多的簇可以合并为止。3.5. Proposed Pipeline如图2所示GLOMAP方法的流程图。该方法由两个主要组件组成对应关系搜索和全局估计。对于对应关系搜索它以特征提取和匹配开始。从匹配中估计两视图几何包括基本矩阵、必需矩阵和单应性。几何上不可行的匹配会被排除。然后在几何验证的图像对上执行视图图校准。使用更新后的相机内参估计相对相机姿态。关于全局估计通过平均来估计全局旋转并通过对和之间的角度距离进行阈值过滤来排除不一致的相对姿态。然后通过全局定位联合估计相机和点的位置随后进行全局束调整。同样的重建的精度可以通过结构优化进一步提高。4. 实验在各种数据集上对GLOMAP进行了大量实验这些数据集覆盖了从标定到未标定、从无序到序列场景的情况。数据集包含ETH3D、LaMAR、2023年图像匹配挑战赛 (IMC 2023) 和 MIP360并与最先进的框架 (OpenMVG, Theia, COLMAP) 进行了比较。Metrics对于所有评估采用两个标准指标。对于无序图像数据基于每对图像之间相对旋转和位移误差的最大值计算出的AUC召回曲线下的面积得分这种误差的表述考虑了每一对可能相机之间的偏差。对于序列图像数据在使用鲁棒的RANSAC方案将重建结果全局对齐到真实值后计算的相机位置误差的AUC得分。4.1. Calibrated Image Collections数据集 ETH3D SLAM 包含稀疏特征、动态物体和剧烈光照变化的序列数据。在具有毫米级精确地面真值的训练序列上进行方法评估。结果表明如表1所示GLOMAP系统的召回率比COLMAP高出约8%在0.1m和0.5m阈值下分别提高9分和8分且COLMAP的速度慢一个数量级。与其他全局SfM流程相比GLOMAP在召回率上提高了18%和4%在0.1m下AUC高出约11分确认了其稳健性。表 1 ETH3D SLAM数据集实验结果对比ETH3D MVS (rig) 每个场景包含约1000个多机rig曝光每个曝光4张图像。该数据集包含室外和室内场景5个训练序列具有毫米级的地面真值。结果如表2所示GLOMAP成功重建了所有场景。相比之下OpenMVG在所有场景上的表现较差而COLMAP在一个场景上失败Theia的表现始终低于本文的方法。在COLMAP成功的序列中GLOMAP达到相似或更高的精度其运行时间比全局SfM基线略慢但比COLMAP快约3.5倍。表 2 ETH3D MVSrig数据集实验结果对比ETH3D MVS (DSLR) 特征是一个无序的高分辨率图像集合包含室内和室外场景训练和测试序列都具有毫米级的地面真值。结果如表3所示与其他ETH3D数据集一致GLOMAP优于OpenMVG和Theia同时与COLMAP达到类似的精度。对于exhibition_hallGLOMAP的表现不准确因为场景的旋转对称性导致旋转平均崩溃。由于场景规模较小所有方法的运行时间相近。表 3 ETH3D MVSDSLR数据集实验结果对比LaMAR是一个大规模的室内和室外基准测试每个场景包含数万个由各种AR设备和智能手机拍摄的图像。实验结果如表4所示与其他基线相比GLOMAP在HGE和LIN上实现了显著更准确的重建包括COLMAP同时在速度上比COLMAP快几个数量级。在CAB上包括COLMAP在内的所有方法表现不佳特别是在视觉检查中由于存在许多前向运动轨迹、剧烈的昼夜光照变化以及楼层/房间之间的许多对称性和重复外立面这对这个极具挑战性的基准造成了很大的影响。表 4 LaMAR数据集实验结果对比4.2. Uncalibrated Images CollectionsIMC 2023 包含在复杂场景中unordered无序的图像集合。图像来自多个来源通常缺乏先前的相机内参。结果如表5所示。GLOMAP在3°、5°和10°下的平均AUC分数比其他全局SfM基线高出几倍。运行时间与其他全局SfM流程相似。与COLMAP相比所提方法在3°、5°和10°下的AUC分数高出约4分并且速度快约8倍。表 5 IMC 2023数据集实验结果对比MIP360包含7个以物体为中心的场景这些场景的高分辨率图像是由同一相机拍摄的。如表6所示GLOMAP与全局SfM基线相比显著更接近参考模型。GLOMAP速度超过COLMAP的1.5倍。表 6 MIP360数据集实验结果对比4.3. Ablation为了证明全局定位策略的有效性通过替换组件进行实验一是仅添加相对位移约束称为 (BATA, cam)以及二是添加点和位移约束 (BATA, campt)。在 ETH3D MVS (DSLR) 和IMC 2023上进行了测试。结果表明如表7所示相对位移约束会降低收敛性和整体性能。表7消融实验结果4.4. Limitations尽管GLOMAP总体上取得了不错的的性能但某些情况下会失效。主要原因是旋转均值计算的失败例如由于对称结构如表3中的Exhibition_Hall。在这种情况下GLOMAP可以与现有的方法结合比如Doppelganger。此外由于GLOMAP依赖传统的对应搜索错误估计的双视图几何或完全无法匹配图像对例如由于外观或视角的剧烈变化将导致结果下降或在最坏的情况下出现灾难性故障。5. 总结GLOMAP 提出了一种新的全局SfM流程。以前的全局SfM系统被认为更高效但鲁棒性较差GLOMAP重新审视了这个问题发现解决关键在于在优化中使用点。GLOMAP不再通过不适定的位移平均来估计相机位置也不再单独通过点三角测量获取3D结构而是将它们合并为一个单一的全局定位步骤。通过在多个数据集上进行实验对比GLOMAP在准确性和鲁棒性方面与增量方法相比有类似或更优的结果同时速度快十倍。