1. 引言
图匹配旨在解决在两个或多个图上寻找点–点对应的问题。它包含了点对的一阶相似度和边对的二阶相似度,使得整体的相似度取得极大值。由于在目标函数中考虑了二阶结构化的边对信息,图匹配往往可以获得比基于点对的方法(如RANSAC [1] 和最近邻迭代ICP [2] )更高的鲁棒性能。尤其在计算机视觉领域,当光照和视角发生大幅变化时,依赖于像素强度的点特征容易产生剧烈变化而几何结构特征则能够保持相对稳定。因此,图匹配已经成为许多计算机视觉应用的核心,如物体识别 [3]、动作识别 [4]、多物体追踪 [5]、立体匹配 [6] 等。
图匹配问题是满足离散组合约束条件的非凸优化问题,是一个NP难的二次组合优化问题 [7]。为了降低求解图匹配问题的时间复杂度,传统的优化方法往往需要采用不同程度的松弛策略:1) 谱松弛 [8],将离散域下的组合约束条件松弛成连续域下的正交约束,从而将图匹配问题转化成为求解特征向量的问题;2) 半正定松弛 [9],将图匹配问题的非凸目标函数松弛成满足半正定性质的凸函数,该问题可以通过随机算法或赢家通吃(winner-take-all)策略求解;3) 双随机松弛 [10],将离散域的组合约束条件松弛为连续域的组合约束条件,该二次组合优化问题可以通过多种策略找到局部最优解,如路径跟随策略 [11] 和基于泰勒展开的线性分配策略 [12] 等。
然而,传统的图匹配优化算法往往依赖于人工设计的相似度参数作为组合优化问题的输入,极大限制了模型对实际场景中结构匹配问题的泛化性能。针对该问题,基于学习的图匹配算法展现了优势:通过给定图匹配的真值,有监督地学习并构建图匹配的相似度模型。文献 [13] 提出了基于深度学习的图匹配模型,其中使用卷积神经网络(CNN)提取深度点特征和边特征并使用谱方法 [8] 作为组合优化问题的求解策略。随着图神经网络(GNN)的兴起,文献 [14] 提出了基于嵌入技术的深度图匹配模型,其中采用图卷积神经网络(GCN) [15] 优化点特征并构建线性匹配模型,最终以sinkhorn [16] 算法求解该问题。虽然该方法将NP难的二次组合优化问题松弛成可以被高效求解的线性分配问题,其本质上并没有考虑边到边对的二阶相似度信息,最终导致匹配精度的损失。另外一种解决深度图匹配问题的思路是:将图匹配问题转化为基于关联图上的结点分类问题,其中关联图的结点编码了点对相似度信息而关联图的边则编码了边对相似度信息。基于这样的思路,文献 [17] [18] 提出了基于关联图的结点二值分类问题,而文献 [19] 提出了基于关联图的一阶相似度优化模型。然而,计算关联图的内存资源消耗是高昂的,因为它平方了图匹配问题的规模,内存开销占
。
针对上述提及的问题,本文从2个方面对深度图匹配算法进行提升:1) 提升基于嵌入方法的深度图匹配模型的精度,通过引入边边相似度信息作为跨图注意力机制,既保持线性分配问题的高效求解特性,又提升图匹配的精度。2) 相比于基于关联图的结点分类问题 [17] [18] [19] 需要高昂的内存开销,本文基于关联图的分解模型 [20],隐式地构建基于关联图的边–点嵌入操作,减少内存资源的消耗。其内存开销约占
。
本文就基于嵌入技术的深度图匹配网络提出了一种改进算法,首先引入边边相似度信息,经过关联图的边–点嵌入操作,将边对相似度信息转化为二图结点之间的注意力系数,从而构建跨图注意力机制实现点特征之间的跨图消息传递,在保持线性分配问题的高效求解特点之外提升了精度,并且通过隐式构建关联图的边–点嵌入计算,减小了内存开销。
2. 基础知识
一般情况下,图匹配问题可以被构造成二次组合优化问题(Quadratic Combinatorial Programming),图匹配示例如图1所示。
考虑两张有向图
和
,其中下标i代表第i张图,
和
分别表示图
的点集和边集。令
,
且
,则图匹配问题的一般形式:
(1)
其中X是点-点分配矩阵,
是全局相似度矩阵(等价于关联图),其对角线元素和非对角线元素分别由点对相似度元素和边对相似度元素构成。图匹配问题满足离散组合约束条件:即
上的一个点至多可以和
上的一个点建立匹配关系,反之亦然。
因为显式地构建全局相似度矩阵的内存开销是昂贵的,文献 [20] 提出了一种对全局相似度矩阵K的分解模型,该分解模型的定义如下:
(2)
其中,
和
分别代表点对相似度矩阵和边对相似度矩阵,
则是Kronecker乘积算子。
是图
的点边对应矩阵,其详细介绍如图2(b)和图2(c)所示。

