写在前面:
这篇论文Leveraging Line-point Consistence to Preserve Structures for Wide Parallax Image Stitching(利用线点一致性保留宽视差图像拼接的结构)是2021年发表在CVPR上的一篇关于图像拼接的论文。
论文链接
代码链接
在计算机视觉中,生成具有自然结构的高质量缝合图像是一项具有挑战性的任务。在本文中,我们成功地保留了宽视差图像的局部和全局几何结构,同时减少了伪影和失真。利用投影不变量特征数匹配输入图像的共面局部子区域。这些匹配良好的子区域之间的单应性产生一致的线和点对,从而抑制重叠区域中的伪影。我们探索并在目标函数中引入全局共线结构,以指定和平衡图像扭曲所需的特征,这样既可以保留局部结构,又可以减少扭曲。我们还通过考虑人类视觉对线性结构的敏感性,开发了综合的缝合质量度量方法,以量化点的共线性和匹配线对的差异。大量实验表明,该方法通过在缝合图像中呈现锐利的纹理和保留突出的自然结构,比现有技术具有更高的性能。特别是,我们的方法不仅具有较低的误差,而且在所有测试图像中的发散度最小。
图像拼接将多幅图像组合成一幅视野更大的图像[25],广泛应用于摄影测量[24]、机器人导航[6]和智能手机上的全景图[29]。对于最先进的技术,生产高质量的缝合图像仍然具有挑战性,因为它们会受到严重的不愉快影响,例如伪影和失真,尤其是对于宽视差图像。
特征匹配是对齐多幅图像以产生无伪影缝合的关键,因为匹配的特征在对齐中起到锚定作用。SIFT特征[23]广泛应用于许多传统的特征点检测和匹配方法[4,5,30]。最近的一些工作还引入了线特征,以在点容易不匹配的大视差和/或低纹理情况下获得鲁棒匹配[11]。Lin等人利用目标函数中不同权重的点和线特征[16]。不幸的是,这些方法分别匹配点和线,因此,当不可避免地出现不匹配时,局部周围区域可能会不一致且不均匀地拉伸或压缩,从而在缝合的图像中呈现伪影。Liao等人采用RANSAC策略,通过使用图像之间的单应性来细化点对和线对[17]。值得注意的是,单应关系仅适用于同一投影平面中的点和线[12]。因此,那些忽略共面约束而对单应性进行的细化无法给出准确的匹配。如图1中前三行的红色矩形所示,右侧的放大重叠区域显示了画框、时钟和计算机上的伪影。探索共面区域并细化相应的点和线匹配对是非常可取的。
由于人类的视觉感知对线性结构非常敏感,因此图像拼接必须在保持线性结构的同时减少失真。尽可能投影(APAP)方法通过局部约束采用参数化扭曲[30],但存在严重的形状扭曲,尤其是在非重叠区域,如图1第一行的蓝色矩形所示。保形半投影(SPHP)[4]和全局相似性先验(GSP)[5]具有相似的思想,以适应不同图像区域的不同扭曲。测地线保持[13]和线结构保持[3]涉及共线保持,但它们的图像大小调整以一幅全景图像作为输入,已经包括正确的全局几何结构作为参考。最近,Liao等人提出了单视角翘曲(SPW)[17]来保护线性结构同时抑制畸变。这些方法能很好地保持局部结构,但在保持局部和全局线性结构时不能解决冲突。全局共线结构可以是横跨图像主要部分的一条长线,例如:图1中两个相框下的长线,或若干单独的共线段。当前的线检测器[26]不能检测或连接这些长线。因此,通过设置适当的参数,可以很好地保留局部形状,但图1第二行中全局线性结构变形。在第三行中,保持线性结构会导致局部形状的严重畸变。如何保护局部共线结构和整体共线结构仍然是一个悬而未决的问题。
同时,现有的缝合质量评价指标不够全面。这些度量包括匹配点之间的距离[30]和像素强度局部模式的平均几何误差(SSIM)[27]只能量化点匹配的性能。它们都不能反映线性结构上点的对齐或匹配线段的共线性。定量评估用于图像拼接的线性结构的保存也是一个开放的问题。
本文利用线和点的一致性来保持对图像拼接至关重要的线性结构。我们将输入图像在直线邻域上划分为共面区域,并使用一系列反映直线和点内在性质的几何不变量从不同角度对区域进行匹配。因此,这些共面区域之间的单应性可以精确地生成线和点的匹配。在此基础上,设计了一种线导向的翘曲目标函数,以保持局部和全局的线性结构并抑制畸变。图1中的第四行表明,我们的方法在图像质量上获得了显著的增益。此外,提出了一种线的定量评价方法,以便更全面地分析拼接图像的质量。我们的贡献总结如下:
我们将所提出的方法与现有技术进行了比较,对具有显著线性结构的自然图像对进行了挑战,这些线性结构涵盖了摄像机运动、场景和视野的变化。我们的方法可以产生视觉上吸引人的缝合,点匹配的平均RMSE比SPW低31%[17]。同时,根据所提出的度量,我们的工作对于保持线性结构是最精确和稳定的。第3、4和5节分别阐述了我们的贡献。
提出了一种既保留局部结构又保留全局结构的线引导图像拼接方法。因此,本节回顾了与翘曲相关的先前工作,以减少扭曲和具有线结构约束的翘曲。
传统的拼接方法通常估计每个输入图像的最优全局变换。它们只适用于理想的近平面场景,生成的图像通常会出现局部伪影和投影失真[2]。因此,有些方法试图使扭曲适应图像的不同区域。Lin等人[21]提出了一种平滑变化的仿射(SVA)变换,以实现更好的局部适应。Li等人使用贝叶斯模型去除异常值,并使用薄板样条进行分析扭曲[14]。Gao等人将图像分为地平面和远平面,并提出了一种双单应性扭曲(DHW)[8]来减少失真。保形半投影(SPHP)翘曲[4]在重叠和非重叠区域结合投影变换。自适应尽可能自然(AANAP)扭曲[18]具有类似的想法,将重叠区域中的单应变换转换为整个图像。Herrmanet等人[9]引入多个配准以获得更高的精度,而不是单个配准。Li等人提出了准单应(QH)翘曲[15],它在压缩非重叠区域时依赖于全局单应。然而,对于视差较大的场景,它们的灵活性不足以降低失真。
为了在更少失真的情况下获得更好的对齐效果,APAP[30]对全局单应性扭曲进行了微调,以适应与位置相关的对齐。Chen等人通过最小化由对齐、局部和全局相似项组成的能量函数,提出了基于全局相似先验(GSP)的翘曲[5]。他们的方法旨在解决非重叠区域的失真,但线性结构没有得到很好的保护。Zhang等人通过设置一系列先验约束和手动指导来实现更好的性能[32]。Lin等人考虑了像素强度的差异,这在低纹理图像中效果很好[20]。Lee等人将图像划分为超像素,并根据视差场景的扭曲残差,使用计算出的特征匹配自适应扭曲它们[12]。
此外,还有一些基于接缝的方法可以减少局部失真。提出了一种视差容忍扭曲,它结合了单应性扭曲和内容保持扭曲(CPW)[22]来控制失真[31]。然而,他们的方法仍然会导致大视差下的形状失真。Lin等人通过自适应特征加权迭代改进了接缝引导的局部对齐,并引入了一种新的术语来保持显著线结构的方法[19]。然而,在非重叠区域仍然存在全局失真。
为了在更少失真和保留线性结构的情况下获得更好的缝合质量,Li等人将线特征引入到图像缝合中,通过引入线性对齐项改进了内容保留扭曲[16]。Xiang等人提出了一种具有全局相似性约束的线引导局部翘曲[28]。Liao等人同时强调了单透视扭曲的不同特征,包括对齐、扭曲和显著性[17]。然而,对于全局共线结构的研究却很少,而且在这些方法中仍然存在局部结构保持和全局结构保持之间的矛盾。
在本节中,设计了基于双特征(直线和点)的预对准算法,如图2所示。首先,基于线检测将图像划分为共面子区域,其中一个区域如图2的绿色矩形所示。然后,根据一系列投影不变量计算出的相似度对子区域进行匹配。第三,增加和细化匹配点对,通过匹配区域之间的单应性匹配直线。最后,基于对偶特征构造全局预对准。
总结————预对齐步骤:
1. 线检测——划分出共面子区域;
2. 根据投影不变量计算相似度,对子区域进行匹配;
3. 增加和细化匹配点对,通过匹配区域之间的单应性匹配直线;
4. 基于对偶特征构造全局预对准。
共面区域间局部单应比全局单应精度更高。由于平面相交形成了许多直线,我们粗略假设由直线长度确定的邻域可视为图像的局部共面子区域。利用LSD[26]获取原始线段,然后根据梯度方向将线段的邻域划分为左邻域和右邻域,因为线段不同边的点可能不是共面的。直线的梯度定义为其上所有点的平均梯度。如图3所示,在一条直线的邻域内,任意像素到直线的距离小于α·len(l),到垂直等分线的距离小于β·len(l)。在我们的实验中,α和β分别设为2.0和0.5[10]。
为了匹配共面子区域以及更多的线和点对,引入投影不变特征数(CN)来构造线点不变量,并在此基础上定义子区域之间的相似性。CN的定义如下:
预对准估计的全局单应性只提供了一个近似变换,但仍然存在畸变和弯曲线。突出线越长,直线弯曲越大。为了解决这一问题,我们探索了保持线约束的全局共线结构,并将其与能量函数中的点线对齐和畸变项相结合。
为了量化线性结构上的拼接性能,我们设计了一种新的评估方法,该方法考虑了三个方面:点的共线性、匹配线的距离和匹配线方向的差异。
我们通过消融实验以及与15对测试图像的最新技术进行定量和定性比较,证明了所提出方法的有效性,这些测试图像涵盖了与摄像机运动、场景和视野相关的不同类型的数据集。输入图像对的大小调整为1000×800像素,每个网格的大小为40×40。这允许我们保持所有参数不变。将分割局部线段和全局线段的阈值µ设置为栅格对角线长度的三倍。在能量函数中,将λlo和λgl设置为50和100以保持直线,将λp和λl设置为1和5以实现点直线对齐,将λdg和λdn设置为50和100以实现失真最小化。
一致的直线和点约束可以提供精确的对齐和抑制瑕疵。我们将我们的联合匹配策略替换为单独的点和线匹配策略[17],其他部分保持不变。样本结果如图8所示。有三个缝合实例,放大的重叠区域显示在每个结果的右侧。如我们所见,我们的关节点和线匹配在图8(b)中产生了清晰的缝合结果,而在图8(a)中存在明显的伪影。
线性结构保持可以保持局部和全局线性结构,并抑制失真,如图9所示。在图9(a)中,局部形状得到了很好的保留,但线条在没有线性约束的情况下弯曲。当我们粗略地使用LSD检测到的线时,建筑物和地面上的短线要好得多,但它们仍然不够直。特别是,自行车在图9(b)中有严重变形。相比之下,在我们的方法中,局部和全局线性约束得到了很好的平衡,如图9(c)所示。
为了将缝合结果与现有方法(包括SVA[21]、CPW[22]、APAP[30]、ELA[14]、SPHP[4]、GSP[5]和SPW[17]进行比较,我们进行了两个实验。定量和定性结果来自他们的论文或发布的代码。
我们对点和线都采用定量评价。点的对准精度由一组匹配点的均方根误差(RMSE)[30]来衡量。表1描述了在第一列中命名的7个图像对的RMSE值。我们的方法在所有7对上产生最小的误差。我们的平均误差为1.7014,比SPW的平均误差低31%。此外,我们的误差方差为0.05,比SPW的0.75值低93%。
此外,我们使用我们在第5节中提出的三个措施来评估线性结构。在图7中,我们将我们的方法与SPW[17]进行了比较,SPW[17]具有局部而非全局的线约束。如图7所示,x坐标表示图像对的名称,垂直坐标表示误差。我们的方法在共线性和角度差上都优于SPW,如图7(a)和图7©所示。在图7(b)中,我们的误差方差为0.0855,比SPW的0.6630小87.11%,表明所有对的发散误差都较小。SPW变化严重,我们在“学校”和“建筑”这对图像上的错误大约是两倍。
图10展示了一个全面的视觉比较。我们的方法在保持线性结构和产生清晰且无伪影的重叠区域方面优于所有其他方法。前四行中的线性结构均表现出严重弯曲,标记为红色。在放大的矩形中显示的现有方法的结果中会出现明显的瑕疵,例如花朵、桌子和阳伞。
提出了一种基于线导向扭曲和线点约束的保持结构的图像拼接方法。我们将输入图像划分为子区域,并通过线点不变量进行匹配。局部匹配为预对齐提供了精确的线和点对,在重叠区域不显示模糊或伪影。我们提出了一种线引导的扭曲,以保持局部和全局结构,同时消除非重叠区域的失真。此外,我们还设计了一种新的线性结构定量评估方法,该方法与人类感知一致,因为人类视觉对线性结构中的失真非常敏感。实验结果表明,该方法能够在具有挑战性的测试图像上准确地对齐重叠区域和非重叠区域,并且与现有技术相比,该方法具有更好的性能。
关于这篇文章的相关代码问题,大家可以参考下面的这篇博文。
代码相关链接