引言
图像拼接的步骤:
1、计算多个重叠图像之间的对应关系
2、匹配的图像进行变形和对齐
3、对齐的图像进行混合
4、生成宽视场图像。
基础知识:
RANSAC:是RANdom SAmple Consensus(随机抽样一致)的缩写。它可以从一组包含局外点的观测数据集中,通过迭代方式估计数学模型的参数。它是一种不确定的算法——它有一定的概率得出一个合理的结果;为了提高概率必须提高迭代次数。
高斯混合模型:指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通常用于解决同一集合下的数据包含多个不同的分布的情况(或者是同一类分布但参数不一样,或者是不同类型的分布,比如正态分布和伯努利分布)。
SIFT特征提取算法:实质是在不同的尺度空间上查找关键点(特征点),计算关键点的大小、方向、尺度信息,利用这些信息组成关键点对特征点进行描述的问题
无缝的方法:消除视差或物体在重叠区域移动造成的虚影和模糊等潜在缺陷。
前景检测技术结合拼接:消除重影和模糊,采用视频稳定算法来解决jitter and shakiness。
稳定算法:通常用于消除拼接视频中的抖动伪影。
预处理方法:采用预标定的方法对视觉传感器的参数进行标定,构建恒定的拼接模板,生成全景图。
图像/视频拼接的缺点:基线宽、视差大、重叠区域低纹理等。新技术可能为解决这些问题提供了新的机会,例如基于深度学习的语义通信和3D图像拼接。
一、Introduce
图像拼接的三个步骤:
1、通过预先标定摄像机的内外参数或通过计算光流、逐像素对应或稀疏特征匹配来估计基于像素的运动模型,建立原始图像之间的对应关系。
2、在图像之间进行估计的变换和配准后,通过选择图像平面(如第一图像平面或估计的中间图像平面)来确定保护平面,然后对配准的图像进行变形并对准投影平面。
3、将对齐后的图像融合到一个大画布上,在图像之间的重叠区域融合相同的对应像素,并保留非重叠区域的像素。
(大多数图像拼接算法,假设原始图像被相机旋转对其光学中心(例如大多数全景拼接算法),或者场景是近似平面的(即无视差或最小视差),违反这些假设会导致图像配准不准确,进一步的错位和重影。)
视频拼接的三个步骤:
(原始视频有动态和静态拍摄模式,对应有不同的问题和解决方法。)
1、首先利用图像拼接算法对选定的原始视频帧进行拼接,构造拼接模板;
2、通过这个模板,对子序列帧拼接,生成一个广角视频;
3、利用前景检测解决拼接视频中潜在的模糊和重影问题。
当目标在图像之间的重叠区域移动时,拼接模板更新(图1)。与固定光学传感器相比,一些研究侧重于使用移动摄像机(如手持移动摄像机和无人机)拍摄的视频拼接[1517],而且这样的视频通常会给拼接带来额外的挑战,比如抖动和大视差
图1 Pipeline of stitching:(a) 输入图像或视频;(b)计算像素或特征点之间的相似性度量来配准选定的图像对;(c)对配准图像进行变形和对齐;(d)混合对齐的图像。在(全景)视频拼接过程中,应执行对象检测以更新拼接模板。
二、概述拼接算法
主要是对多个重叠图像的配准、对齐和混合。分为两类:基于像素的方法和基于特征的方法。
(1)基于像素的方法(也称为直接方法)
a、通过直接最小化像素间的差异(如梯度、颜色、深度和几何信息等)来配准图像;
b、通过估计一个全局变换模型来变形和对齐图像(如3D旋转矩阵);
c、由于梯度信息对图像中的高阶特征(如线、轮廓和边缘)非常敏感,一些图像拼接算法采用由粗到细的策略,通过求解代价函数来优化梯度域的近似对齐;
d、利用像素的深度和颜色,有些将拼接描述为流形投影,从而根据计算的光流矢量将图像划分为许多条带;
e、采用图形结构来辅助拼接。
以上方法的优点:通过利用图像信息有效地注册图像;缺点:需要复杂的预处理和计算,并且仅限于处理包含在同一平面中的简单场景的图像。
(2)基于特征的方法
采用了稀疏特征描述符和顺序实现的特征匹配。
不同点:基于特征的方法通过选择性地提取稀疏特征点而不是重叠区域中的所有像素,速度更快;通过有效地构造不同的特征描述符,鲁棒性更强;并且通过自动计算输入图像之间的邻接关系,自动化程度更高。
a、早期基于特征的方法根据估计的变换对图像进行全局变形和对齐。此外,图像平面被划分为两个主要平面,包括前景和背景平面或更多平面,并且每个平面对应一个变换。这些方法在不区分重叠区域和非重叠区域的情况下扭曲图像,这将算法局限于简单场景。
b、局部变换方法适用于更加复杂的场景。首先将图像划分为均匀的网格,每个网格被扭曲并与单应性矩阵对齐,单应性矩阵(单应性(Homography)变换,它用来描述物体在世界坐标系和像素坐标系之间的位置映射关系。对应的变换矩阵称为单应性矩阵。)在尽可能投影(APAP:图像配准算法)中引入移动直接线性变换(DLT)方法进行估计。在APAP的推动下,几个研究人员试图通过引入基于网格的对齐优化算法来改进初始对齐,从而将具有挑战性的数据集与视差和基线(即自然基线和宽基线)缝合在一起。
(3)视频拼接方法
视频拼接以图像拼接为基础,将目标检测和稳定算法相结合,形成宽视场视频。
对于静态摄像机,经典视频拼接模型首先拼接输入视频的选定帧以生成拼接模板,然后根据模板拼接子序列帧,并且当对象跨视频之间的重叠区域移动时更新模板。
对于移动摄像机,拼接由移动摄像机(如手持移动摄像机或无人机)捕获的视频,这些摄像机将视频拼接和稳定结合起来,以构建宽视场视频并消除抖动鬼影。此外,Lin等人介绍了一种同时定位和映射方法来计算摄像机运动,以及一种3D重建来重建重叠区域。
全景拼接是一种闭环拼接,即每幅图像与序列图像中的对应图像进行配准,并对配准后的图像进行变形、对齐、投影到圆柱面或球面上。全景拼接的大部分工作都是利用一般的透视变换方法估计摄像机参数,通过一些优化方法减少累积误差,然后将对齐后的图像进行混合,无缝生成360度全景视图/视频。
近年来,与VR相关的类似全景设备也陆续发布,如Facebook Surround 360(图2)。采用预校准相机内部参数和bundle adjustment (BA)来调整相机外部参数以矫正相机位置。然后用光流法计算立体视差,构造全景图。图3显示了图像和视频拼接的分类。
配准和对齐最广泛的方法是:SIFT和RANSAC。然后再使用基于网格的对齐优化方法进一步改进对齐。
特点:在标准数据集或精心选择的图像上表现良好,曝光一致,相机围绕其光学中心旋转,从而将一系列图像拼接在一起,生成高质量的视图,没有重影、模糊或其他故障。
由于许多要拼接的图像与标准数据集非常不同,并且给拼接带来了额外的挑战,例如宽基线、视差和低纹理。为了更清楚地确定宽基线和视差,定义了图像的不同相机间距(即基线),相邻图像之间的中值距离为0.8 m被视为自然基线,1.6米被视为宽基线,2.4米被视为非常宽的基线。基线的存在导致视差。
在日常生活中,正常人的视觉使用视差来估计到物体的距离。通过观察附近的物体并交替眨眼,可以发现两个视点观察到的两个位置之间的偏移,两个视点之间的距离称为基线;视差随着到对象的距离增加而逐渐消失,当距离无限大或基线为零时,视差消失。基线的影响随着距离的增加而逐渐减小。标准数据集中的基线通常是自然基线或更小的基线,不需要视差或最小视差,大视差导致模糊和重影,宽基线导致不匹配和错位(图4)。
一些研究引入了基于深度学习的语义匹配,利用卷积神经网络(cnn)从图像中学习和提取密集特征,学习的特征比手工特征(如SIFT、Harris)更灵活,并利用图像信息。
三、图像拼接算法
根据算法类别和技术发展情况,本节将图像拼接算法分为两类:基于像素(直接)的方法和基于特征的方法。
(一)基于像素(直接)方法
为了利用图像信息(如强度、梯度、颜色和几何形状),基于像素的(直接)方法通过直接最小化像素间的差异来配准多个图像。本节将直接方法分为基于流形投影、梯度域、深度信息和图结构的不同方法。
1、基于流形投影的方法(Manifold projection-based methods)
在拼接局部图像序列的过程中,当相机在旋转或移动时发生倾斜,会产生全局累积误差。随着原始图像数量的增加,对齐后的图像大小逐渐减小,甚至趋于某一点。
为了解决这个问题,Peleg等人将图像拼接定义为从原始图像中提取的条带对齐。光流的方向与所选条带的轴线正交,所有图像被投影到图像平面的包络上。拼接是通过将图像中的细条投影到流形上来实现的(图6)。由于光流方向在图像中是相互平行的,并且将误差分配到每个图像中,有效地避免了全局累积误差。同时,在非常快速的拼接过程中,使用更多受限的运动模型来生成最终视图,尽管精度较低。
2、梯度域的方法
由于梯度信息对图像中的高级特征(如线、轮廓和边缘)非常敏感,有助于理解图像场景,Levin等人基于梯度域图像拼接(GIST)方法构建了几种不同的拼接方法。其中每一种方法对应一个成本函数,对不同函数的质量进行评价和比较。由于克服了图像的几何失调,首选的方法是在原始图像梯度上进行羽化代价函数的L1优化。该方法将拼接后的图像导数与输入图像导数之间的不相似性度量最小化,并将图像配准、对齐和混合在梯度域而不是强度域,有效地减少了拼接伪影和边缘重复。
Jia注册一个或两个最优分区,在分区区域中构造一组作为ID稀疏特征检测的稀疏变形向量,并通过在梯度域中最小化代价来将变形平滑地传播到目标图像中,以对齐图像结构和强度。
3、图论方法
Uyttendaele等人构建了一个图形,用于某些对象在重叠区域移动时拼接图像。图的顶点表示重叠区域中的差异区域(ROD),边缘连接相应的ROD(图7)。将更高的权重指定给更大、更中心的ROD顶点,以有选择地删除每个对象的所有实例,只保留一个实例,从而避免由任一选定侧面图像产生的对象运动不连续性。每个图像被分割成小块,每个小块对应一个计算出的二次传递函数。每个函数中将Patch与相邻的Patch进行平均,并针对曝光的局部变化进行进一步的调整,然后将转移的像素与相应的转移函数混合。
4、基于深度的方法
基于深度的方法(DBM)结合了摄像机投影模型和深度估计方法,其虚拟拼接视点与任意输入一致。首先通过平面扫描算法和图切割优化计算出每个像素点的颜色和深度,将重叠区域进行拼接。为了合成非重叠区域,对颜色进行分割,将深度传播到相邻的颜色区域,并在拼接视图中保持它们之间平滑的外观连接。此外,将静态图像拼接方法扩展到视频拼接。利用高斯混合方法将原始视频分成不同的层,如前景层和背景层,然后根据各自的深度估计将这些层投影到拼接平面上。
5、结论和比较
直接的方法主要集中于解决由图像本身的属性引起的问题,例如亮度差异,而基于像素的匹配通常效率低下。现有的直接方法都局限于使用单个平面处理图像,或者场景大致为平面,并且没有视差。更多细节如表1所示。
(二)基于特征的方法
与直接方法相比,基于特征的方法估计的是具有稀疏特征点的二维运动模型。局部特征描述符SIFT(尺度不变特征变换的稀疏特征描述符)主要用于检测和描述图像特征。它对图像的平移、旋转和缩放是不变的,对3D视点的变化、噪声的增加、仿射失真以及光照和对比度的变化具有鲁棒性。大量的研究表明SIFT是图像中应用最广泛的特征描述,子拼接及性能已得到验证。SIFT主要包括四个阶段:尺度空间极值检测、关键点定位、方向分配和关键点描述符(图8)。
在第一阶段中,通过使用高斯重复卷积输入图像来构建图像金字塔,包括图8(a)左侧所示的一组尺度空间图像,并减去相邻的高斯图像以产生图8(a)右侧所示的高斯(DOG)金字塔的差。在第二阶段,通过在图8(b)所示的当前和相邻比例下,将像素与其3 x 3区域中的相邻像素进行比较,检测DOG图像的最大值和最小值位置。下一阶段根据图8(c)左侧显示的局部梯度方向,为每个检测到的关键点分配一个或多个方向。最后,通过计算图8(c)右侧所示关键点区域周围每个采样点的梯度大小和方向来定义关键点。
还有一些其他的特征描述符。例如,Harris角检测器计算相邻像素之间的强度差以检测显著区域,即角点、边和平滑区域,尽管它对图像比例不是不变的。
基于SIFT,加速鲁棒特征(SURF)介绍了一种基于Hessian矩阵的检测器特征提取方法,该方法主要适用于摄像机自我校准。与Harris相似,当圆周围有连续像素时,来自加速分段测试(FAST)的特征选择关键点,并且这些像素都比候选像素的强度减去阈值更亮曲.
主要将基于特征的拼接方法分为全局单一变换和局部混合变换方法。
1、全局单变换方法
全局变换方法采用相同的变换模型,如投影变换和仿射变换,对图像进行变形和对齐,并且不区分原始图像之间的重叠区域和非重叠区域。有些方法估计一个用于对齐的单一变换模型。此外,其他方法将一个图像平面划分为多个平面,每个平面对应一个变换。它们对场景结构简单的图像表现良好,重叠区域和非重叠区域进行了相似的转移,为基于网格的对齐方法提供了基础。
Brown和Lowe采用基于局部不变特征的目标识别技术进行图像匹配。图像拼接是用稀疏特征描述符匹配多幅图像,使用概率模型进行验证,并使用增益补偿和自动校直进一步改进拼接视图,即众所周知的AutoStitch。它估计了一个全局单应变换来有效地对图像进行变形和对齐,同时严格假设重叠区域必须放置在同一个平面上,即相机之间的基线是一个自然基线或更小的基线。Auto Stitch将稀疏特征匹配引入到图像拼接中,基于稀疏特征的方法在图像拼接中占主导地位。
为了满足更复杂的应用和解决重叠区域中包含多个平面的图像对齐问题,Gao等人提出了双单应变换模型,将图像分为前景平面和背景平面两个优势平面,每个平面对应一个估计的单应变换。将图像分割为多个平面,每个平面对应一个仿射变换。首先计算出局部最优仿射拼接域,然后生成具有较好外推能力的平滑拼接域。它足够灵活,可以在保持良好外推的同时解决视差问题,有效地解决遮挡问题,并进一步避免局部最优,获得更好的对齐。
2、局部混合变换方法
基于网格的对齐方法最初是图像拼接的一个突破。首先将图像划分为均匀的网格,每个网格对应一个估计的变换,越来越多的研究提出了不同的优化策略,主要包括基于混合网格的图像变形和对齐。重叠区域和非重叠区域根据不同的变换经历不同的过程。例如,非重叠区域通常通过使用类似的变换模型进行扭曲以避免潜在的扭曲,重叠区域被扭曲并与估计的投影变换对齐,然后引入平滑场以平滑两个区域之间的区域。
Zaragoza et al. (APAP)将图像分割成均匀的网格,每个网格对应一个单应变换,用Moving DLT方法估计。他们首先介绍了在图像拼接中基于网格的对齐策略,局部保留非重叠区域中的显著结构,并减少重叠区域中翘曲引起的失真。由于APAP在对齐重叠图像方面的优异性能,迄今为止被认为是最先进的方法之一,许多关于拼接的研究工作都是基于APAP的。例如,刘和金提出了一种数据驱动的翘曲自适应方案来改进APAP,进一步识别错位区域并插入适当的点,即增加翘曲的灵活性,改善对齐。此外,图像拼接的研究已进入下一阶段,即基于网格对齐优化的局部混合变换。本节对图像拼接进行分组和分类将局部混合变换方法分为基于混合外推、基于接缝的优化、基于网格的对齐优化和基于高级特征的方法。
(1)Hybrid extrapolation-based methods
为了获得更自然的拼接视图,Chang et al. (SPHP)采用了局部混合变换模型。将重叠区域的投影变换平滑地外推到非重叠区域,两区域的翘曲逐渐由投影向相似转变。在相同的约束条件下保留了显著结构,同时降低了图像畸变,但这并不适用于多平面重叠区域。同样地,在目标图像上引入平滑拼接场,线性化单应变换,并将其改为全局相似变换,以减轻非重叠区域的透视失真。但是,全局相似变换的估计对非自然的旋转和缩放不具有鲁棒性,并且在拼接过程中会产生局部畸变。
Li等人采用准单应性扭曲方案来平衡非重叠区域中的透视失真和投影失真。 首先用一条垂直线将图像划分为两个空间:重叠区域和非重叠区域分别属于不同的空间。然后,将翘曲表示为求解一个二元系统,将透视失真和投影失真分别表示为斜率保持和尺度线性化,并将其表示为根据一般单应性对原始图像进行扭曲,并使用估计的准单应性对图像进行二次扭曲。
(2) Seam-based optimization methods(基于Seam的优化方法)
张和刘构建了一个混合变换模型来处理具有一定视差的图像。首先估计最佳单应性以粗略对齐图像,采用内容保留扭曲方法进一步改进对齐,然后采用接缝驱动方法并利用多波段融合得到最终的全景图。执行有效且稳健的缝合以处理具有一定视差的图像,同时以随机方搜索扭曲假设,并且当前过程不利用从先前迭代生成的对齐知识。
在张和刘的工作的基础上,Lin等人改进了接缝驱动方法通过根据特征到候选接缝的距离调整特征权重。首先采用基于超像素的特征聚类方法生成不同的对齐假设,然后根据不同的特征权重迭代生成最优接缝。同时,采用结构保持扭曲方法来保持曲线和直线结构(图11)。它以更高的计算成本获得了显著的性能增益・
为了利用深度学习框架的能力,Herrmann等人利用了物体检测方面的进展,并结合拼接算法构建了以物体为中心的图像拼接框架。该方法的重点是通过一些新的约束条件来搜索最优接缝。与多重配准方法不同,在接缝查找阶段采用单一配准,裁剪术语惩罚切割对象的接缝,成本与接缝长度成比例。此外,重复项避免重复,遮挡项促进遮挡标签。然而,该方法仅限于缝合包含可检测对象的图像。
(3) Mesh-based alignment optimization methods(基于网格的对准优化方法)
为了减少失真,引入了从粗到细的拼接方案。首先,通过执行APAP获得图像之间的配准和对齐,然后将对齐优化表述为求解由不同约束组成的目标函数。这些包括确保扭曲后的对齐质量的对齐项、用于正则化和将对齐约束从重叠区域传播到非重叠区域的局部相似项,以及确保每个扭曲图像经历相似性变换的全局相似项。为了对旋转和缩放更具鲁棒性,采用BA方法估计每个图像的焦距和3D旋转。
Zhang等人提出了一种从粗到精的纯网格优化对齐框架,用于优化二维空间中的对齐和规则性. 采用局部单应性检验方法对图像进行粗略对齐,采用各种先验约束,通过迭代优化方案改善对齐效果;采用形状校正方法对宽基线图像进行拼接;同时,许多作品采用了类似的方法对不同约束之间的耦合关系进行处理训练优化,计算成本高。类似于单应性,最初注册部分图像,细化其网格表示,然后通过求解成本函数计算出最佳接缝。
这四个顶点的插值权重是:设计更多的先验约束,而一定的结果是局部优化,而不是全局优化[57],Herrmann等人计算了
(4) High-level feature-based methods(基于高级特征的方法)
由于摄影师的偏好不同,低纹理区域客观地出现在一些图像中,增加了特征检测的难度。Xiang等人利用了图像的高级特征,如线和点特征用于从低纹理重叠区域的图像中获得更多匹配. 提取的线特征用于指导局部翘曲,并通过求解目标函数,即包含点对齐项、全局对齐项、平滑度项和由线对应项和线共线项组成的线约束项。采用全局相似性约束调整局部扭曲,减少非重叠区域的投影失真。此外,它在重叠区域中构造网格顶点作为候选点集来匹配匹配特征不足的区域。线和轮廓信息用于改进对齐. 这些方法缓解了低纹理的问题,关键的解决方案是利用图像信息获得足够的匹配。例如,提出了一种近似最近邻算法(近似NNF)来搜索图像块之间的近似最近邻匹配,称为PatchMatch这是一种图像匹配方法,可进一步用于图像拼接。
3、结论与比较
基于特征的方法在图像拼接中占据主导地位,在标准数据集和一些具有挑战性的数据集上效果良好。这些工作主要是为了获得更好的结果而不是更高的效率,其结果是它们仍然不适合实际应用。表2显示了一个例子与其他方法的对比。早期基于特征的方法使用变换方法(同形图或仿射)对图像进行变形和对齐。它们不区分重叠和非重叠区域,导致失真和重影,并通过对重叠和非重叠应用不同的变换来扭曲图像,在有限的图像上表现良好。此外,其他方法侧重于优化缝合接缝,尽管计算复杂也获得了更好的结果。最后,介绍了基于网格的对齐优化方法来解决具有挑战性的数据集,其他类别的一些方法也采用了这些方法。这些方法设计了各种先验约束来优化对齐,但由于不同约束之间的耦合关系,局部失真仍然无法避免。
四、视频拼接算法
视频拼接比图像拼接吸引较少的关注,可能是因为它们之间的关系:它们既相似又不同。视频拼接在许多方面都是多图像拼接的延伸和推广,而大角度的独立运动、相机变焦以及可视化动态事件的愿望带来了额外的挑战,如jitter and shakiness。本节根据视频采集方式将视频拼接方法分为基于静态摄像机的拼接方法和基于移动摄像机的拼接方法。
(1)静态摄像机
经典的视频拼接系统主要对静态摄像机拍摄的图像进行拼接,并给出目标检测方法。首先对选定的输入视频帧进行拼接,生成拼接模板,拼接模板中没有物体在输入视频之间的重叠区域移动。根据模板依次拼接子序列帧,当有移动对象时更新模板。
Rav-Acha等人利用拼接算法和目标检测步长将检测到的动态内容嵌入到拼接图像中。许多一致的信息包含在框架中空间相邻的视频由平移摄像机捕捉,并获得精确的对齐。
他和于 为监视应用进行了从粗到细的缝合过程。首先将两个输入视频的选定帧分成不同的层,当重叠区域内没有移动物体时,使用传统的拼接流水线对背景进行拼接。同样,将匹配的特征对聚类到涉及不同对象的多个层,每一层根据相同的单应性包含一组匹配的特征对,视频整体预对齐。为了避免由于运动物体引起的信息缺失、重影和伪影,在重叠区域计算梯度变化,并进一步更新最优接缝。
与经典过程不同,Jiang和Gu基于Zhang和Liu的方法制定了时空网格优化框架. 根据估计的时空全局变换对输入视频的所有帧进行初始对齐,并构造一个目标函数来表示时空域中的匹配代价,以解决几何对齐问题。类似于视频纹理合成,权重更高被分配到显著区域,如空间边缘和时间边缘,以保留视频中的显著结构并搜索最佳接缝。
(2)动态摄像机
一些作品专注于拼接移动摄像头(如智能手机或无人机)拍摄的视频,这给拼接带来了额外的挑战(如jitters and shakiness)。等方法可以消除jitters and shakiness,但不能直接用于稳定缝合视频。为了解决拼接后视频的抖动问题,许多研究通常同时进行图像拼接和稳定。
郭等人同时进行了视频拼接和稳定。估计了两种转换,即不同摄像机之间的相互变换以获得空间对齐,以及每个视频内的帧内变换以保持时间平滑度。同时,采用基于网格的翘曲方法进行对齐,将捆绑路径方法用作视频稳定的基线,以合成平滑的虚拟摄像机路径。它有效地缝合具有一定视差的场景,假设相机在被限制在一定自由度的情况下稳定移动,最初强制执行粗略同步,并且由于深度变化大和运动模糊而导致错位。
Su等人将视频拼接表述为求解由稳定项和拼接项组成的目标函数,并执行迭代优化方案。 最近,Nie等人扩展了该方法。首先用背景识别方法对输入视频的背景进行识别,然后进行缝合,然后引入假匹配消除方案以减少不匹配。最后,引入评分策略来评估稳定质量。
Lin和Liu将密集3D重建和摄像机姿势估计技术结合起来,缝合手持摄像机拍摄的视频。首先采用COSLAM系统恢复3D摄像机运动和稀疏场景点,重建重叠区域中的3D场景,构建保持在所有原始路径的中间的平滑虚拟摄像机路径,然后基于网格的翘曲优化方法称为保持线视频扭曲(LPVW)。采用该方法对沿路径缝合的视频进行合成。
(3)结论与比较
静态摄像机上的视频拼接通常按照图1所示的过程进行,而移动摄像机上的拼接需要稳定(表3)。同时,现有的视频拼接工作在效果和效率上都存在不足。更好的结果伴随着复杂的计算。
五、全景算法
近年来,随着VR技术和拼接技术的发展,各种基于全景拼接的360度多光相机相继问世。不同于单鱼眼相机直接获得180度广角视角,它们基于全景拼接方法构建全景,并将360度分布式相机阵列捕捉到的多个重叠图像/视频进行拼接。同时,全景拼接是对图像/视频拼接的再扩展,适用于围绕光学中心旋转360度的摄像机。许多研究结合非结构化或结构化的相机阵列和拼接算法来创建全景图,并直接在VR设备上显示。下面将列举一些有代表性的方法。
(1)A single camera
当相机围绕其光学中心旋转捕捉原始图像时,就形成了360度全景图。然而,它实际上取决于相机相对于相机前面最近的物体的平移量。
Szeliski和Shum只估计了旋转矩阵中的三个未知数,而不是一般透视变换中的八个参数,以变形和对齐一系列图像,由手持相机围绕其光学中心旋转360度来捕获。序列开始和结束时的图像匹配在一起,以在构建全景后同时更新和调整估计的焦距和旋转矩阵,并进一步处理累积误差。然后,与每个图像相关联的3D旋转矩阵(以及可选的焦距)本质上比估计全八自由度单应性更稳定,这使得这种方法成为大规模图像拼接算法的选择. 它将每幅图像分成小块,并估计基于小块的对齐,并为后续算法提供指导。 Duffin和Barrett采用球形弧长而不是角度来参数化全景图像的位置。这些角度用于将每个候选图像定位在公共球心上,并且减轻了焦距和角度之间的强耦合。
为了避免匹配所有帧对,Steedly等人假设大多数时间相邻帧在空间上是相邻的,只搜索所有时间相邻图像对之间的匹配。同样,通过对重叠区域进行局部匹配来选择关键帧,并将重叠程度强烈限制在一个阈值范围内(即25% ~ 50%),将开始帧和结束帧定义为关键帧。
根据艺术家和普通用户的喜好,规则的矩形边界在全景图中提供了更好的视觉体验。扩展了接缝雕刻算法1661,从全景图像构建矩形图像。首先通过输入图像插入水平或垂直接缝,并将接缝水平或垂直扩展一个像素,将每个接缝一侧的所有像素移位,将不规则全景图像扭曲成矩形,然后对矩形图像进行网格划分。最后,采用基于网格的全局优化步骤来保持图像的形状和直线等感知特性。
与使用四点单应估计的一般RANSAC方法类似,Brown等人提出了一种改进的三点RANSAC算法来估计旋转运动模型,引入了半校准策略,并且除了焦距之外的所有参数都是已知的。此外,Kaynig等人扩展了三点解算器。为了构建一个图像系统,将图像处理表述为理想的针孔投影加上径向畸变,并有效地校正透镜畸变。提出的方法比Brown等人的工作中的方法快得多,但成本更高。为了获得更快的缝合速度,Silva等人,使用SURF[27]和RANSACp3]在GPU上执行缝合。可以加载预先校准的网格,并且可以手动修改某些参数以适应精细细节。对于实时处理,该算法仅限于使用更快的处理方法,因此会失去某些效果并需要更多的成本。
(2)Camera arrays
与基于单个摄像机的全景拼接不同,一些研究构建摄像机阵列来模拟围绕其光学中心旋转的单个摄像机运动(图2)。由于这些方法通常用于实际应用,因此需要更多的实时性和更简单的算法。
Perazzi等人扩展了基于光流的局部扭曲方法,并在不精确放置摄像机的情况下构建了非结构化摄像机阵列(图13)。为了建立一个最佳的两两变形序列,迭代最大加权图匹配采用该方法搜索相应的输入视图集,每个图像以最小视差误差独立扭曲。method使用更好的算法降低了硬件成本,但假设摄像机的配置在输入序列上是静态的,则无法解决抖动问题。
Lee等人提出了用于视频的360度全景拼接系统,并构建了一个名为Rich360的结构化摄像机阵列。首先,对结构紧凑的摄像机支架进行预标定,即使用经典的calibration对摄像机的内外参数进行鲁棒性标定,然后将标定结果作为视频拼接的模板进行重用。其次,将输入图像按照相应的参数分别投影到不同深度的投影表面上,最大限度地减小重叠区域的差异;然后,缝合的球形全景图被放入一个矩形框中。结合图像的梯度、显著性和人脸特征来度量区域的重要性探测器和更多光线(即像素)被分配到一个重要区域,以充分利用源视频的分辨率。与Perazzi和Sorkine Homung方法相比,Rich360强烈要求结构紧凑的摄像机阵列,灵活性较低。
Pan等人介绍了全景拼接方案到汽车系统称为Rear-Stitched全景视图(RSVP)。RSVP在车辆周围分配四个摄像头,两侧两个摄像头替换侧面外部后视镜,后部一对立体摄像头替换中心内部后视镜。pre-calibrated外在相机参数(例如,位置和方向)和一组精确设计的三个校准图表与已知的维度,然后视频,由双方捕获摄像头和左立体相机,缝合在一起生成后环境的无缝的全景。同时,利用右侧立体相机进行深度估计,利用内部和外部参数将原始图像投影到虚拟相机视图中,然后确定最优接缝,生成空间相干的单一RSVP视图。
Fisheye lens camera arrays(鱼眼镜头相机阵列)
由于180度鱼眼视野视野宽,包含更多的信息,一些方法从鱼眼镜头相机阵列捕获的图像序列构建全景。Agarwala等人采用由粗到细的方法构建长图像场景的多视点全景图,并使用翻译手持鱼眼镜头相机捕捉原始图像[69]。但与其他方法相比,自动化程度不高,局限性较大,需要更多的预处理和人工处理。在预处理阶段,使用可用的软件去除径向畸变9,补偿曝光变化,并使用SIFT[25]和运动结构法恢复相机投影矩阵[70]。此外,还手工将图像表面定义为投影平面。
2017年,三星Research America发布了Gear 360相机,由两个视角均接近195度的鱼眼镜头相机组成。相应的拼接方法补偿了鱼眼镜头相机的强度衰减,将鱼眼图像展开,采用自适应对齐方法将其配准并对齐,然后将对齐后的图像进行混合。与以往方法不同的是采用双鱼眼镜头相机结构代替非结构化/结构化相机阵列。由于单鱼眼镜头的视场比普通镜头相机更宽,双鱼眼镜头拼接的累积误差更小。然而,鱼眼镜头相机拍摄的图像具有有限的重叠视场,两个镜头之间的不对中导致拼接边界上可见的不连续。
结论和比较
与图像和视频拼接相比,全景拼接方法专注于以闭环方式拼接标准的360度图像/视频序列。一般来说,全景拼接是一种可以应用于实际应用的技术。采用预标定方法对摄像机参数进行标定,再结合拼接算法生成最终的全景图。这些作品在结合某些特定设备(如结构相机阵列)的全景拼接上都表现得很好。同时,一些作品在全景拼接方面也表现得很好,但它们需要特定的采集环境或标准的数据集。最后,其他的工作可以解决由非结构化相机阵列引起的一定程度的视差,尽管这仅限于静态相机配置。
挑战和扩展
本文对近年来图像视频拼接领域的研究成果进行了详细的综述。图像拼接的发展主要分为两个阶段。基于像素的方法和基于早期特征的方法根据估计的单个转印量对多个重叠图像进行全局变形和对齐。近年来提出的方法(如基于网格优化对齐的基于特征的方法)采用局部混合转移模型对图像进行翘曲和对齐。在后一种方法下,突出的结构得到更好的保存,更自然的缝合视图。全景拼接一般假设需要合理获取数据集,以减轻算法的局限性(摄像机围绕其光心旋转360度,或通过摄像机阵列进行模拟),广泛采用预标定方法以获得更快的拼接速度。视频拼接是在图像拼接的基础上进行的,要想实现更好的视频拼接,需要更有效、更鲁棒的图像拼接。
挑战
图像拼接已经研究了几十年,提出了许多方法。大多数方法只在标准数据集(例如,自然基线和很少或没有视差)上表现良好(图14),有些方法试图通过引入更复杂的算法来解决更有挑战性的数据集(例如,宽基线和视差)。同时,日常生活中的大多数实际应用都倾向于最简单的解决方案,如将复杂的设备与最简单的算法相结合,如对相机进行预校准。大量研究表明,实际需要缝合的数据集更加复杂,目前的方法是不够的(图15)。
图像拼接的挑战:
(1)基线宽,视差大
与专业的获取技术(如摄影)相比,实用的图像往往以一种更灵活、更随意的方式捕捉,如日常生活中使用便携式设备(如手机或数码相机)随意捕捉图像。相机之间的角度和曝光差异导致许多问题,例如,宽基线,大视差,和亮度差异。
(2)低纹理重叠区域
低纹理区域在某些图像中客观存在。图像场景中包含大比例的背景区域,如人工场景中具有相同图案的花岗岩地板,或自然场景中的单个景观(如天空、花海、湖泊、森林)。
(3)非常宽的基线和非常大的视差
拼接技术在现代监控系统中得到了广泛的应用。非常宽的基线是由于监控摄像头的不规则分布造成的。摄像机之间的基线可能是几米,也可能超过10米。例如,摄像头平行分布在一个正方形(即机场大厅),这也导致图像之间的重叠率很低。同时,摄像机到目标的距离一般比较短,视差非常大。
从本质上讲,视差在拼接时引入了虚影和模糊,而两个摄像机之间较宽的基线和低纹理重叠区域导致检测到的匹配特征点太少,无法准确计算图像之间的转换,从而导致配准错误。
可能的解决方案
大量研究表明,宽基线、大视差和低纹理重叠区域的挑战可能在二维拼接领域得到解决。这些问题主要导致无法获得足够的匹配特征对,进一步错配以进行拼接,或在拼接视图中出现重影和模糊。为解决这些问题,一些工作提供了参考:
(1)基于网格的对齐优化方法仍然是宽基线拼接多幅图像的潜在解决方案,而更多不同的先验约束远远不能解决本质问题。需要足够数量的匹配特征点和更精确的配准,但不像直接方法中的逐像素匹配。
(2)基于高级特征的方法利用图像的高级信息,如线、边、轮廓等,从低纹理的图像中获得更多的匹配,但仅限于人工场景(如规则纹理的标准划分的地面结构)。
(3)基于接缝的优化方法也可以用于处理视差较大的图像,但需要迭代执行许多对齐和接缝的估计操作,计算复杂度一般不高。
有些作品利用cnn学习图像的特征来理解图像中的内容。学习到的特征比传统的手工特征(如SIFT)更灵活,并利用图像信息。利用CNN特征从图像中寻找更显著的特征,并结合优化方案提高配准和对齐。
此外,非常宽的基线导致图像之间的低重叠。这种情况下,无法有效计算图像之间的变换,视差过大导致深度不一致。这些不属于2D拼接字段,无法使用2D拼接算法执行自动匹配。为了将这些问题融合到图像中,引入了三维重建,并提出了一种三维重建与二维拼接相结合的三维拼接算法。
为了有效解决上述问题,本调查介绍了以下三个可能的解决方案:
(1)基于深度学习语义匹配的粗到细拼接方案
学习到的CNN特征更加灵活,可以提取出更多潜在的匹配候选从宽基线或低纹理区域的图像。首先通过语义匹配获得初始对齐,然后结合合理的优化策略(如基于网格的对齐优化方法)对对齐进行改进。
(2)结合语义分割的分层接缝优化
重影和模糊通常是由于视差较大造成的,即在不同视点观察同一物体时存在位置偏移,距离物体越近,偏移越大。将图像分为背景和前景等不同的层,每层对应一个语义标签,通过立体匹配来估计视差图。将背景单独拼接,根据视差图将前景物体的位置混合在一起,然后将背景和前景混合。
(3)三维拼接结合三维重建和二维拼接
对于基线非常宽、视差非常大的图像,无法进行自动配准和对齐。通过对单幅图像进行三维重建,获得三维场景上的初始图像配准和对齐,并利用二维拼接来提高对齐效果。
一些具有更复杂结构和变换的图像不能与2D拼接或3D拼接融合。在这种情况下,可以采用其他领域的方法,如三维重建和同步定位与测绘(SLAM),并引入基于点云的方法来配准图像。我们希望以上提出的几个有潜力的方案对进一步推进图像拼接与融合的研究具有重要意义。
语义匹配和三维拼接方法的具体原理如下:
(1)基于深度学习的拼接语义匹配
深度学习的优越性能在近年来得到了证明,许多作品利用学习到的CNN特征来理解图像的语义内容。由于其对几何变形和光照变化的不变性,CNN特征能够准确地定位显著特征。基于深度学习的语义图像匹配可能是解决拼接面临的挑战(即宽基线和低纹理)的潜在解决方案。
图16给出了语义对应的基本流程,其中使用预先训练的CNN特征,而不是手工生成的特征。主要有两种匹配方案:1)端到端方法利用了深度学习体系结构的优势,但需要一些先验信息,如标记数据。2)基于预处理的方法首先从图像中学习CNN特征,然后通过一些后处理策略获得对应关系。
图16语义对应的管道,给定图像对(I1, I2),使用预先训练的CNN模型进行特征提取,匹配学习的CNN特征,然后根据估计的变换扭曲和对齐图像。
Ufer和Ommer在ImageNet数据集上采用预先训练好的Alexnet生成图像金字塔和特征金字塔,并根据Shannon公式和非最大抑制算法从前四个卷积层的特征图中提取CNN特征。为了获得最优的对应,他们求解了一个由相似性约束和利用几何信息(即位置、方向和距离)的几何约束组成的目标函数。同样,Aberman等人采用了预先训练的VGG-Ufer和Ommer在ImageNet数据集上采用预先训练好的Alexnet生成图像金字塔和特征金字塔,并根据Shannon公式和非最大抑制算法从前四个卷积层的特征图中提取CNN特征。为了获得最优的对应,他们求解了一个由相似性约束和利用几何信息(即位置、方向和距离)的几何约束组成的目标函数。同样,Aberman等人采用了预先训练的VGG-19网络生成五层特征映射金字塔,为每个神经元构建标称维数的特征描述符,然后使用最近邻匹配算法[41]搜索神经最佳伙伴对。提出了一种由粗到细的方法,从高到低精确定位匹配特征对。
Ignacio Rocco等人[42]构建了端到端CNN框架来模拟SIFT的匹配过程,在标记的数据集上以高度监督的方式进行训练。损失函数为标记特征点的均方误差,然后输出带有多个自由参数的几何变换。仿射变换和薄板样条变换分别对应框架中的两个模块,提高了对齐精度和容错能力。
金字塔仿射回归网络(PARN)以粗到细的方式估计语义相似图像的局部变化仿射变换场[43]。首先估计整个图像上的一个全局仿射变换,然后以四叉树的形式逐步增加变换的自由度,最后生成逐像素的连续仿射变换场。
这些研究为解决图像拼接中宽基线、低纹理的问题提供了可能的方案,即结合图像的语义理解和二维拼接方法,采用基于语义的匹配方法,对具有相似语义对象的图像进行粗略对齐,然后可以引入一些优化方法来改善对准。
(2)三维拼接
为了有效融合基线非常宽、视差非常大的图像,Zhou等人提出了一种基于单幅图像三维重建的三维拼接方法,通过估计参考摄像机姿态和二维图像匹配信息来对齐相邻的三维模型[44]。将匹配的点对或选定的关键点对添加到三维模型的交平面空间中,利用所添加的点对构造密集的网格顶点,进一步对原始图像进行变形。对齐后的图像通过选择一个虚拟视点进行混合。三维模型在图像匹配、变换和融合过程中起着重要的作用,需要利用摄像机和重建模型的位姿参数对选定的点对进行投影和反投影。三维拼接的流水线如图17所示。
该方法在合适的深度平面上表现良好,并根据视差较大造成的不同深度将每张图像分割成多个子区域。进行匹配和翘曲,以减少不匹配和大失真。最终的拼接结果在任何视点都可以观察到,不会产生较大的失真,但存在以下缺点:首先,由于交互式重建的限制,三维拼接的效果有限,尚未引入自动深度估计方法;其次,最终的结果是三维的,过于灵活,有效地减少了失真,同时限制了用户通过旋转视角来观察所有信息。
目前,各种需求和不同技术的创新给图像/视频拼接带来了新的机遇和挑战,拼接技术在日常生活和专业应用中已经不可或缺。例如,城市级监控系统采集了大量包含视频和图像的数据,拼接可以帮助组织和管理大量冗余数据,即构建全景城市监控系统,或用于城市交通管理。同时,拼接技术也可用于人工智能(Al)系统,如生成汽车中的360度全景视频,以及拼接全景中的跨摄像机目标跟踪。然而,现有的拼接方法还远远不够,需要更有效、更稳健的算法。我们相信,拼接技术的突破将改变许多领域。
总结
我们对现有的图像视频拼接方法进行了全面的综述,并根据算法类别和技术发展情况介绍了不同的拼接方法。讨论了实际应用中遇到的一些挑战,并对今后的研究提出了一些思考。拼接技术在各个领域的应用越来越广泛,其研究应更多地关注实际应用,而不是实验数据集。我们希望我们的调查将增加对拼接的关注,并激发新的研究努力,以推进图像和视频拼接领域的研究。