Advertisement

GlueStick: Robust Image Matching by Sticking Points and Lines Together

阅读量:

1 引言

线条在结构化场景中广泛存在,并且具备相较于特征点更强的约束能力。特别是在特征点提取较为困难的稀疏纹理场景下,线条特征展现出更强的效果。

相比之下,在关键点方面有明显的优势之外,在图像中定位线段的能力相对较弱且可靠性较低。然而在线段的描述上更具挑战性程度较高的原因在于它们能够覆盖较大的区域并受到不同视点的影响以及透镜效应的影响,并且对于典型的匹配方法如最近邻算法和Lowe比率检验法而言其效果并不十分理想。

深度学习开创了一种主要运用图神经网络(GNNs)[54,64]实现特征点匹配的新方法。其中一项关键组成部分在于通过其位置编码机制将视觉特征与几何信息[54,64,66,26]进行有效结合。尽管近期研究已开始借鉴这一思路以增强线描述符[80]的表现能力,但直接将这些基于图神经网络的方法迁移至线匹配任务仍面临诸多挑战。具体而言,在处理线的大范围分布特性以及其普遍存在的缺乏可重复性的特点时,在提取有效的特征表示方面仍面临着较大困难。

图神经网络(GNN)的深入浅出讲解及其代码实现 - 知乎 (zhihu.com)

我们的网络将从一个图像对中提取的稀疏关键点、线及其描述符 作为输入,并在建立最终匹配之前输出一组具有丰富语境信息的局部判别性描述符集合 。在网络内部结构中,关键点与线条端点被组织为嵌入于网格框中的节点形式。该网络架构由三个主要组件构成:第一种是节点间的自注意力机制模块;第二种是两个图像之间基于互信息交换设计而成的信息融合交叉注意力层;第三种是一个新型的消息传递模块能够实现网格框内相邻节点之间的通信连接。经过GNN处理后,在完成特征提取的基础上将点与线条分别划分为两个独立的匹配矩阵,并使用双正则化机制结合max运算来确定特征在各矩阵间的最终分配结果。

我们的贡献如下:

我们基于数据驱动的方法取代传统的基于线匹配的启发式几何策略,并且同时在同一个网络中实现点与线的联合匹配。

(2)我们利用图像中特征的局部连通性,提出了一种新的架构。

实验结果表明,在大量数据集与多种任务中,我们开发的方法相较于目前最先进的点、线匹配器取得了显著的进步。

2 相关工作

线段检测: 使用Hough变换算法进行基础特征提取[21,2,63,62,46];结合基于局部特征的线段探测机制完成复杂轮廓分析[25,86,77,83,78,76]。在当前研究中,我们采用LSD探测器作为基础模块进行网络训练,并对其性能指标进行了详细评估

线段描述 通常通过图像梯度分析局部[70,72,82,69,35]中每个线段周围的纹理特征。第一种方法每行周围提取区域并用神经网络[32,31,1]生成对应的描述以模拟关键点的特征表示。第二种方法则沿直线选取采样点,并对每个点进行特征提取。在本研究中,我们采用基于采样点的超分辨率模型,在两个线段端部进行插值处理以构建密集描述符。

使用Transformer匹配: SuperGlue、WGLSM、LineTR、HDPL

3 GlueStick

在本节中, 我们将演示如何在同一网络中整合点与线. 每一特徵均可借助邻域特徵的信息來提升配准性能. 此外, 该网络能够自动生成对配准有價值的點和線的組合, 而不是像前人研究工作中[35]所述以啟發式的方珐來提取這些組合.

3.1 From Points and Lines to Wireframes(Front-End)

通过常用的特征检测器识别空间中的点、直线以及它们的属性信息,并将其整合为完整的线条框架

该网络接收一组点及其局部特征向量,并通过连接矩阵表明这些点之间的相互关系。随后将执行第一步工作:详细描述这些点之间的相互联系并形成一个框架图。