(a) 两幅生成的待匹配图
和
;(b)
和
是图
的点边对应矩阵,
表示第k条边是从结点i开始到结点j结束,即结点i和结点j是边k的两个端点;(c) 同理,
和
是图
的点边对应矩阵;(d) 二图匹配信息可以被刻画成一张关联图:关联图的结点是由两幅图的点点相似度信息构成,而关联图的边则是由两幅图的边边相似度信息构成即
;公式
的几何意义是将关联图的边信息嵌入到关联图的结点当中,即边–点嵌入操作
Figure 2. An example of message passing between nodes and edges under an association graph
图2. 基于关联图的点–边消息传递示例
虽然基于嵌入的深度图匹配方法采用图神经网络(GNN)技术将各自图的拓扑连接信息嵌入到点特征中,从而将图匹配问题松弛至线性分配问题,但是其本质上没有考虑边对相似度信息。从公式(1)和(2)中可以看出,边对相似度信息是图匹配问题中不可或缺的组成部分。针对该问题,本文提出了基于边对注意力信息的跨图深度图匹配网络,该方法引入边对相似度信息之后,经过关联图的边–点嵌入操作构建跨图注意力机制,对二图结点的特征进行优化。
3. 本文方法
图3给出了本文方法的概述。本文采用双随机松弛将离散域的组合约束条件松弛至连续域下的组合约束条件,其目标旨在设计一个神经网络去预测两幅图的软分配矩阵
,该矩阵满足以下组合约束:
(3)
3.1. 特征提取层和几何嵌入层
本文采用常规的卷积神经网络VGG-16作为初始的特征点特征提取器,该网络的参数在ImageNet数据集上进行了预训练。定义
和
分别表示图
和
的结点特征,其中d是特征的维度。
和
分别由各自VGG-16网络的relu4_2和relu5_1输出并拼接组成。如图3所示,在特征提取层还有一条分支来自于relu5_3的输出,经过拼接操作得到全局的学习权重
和
。这种全局学习权重提取技术来自于文献 [19],能够对后端的点对相似性度量和边对相似性度量进行学习和优化。
1. 基于VGG-16的特征提取层,2. 基于SplineCNN的几何嵌入层,3. 基于跨图嵌入模块的跨图嵌入层,4. 基于sinkhorn算法的最优匹配层
Figure 3. An overview of the proposed pipeline: a cross-graph embedding with edge-wise attention for deep graph matching
图3. 基于边对注意力的跨图嵌入图匹配网络的整体框架图
当采用线性分配模型来求解图匹配问题时,通过提升特征点之间的差异性,来提高待匹配特征点之间的相似性得分是常见的。为了提高特征点之间的差异性,图神经网络可以将结点表示通过聚合来自邻居结点的表示递归计算,如邻居结点的外观特征和图的拓扑结构信息。为了融合结点的特征信息和图的结构信息,本文采用SplineCNN图卷积神经网络 [21] 将几何结构信息嵌入到结点特征当中。其中,两幅图的结构生成自Delaunay三角剖分 [22] 算法,而边的属性则由两个端点之间的归一化相对坐标定义。然后,结点特征和边的属性经过SplineCNN的最大化聚合,最终输出嵌入了几何结构信息的点特征
和
。
3.2. 基于跨边注意力得跨图嵌入层
跨图嵌入层旨在建立两幅图之间的特征点消息传递机制。本文引入了边对相似性信息,作为两幅图结点消息传递机制的桥梁。
如图2所示,
是图
的点边对应矩阵,当
时,意味着第k条边开始于结点i而结束于结点j,对于
同样适用。那么边的特征
和
分别由各自端点的特征之差来构建:
(4)
边对相似度矩阵
则可以由边的特征内积来测量:
(5)
其中
是全局可学习权重,
则是构建对角矩阵。
边对相似度矩阵
反映了边与边的匹配信息。为了进一步反映不同边对匹配之间的重要性程度,本文将非线性归一化操作softmax作用于边对相似度矩阵
:增大相似度得分差异的同时强调高相似度得分的重要程度。经过归一化操作后的相似度矩阵能够反应边对重要性程度,在本文当中,也被称之为注意力矩阵
:
(6)
如图2(d)所示,关联图的结点代表了点对相似度信息,而关联图的边则反映了边对相似度信息,因此关联图具有跨点匹配和跨边匹配之间的消息传递机制。根据这一消息传递的性质,将边对的注意力矩阵
嵌入到点对的跨图转移矩阵
:
(7)
对于任意两个跨图结点
和
,给定跨图转移矩阵
,可以构建从结点j传递到结点i的信息
,该跨图消息传递计算如下:
(8)
由于跨图矩阵
的元素范围是从0到1,该性质保证了网络的收敛性。最终可以得到更新后的结点特征:
(9)
对于第二幅图的结点
也是相同的跨图操作。
值得注意的是,基于关联图K的结点分类策略 [17] [18] [19] 也考虑了边对相似度信息,这一类模型通过对关联图实施图神经网络计算,从而更新关联图的边和结点表示,即边对相似度信息和点对相似度信息。然而,关联图计算的内存开销是高昂的,占
。与之相比较,本文的边-点嵌入模块隐式地进行关联图的消息传递计算(公式(6)~(9)),在内存消耗上具有优势,约占
。
3.3. 最优匹配层
最优匹配层作为神经网络的后端,其目的是在有监督地训练神经网络的情况下,生成满足约束条件(公式(3))的预测值,即软分配矩阵
。最有匹配层通过计算两幅图之间的点对相似度得分
,寻找令整体相似度得分
最大的软分配矩阵P。
经过上述的图嵌入计算,可以得到两幅图的结点特征
和
,点对相似度的得分矩阵
的计算如下:
(10)
其中,
是可训练的学习参数,而
是建立一个对角矩阵。
图匹配问题的线性分配模型等价于寻找离散分布a和b之间的最优传输映射(Optimal Transport)。该问题可以采用可微的sinkhorn算法 [16] 求解:给定点对相似度得分矩阵S,经过迭代式地行归一化和列归一化该矩阵地指数映射
,最终得到软分配矩阵
:
(11)
令真值分配矩阵定义为
。将经过网络预测的软分配矩阵
和真值分配矩阵
作为交叉熵损失函数的输入,最终输出该模型的误差得分l:
(12)
4. 实验评估
本文的实验评估是基于两个广泛应用于深度学习图匹配的数据集:Pascal VOC [23] 和Willow ObjectClass [24]。实验采用平均精度来评估不同算法之间的精度表现:
(13)
其中,
是软分配矩阵P经过匈牙利算法 [25] 得到的预测分配矩阵,AND表示与逻辑函数。
实验的比较对象均是基于深度学习的算法,包含了以下具有代表性的深度学习图匹配模型:
1) GMN [13]:该模型首次将深度学习技术用于解决图匹配问题,通过卷积神经网络提取深度点和边特征,采用谱方法求解图匹配。
2) PCA [14]:该模型结合了图卷积网络(GCN)将图的邻居结点进行嵌入,采用sinkhorn算法求解图匹配问题。
3) CIE-H [26]:该模型构建了边特征并将边特征通过图卷积网络嵌入到结点特征,采用sinkhorn算法求解图匹配问题,并且提出了基于匈牙利的误差设计。
4) LCS [17]:该模型将图匹配问题转化为基于关联图结点的二值分类问题,采用卷积神经网络模型对点和边特征进行更新。
5) EAGM [18]:该模型基于文献 [17] 扩展了基于像素的边特征生成,并实现了自适应的边注意力机制,展现了很好的抗干扰性能。
6) NGM-v2 [19]:该模型通过将图卷积神经网络的操作扩展至关联图,实现了对软分配矩阵进行二次优化,取得了现有方法最优的精度表现。
4.1. PascalVOC数据集评估
本文的Pascal VOC [20] 实验设置遵循文献 [13] 的实验设置,采用Berkeley手工标注特征点 [27] 作为监督信息。该数据集总共包含20类物体,其中训练集包含7020张图片而验证集包含1682张图片。每张图片带有6至23个带有标注信息的特征点。在训练之前,所有的图片都提取出包含所有标注特征点的方框,并将该方框调整至256 × 256的像素大小。Pascal VOC数据集是一个对于图匹配任务极具挑战性的场景,因为该数据集的一些匹配场景具有大的尺度变形,姿态变形和光照变形,如图4所示。
绿色线条代表正确匹配而红色线条表示错误匹配。观察可得Pascal VOC数据集的一些匹配场景存在较大的尺度和外观变化,因此该数据集是一个对于图匹配任务具有挑战性的评估平台
Figure 4. Example of graph matching performance of CEGM in Pascal VOC datasets
图4. 本文提出的CEGM模型在Pascal VOC数据集下的匹配结果示意图
实验结果如表1所示,本文的CEGM神经网络模型在平均精度上超过了已有模型。更具体地,CEGM在16个类别的精度上达到了最优,而NGM-v2在4个类别的精度上达到了最优。一方面,CEGM网络与基于嵌入技术的模型 [14] [26] 的相同点在于:都将图匹配问题松弛为线性分配问题,具有高效求解的特性;另一方面,前者在精度上的提升得益于边对相似度信息的引入和计算,而后者模型忽略了边对相似度信息即两幅图之间的边集一致性。除此之外,文献 [17] [18] [19] 也充分考虑了边对相似度信息,但是这类模型的图更新机制是基于高昂内存开销的关联图,即全局相似度矩阵K。其中,NGM-v2 [19] 将图卷积网络操作(GCN) [15] 作用于关联图,以此更新关联图的结点表示,即点对相似度信息,其内存开销占
。而本文的跨图嵌入模块隐式地构建基于关联图的消息传递机制,内存开销占
。因此,CEGM与NGM-v2 [19] 相比较,在精度表现上两者接近,而在内存资源消耗上CEGM占优。

