开放科学(资源服务)标志码(OSID):
正射影像拼接技术是摄影测量和遥感领域中的重要研究课题之一,但用于生成正射影像的数字地形模型不包含明显的地面物体,例如建筑物等,若拼接线穿过这些区域,则拼接线区域会出现明显的鬼影。因此,如何从重叠区域中检测出明显的地物信息,避免拼接线穿过,是创建无缝大规模文档对象模型(Document Object Model,DOM)的关键问题。
国内外研究人员对图像拼接过程中的最优拼接线搜索方法有较为深入的研究,所提出的拼接线检测方法[1]主要分为以下2个步骤:构建成本代价函数[1-3],如文献[4-5]采用待拼接影像重叠区域的颜色、边缘、纹理等信息来定义该函数;利用snake模型[2]、Dijkstra[3]、动态规划[4, 6-7]、图割[5, 8]等优化算法获得最优拼接线。文献[2]提出一种利用颜色信息和纹理相似性构成的成本函数,采用snake分层策略自动检测拼接线方法。CHON等[3]利用归一化互相关评估像素间的差异,使用Dijkstra算法获得最优拼接线。LI等[9]定义了一种边缘增强的成本函数,采用图割优化获得最优拼接线。上述方法利用像素差异信息来指导最佳拼接线的检测取得了较好的效果。但由于成本函数只考虑了影像像素信息,拼接线优化时易穿过弱纹理区域的建筑物墙面、屋顶等区域,会形成明显的鬼影现象。
为解决上述问题,基于辅助数据的方法逐渐被关注。MA等[10]提出借助点云信息,将明显地物标记为障碍物,使用A*算法使拼接线绕过这些区域。文献[11]采用道路矢量的方法确保拼接线沿着街道中心线。文献[12]提出从数字地面模型(Digital Surface Model,DSM)中提取海拔信息,并在低海拔地区引导拼接线检测。文献[13]关注矢量建筑物之间的中心线,基于矢量建筑物地图生成候选拼接区域,再通过最小化视觉过渡得到精细化拼接线。文献[14]提出基于DSM的边缘图来细化初始接缝线的方法。文献[15]基于DSM结合阈值分割、数学形态学和跳跃点搜索检测最佳拼接线。文献[16]利用色差、梯度、及从DSM中获得的物体高度进行接缝线搜索。这些基于辅助数据的方法能获得高质量的拼接线,但均需要额外的辅助信息。
因此,研究人员开展了基于对象的最优拼接线搜索方法研究。例如PAN等[17]提出利用图像分割结果确定拼接线是否可以通过区域,再将Dijkstra算法用于拼接线的像素级检测的方法。文献[18]提出对地物进行分类,并对每个类别分配不同的权重,在此基础上优化成本函数获得最佳拼接线。文献[19-20]采用半全局匹配(Semi-Global Matching,SGM)方法获得深度图,从而获得非地面区域的分割结果,指导拼接线搜索。文献[21]引入卷积神经网络(Convolutional Neural Network,CNN)得到语义分割结果,并以此作为约束利用图割优化方法获得最优拼接线。文献[22]采用一种基于梯度的超像素最优拼接线搜索方法。文献[23]基于前景分割结果得到最优接缝线,在精度和效率上都有所提高。YUAN等[24]构建了一个超像素能量函数,该函数融合了色差、梯度差和纹理复杂度信息获得位于高度相似的连续区域中的最佳拼接线。以上这些拼接方法的基本思想是借助分割、深度图等对象信息,先确定拼接线路径的区域,再进行拼接线搜索。与基于像素的方法相比,基于对象的方法提高了接缝线的质量,但由于节点数量众多,优化效率低。
光流作为传统的视觉任务[25],是由观察者和场景之间的相对运动引起影像中目标、边缘等的相对运动。大光流对应于影像间的变化区域,可用于检测正射影像间明显地面区域。本文提出一种基于光流的影像拼接方法,以有效避免接缝穿过明显的地面物体。通过采用从粗到细的接缝线优化策略,提高接缝线检测的效率。此外,在超像素级别和像素级别分别进行优化,以获得最优的接缝线。
1 本文方法本节将详细介绍基于光流的障碍物区域检测方法以及由粗到精的接缝线搜索策略。在本文实验中,仅考虑2张影像的拼接。如图 1所示,本文所提方法的整体框架由4个部分组成,流程如下:1)使用正射影像的几何信息确定相邻影像的重叠区域;2)采用超像素分割和密集光流的方法获得大光流区域,并以此区分出明显地物,例如建筑物等;3)结合地物信息和归一化相关的成本函数,采用超像素和像素级的Dijkstra算法,由粗到精地获得最优接缝线;4)将输入的两幅正射影像沿拼接线缝合成一幅影像。
![]() |
Download:
|
图 1 本文方法整体框架 Fig. 1 Overall framework of the method in this paper |
由于生成正射影像的数字地形模型中没有包含明显地物信息,导致在不同的正射影像中,不同高度的地面物体会产生相对位移。经过实验发现,具有大位移的对象如建筑物等,对应较高的光流值,可用于检测障碍物区域。
近几年,光流算法有了较大的进展。如边缘保持插值光流法(EpicFlow)[26]和鲁棒插值法(RicFlow)[27]可以有效地获得图像对的像素位移。RicFlow在遮挡、大位移情况下可获得更好的性能,该方法通过构建一个超像素图模型,使用传播优化机制既保证了光流运算效率也提高了计算精度。因此本文采用此方法获取重叠区域的密集光流。首先,给定图像对
图 2(a)和图 2(b)分别为待拼接正射影像及红色方框放大后的子图像(彩色效果见《计算机工程》官网HTML版),白色虚线框表示重叠区域。从放大的子图像中可以看出明显地物在不同影像上的差异。如果拼接线穿过这些目标,则会产生明显的接缝鬼影现象。图 2(c)给出了左影像的超像素分割结果,采用RicFlow获得的密集光流如图 2(d)所示,反映了相邻影像间的位移,较高的灰度值表示较大的光流,本文将此区域标记为障碍物区,即拼接线不能穿过区域。相反,深色区域表示拼接线可通过区域,例如道路、停车场和草地。从图 2(e)可以看出,密集光流方法可以检测出大多数地物区域。
![]() |
Download:
|
图 2 地物检测结果 Fig. 2 Object detection results |
如果仅利用光流便可精确检测到明显的地物,就只需使用光流结果便可指导获得最优拼接线。但由于光流生成过程中不可避免的匹配噪声,因此很难准确地描述物体边界,尤其是小目标物体如小型、静态汽车等。因此,最终获取的接缝线存在不平滑、易穿过小物体的现象,如图 3所示穿过汽车、栅栏等。
![]() |
Download:
|
图 3 基于光流的拼接线检测结果 Fig. 3 Splicing line detection results based on optical flow |
归一化互相关(NCC)算法[3]是描述像素差异的传统方法。NCC的值表示两像素间的差异。在本文中,光流信息和NCC均被用来指导接缝线搜索过程。假设通过光流获得了明显的物体集合
$ C\left(x\right)=\left\{\begin{array}{l}\mathrm{N}\mathrm{C}\mathrm{C}\left(x\right)+C, x\in \left\{0\right\}\\ \mathrm{N}\mathrm{C}\mathrm{C}\left(x\right), \mathrm{其}\mathrm{他}\end{array}\right. $ | (1) |
其中:x表示I2中的像素点;NCC(x)表示待拼接影像重叠区域的两像素的相异性。当点x具有有效的光流时,赋于一较大的常数C。该常数值用于扩大障碍物区域与非障碍物区域的差异。
本文采用的匹配代价图如图 4所示,成本函数中的小目标和边缘凸显出来,视觉上显得更加合理。
![]() |
Download:
|
图 4 匹配代价图 Fig. 4 Matching cost map |
在给定拼接线起点和终点的情况下,检测拼接线的常用方法是在构建的成本图中找一条成本最小的路径,但待拼接的重叠区域中的像素数量巨大,影响优化效率。为改善此问题,本文引入一种简单有效的方案来降低接缝检测中的计算成本。采用Dijkstra的算法在已获得的超像素区域中找到最短的超像素路径。超像素成本函数定义为:
$ C\left({S}_{i}\right)=\frac{\sum\limits _{n=1}^{\left|{s}_{i}\right|}c\left({X}_{n}\right)}{\left|{s}_{i}\right|} $ | (2) |
其中:
Dijkstra算法是一种全局优化方法,其通过在每个节点上进行最少的本地操作来确定成本空间上的最佳路径,该算法用于确定超像素级的最短成本路径。极大减少优化节点的数量,从而提高了路径检测效率。在获得超像素最优路径后,再次使用Dijkstra算法在像素级别上精细化拼接线。图 5所示为拼接线检测结果(彩色效果见《计算机工程》官网HTML版),紫色区域为超像素级的最佳拼接区域。尽管在超像素级别检测到的粗接缝区域可以避免与大多数明显地物信息相交,但拼接区域并不平滑,并且穿过了很多地面小目标。
![]() |
Download:
|
图 5 由粗到精策略的拼接视觉结果 Fig. 5 Splicing visual result of coarse to fine strategy |
在精细化拼接线前,对拼接线区域进行扩展,以确保拼接线的平滑度。本文实验过程中采用膨胀的方法建立一个扩展缓冲区
![]() |
Download:
|
图 6 本文方法拼接后的结果 Fig. 6 The mosaicking result of the method in this paper |
本节将用实验来评估所提出方法的有效性。所有实验均在Core i7 3.4 GHz和8 GB RAM在CPU上利用C ++实现。表 1列出了本文实验采用的3个数据集的详细信息。
![]() |
下载CSV 表 1 实验数据集 Table 1 Experimental data set |
实验影像已根据数字地形模型对齐。文献[32]指出:主观上理想的拼接线应避免穿过明显的地面物体,如建造或移动汽车,应该穿过质地平滑的区域,例如道路、河流、草丛或空地。同时,为更好地评估检测到的拼接线质量,应该具有一个客观、公正、定量的评价指标。本文应用结构相似性(Structural Similarity,SSIM)指数[19]来定量地评估。根据文献[19]的描述,SSIM的值越高,表示所检测到的拼接线质量越好,SSIM的最大值为1。
本文实验由3部分组成:第1部分讨论实验的参数设置;第2部分使用数据集1中的正射影像验证了本文方法的有效性;第3部分将所提方法从视觉和客观指标上与传统方法、最新方法、商业软件进行比较。
2.1 参数设置为探究超像素个数的选择对拼接线检测结果的影响,本文在实验中选取不同的超像素个数M,通过SSIM评价指标衡量拼接结果。
如表 1所示,由于正射影像分辨率较大,本文在处理重叠区域的光流时,对重叠区进行缩小处理。图 7所示为影像缩放因子设置为0.5和0.25时拼接结果质量的变化。从图 7可知,随着超像素个数的增加,SSIM值下降,运算时间相应减少。这说明了超像素分割时,选择的像素数量过多,会降低最终的拼接质量,但运算效率得到了提高。此外,缩放因子设置的越小,计算时间减少,但拼接质量也降低。这说明了重叠区域的缩放比例影响了光流的获取精度,进而降低了地物区域提取的准确性。考虑本文方法的运算效率和精度,后面的实验过程中,将超像素大小M设置为100,重叠区域按比例因子0.5进行缩小处理。
![]() |
Download:
|
图 7 超像素个数和缩放尺度的评价结果 Fig. 7 Evaluation results using different mean superpixel sizes and scale factors |
图 8展示了使用和不使用光流情况下的拼接结果。从视觉结果来看,2种算法的拼接线走向相同,并均避免穿过明显的建筑物和车辆。但对于特定的局部区域,如图 8中箭头所示,检测结果有所不同(彩色效果见《计算机工程》官网HTML版)。在图 8(a)中,由于街道树木、车辆等小目标的影响,拼接线选择穿过建筑物边缘,导致最终的拼接效果中出现了可见的不连续性。但如图 8(b)所示,由于本文采用了光流检测,剔除了建筑物区域,因此拼接线选择经过平坦的街道。
![]() |
Download:
|
图 8 拼接视觉结果 Fig. 8 Visual splicing results |
另外,为证明基于光流的障碍物检测方法的有效性,本文对2种方法生成的拼接结果进行客观评估。对于分辨率为6 040×2 856的重叠区域,光流方法的拼接结果SSIM值为0.893 1,比非光流方法获得的检测结果0.863 9高3%。相应地,因为需要在接缝线检测之前计算光流,运算时间从25.66 s增加到43.07 s。
在超像素级别检测到接缝线后,本文采用由粗到细的精细化策略,在像素级上进行进一步优化。通过构造1个以粗糙接缝线为中心,采用膨胀操作的缓冲区,该方法需要3.48 s来获得缓冲区域。本文对不使用由粗到细的精细化策略和使用此策略时的缝合结果进行对比,视觉结果如图 9所示(彩色效果见《计算机工程》官网HTML版)。从图 9(a)可以看到接缝线穿过了地面的小目标。图 9(b)为考虑到粗略方案后,拼接线按预期的方式环绕了汽车,并选择穿越附近的平坦区域的场景,SSIM值从0.898 5增加到了0.909 9,质量评价指标提高了1%。
![]() |
Download:
|
图 9 拼接的视觉结果对比 Fig. 9 Comparison of visual splicing results |
为验证所提方法的有效性,将本文方法与领域内的最新方法以及传统Dijkstra算法进行对比。其中,最新方法采用文献[23]提出的利用图割优化获得最佳拼接线的方法;传统Dijkstra算法采用文献[3]提出的利用NCC构建能量函数,并限制最大差异程度的方法。此外,本文还与目前使用广泛的正射影像拼接软件OrthoVista进行对比,该软件可从其官方网站获得。不同方法在3个数据集的拼接结果如图 10~图 12所示。其中,白色虚线框表示重叠区域,拼接线用黄色线段表示,彩色矩形及其相应的放大区域展示了局部穿过建筑物的情况(彩色效果见《计算机工程官网HTML版》)。
![]() |
Download:
|
图 10 在数据集1上的拼接线检测结果 Fig. 10 Seamline detection results on data set 1 |
![]() |
Download:
|
图 11 数据集2上的拼接线检测结果 Fig. 11 Seamline detection results on data set 2 |
![]() |
Download:
|
图 12 在数据集3上的拼接线检测结果 Fig. 12 Seamline detection results on data set 3 |
从视觉效果上看,OrthoVista软件在3个不同数据集中穿过的建筑物最多,尤其在建筑密集的数据集2。与OrthoVista相比,文献[3]的方法、文献[23]方法和本文所提方法通过的目标较少,但文献[3]方法选择了较长且不光滑的接缝线,导致运算时间较长。本文所提方法成功绕过了明显的目标,尽管也跨越了几栋建筑物,但由于这些建筑物位于起点或终点区域,本文方法未对起点和终点区域进行筛选,因此很难绕开这些建筑物。
除从主观视觉比较外,本文对所有方法进行了定量评估,结果如表 2所示。由表 2可知,在所有实验中,本文的接缝线检测方法具有最高的SSIM值,精度比OrthoVista商业软件提高5%以上、比文献[23]的方法提高约3%、比文献[3]的方法提高约1%,如表 2的第4列所示。在运算效率上,比文献[3]方法提高了1倍、与目前运算效率高的文献[23]的方法保持在1个数量级别,如表 2的最后1列所示。
![]() |
下载CSV 表 2 不同方法的对比结果 Table 2 Comparison results with different method |
本文提出一种基于光流的从粗到细的正射影像图像拼接方法。通过采用超像素的RicFlow密集光流算法来区分明显的地物信息,并结合光流和NCC的成本函数来约束接缝的检测过程。在此基础上,使用Dijkstra算法在超像素级别和像素级别上分别进行优化,获得最优的接缝线,实现两幅正射影像的拼接。实验结果表明,本文所提方法优于图割方法、Dijkstra方法和商业软件OrthoVista。但本文实验仅考虑了两幅影像的拼接,下一步将对多幅影像拼接、光照环境变化等情况下的鲁棒性及拼接质量这2个方面对算法进行优化,以获得更高质量的拼接效果。
[1] |
周清华, 潘俊, 李德仁. 遥感图像镶嵌接缝线自动生成方法综述[J]. 国土资源遥感, 2013, 25(2): 1-7. ZHOU Q H, PAN J, LI D R. A review of automatic generation methods of mosaic seam lines in remote sensing images[J]. Remote Sensing for Land and Resources, 2013, 25(2): 1-7. (in Chinese) |
[2] |
KERSCHNER M. Seamline detection in colour orthoimage mosaicking by use of twin snakes[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2001, 56(1): 53-64. DOI:10.1016/S0924-2716(01)00033-8 |
[3] |
CHON J, KIM H, LIN C S. Seam-line determination for image mosaicking: a technique minimizing the maximum local mismatch and the global cost[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2010, 65(1): 86-92. DOI:10.1016/j.isprsjprs.2009.09.001 |
[4] |
YU L, HOLDEN E J, DENTITH M C, et al. Towards the automatic selection of optimal seam line locations when merging optical remote-sensing images[J]. International Journal of Remote Sensing, 2011, 33(4): 1000-1014. |
[5] |
谷雨, 周阳, 任刚, 等. 结合最佳缝合线和多分辨率融合的图像拼接[J]. 中国图象图形学报, 2017, 22(6): 842-851. GU Y, ZHOU Y, REN G, et al. Image stitching combining the best stitching and multi-resolution fusion[J]. Chinese Journal of Image and Graphics, 2017, 22(6): 842-851. (in Chinese) |
[6] |
陈丹丹, 方发明, 刘惠燕. 一种基于改进动态规划的最佳拼接线搜索方法[J]. 计算机应用与软件, 2018, 35(10): 211-237. CHEN D D, FANG F M, LIU H Y. A searching method for optimal splicing line based on improved dynamic programming[J]. Computer Applications and Software, 2018, 35(10): 211-237. (in Chinese) |
[7] |
LI L, YAO J, LU X H, et al. Optimal seamline detection for multiple image mosaicking via graph cuts[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2016, 113(3): 1-16. |
[8] |
LI M, LI D R, GUO B X, et al. Automatic seam-line detection in UAV remote sensing image mosaicking by use of graph cuts[J]. ISPRS International Journal of Geo-Information, 2018, 7(9): 361. DOI:10.3390/ijgi7090361 |
[9] |
LI L, YAO J, XIE R P, et al. Edge-enhanced optimal seamline detection for orthoimage mosaicking[J]. IEEE Geoscience and Remote Sensing Letters, 2018, 15(5): 764-768. DOI:10.1109/LGRS.2018.2805324 |
[10] |
MA H C, SUN J. Intelligent optimization of seam-line finding for orthophoto mosaicking with LiDAR point clouds[J]. Journal of Zhejiang University Science (Computers and Electronics), 2011, 12(5): 417-429. |
[11] |
WAN Y C, WANG D L, XIAO J H, et al. Automatic determination of seamlines for aerial image mosaicking based on vector roads alone[J]. ISPRS J Photogrammet Remote Sensing, 2013, 76(2): 1-10. |
[12] |
CHEN Q, SUN M W, HU X Y, et al. Automatic seamline network generation for urban orthophoto mosaicking with the use of a digital surface model[J]. Remote Sensing, 2014, 6(12): 12334-12359. DOI:10.3390/rs61212334 |
[13] |
WANG D L, CAO W, XIN X P. Using vector building maps to aid in generating seams for low-attitude aerial orthoimage mosaicking: advantages in avoiding the crossing of buildings[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2017, 125(3): 207-224. |
[14] |
郑茂腾, 熊小东, 朱俊锋, 等. 一种基于带权A*搜索算法的正射影像镶嵌线网络优化方法[J]. 武汉大学学报(信息科学版), 2019, 44(11): 1650-1658. ZHENG M T, XIONG X D, ZHU J F, et al. A network optimization method for orthophoto mosaic lines based on weighted A* search algorithm[J]. Geomatics and Information Science of Wuhan University, 2019, 44(11): 1650-1658. (in Chinese) |
[15] |
CHEN G, CHEN S, LI X J, et al. Optimal seamline detection for orthoimage mosaicking based on DSM and improved JPS algorithm[J]. Remote Sensing, 2018, 10(6): 1884-2021. |
[16] |
ZHANG Y S, ZHANG M L, DU S J, et al. Seamline optimisation for urban aerial ortho-image mosaicking using graph cuts[J]. Photogrammetric Record, 2018, 33(16): 131-147. |
[17] |
PAN J, WANG M, LI J L, et al. Region change rate-driven seamline determination method[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2015, 105(1): 141-154. |
[18] |
PAN J, YUAN S G, LI J L, et al. Seamline optimization based on ground objects classes for orthoimage mosaicking[J]. Remote Sensing Letters, 2017, 8(3): 280-289. DOI:10.1080/2150704X.2016.1264023 |
[19] |
PANG S Y, SUN M W, HU X Y, et al. SGM-based seamline determination for urban orthophoto mosaicking[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2016, 112(3): 1-12. |
[20] |
袁修孝, 段梦梦, 曹金山. 正射影像镶嵌线自动搜索的视差图算法[J]. 测绘学报, 2015, 44(8): 877-883. YUAN X X, DUAN M M, CAO J S. A disparity map algorithm for automatic search of mosaic lines in orthophotos[J]. Acta Geodaetica et Cartographica Sinica, 2015, 44(8): 877-883. (in Chinese) |
[21] |
LI L, YAO J, LIU Y H, et al. Optimal seamline detection for orthoimage mosaicking by combining deep convolutional neural network and graph cuts[J]. Remote Sensing, 2017, 9(701): 1-22. |
[22] |
LI L, YAO J, SHI S Z, et al. Superpixel-based optimal seamline detection in the gradient domain via graph cuts for orthoimage mosaicking[J]. International Journal of Remote Sensing, 2018, 39(12): 3908-3925. DOI:10.1080/01431161.2018.1447164 |
[23] |
LI L, TU J M, GONG Y, et al. Seamline network generation based on foreground segmentation for orthoimage mosaicking[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2019, 148(3): 41-53. |
[24] |
YUAN S G, YANG K, LI X, et al. Automatic seamline determination for urban image mosaicking based on road probability map from the D-LinkNet neural network[J]. Sensors, 2020, 20(7): 1832-1837. |
[25] |
祖曰然, 包秀国, 唐文忠, 等. 深度光流估计方法研究进展[J]. 计算机辅助设计与图形学学报, 2021, 33(2): 310-320. ZU Y R, BAO X G, TANG W Z, et al. Research progress of deep optical flow estimation methods[J]. Journal of Computer-Aided Design and Computer Graphics, 2021, 33(2): 310-320. (in Chinese) |
[26] |
REVAUD J, WEINZAEPFEL P, HARCHAOUI Z, et al. Epicflow: edge-preserving interpolation of correspondences for optical flow [C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2015: 1164-1172
|
[27] |
HU Y L, LI Y S, SONG R. Robust interpolation of correspondences for large displacement optical flow [C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2017: 4791-4799
|
[28] |
ACHANTA R, SHAJI A, SMITH K, et al. SLIC superpixels compared to state of the art superpixel methods[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(11): 2274-2282. |
[29] |
HU Y L, RUI S, LI Y S. Efficient coarse-to-fine patchmatch for large displacement optical flow [C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2016: 5704-5712
|
[30] |
WEINZAEPFEL P, REVAUD J, HARCHAOUI Z, et al. Deepflow: large displacement optical flow with deep matching[C]//Proceedings of IEEE International Conference on Computer Vision. Washington D. C., USA: IEEE Press, 2013: 1385-1392.
|
[31] |
LI Y, MIN D B, DO M N, et al. Fast guided global interpolation for depth and motion[C]//Proceedings of European Conference on Computer Vision. Berlin, Germany: Springer, 2016: 717-733
|
[32] |
PAN J, ZHOU Q H, WANG M. Seamline determination based on segmentation for urban image mosaicking[J]. IEEE Geoscience and Remote Sensing Letters, 2014, 11(8): 1335-1339. |