摘要:
无人机图像在各个领域得到了广泛的关注,而运动结构三角测量技术(SfM)已经成为无人机图像空中三角测量的金标准。随着多视点和高分辨率成像系统的使用导致数据量的增加以及无人机平台续航能力的增强,大尺度无人机图像的定向能力成为基于sFm的解决方案的一个突出和必要的特征。经典的SfM管道包括三个主要步骤,即(i)单个图像的特征提取,(ii)每个图像对的特征匹配,以及(iii)基于迭代束调整的参数求解。大部分时间成本消耗在第二步和第三步上。这可以从三个主要方面来解释。首先,对于特征匹配而言,图像数量多、重叠程度高导致匹配对的组合复杂度高。其次,由于初始匹配的异常值比较高,常用的异常值去除技术的效率会严重下降。第三,对于相机姿态和场景结构的参数求解,在增量式SfM工作流中,束调整( bundle adjustment BA)的迭代执行导致了较高的计算成本。因此,本文系统综述了有序和无序数据集匹配对选择、异常值主导的初始匹配异常值去除、BA效率提升等方面的研究进展,并对6个知名的基于sfm的无人机图像定向软件包进行了实验评价。
1 Introduction
The primal SfM technique has been originally designed to reconstruct small-scale scenes recorded by small-size photos with low spatial resolutions (Snavely, 2008; Snavely et al, 2008). For UAV images with large data volume and high spatial resolution, high computational costs would be consumed when directly using the primal SfM-based image orientation methods (Xu et al, 2016). Thus, the efficiency of the SfM should be seriously addressed for the orientation of large-scale UAV images. For a classical SfM method, the image orientation procedure consists of three major steps: (1) feature extraction for individual images, (2) feature matching for image pairs, and (3) unknown parameter solving within the iterative execution of bundle adjustment (BA). For the first step, the time consumption is linearly proportional to the number of involved images, and many attempts have been made to accelerate the efficiency of feature extraction, e.g., optimized feature detectors (Bay et al, 2008; Rublee et al, 2011) and hardware acceleration using GPU (Graphics Processing Unit) (Wu, 2007). However, with the increase of data volume, time costs involved in the last two steps cannot be tolerated, which are at least quadratic to the number of images. The reasons can be concluded from three aspects.
原始SfM技术最初被设计用于重建低空间分辨率的小尺寸照片记录的小尺度场景(Snavely, 2008;Snavely等人,2008)。对于数据量大、空间分辨率高的无人机图像,直接使用基于原始sfm的图像定向方法会消耗很高的计算成本(Xu et al ., 2016)。因此,在大尺度无人机图像的定位中,需要认真解决SfM的效率问题。对于经典的SfM方法,图像定向过程包括三个主要步骤:(1)单个图像的特征提取,(2)图像对的特征匹配,以及(3)迭代执行束调整(BA)中的未知参数求解。对于第一步,时间消耗与涉及的图像数量成线性比例,并且已经进行了许多尝试来加快特征提取的效率,例如优化特征检测器(Bay et al ., 2008;Rublee等人,2011)和使用GPU(图形处理单元)的硬件加速(Wu, 2007)。然而,随着数据量的增加,最后两步所涉及的时间成本是不可容忍的,至少是图像数量的二次元。原因可以从三个方面得出结论。
匹配对的高组合复杂性。
对于特征匹配,一个验证匹配对由两个空间重叠的图像组成,匹配对的数量直接决定了特征匹配所涉及的时间成本的大小。由于小型相机体积小,在给定测试场地采集的无人机图像数量远远大于传统航空摄影测量,并且在沿航迹方向和跨航迹方向都设置了较高的重叠度(大于90%),以确保后续航空三角测量的稳定图像连接。此外,如上所述,由于相对较低的飞行高度,无人机图像的空间分辨率极高。如果单纯采用穷举匹配策略,这些特征会导致特征匹配的计算复杂度很高。因此,匹配对的选择是加速特征匹配和提高基于sfm的无人机图像定向整体效率的最明显策略(Jiang and Jiang, 2017)。
•初始匹配的高异常值比率
。当使用局部特征进行关键点描述时,初始匹配中不可避免地存在异常值(假匹配),例如SIFT (Scale Invariant feature Transform)算法(Lowe, 2004)和近似k -最近邻(KNN) (Cover and Hart, 1967)进行特征匹配。此外,对于倾斜的无人机图像,重复的图案、遮挡和透视变形会进一步退化初始匹配,即使结合了两种众所周知的离群值去除方法,即比值检验和交叉检查。因此,对于经典的几何验证方法,即RANSAC (Random Sample Consensus) (Fischler and Bolles, 1981),其性能将急剧下降(Lu et al ., 2016),因为其时间成本随着初始匹配中异常值的百分比呈指数增长。为了提高基于sfm的图像定位的效率和鲁棒性,需要解决可靠的离群点检测问题。
增量式SfM的高计算复杂度。
现有的SfM方法可分为两大类,分别称为增量SfM方法(Shah et al ., 2014)和全局SfM方法(Wang et al ., 2019)。由于未知参数的良好初始值是保证全局最优解的关键,增量SfM方法被广泛应用于无人机图像定向。在增量式SfM的经典流水线中,首先选取一个交角足够大、对应数量足够多且分布良好的种子匹配对,进行相对定向,估计相机姿态,对三维点进行三角化。然后,通过添加一幅连接良好的图像,通过空间切除和空间相交恢复相机姿态和三维点,逐步进行图像定向。为了减少本地图像连接之间的累积误差,当新添加的图像数量超过设定值时,会重复执行本地束调整。最后,在配准所有图像后,进行全局束调整以细化所有参数。为了获得高鲁棒性和精度的定向结果,在增量式SfM管道中需要迭代BA。为了实现大规模无人机图像的有效定向,需要打破增量SfM的顺序约束。
2 The workflow of structure from motion
增量式SfM的总体工作流程如图1所示。它分为两个主要部分,分别称为对应搜索和增量重建。第一个组件的目标是为两幅图像搜索可靠且分布良好的特征匹配,包括三个步骤,即特征提取、特征匹配和几何验证。第二个组件的目的是估计图像的姿态和场景的3D点。这可以通过五个步骤来实现,包括初始化最佳图像对的选择,图像方向的配准,三维点计算的三角测量,局部和全局细化的束调整,以及异常值的去除。本节将简要介绍SfM解决方案的工作流程
Feature extraction and matching
对于每张图像,首先执行特征提取以检测关键点,关键点可以使用角(Harris and Stephens, 1988)或blob (Lowe, 2004)检测器找到。近年来,基于局部特征的匹配技术已成为宽基线图像的金标准,该技术不受平移、旋转和缩放的影响,并能承受光照和视点变化引起的大变形。与传统的角点检测器相比,不变量检测器利用描述子向量来描述关键点的局部区域。
因此,特征匹配可以转换为在两个描述符集之间搜索具有最小欧氏距离的最近邻问题。在文献中,通常使用近似k -近邻(KNN)搜索算法(Cover和Hart, 1967)或gpu辅助硬件加速(Wu, 2007)来提高其效率。此外,对于高分辨率、大维度的航空图像处理,在特征提取和匹配方面也采用了分而治之的策略,如L2-SIFT算法(Sun等)
然后将几何验证应用于初始匹配以去除剩余的异常值。针对高异常值比的情况,该过程可分为两个部分:(1)去除明显的异常值,提高初始匹配的内嵌比;(2)使用RANSAC方法提取与估计的变换模型一致的可靠内嵌。前者通常使用局部光度和几何约束来实现(Hu et al ., 2015;Li等人,2017b),因为它们对高异常值比和局部变形的鲁棒性;后者旨在使用严格的极缘几何约束来细化剩余匹配,通常通过使用七点算法估计基本矩阵(Zhang, 1998)或使用五点算法估计基本矩阵(Nister, 2004)来实现。通过这些步骤,得到了可靠的对应关系。
Image orientation using bundle adjustment
为了恢复相机姿势和场景几何,应该将多个图像对的一致对应关系绑定以生成轨迹(Cao等人,2019;Zhang et al ., 2016)。轨迹是多个图像之间的匹配点的连接集,对应于场景的相同3D点。在增量式SfM中,首先选取两幅相交角足够大且特征分布良好的图像作为种子匹配对,通过图像配准和三角剖分恢复其姿态和三维点,然后使用BA进行细化。然后,通过向重构场景中添加一幅条件良好的图像来迭代执行该过程,并进行局部BA以减少新添加图像之间的累积误差。最后,在所有图像注册完成后,进行全局BA以细化所有相机姿势和场景点(Snavely et al, 2008)。
对于局部和全局BA,将相机姿态和场景点的精炼问题建模为重投影函数的联合最小化(Triggs et al, 2000),其中轨迹投影与其对应图像点之间的误差总和最小化。BA的目标函数如式(1)所示。
上述工作流程是增量式SfM的图像定向过程。与全局SfM方案相比,增量SfM方案有两个主要优点。首先,由于在增量工作流程中使用了迭代的离群值去除策略,它可以容忍图像定向期间的高离群值比率。其次,增量式SfM利用迭代的局部BA来细化图像配准和点三角剖分,利用全局BA来保证重建模型的全局一致性,可以提供更高的重建精度。因此,增量式SfM解决方案是目前广泛采用的实现无人机图像空中三角测量的工作流程。然而,随着涉及图像数量的增加,增量SfM存在效率低的问题,这主要是因为执行迭代的局部束调整。对于大尺度无人机图像,应该认真解决。
3 Efficient SfM solutions
在本节中,对运动增量结构的有效解决方案进行了全面的回顾。根据增量SfM工作流程中耗时最多的步骤,即特征匹配、离群值去除和束调整,我们将这些方法分为三类,并对每