CN108710904A - 基于递归神经网络的图像匹配方法及系统 - Google Patents

基于递归神经网络的图像匹配方法及系统 Download PDF

Info

Publication number
CN108710904A
CN108710904A CN201810441357.1A CN201810441357A CN108710904A CN 108710904 A CN108710904 A CN 108710904A CN 201810441357 A CN201810441357 A CN 201810441357A CN 108710904 A CN108710904 A CN 108710904A
Authority
CN
China
Prior art keywords
neural network
recurrent neural
network
pictures
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810441357.1A
Other languages
English (en)
Inventor
倪冰冰
罗栋豪
徐奕
杨小康
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201810441357.1A priority Critical patent/CN108710904A/zh
Publication of CN108710904A publication Critical patent/CN108710904A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

本发明公开了一种基于递归神经网络的图像匹配方法,包括:特征提取步骤:采用卷积神经网络对待匹配的两张图片分别进行特征提取;相似性度量步骤:采用递归神经网络以循环的方式依次处理得到的两张图片的特征,随着所述递归神经网络对两张图片的特征处理次数的增加,对两张图片匹配程度的预测越来越准确。本发明还涉及一种基于递归神经网络的图像匹配系统。本发明通过多次对两个特征的循环度量来得到最终的相似程度,图像匹配的精准度更加精确、误差更小,匹配效果更好。

Description