Table 1. Average accuracy of each model under Pascal VOC dataset (%)
表1. 各模型在Pascal VOC数据集下的平均精度(%)
4.2. Willow ObjectClass数据集评估
Willow ObjectClass数据集 [21] 总共包含了256张图片,分别来自5种类别:汽车,鸭子,脸部,摩托和酒瓶。每张图片都带有相同的10个明显特征点。遵循文献 [13] 的实验设置,每张图片都被裁剪至256 × 256的方框。对每一个类别进行训练的时候,前20张图片作为训练集,剩下的图片作为测试集。Willow ObjectClass数据集相较于Pascal VOC数据集,其尺度和光照变化的程度不如Pascal VOC数据集,且同类物体的姿态保持了对齐,因此图匹配的难度有所降低。
该数据集的实验结果如表2所示,由于该数据集的难度较之Pascal VOC有所下降,所有的模型在精度上都达到了较好的表现,其中,本文的CEGM模型在平均精度上取得了最优并略微胜于NGM-v2 [19]。该实验结果表明:本文所提出的跨图嵌入图匹配网络CEGM在两个公开数据集中均具有精度上的优势。另一方面,CEGM在内存资源消耗上远远低于文献 [17] [18] [19],即基于关联图更新的深度图匹配网络。因此,CEGM在精度和内存资源之间的平衡方面达到了目前的最优。

