本文由原paper一作Linfei Pan(潘林菲)博士指导授权【深蓝AI】编译首发,Linfei Pan博士就读于苏黎世联邦理工学院,她的个人主页为:https://lpanaf.github.io/
论文链接:
https://arxiv.org/abs/2407.20219
01 背景简介
从一组图像中恢复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重构对比示例©️【深蓝AI】编译
02 全局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 Adjustment,BA)来顺序配准相机,而是利用视觉图G作为输入,寻求一次性估计所有相机的位姿
,通常将其分解为独立的旋转和位移平均步骤。
Rotation Averaging:
也称为旋转平均,与位姿图优化(PGO)算法相关。该问题通常被表述为非线性优化,惩罚全局旋转与估计的相对位姿之间的偏差。实际上,由于噪声和异常值,该问题通常通过鲁棒最小度量目标进行建模并优化为(如公式1所示):
其中鲁棒器
(如Huber)、旋转参数化 (如四元数或轴角) 和距离度量
(如弦距离或测地线距离) 的各种组合。基于这些原则, 目前大多数工作进行展开研究。
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系统处理流程©️【深蓝AI】编译
03 方法精析
本节描述GLOMAP作为全局SfM是如何在鲁棒性和准确性方面缩小与增量SfM的差距。
3.1 Feature Track Construction
为了实现精确的重建,必须仔细构建特征轨迹。首先只考虑由两视图几何验证产生的内点特征对应。在这一步中,需要对两视图几何的初始分类进行区分:如果单应矩阵最能描述两视图几何,会使用矩阵来验证内点。同样的原理也适用于本质矩阵和基本矩阵。然后通过进行趋势性检验来过滤异常值。靠近任何一个极点或三角化角度较小的匹配也被移除,以避免由于较大的不确定性而产生的奇异性。在对所有视图图边进行成对过滤后,最后拼接所有剩余的匹配形成特征轨迹。
▲图3|全局定位©️【深蓝AI】编译
3.2 Global Positioning of Cameras and Points
这个步骤旨在共同恢复点和相机位置(如图3所示)。作者这里没有先执行平移平均然后进行全局三角化,而是直接执行联合全局三角化和相机位置估计。针对标准增量和全局SfM系统中,目标函数初始化和误差的问题,本方法的目标函数,使用归一化方向差异作为误差度量。原始形式是基于相对平移提出的,而这里舍弃了相对平移约束,仅包括相机光线约束。具体来说,问题被建模和优化为:
其中,
是从相机
观察点
的全球旋转相机光线, 而
是一个归一化因子。Huber作为鲁棒化函数
,并且使用Levenberg-Marquardt作为优化器。所有点和相机变量均通过均匀随机分布初始化在范围
内, 而归一化因子初始化为
。
与重投影误差相比,本方法有几个优点。首先是鲁棒性。尽管重投影误差是无界的,上述公式等价于
其中对于最佳的
是
和