基于递归神经网络的图像匹配方法及系统
技术领域
本发明涉及一种图像处理技术领域的图像匹配方法及系统,特别是涉及一种基于递归神经网络的图像匹配方法及系统。
背景技术
在我们生活中的很多场景中,需要得到两张图片的相似程度。例如,图像检索就是给定一张查询图片,在一个图片库中查找与这一图片相近的图片,并按照相似程度将这些图片进行排序。与查询图片越相近的图片排序越靠前。这一过程中,最重要的就是得到两张图片之间的相似程度。又例如,随着社会对公共安全的重视和监控设备的普及,视频监控得到了越来越广泛的应用,而在实际的办案过程中,经常需要在大量监控视频中找到与某一个嫌疑人相关性较高的视频内容,因此这一过程也需要对两张图片的相似程度做一个判断。
给定两张图片,对这两张图片的相似性程度,即匹配程度进行打分,这一过程就称为图像匹配。现有的研究思路基本是基于以下的思想:针对两张图片分别提取其特征,接着计算这两个特征的距离作为两张图片的距离。距离越小代表两张图片的相似程度越高。即在特征提取的阶段,模型提取出单张图片的信息,在最后的相似性度量阶段将两张图片的特征信息进行融合,得到两张图片的相似程度。在相似性度量阶段,经常采用的方法包括计算两张图片特征的欧式距离,以及利用神经网络中的全连接层将两张图片的特征融合得到相似性分数。然而以上的度量方法仅是对两张图片相似性的“一次性”度量(如图1A),即对两张图片的特征仅进行一次相似性度量。
而人类对图片的匹配过程却不是一个“一次性”的度量。人类的匹配过程是一个循环的过程。例如两张图片分别来自双胞胎的两个人,当一个人观察到这两张图片并需要判断这两张图片是否来自于同一个人时,人看一眼往往并不能够得出一个较为准确的判断。这种时候人会本能的以循环的方式观察两张图片,假设两张图片分别为A和B,则人会先观察A,再观察B,再不断重复上述过程。人的注意力会不断地在A和B两张图片之间进行切换,来比较两张图片等细节信息。随着观察次数的不断增加,人对自己的判断会越来越自信,而判断也会越来越准确,直到最后对这两张图片等匹配程度作出一个较为准确的判断。人的这样一种观察过程具有“循环性”,即循环观察两张图片直至得到准确判断。
传统方法或卷积神经网络的方法对两张图片进行特征提取,之后采用固定的距离度量方式或者学习的距离度量方式对两张图片的特征进行相似性度量。其中固定的距离度量方式例如欧式距离,而学习的度量方式如采用神经网络中的全连接层对两个特征的距离度量进行学习。现有技术不能够充分挖掘两张图片之间的匹配信息。
发明内容
针对现有技术的不足,本发明所要解决的技术问题是提供一种基于递归神经网络的图像匹配方法及系统,其通过多次对两个特征的循环度量来得到最终的相似程度,图像匹配的精准度更加精确、误差更小,匹配效果更好。
根据本发明的第一方面,提供一种基于递归神经网络的图像匹配方法,包括:
特征提取步骤:采用卷积神经网络对待匹配的两张图片分别进行特征提取;
相似性度量步骤:采用递归神经网络以循环的方式依次处理提取的所述两张图片的特征,随着所述递归神经网络对所述两张图片的特征处理次数的增加,对所述两张图片匹配程度的预测越来越准确。
优选地,所述递归神经网络由两个共享参数的子网络所构成,而所述子网络由两个循环的节点所组成。
更优选地,所述节点是标准的长短期记忆网络节点。更进一步的,利用具有有限次重复的长短期记忆网络结构来近似循环递归神经网络。
更优选地,所述递归神经网络中的两个循环的节点,其中:
两个节点互为头尾,相互连接;头节点的输出为尾节点的输入,尾节点的输出又为头节点的输入;
用xA和xB分别代表循环递归神经网络的输入,即两张待匹配图片A和B的特征向量;用hA(B)和oA(B)分别代表对应输入图片A(或者B)的隐藏状态和节点的输出;对于网络中的每个节点,由输入门限i,输出门限o,遗忘门限f和单元状态c所构成,则循环递归神经网络的节点状态按照以下方式进行更新:
iA(B)=σ(WixA(B)+UihB(A)+VicB(A)+bi)
fA(B)=σ(WfxA(B)+UfhB(A)+VfcB(A)+bf)
oA(B)=σ(WoxA(B)+UohB(A)+VocB(A)+bo)
cA(B)=fA(B)⊙cB(A)+iA(B)⊙tanh(WcxA(B)+UchB(A)+bc)
hA(B)=oA(B)⊙tanh(cA(B))
在上述公式中,σ是sigmoid函数,⊙代表按位相乘,W*,U*和V*是参数矩阵,b*是偏置向量,下标*分别代表输入门限i、输出门限o、遗忘门限f和单元状态c;单元状态cA(B)是前一个时间节点cB(A)和这一时间节点函数的权重之和;iA(B)对应图片A(或B)的输入门限值,fA(B)对应图片A(或B)的输出门限值,xA(B)对应图片A(或B)的特征,hA(B)对应图片A(或B)的隐藏状态。
更优选地,所述递归神经网络具有对称性,网络的对称性是通过两个共享参数的子网络来实现的。
优选地,所述卷积神经网络和所述递归神经网络直接相连构成整体网络,所述整体网络在训练完成后,进一步利用交叉熵损失函数和单调损失函数对所述整体网络进行优化。
更优选地,在所述交叉熵损失函数的基础上使用单调损失函数来使得预测准确率单调上升,其中所述单调损失函数能够对不满足单调性要求的递归神经网络节点作出惩罚,使得循环递归神经网络具有随着时间节点的推移判断越来越准确的能力。
更优选地,所述单调性损失函数配合交叉熵损失函数一起进行训练,交叉熵损失函数负责对一个时间序列上每个节点的分数进行预测,但是节点之间没有相关性,而单调性损失函数负责让网络学习一个时间序列内各节点之间的相关性。
更优选地,所述单调损失函数如下所示:
其中,是在时间步n时的单调损失,如果在这一时间步输出的相似性分数违反了单调性的要求,就惩罚相应的节点;y是这一对图片等标签,1表示这两张图片匹配,0代表它们不匹配;sn是在时间步n预测的相似性分数,是直到时间步n‐1所预测的最大分数y=1和最小分数y=0;计算损失值时的最大运算选出了违反单调要求的节点;
如果用表示标准的交叉熵损失函数,则最终的损失函数如下:
其中λ是两种类型损失函数的权重因子。
根据本发明的第二方面,提供一种基于递归神经网络的图像匹配系统,包括:
特征提取模块:采用卷积神经网络对待匹配的两张图片分别进行特征提取;
相似性度量模块:采用递归神经网络以循环的方式依次处理提取的所述两张图片的特征,随着所述递归神经网络对所述两张图片的特征处理次数的增加,对所述两张图片匹配程度的预测越来越准确。
上述特征提取模块、相似性度量模块采用的技术与本发明上述方法中的特征提取步骤、相似性度量步骤的技术相对应。
与现有技术相比,本发明具有以下有益效果:
现有的“一次性”方法不能够充分挖掘两张图片之间的匹配信息,本发明在对两张图片进行特征提取后,采用循环递归神经网络的多次处理充分挖掘两张图片之间的匹配信息,通过多次对两个特征的循环度量来得到最终的相似程度,图像匹配的精准度更加精确、误差更小,匹配效果更好。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1A为比较一次性的匹配过程与循环多次的比较过程示意图(一次性观察);
图1B为比较一次性的匹配过程与循环多次的比较过程示意图(来回观察两张图片);
图2为本发明一实施例中基于长短期记忆网络LSTM循环递归神经网络的网络连接方式示意图;
图3为本发明一实施例中循环递归神经网络的网络结构与单调性损失函数示意图;
图4为本发明一实施例中循环递归神经网络与其它网络在Mikolajczyk数据库上的匹配结果示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
如图1A所示,为比较一次性的匹配过程与循环多次的比较过程示意图,可以发现,参照人眼原理的循环多次的比较过程两张图片更准确。
如图1B所示,针对现有技术一次性比较的不足,本发明设计一种新的图像匹配方法和系统,其中:在特征提取的部分采用卷积神经网络,而在相似性度量的部分采用循环递归神经网络。具体的,卷积神经网络对待匹配的两张图片分别进行特征提取,然后递归神经网络以循环的方式依次处理两张图片的特征,直至对两张图片特征的准确程度作出一个较为准确的判断。在这一过程中随着递归神经网络对两个特征处理次数的增加,网络对匹配程度的预测越来越准确。
当然,值得注意的是本发明的网络(卷积神经网络和循环递归神经网络构成的整体网络)与之前已有的利用神经网络匹配方法具有相同的特征提取部分,而本发明的整体网络结构具有更好的匹配效果,而且整体网络结构同样具有对称性。
本发明上述方法及系统在构建时,主要可以分为两个阶段,即:网络训练阶段和测试阶段。其中:
在网络训练阶段,利用一个随机采样器在数据库中随机取两张图片构成一个图像对,网络由卷积神经网络和递归神经网络构成,其中卷积神经网络负责提取图片特征,递归神经网络负责相似性度量,卷积神经网络和递归神经网络直接相连,之后可以进一步利用交叉熵损失函数和单调损失函数对整体网络进行优化;
在测试阶段,将待匹配的两张图片作为整体网络的输入。
具体的,可以将数据库分成若干个小组,每一个小组内包含两张或三张图片,同一小组内的这些图片是相互匹配的图片,不同组间的图片是不匹配的图片。因此在同一组内取两张图片构成的图片对是正样本,标签为1,而不同组间的两张图片构成的图片对是负样本,标签为0。
所述网络训练阶段,使用的随机采样器能够在数据库中产生相同数量的正样本和负样本;而构成正负样本的两张图片均是在数据库中随机采样而来,产生正样本时先在数据库的若干小组之中随机采样一个小组;在小组之中随机采样两张图片构成正样本;产生负样本时采样器在数据库若干小组之中先随机采样两个小组,再在这两个小组之中各随机采样一张图片,这两张图片构成的图片对就是训练所用的负样本。
在本发明部分实施例,所述卷积神经网络可以具有如下结构:输入为64x64的图片块,第一个卷积层具有7x7的卷积核,之后接一个最大池化层将特征图的宽度和高度缩小为原来的一半。然后再接一个具有5x5卷积核的卷积层和同样的池化层,将特征图再次缩小为原来的一半,紧接着连接三个具有3x3卷积核的卷积层,继续对图片进行特征提取,最后连接一个池化层再次缩小特征图的大小。提取图片等卷积神经网络结构如上所述,最终得到8x8x64的特征图。之后与之相连接的进行相似性度量的递归神经网络就以卷积神经网络最终的输出进行维度上的改变作为其输入。将8x8x64的特征图转变成为4096维的特征向量。这样的网络结构是由深度神经网络AlexNet为适应匹配工作的要求简化而来。在本发明中,AlexNet的dropout(dropout是一种防止模型过拟合的技术)层和local responsenormalization(局部响应归一化)层均被省略了,因为与深度神经网络AlexNet相比,本发明的输入不是更加复杂的图片,而是较小的图片块,因此网络结构相应简化就足以达到相应的任务要求。卷积神经网络在深度神经网络AlexNet基础上进行了精简改进,使得网络结构对匹配任务不冗余且具有足够的学习能力。
在本发明部分实施例,所述递归神经网络由两个共享参数的子网络所构成,而子网络由两个循环的节点所组成。在本发明中所采用的节点是标准的长短期记忆网络(LongShort-Term Memory)节点,能够处理长期的时序关系。如图2所示,长短期记忆网络与其他递归神经网络一样都具有对时间关系进行显式建模的能力,这样的能力是通过添加跨越时间节点的自连接隐藏层来实现的。即隐藏层的反馈不仅仅进入输出端,而且还进入了下一时间的隐藏层。但是随着处理序列的长度增加,普通的递归神经网络就无法学习长序列的连接信息,即不能处理“长期依赖关系”。而长短期记忆网络却没有这样的问题,它是一种特殊的递归神经网络,凭借每个节点中四个相互作用的神经网络层,它能够很自然地学习长期依赖关系。本发明中的长短期记忆子网络与一般的长短期记忆网络在结构上有所不同,即节点的连接方式不同。一般的长短期记忆网络是线性结构,而本发明的循环递归神经网络具有循环结构,即两个节点互为头尾,相互连接。头节点的输出为尾节点的输入,尾节点的输出又为头节点的输入。如果用xA和xB分别代表循环递归神经网络的输入,即两张待匹配图片A和B的特征向量;用hA(B)和oA(B)分别代表对应输入图片A(或者B)的隐藏状态和节点的输出。对于网络中的每个节点,由输入门限i,输出门限o,遗忘门限f和单元状态c所构成。本发明中循环递归神经网络的节点状态按照以下公式(1)至(5)进行更新:
iA(B)=σ(WixA(B)+UihB(A)+BicB(A)+bi)……(1)
fA(B)=σ(WfxA(B)+UfhB(A)+VfcB(A)+bf)……(2)
oA(B)=σ(WoxA(B)+UohB(A)+VocB(A)+bo)……(3)
cA(B)=fA(B)⊙cB(A)+iA(B)⊙tanh(WcxA(B)+UchB(A)+bc)……(4)
hA(B)=oA(B)⊙tanh(cA(B))……(5)
在上述公式中,σ是sigmoid函数,⊙代表按位相乘,W*,U*和V*是参数矩阵,b*是偏置向量。单元状态cA(B)是前一个时间节点cB(A)和这一时间节点函数的权重之和。
进一步的,本发明中的循环递归神经网络具有对称性。网络的对称性是通过两个共享参数的子网络来实现的。若设F(xA,xB)和F(xB,xA)分别为输入顺序(xA,xB)和(xB,xA)时循环递归神经网络输出的隐藏状态,而该隐藏状态能够决定最终的相似度。则匹配方法的对称性要求F(xA,xB)=F(xB,xA)。若设循环递归神经网络中一个子网络的头节点n1在输入为xA时的隐藏状态是hn1,A,另一子网络对应头节点n′1在输入为xB时的隐藏状态为hn1′,B。F(xA,xB)和F(xB,xA)由以下公式(6)和(7)决定:
F(xA,xB)=(hn1,A+hn1′,B)/2……(6)
F(xB,xA)=(hn1,B+hn1′,A)/2……(7)
由于两个子网络是参数共享的,因此可得如下公式(8)和(9):
hn1,A=hn1',A……(8)
hn1,B=hn1′,B……(9)
由以上公式可得公式(10):
F(xA,xB)=F(xB,xA)……(10)
因此循环递归神经网络具有对称性。
两节点的循环是非常简单的结构,但是在实际的训练当中,前向传播和后向传播是不能实现的。因此需要一种更加简单的网络结构,使其不仅能够模拟循环递归神经网络,而且能够很容易的训练和测试。对于一个两节点的循环递归神经网络,输入的序列可以看作是两个输入有限次的重复。例如,对于两个图像块IA和IB,它们由卷积神经网络提取的特征分别为xA和xB。因此两节点循环递归神经网络的输入序列是xA→xB→xA→…。因此本发明中利用传统的具有有限次(xB,xA)重复的长短期记忆网络结构来近似循环递归神经网络。这样的近似结构可以直接利用标准的长短期记忆网络,并且现有的训练方式也可以直接利用。这样的近似具有两个优势:第一个是通过递归信息可以快速的汇聚,网络结构的输出仅仅在较少次数的重复之后就会比较稳定。这使得模型的训练和预测非常有效率。第二个优势在于,这样的简单结构很好地模拟了注意力在两张图片之间的来回切换,即随着长短期记忆网络的时间步的增加,网络的节点轮流处理两张图片等特征。
与输入的序列相对应,近似的长短期记忆网络输出两张图片的匹配特征序列h0→h1→h2→…→hn-3→hn-2→hn-1。每个匹配特征hn都包含了直到现在时间步n的两张图片等匹配信息。之前的匹配方法仅仅输出一个标量值来反应两张图片的相似性,而本发明中的网络结构输出一个特征向量来反应两张图片等相似性关系。这样的特征向量与标量相比包含了更加丰富的信息并且更加方便后续处理。这些输出的相似性特征向量被送到一个softmax层来得到最终的相似性分数,即本发明中网络结构的最终输出是一个描述两张图片相似性程度的分数序列s0→s1→s2→…→sn-3→sn-2→sn-1。sn由以下公式(11)计算:
其中,θ是softmax层的参数集合。每个sn的范围在[0,1],并且值越大,相似程度越高。实际上,第一个匹配特征h0和第一个相似度分数s0被舍弃了,因为h0和s0中只含有单个图片块的信息而不是两个图片等匹配信息。
所述的预测结果越来越准确是通过创新性的单调损失函数来实现的。随着循环递归神经网络的注意力在两张输入的图片之间不断的切换,对于相似性的判断应该越来越准确,具有单调上升的性质。换句话说,随着对两张图片信息越来越深入的处理,在正确类别上预测的分数应该越来越高,而在错误类别上的预测分数应该越来越低。例如,对于两张匹配的图片,循环递归神经网络在相似这个类别上作出的预测分数应该随着时间步的推移而增加,而在不相似这个类别上作出的预测分数应该降低;而对于两张不匹配的图片,网络在不相似这个类别上预测的分数应该增加,在相似这一类别的预测分数应该减小。这样的问题可以简化为一个二分类问题,而二分类问题常用的损失函数是交叉熵损失函数。但是交叉熵损失函数并没有这样单调性的约束。因此,本发明在交叉熵损失函数的基础上提出了单调损失函数来使得预测准确率单调上升。单调损失函数如下公式(12)和(13)所示:
其中,是在时间步n时的单调损失,如果在这一时间步输出的相似性分数违反了单调性的要求,就惩罚相应的节点。y是这一对图片等标签,1表示这辆张图片匹配,0代表它们不匹配。sn是在时间步n预测的相似性分数,是直到时间步n-1所预测的最大分数(y=1)和最小分数(y=0)。计算损失值时的最大运算选出了违反单调要求的节点。如果用表示标准的交叉熵损失函数,则最终的损失函数如下式(14)和(15)所示:
其中λ是两种类型损失函数的权重因子。
所述的训练过程所需要的数据需要一些前期的准备工作。在图像匹配中,数据的不平衡是一个常见的问题。因为一般而言正样本的数量要远远小于负样本的数量。本发明采用了一个在一个小批量训练数据中能够产生相同数量正负样本的随机采样器。另一方面,为了避免过拟合保证模型具有较好的泛化性,训练的数据量应该相对较大。因此在原本的数据基础上,本发明通过对原始的图片旋转90度,180度,270度,在垂直和水平两个方向上进行翻转来扩大训练的数据量。通过这样的处理,训练数据量扩大为原来的6倍。为了使数据归一化,本发明将图片[0,255]的像素值x映射到(x-128)/160。
所述的网络参数和训练过程如下。对于完成相似性度量的循环递归神经网络,有三个关键性的参数会影响循环递归神经网络的性能。第一个是交叉熵损失函数和单调损失函数的权重λ。一方面,λ越大,网络越难收敛。因此λ不能设置太大。另一方面,λ是用来平衡单调损失函数和交叉熵损失函数,λ太小会削弱单调函数的作用。最终,经过实验的测试,本发明中将λ设置为0.4具有最好的平衡。第二个参数是循环递归神经网络输出隐藏状态的维度D。经过实验测试发现越大的D具有越好的匹配性能,但是随之而来的网络的计算复杂度也会增加。第三个参数是网络的循环次数N,随着循环次数的增加,网络的匹配能力也随之增加,但是当N超过10,性能达到饱和,不再提升。
基于以上对本发明的详细说明,以下提供具体的测试实施例:
本实施例选取图像匹配数据库UBC中的图片进行训练和测试,观察本发明的匹配效果。
实施例中的数据库UBC包括三个子数据集,Liberty,Notredame,和Yosemite。以三个地名作为三个子集的名字,是因为三个库中的图片分别取自三个不同的地点。这三个数据集中的图片数量分别为:Liberty 45万,Notredame 46万,Yosemite63万。另外,这三个数据库分别有10万,20万和50万已经预生成的图片对,并且这些图像对中正样本的数量等于负样本的数量。数据库中每个图片的固定大小均为64x64,相对应于特征提取网络的输入。
为了使测试的效果更具有说服力,本实施例在三个不同的数据集上训练了三个不同的模型,并在另外两个未训练的数据集上进行测试。例如选取Liberty子集作为训练集,则在Notredame和Yosemite这两个数据集上进行测试。以Notredame和Yosemite数据库作为训练集也类似。在评价标准方面,选取召回率为95%下的误检率(FPR95)作为评价方法是否有效的标准。由于是误检率,因此指标越低代表方法越有效。
增加训练的数据量可以使训练所得的模型更具泛化能力,因此按照前述方法对数据进行扩充,使图片量在经过旋转,反转等操作后变为原来的六倍。在训练阶段,就以原本的数据以及扩充之后的数据作为训练数据。但是值得注意的是,数据的扩充不是一次性将原始数据全部扩充完毕,而是采样器在原始数据库进行采样时,将采样得到的图片进行相应的反转或旋转操作来得到训练所用的图像对。UBC数据库中的三个子集均被分成若干组,每个组内的图片数量为2或者3。同一组内的任意两张图片是匹配的,即同一组内的两张图片构成的图片对的标签是1。而任意两个不同组内的两张图片是不匹配的,即在子库中任意取两组,在两组中任意取一张图片所构成的图片对所对应的标签是0。训练时的样本是两张图片所构成的图片对。由于采样器在数据库上是随机采样的,因此很容易出现数据不平衡的问题,即负样本的数量远大于正样本的数量。造成这一现象的原因是由于正样本只能是取自同一组内的两张图片,而负样本取自任意两组图片中的任意两张图片。而子库中组的数量要远小于任意两组组合的数量。由于模型是在小批量数据上进行优化的,因此要在小批量的数据上进行数据平衡,即在一个小批量上正样本的数量要与负样本的数量相等。例如,若设一批训练数据的数量为32,则其中正样本的数量为16,负样本的数量为16。按照正负样本的要求在数据库中采样得到相同数量的样本。在原数据库中采样得到构成一对的两张图片后,采样器对这两张图片进行相同的旋转或反转操作。将相同操作后的两张图片作为待训练的图像对。例如,采样器在原库中得到两张图片A和B,对A和B分别旋转90度得到A’和B’,则将A’和B’组成的图片对作为待训练的样本。这样即使在即使两次采样得到两张同样的图片,仍然有6种不同度样本可能。而样本的标签在这不同的六种情况下保持不变,即若这两张图片在原始数据库中的同一个组中,则不论这两张图片共同做了怎样的操作,他们构成的图片对依然是匹配的。
本实施例中的网络如上所述,由提取特征的卷积神经网络和进行相似性度量的递归神经网络构成,这两个网络相互连接,递归神经网络连接在卷积神经网络之后,以卷积神经网络的输出的特征作为递归神经网络的输入。由卷积神经网络和递归神经网络构成的整体网络在训练时进行端到端的训练,即两个网络的参数同时进行学习。这样学习的好处是两个网络的参数能够由同一个损失函数进行约束更新。最后学习得到的两个网络的参数都是针对同一个目标而进行优化更新。而在不是端到端的情况下,即两个网络的参数在一次迭代中不同时更新。而是根据一个损失函数的约束训练其中一个网络,更新该网络的参数。在优化结束,该网络的参数确定之后就将该网络的参数确定下来不再改变。此时将两个网络相互连接,未学习的网络进行参数学习,在每次迭代过程中更新参数。而已经学习的网络不再更新参数。在本实施例中,如果采用这样的学习方法,则两个网络的参数根据不同的损失函数进行更新。按照一般的做法是利用分类常用的损失函数先训练提取图片特征的卷积神经网络,在确定卷积神经网络的参数后将其固定下来。其次将学习确定的卷积神经网络和递归神经网络相连接,学习递归神经网络的参数。这样的训练方式不能使两个网络的参数同时达到最优,而是先使卷积神经网络达到局部网络的最优,再在此基础上得到另一网络的最优。而本实施例的网络结构使两个网络的参数能够同时达到最优。
本实施例的网络在Caffe(Convolutional Architecture for Fast FeatureEmbedding)这一深度学习平台上进行训练优化与测试。Caffe是一个清晰,可读性高,快速,开源的深度学习框架。它能够根据需要的网络结构方便快捷的构建网络,并在已有数据的基础上进行参数优化训练。其中参数优化是通过随机梯度下降的方式实现的。随机梯度下降方法是梯度下降的一种变体。普通的梯度下降方法在更新回归系数时要遍历整个数据集,是一种批处理方法,这样在数据量特别庞大时,可能出现如下问题,一是收敛过程可能非常慢;二是如果误差曲面上有多个局部极小值,那么不能保证这个过程会找到全局最小值。即批量梯度下降法在全部数据上进行优化。而随机梯度下降的思想是根据每个单独的训练样本来更新权值。本实施例中采用的优化方法实际上是随机梯度下降法与批量梯度下降法的结合。采样器在全部数据中随机采样一个小批量的数据,在这一小批量的数据上进行参数更新。这样的优化方式结合了两种梯度下降法的优势,在一次参数学习中既能根据多个样本而不是单一样本进行更新,又能够使训练过程的速度不至于太慢。因此一个小批量中数据的个数就是一个需要挑选的超参数。太大或者太小的批量大小都不利于最后训练模型的性能。在本实施例中,经过多次实验的比较,最终确定了批量大小32是一个比较合适的值,在这一批量大小下训练的模型能够达到最好的性能。
学习率是深度学习中的另一个非常重要的超参数,如何在训练过程中调整学习率是训练出较优模型的关键要素之一。在通过随机梯度下降法求解问题的极小值时,梯度不能太大,也不能太小。太大容易出现超调现象,即在极值点两端不断发散,或是剧烈震荡,总之随着迭代次数增大loss没有下降的趋势;太小会导致无法快速地找到好的下降方向,随着迭代次数增大loss基本不变。在本实施例中,经过多次实验的比较,发现在训练过程的开始,0.01是一个比较合适的学习率,之后每1000次迭代学习率下降为之前的1/10。训练过程中当所有的数据都被遍历过一次称为完成了一个epoch,本实施例中的网络在经过70个epoch的训练之后收敛达到稳定状态。
训练好的参数固定的模型即可用于两张图像的匹配。给定两张图像作为模型的输入,模型就会输出这两张图片的相似性分数,相似性分数的数值在0~1之间。分数越大则代表网络判定这两张图片的相似性程度越高;反之,分数越小则代表网络判定这两张图片的相似性程度越低。要注意的是,测试阶段图片的大小与训练阶段训练图片等大小要一致。由于训练时所采用的图片大小为64x64,因此在使用这种条件下得到的网络模型时对输入图片的要求也是64x64。测试阶段,网络只需要前向传播得到两张图片等相似性分数,而不需要反向传播来计算梯度更新参数。
以上是针对两张图片进行匹配的过程。但是仅对两张图片进行匹配,即使有这一对图片的正确的标签,也不能判定所得模型的性能。因为对于一对图片等判别具有偶然性。为了判断训练模型的实际性能,需要在达到一定规模的具有正确标签的数据上进行测试。这里图片对的数量选取为100000。即对100000个已有标签的图片对进行测试。以召回率95%下的误检率作为衡量模型性能的指标。误检率越低代表网络的性能越好。测试的数据均是新的样本,即网络在训练的时候没有处理过的样本。在UBC这一数据库中有三个字库,训练的数据库可以是三个库中的任意一个,而测试的数据库是除了训练数据库的另外两个数据库。这样即可保证测试所用的数据与训练数据没有重合。测试时不再需要采样器在数据库中对图片进行采样,而是将已经准备好的图片对直接送入到网络当中进行处理,最终即可输出这两张图片等相似性分数。
如图3所示,本发明在训练阶段可以选择使用单调损失函数,也可以选择仅使用交叉熵损失函数而不加入单调损失函数。在测试阶段,如果没有使用单调性损失函数,则选用lstm递归神经网络除去第一个节点的其它所有节点分数的平均值作为最终的相似性分数。否则最终的相似性分数就是最后两个节点相似性分数的平均值。例如,对于包含8个节点的一个序列,s1,s2,…,s7分别是最后7个节点的分数,则没有单调性损失函数的情况下最终的分数 而在加入单调性损失函数的情况下
Mikolajczyk是另一个常被用来检测图像匹配方法的数据库。这一数据库中的数据来自于不同几何和光学方面的变换,这些变换包括图像的旋转,大小的变换,仿射变换以及清晰度的变换。这些变换是通过旋转相机,改变拍摄空间以及改变视角等方法来实现的。而图片清晰度的改变是是通过改变光照的强度和光源度位置来实现的。Mikolajczyk这一数据库由8个序列48张图片构成。每个序列分别对应以下五种变换:视角的变换,图片的压缩,图片的模糊,光照的改变还有空间上的变换。五张图片这些变换的程度都在增加。在每一个序列的6张图片当中,其中一张是原始参考图片,而其余的图片均是原始图片经过不同程度的变换而来。在原始图片和变换图片之间有一个单应性矩阵,这个单应性矩阵对应着两张图片空间上的变换,在进行评价时需要使用单应性矩阵。
在Mikolajczyk数据库上进行测试的步骤如下:首先利用物体检测器来提取原始图片中的关键点,本发明中选用MSER这一检测器,因为这一检测器相比较其它检测器而言效果最好。MSER检测器在关键点周围生成了椭圆状的区域,并且这些椭圆状的区域被用来在原始图片中提取64x64的图像块。为了包含更多的内容,将MSER检测器等椭圆尺度设置为3。最终,来自于原始图片和其它变换图片的两个图像块分别组成一个待检测的图像对送入到本发明中的循环递归神经网络中去来确定这一图像对的相似性。从变换图片映射到原始图片的单应性矩阵用来计算IoU(Intersection over Inion)这一表明两个椭圆交集大小的指标。一对图像块只有在IoU大于0.6是时才被认为是一个正样本,其余的情况下的样本都是负样本。平均准确率MAP(Mean Average Precision)是测量准确率-召回率曲线下面积的指标,它能反映匹配网络的性能。平均准确率越高则网络的性能越好。在本实例中,采用平均准确率MAP作为网络性能的评价标准。值得注意的是,在Mikolajczyk数据库上的进行实验的网络模型都是在UBC中Liberty子库上训练所得。
本发明上述实施例的实施效果如下:与其它的利用卷积神经网络进行图像匹配的技术相比,本实施例中的网络在UBC数据库上实现了6.32%的95%召回率下的平均误检率,而使用Siamese网络相同召回率下最小的平均误检率为7.63%。表1为不同网络在UBC数据库上的匹配结果表,即循环递归神经网络与其它网络在UBC数据库上的匹配结果。与Siamese网络相比,本实施例中的循环递归神经网络在Mikolajczyk数据库上具有更高的平均准确率。图4为不同网络结构在Mikolajczyk数据库上的匹配准确率。以上实验均在带有独立显卡的服务器上进行。服务器的参数为:中央处理器Intel(R)Core(TM)i5-3230@3.8GHz,内存8GB。
表1
综上可见,本发明能够对匹配的两张图片进行循环式的比较,相比较于“一次性”的比较方法具有更准确的匹配效果。且随着循环次数的增加,得到的判断越来越准确。整体网络结构由卷积神经网络和递归神经网络两部分构成,卷积神经网络负责提取图片的特征,递归神经网络负责对特征进行循环式的多次比较进而得到较为准确的相似性分数。网络在一个时间序列中判断越来越准确的能力来自于训练过程中单调性损失函数的约束,它能够对不符合单调性约束的递归神经网络节点作出相应惩罚。
本发明提取出两张图片的特征之后,并不是通过一次度量得到两张图片的相似程度,而是通过多次对两个特征的循环度量来得到最终的相似程度。在这一过程中随着递归神经网络对两个特征处理次数的增加,网络对匹配程度的预测越来越准确。
以上所述的具体实施例,对本发明的解决的技术问题、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种基于递归神经网络的图像匹配方法,其特征在于,包括:
特征提取步骤:采用卷积神经网络对待匹配的两张图片分别进行特征提取;
相似性度量步骤:采用递归神经网络以循环的方式依次处理提取的所述两张图片的特征,随着所述递归神经网络对所述两张图片的特征处理次数的增加,对所述两张图片匹配程度的预测越来越准确。
2.如权利要求1所述的基于递归神经网络的图像匹配方法,其特征在于,所述递归神经网络由两个共享参数的子网络所构成,而所述子网络由两个循环的节点所组成。
3.如权利要求2所述的基于递归神经网络的图像匹配方法,其特征在于,所述节点是标准的长短期记忆网络节点。
4.如权利要求3所述的基于递归神经网络的图像匹配方法,其特征在于,利用具有有限次重复的长短期记忆网络结构来近似循环递归神经网络。
5.如权利要求2所述的基于递归神经网络的图像匹配方法,其特征在于,所述递归神经网络中的两个循环的节点,其中:
两个节点互为头尾,相互连接;头节点的输出为尾节点的输入,尾节点的输出又为头节点的输入;
用xA和xB分别代表循环递归神经网络的输入,即两张待匹配图片A和B的特征向量;用hA(B)和OA(B)分别代表对应输入图片A或者B的隐藏状态和节点的输出;对于网络中的每个节点,由输入门限i,输出门限o,遗忘门限f和单元状态c所构成,则循环递归神经网络的节点状态按照以下方式进行更新:
iA(B)=σ(WixA(B)+UihB(A)+VicB(A)+bi)
fA(B)=σ(WfxA(B)+UfhB(A)+VfcB(A)+bf)
oA(B)=σ(WoxA(B)+UohB(A)+VocB(A)+bo)
cA(B)=fA(B)⊙cB(A)+iA(B)⊙tanh(WcxA(B)+UchB(A)+bc)
hA(B)=oA(B)⊙tanh(cA(B))
在上述公式中,σ是sigmoid函数,⊙代表按位相乘,W*,U*和V*是参数矩阵,b*是偏置向量,下标*分别代表输入门限i、输出门限o、遗忘门限f和单元状态c;单元状态cA(B)是前一个时间节点cB(A)和这一时间节点函数的权重之和;iA(B)对应图片A或B的输入门限值,fA(B)对应图片A或B的遗忘门限值,xA(B)对应图片A或B的特征,hA(B)对应图片A或B的隐藏状态。
6.如权利要求2所述的基于递归神经网络的图像匹配方法,其特征在于,所述递归神经网络具有对称性,网络的对称性是通过两个共享参数的子网络来实现的。
7.如权利要求1-6任一项所述的基于递归神经网络的图像匹配方法,其特征在于,所述卷积神经网络和所述递归神经网络直接相连构成整体网络,所述整体网络在训练完成后,进一步利用交叉熵损失函数和单调损失函数对所述整体网络进行优化。
8.如权利要求7所述的基于递归神经网络的图像匹配方法,其特征在于,在所述交叉熵损失函数的基础上使用单调损失函数来使得预测准确率单调上升,其中所述单调损失函数能够对不满足单调性要求的递归神经网络节点作出惩罚,使得循环递归神经网络具有随着时间节点的推移判断越来越准确的能力。
9.如权利要求8所述的基于递归神经网络的图像匹配方法,其特征在于,所述单调性损失函数配合交叉熵损失函数一起进行训练,交叉熵损失函数负责对一个时间序列上每个节点的分数进行预测,但是节点之间没有相关性,而单调性损失函数负责让网络学习一个时间序列内各节点之间的相关性。
10.如权利要求9所述的基于递归神经网络的图像匹配方法,其特征在于,所述单调损失函数如下所示:
其中,是在时间步n时的单调损失,如果在这一时间步输出的相似性分数违反了单调性的要求,就惩罚相应的节点;y是这一对图片等标签,1表示这两张图片匹配,0代表它们不匹配;sn是在时间步n预测的相似性分数,是直到时间步n-1所预测的最大分数y=1和最小分数y=0;计算损失值时的最大运算选出了违反单调要求的节点;
如果用表示标准的交叉熵损失函数,则最终的损失函数如下:
其中λ是两种类型损失函数的权重因子。
11.一种用于实现权利要求1-10任一项所述方法的基于递归神经网络的图像匹配系统,其特征在于,包括:
特征提取模块:采用卷积神经网络对待匹配的两张图片分别进行特征提取;
相似性度量模块:采用递归神经网络以循环的方式依次处理提取的所述两张图片的特征,随着所述递归神经网络对所述两张图片的特征处理次数的增加,对所述两张图片匹配程度的预测越来越准确。
CN201810441357.1A 2018-05-10 2018-05-10 基于递归神经网络的图像匹配方法及系统 Pending CN108710904A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810441357.1A CN108710904A (zh) 2018-05-10 2018-05-10 基于递归神经网络的图像匹配方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810441357.1A CN108710904A (zh) 2018-05-10 2018-05-10 基于递归神经网络的图像匹配方法及系统