Table 2. Average accuracy of each model under Willow ObjectClass dataset (%)
表2. 各模型在Willow ObjectClass数据集下的平均精度(%)
4.3. 跨图嵌入模块的比较分析
本文的创新点之一在于提出了一个新的跨图嵌入模块,与之相似的研究工作则来自于PCA。在PCA模型当中,其跨图转移矩阵来自于后端的sinkhorn匹配层:首先从sinkhorn匹配层计算得到软分配矩阵
,经过以下计算更新图A和图B的结点特征
和
:
(14)
其中,
表示两个特征向量进行拼接操作,
表示跨图嵌入的训练参数,d表示特征维度,
和
表示更新后的结点特征。
从公式(14)可以看出,PCA的跨图嵌入模块只考虑了点对相似度信息。与之相比较,本文的跨图嵌入模块(公式(6)~(9))则充分考虑了边对相似度信息,最终达到精度上的提升。为了进一步验证该假设,本文设置了一组对照实验:将PCA模型的跨图嵌入模块换成本文的跨图嵌入模块,保持其它模块不变,并命名为PCA-Edge模型。实验结果如表3所示:PCA-Edge模型在Pascal VOC和Willow ObjectClass数据集都在平均精度上优于PCA模型。该实验表明:1) 本文提出的跨图嵌入模块有利于现有基于嵌入技术的图匹配模型提高匹配精度;2) 该跨图嵌入模块能够作为深度图匹配的插件模块,有效地嵌入到其它深度图匹配的模型当中。

Table 3. Average accuracy of cross-graph embedding module comparison experiment (%)
表3. 跨图嵌入模块的对比实验下的平均精度(%)
5. 结论
本文针对现有基于嵌入技术的深度图匹配网络忽略了边对相似度信息的问题,提出了基于跨图嵌入的深度图匹配模型即充分考虑了图匹配的边集一致性。其中跨图嵌入模块可以作为插件模块,有利于提高现有图匹配模型的精度。一方面,本文提出的CEGM网络在两个公开数据集上实现了精度上的提升;另一方面,相比较于目前最优的NGM-v2 [19] 模型,本文的跨图嵌入模块隐式地构建基于关联图的边-点嵌入操作,在内存消耗上优于NGM-v2 [19]。因此,本文的CEGM模型在精度和内存消耗的平衡上达到了最优,实验结果证明了该方法的效率和有效性。