我们采用了SuperPoint方法来识别关键点并生成密集描述符映射,并结合通用LSD [21]算法来进行片段检测。通常在线段两端的关键点存在大量冗余信息,在这种情况下我们可以设定一个合理的阈值范围以去除这些多余的关键点。由于LSD算法本身可能存在断开的情况 因此我们需要设定一个合理的阈值范围 当两个线段的端点距离小于或等于该阈值时 我们将它们合并为一条连续的线段以提高检测效果

在后续步骤中, 将每个关键点和线端点表示为框内的一个节点, 各节点有不同的连接数量: 0代表孤立的关键点, 2则代表拐角等. 接着, 在各节点位置插入密集的SP特征图, 并赋予其视觉描述符.

3.2 Attention-based Graph Neural Network (GNN)****

该块旨在整合每个特征的视觉与空间信息,并促进各特征间的互动关系;无论其原始关注范围如何都会被纳入考量。系统会生成一组优化后的描述符,并通过引入丰富的知识使图像内部以及图像间的相关边缘得到了优化;同时,在节点之间通过线段连接所形成的区域中也实现了相应的优化效果。

I/G网络处理图像对A、B,并接收一系列点集P作为输入。每个点P包含位置信息(xp, yp)、置信度sp以及视觉描述符dvis。同时接收由端点(xp, yp)与(x'p, y'p)定义的一系列连接,并赋予每个连接一个表示其质量程度的指标sl。该指标值既可以反映检测到连线的质量特性也可以仅用于衡量连线的几何长度

主要基于编码特征集合的空间信息,
为图中的节点提取位置描述子,

为线段实体提取边界描述子,
通过上述步骤完成目标的提取过程。

(2)网络架构:我们所使用的GNN架构包含三种不同类型的无向边,并基于完整的图结构进行了构建(如图2所示)。自注意力机制通过将每个图像中的一个节点与其同一图像的所有其他节点进行连接来实现。线路边则连接同一线段两端点之间的节点。交叉注意力机制通过在不同图像之间建立连接来实现跨图信息传递。

节点i初始化一个特征描述符以综合其空间与视觉信息:(0)xi = d p i +与i。
随后该节点描述符在Self、线及交叉层经过L次自适应地融合所有其他描述符的空间与视觉信息而实现细节丰富与清晰度提升。
最后经由线性投影变换后输出最终特征向量。
下一段将详细介绍各类图层的具体工作原理。

自我层和交叉层:

线信息传递层:

3.3.Dual-Softmax for Points and Lines

我们具体实现了基于双层Softmax模块[51,64]对点与线的最终配对关系进行求解,并针对前向传播过程中的点与线配对关系设计了具体的dual-Softmax配对机制。

在点层面分析中,i,j标识节点序号,在Sp之后新增一行数据以引入可学习的匹配门限参数;当该匹配阈值未达到时,则判定为不匹配状态。随后我们采用该公式对整个矩阵的所有元素进行计算,并对计算结果进行几何平均。

在线上也同样采用类似策略进行配对,在这种情况下每条线由其两端的两个点来表示fs∈R D 和 fe∈R D 两点。为了确保配对结果不受两端顺序的影响,在我们的分配矩阵中选择较大的那个数值:

在线上也同样采用类似策略进行配对,在这种情况下每条线由其两端的两个点来表示fs∈R D 和 fe∈R D 两点。为了确保配对结果不受两端顺序的影响,在我们的分配矩阵中选择较大的那个数值:

3.4 生成真值

采用了与文献[54]相同的策略,在同一场景中通过结合相机的姿态与深度信息,在同一场景中将关键点从一个图像映射到另一个图像中,并且当重投影结果落在现有关键点附近时,则认为找到了新的匹配。

3.5 损失函数

该种基于符号的学习方法通常会结合triplet rank loss [6, 61]与硬负样本挖掘机制 [43]. 尽管如此,在数据集中频繁出现相同的模式可能导致错误匹配. 相反地,则寻求通过最小化点与线间分配关系来计算负对数似然值.

全部评论 (0)

还没有任何评论哟~