Publications (1)

Publication Number Publication Date
CN108710904A true CN108710904A (zh) 2018-10-26

Family

ID=63868849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810441357.1A Pending CN108710904A (zh) 2018-05-10 2018-05-10 基于递归神经网络的图像匹配方法及系统

Country Status (1)

Country Link
CN (1) CN108710904A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110069985A (zh) * 2019-03-12 2019-07-30 北京三快在线科技有限公司 基于图像的目标点位置检测方法、装置、电子设备
CN110197213A (zh) * 2019-05-21 2019-09-03 北京航空航天大学 基于神经网络的图像匹配方法、装置和设备
CN110322021A (zh) * 2019-06-14 2019-10-11 清华大学 大规模网络表征学习的超参数优化方法和装置
CN110428278A (zh) * 2019-06-27 2019-11-08 阿里巴巴集团控股有限公司 确定资源份额的方法及装置
CN110688446A (zh) * 2019-08-23 2020-01-14 重庆兆光科技股份有限公司 一种句义数学空间表示方法、系统、介质和设备
CN110837861A (zh) * 2019-11-06 2020-02-25 亮风台(上海)信息科技有限公司 一种图像匹配方法、装置、设备和存储介质
CN111641831A (zh) * 2019-03-01 2020-09-08 杭州海康威视数字技术股份有限公司 帧内预测方法、装置、设备及存储介质
CN111723222A (zh) * 2019-03-19 2020-09-29 Sap欧洲公司 图像搜索和训练系统
CN112634168A (zh) * 2020-12-30 2021-04-09 哈尔滨工业大学(威海) 一种结合边缘信息的图像修复方法
CN113033582A (zh) * 2019-12-09 2021-06-25 杭州海康威视数字技术股份有限公司 模型训练方法、特征提取方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106328122A (zh) * 2016-08-19 2017-01-11 深圳市唯特视科技有限公司 一种利用长短期记忆模型递归神经网络的语音识别方法
US20170255832A1 (en) * 2016-03-02 2017-09-07 Mitsubishi Electric Research Laboratories, Inc. Method and System for Detecting Actions in Videos
US20180047389A1 (en) * 2016-08-12 2018-02-15 Electronics And Telecommunications Research Institute Apparatus and method for recognizing speech using attention-based context-dependent acoustic model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170255832A1 (en) * 2016-03-02 2017-09-07 Mitsubishi Electric Research Laboratories, Inc. Method and System for Detecting Actions in Videos
US20180047389A1 (en) * 2016-08-12 2018-02-15 Electronics And Telecommunications Research Institute Apparatus and method for recognizing speech using attention-based context-dependent acoustic model
CN106328122A (zh) * 2016-08-19 2017-01-11 深圳市唯特视科技有限公司 一种利用长短期记忆模型递归神经网络的语音识别方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
DONGHAO LUO等: ""Image Matching Via Loopy RNN"", 《ARXIV PREPRINT ARXIV:1706.03190》 *
JUN HE等: "《2017 12th IEEE International Conference on Automatic Face & Gesture Recognition》", 29 June 2017 *
QIANZI SHEN等: "《International Conference on Intelligence Science. Springer, Cham, 2017》", 27 September 2017 *
YAN HUANG等: "《2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)》", 9 November 2017 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111641831A (zh) * 2019-03-01 2020-09-08 杭州海康威视数字技术股份有限公司 帧内预测方法、装置、设备及存储介质
CN111641831B (zh) * 2019-03-01 2023-09-01 杭州海康威视数字技术股份有限公司 帧内预测方法、装置、设备及存储介质
CN110069985A (zh) * 2019-03-12 2019-07-30 北京三快在线科技有限公司 基于图像的目标点位置检测方法、装置、电子设备
CN110069985B (zh) * 2019-03-12 2020-08-28 北京三快在线科技有限公司 基于图像的目标点位置检测方法、装置、电子设备
CN111723222A (zh) * 2019-03-19 2020-09-29 Sap欧洲公司 图像搜索和训练系统
CN110197213B (zh) * 2019-05-21 2021-06-04 北京航空航天大学 基于神经网络的图像匹配方法、装置和设备
CN110197213A (zh) * 2019-05-21 2019-09-03 北京航空航天大学 基于神经网络的图像匹配方法、装置和设备
CN110322021A (zh) * 2019-06-14 2019-10-11 清华大学 大规模网络表征学习的超参数优化方法和装置
CN110322021B (zh) * 2019-06-14 2021-03-30 清华大学 大规模网络表征学习的超参数优化方法和装置
CN110428278A (zh) * 2019-06-27 2019-11-08 阿里巴巴集团控股有限公司 确定资源份额的方法及装置
CN110428278B (zh) * 2019-06-27 2023-10-27 创新先进技术有限公司 确定资源份额的方法及装置
CN110688446A (zh) * 2019-08-23 2020-01-14 重庆兆光科技股份有限公司 一种句义数学空间表示方法、系统、介质和设备
CN110837861A (zh) * 2019-11-06 2020-02-25 亮风台(上海)信息科技有限公司 一种图像匹配方法、装置、设备和存储介质
CN113033582A (zh) * 2019-12-09 2021-06-25 杭州海康威视数字技术股份有限公司 模型训练方法、特征提取方法及装置
CN113033582B (zh) * 2019-12-09 2023-09-26 杭州海康威视数字技术股份有限公司 模型训练方法、特征提取方法及装置
CN112634168A (zh) * 2020-12-30 2021-04-09 哈尔滨工业大学(威海) 一种结合边缘信息的图像修复方法

Similar Documents

Publication Publication Date Title
CN108710904A (zh) 基于递归神经网络的图像匹配方法及系统
Wu et al. FMD-Yolo: An efficient face mask detection method for COVID-19 prevention and control in public
Guest et al. Deep learning and its application to LHC physics
Zheng et al. A neural network framework for relation extraction: Learning entity semantic and relation pattern
KR102092263B1 (ko) 일정한 처리 시간 내에 k개의 극값을 찾는 방법
CN109241377A (zh) 一种基于深度学习话题信息增强的文本文档表示方法和装置
CN108804677A (zh) 结合多层级注意力机制的深度学习问题分类方法及系统
CN109165540A (zh) 一种基于先验候选框选择策略的行人搜索方法和装置
CN107545151A (zh) 一种基于低秩矩阵填充的药物重定位方法
CN110021341A (zh) 一种基于异构网络的gpcr药物和靶向通路的预测方法
CN109492075A (zh) 一种基于循环生成对抗网络的迁移学习排序方法
CN111695042A (zh) 基于深度游走和集成学习的用户行为预测方法及系统
Bialopetravičius et al. Deriving star cluster parameters with convolutional neural networks-II. Extinction and cluster-background classification
Yin et al. Classification of eye tracking data using a convolutional neural network
Sandag et al. Sentiment analysis of COVID-19 vaccine tweets in Indonesia using recurrent neural network (RNN) approach
CN112966115B (zh) 基于记忆损失预测和延迟训练的主动学习事件抽取方法
Yu et al. Multi-scale image–text matching network for scene and spatio-temporal images
Naik et al. LSTM-BEND: predicting the trajectories of basketball
Jing et al. NASABN: A neural architecture search framework for attention-based networks
Coskun Human pose estimation with CNNs and LSTMs
Li et al. Variance tolerance factors for interpreting all neural networks
Suchy et al. Fusion of deep convolutional neural networks
Sha et al. Rationalizing predictions by adversarial information calibration
Li et al. Supervised classification of plant image based on attention mechanism
Akalya devi et al. Multimodal emotion recognition framework using a decision-level fusion and feature-level fusion approach

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20181026