联合全局和局部信息的层次监督行人再识别方法及系统与流程

文档序号:31048453发布日期:2022-08-06 06:03阅读:87来源:国知局
联合全局和局部信息的层次监督行人再识别方法及系统与流程

1.本发明涉及计算机视觉的技术领域,尤其是联合全局和局部信息的层次监督行人再识别方法和系统。


背景技术:

2.行人重识别是计算机视觉中一个典型的任务,其目的在不同摄像机视角下关联同一个人行人。在近几年随着监控系统在公共场所的广泛部署,行人重识别技术近年来受到越来越多的关注。行人重识别依靠着cnn强大的特征学习能力,获得许多先进显著的性能。然而,在实际场景下,行人的衣服着装是会发生变化的,这是目前行人重识别算法所忽略的问题。因此,现有的行人重识别算法针对的场景是短时间的,其行人外观着装变化不大。
3.由于行人姿态变换、视角变化、光照强度变化、背景干扰等因素的影响,行人重识别是一个具有挑战性的任务。对于跨长时间段的场景,外观变化可以看作是影响行人重识别系统性能的主要因素之一。
4.目前行人重识别还是主要针对研究短时间的场景,忽略了跨长时间段的场景。然而,在现实应用中,跨长时间段的行人重识别算法是一个主要的方法。对于跨长间段的场景,不但要考虑行人身上局部的细节信息,还要考虑图像中的全局信息,两种信息需要相辅相成。现有的行人重识别(re-id)工作主要集中在短时间(short-term)情况下,行人着装基本不会有太大的变化。一个鲁棒的行人重识别系统应该考虑到行人着装这些变化。基于深度卷积神经网络(cnn)强大的表征能力,短时间的行人重识别获得了多项最先进的性能(top-1和map)。然而,由于缺乏全局特征信息,现有的短时间行人重识别方法不能推广到跨长时间段(long-term)的行人重识别场景。


技术实现要素:

5.为了解决现有技术中行人重识别(re-id)工作主要集中在短时间(short-term)情况下,行人着装基本不会有太大的变化,由于缺乏全局特征信息,现有的短时间行人重识别方法不能推广到跨长时间段(long-term)的行人重识别场景等技术问题,本发明提出了一种联合全局和局部信息的层次监督行人再识别方法和系统,以解决上述技术问题。
6.根据本发明的第一方面,提出了一种联合全局和局部信息的层次监督行人再识别方法,包括:
7.s1:将输入图像切成多个图像小块,将图像小块作为transformers分支网络的输入;
8.s2:将部分transformers分支网络的网络快的特征信息通过expand层后引入resnet50分支网络中对应的残差卷积块,expand层将2d张量拓展为4d张量;
9.s3:将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联;
10.s4:将transformers分支通过expand层转换后的特征和对应的resnet50特征经过双线性池化层,进行特征融合交互,并通过损失函数进行约束。
11.在一些具体的实施例中,transformers分支网络包括12块同样结构的网络块,网络块的序号编号为0-11,输入图像被切为n个图像小块,其中,p和s的取值均为16,代表向下取整函数,h和w表示高度和宽度。transformers可用于获取图像中全局的特征依赖关系。
12.在一些具体的实施例中,将序号编号为1、3、5、8的网络块的特征信息分别引入resnet50中对应的残差卷积块。
13.在一些具体的实施例中,s3具体为:将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联,通道数增加为原来的2倍,为了使特征能正常送进下一个残差卷积块,采用1*1卷积将通道恢复,再经过bn层和relu激活函数,其表达式如下:采用1*1卷积将通道恢复,再经过bn层和relu激活函数,其表达式如下:其中,r代表relu激活函数,b代表bn层,c
1*1
代表1*1卷积层,代表transformers分支通过expand层转换后的特征,代表resnet50的特征,i对应分支网络的序号,i=0时,对应的transformers分支序号为1的网络块特征,resnet50的conv1。
14.在一些具体的实施例中,s4的具体表达式如下:
15.其中,(x,y)代表特征在位置(x,y)处的值,vec操作将矩阵变成向量,两个向量的外积,s代表常量。
16.在一些具体的实施例中,损失函数包括三元组损失函数和标签平滑正则化的交叉熵损失函数,其中,三元组损失函数的公式为熵损失函数,其中,三元组损失函数的公式为其中p代表不同行人身份的数量,k0代表每个行人选择k0张不同的图像,对于每张训练图像xa,在和xa相同身份的图像中选择一张相似度距离最大的图像x
p
作为正样本,在和xa不同身份的图像中选择一张相似度距离最小的图像xn作为负样本,为认为设定的阈值,d(
·
,
·
)定义为欧式距离,batch表示批处理的参数大小;标签平滑正则化的交叉熵损失函数的公式为其中ε∈[0,1],k是行人的类别数,p(k)代表预测属于类别k的概率。
[0017]
根据本发明的第二方面,提出了一种计算机可读存储介质,其上存储有一或多个计算机程序,该一或多个计算机程序被计算机处理器执行时实施上述任一项的方法。
[0018]
根据本发明的第三方面,提出了一种联合全局和局部信息的层次监督行人再识别系统,系统包括:
[0019]
图像切割模块:配置用于将输入图像切成多个图像小块,将图像小块作为transformers分支网络的输入;
[0020]
张量拓展模块:配置用于将部分transformers分支网络的网络快的特征信息通过expand层后引入resnet50分支网络中对应的残差卷积块,expand层将2d张量拓展为4d张量;
[0021]
通道级联模块:配置用于将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联;
[0022]
特征融合模块:配置用于将transformers分支通过expand层转换后的特征和对应的resnet50特征经过双线性池化层,进行特征融合交互,并通过损失函数进行约束。
[0023]
在一些具体的实施例中,transformers分支网络包括12块同样结构的网络块,网络块的序号编号为0-11,输入图像被切为n个图像小块,其中,p和s的取值均为16,代表向下取整函数,h和w表示高度和宽度。
[0024]
在一些具体的实施例中,将序号编号为1、3、5、8的网络块的特征信息分别引入resnet50中对应的残差卷积块。
[0025]
在一些具体的实施例中,将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联,通道数增加为原来的2倍,为了使特征能正常送进下一个残差卷积块,采用1*1卷积将通道恢复,再经过bn层和relu激活函数,其表达式如下:将通道恢复,再经过bn层和relu激活函数,其表达式如下:其中,r代表relu激活函数,b代表bn层,c
1*1
代表1*1卷积层,代表transformers分支通过expand层转换后的特征,代表resnet50的特征,i对应分支网络的序号,i=0时,对应的transformers分支序号为1的网络块特征,resnet50的conv1。
[0026]
在一些具体的实施例中,在一些具体的实施例中,其中,(x,y)代表特征在位置(x,y)处的值,vec操作将矩阵变成向量,两个向量的外积,s代表常量。
[0027]
在一些具体的实施例中,损失函数包括三元组损失函数和标签平滑正则化的交叉熵损失函数,其中,三元组损失函数的公式为熵损失函数,其中,三元组损失函数的公式为其中p代表不同行人身份的数量,k0代表每个行人选择k0张不同的图像,对于每张训练图像xa,在和xa相同身份的图像中选择一张相似度距离最大的图像x
p
作为正样本,在和xa不同身份的图像中选择一张相似度距离最小的图像xn作为负样本,为认为设定的阈值,d(
·
,
·
)定义为欧式距离,batch表示批处理的参数大小;标签平滑正则化的交叉熵损失函数的公式为其中ε∈[0,1],k是行人的类别数,p(k)代表预测属于类别k的概率。
[0028]
本发明提出了一种联合全局和局部信息的层次监督行人再识别方法和系统,充分利用cnn和transformers的优势,提出一个并行的cnn-transformers network(ct-net)算法来学习全局信息和局部显著信息。本发明提出的ct-net执行一个单向聚合操作来推动cnn学习全局特征信息。与此同时,为了能充分利用全局特征信息和局部信息,ct-net结合双线性池化来执行层次监督。为了证明本发明算法的有效性,我们在跨长时间段的行人重识别数据集上进行实验,实验性能有很显著的提升,能达到目前最先进的性能。
附图说明
[0029]
包括附图以提供对实施例的进一步理解并且附图被并入本说明书中并且构成本说明书的一部分。附图图示了实施例并且与描述一起用于解释本发明的原理。将容易认识
net,结合了cnn和transformers的优势,来获取局部细节信息和全局信息。transformers主要是用来获取图像中全局的特征依赖关系,cnn主要是用来关注局部的细节信息,transformers的全局信息在训练过程中进行单向聚合给cnn,防止cnn在局部细节信息上过拟合,忽略了对全局信息的学习。与此同时,在ct-net还引入双线性池化,充分的利用全局信息和局部信息来进行多层次的约束ct-net。
[0043]
在具体的实施例中,本发明提出了联合全局特征和局部信息的层次监督行人重识别算法ct-net。图2示出了根据本技术的一个具体的实施例的一种联合全局和局部信息的层次监督行人再识别算法框架图,如图2所示,该算法的具体步骤包括:
[0044]
步骤s1:本技术采用的transformers是vit,整个网络有12块一样结构的网路块,序号编号是0-11,输入图像(c
×h×
w)切成n个图像小块,n的表达式如下w)切成n个图像小块,n的表达式如下其中p和s的取值均为16,代表向下取整函数。划分后的n个小块作为ct-net中transformers分支的输入。
[0045]
步骤s2:为了避免ct-net中cnn分支过度学习局部信息,忽略特征信息,本技术将transformers分支序号为1、3、5、8网络块的特征信息分别引入resnet50中对应的残差卷积块。transformers分支的全局特征信息是2d,因此需要先通过expand层将2d张量拓展为4d张量,拓展和对应残差卷积块一样大小的宽度、高度、通道数。
[0046]
步骤s3:将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联,通道数增加为原来的2倍,为了使特征能正常送进下一个残差卷积块,采用1*1卷积将通道恢复成和原来一样,然后经过bn层和relu激活函数,其表达式如下:和原来一样,然后经过bn层和relu激活函数,其表达式如下:r代表relu激活函数,b代表bn层,c
1*1
代表1*1卷积层,代表transformers分支通过expand层转换后的特征,代表resnet50的特征,i=0时,对应的transformers分支序号为1的网络块特征,resnet50的conv1,以此类推。
[0047]
步骤s4:将transformers分支通过expand层转换后的特征和对应的resnet50特征经过双线性池化层,进行特征融合交互,然后通过损失函数进行约束。具体的,将transformers分支通过expand层转换后的特征和resnet50的特征通过vec操作由矩阵变成向量,通过两向量的外积获得的特征f
tc
,经过双线性池化层获得融合后的特征f
tc

,并对该特征进行单位化运算获得特征具体公式如下:具体公式如下:其中(x,y)代表特征在位置(x,y)处的值,vec操作将矩阵变成向量,两个向量的外积,s代表常量。
[0048]
步骤s5:整个图涉及到的损失函数均为三元组损失函数和标签平滑正则化的交叉熵损失函数,三元组损失函数和标签平滑正则化的交叉熵损失函数如下式所示:三元组损失函数的公式为其中p代表不同行人身份的数量,k0代表每个行人选择k0张不同的图像,对于每张训练图像xa,在和xa相同身份的图像中选择一张相似度距离最大的图像x
p
作为正样本,在和xa不同身份的图像中选择一张相似度距离最小的图像xn作为负样本,为认为设定的阈值,d(
·
,
·
)定义为欧式距
离,batch表示批处理的参数大小;标签平滑正则化的交叉熵损失函数的公式为其中ε∈[0,1],k是行人的类别数,p(k)代表预测属于类别k的概率。
[0049]
本发明提出了一种联合全局特征和局部信息的层次监督行人重识别算法,主要是用来针对现实场景中的行人重识别问题。结合了cnn和transformers的优势,来获取局部细节信息和全局信息。transformers主要是用来获取图像中全局的特征依赖关系,cnn主要是用来关注局部的细节信息,transformers的全局信息在训练过程中进行单向聚合给cnn,防止cnn在局部细节信息上过拟合,忽略了对全局信息的学习。与此同时,在ct-net还引入双线性池化,充分的利用全局信息和局部信息来进行多层次的约束ct-net。本发明在跨长时间段的行人重识别数据集进行实验,采用行人重识别的top-1指标进行验证,可以达到60.2%top-1,远远高于现有算法最好的性能。
[0050]
继续参考图3,图3示出了根据本技术的实施例的一种联合全局和局部信息的层次监督行人再识别系统的框架图。该系统具体包括粗图像切割模块301、张量拓展模块302、通道级联模块303和特征融合模块304。其中,图像切割模块301配置用于将输入图像切成多个图像小块,将图像小块作为transformers分支网络的输入;张量拓展模块302配置用于将部分transformers分支网络的网络快的特征信息通过expand层后引入resnet50分支网络中对应的残差卷积块,expand层将2d张量拓展为4d张量;通道级联模块303配置用于将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联;特征融合模块304配置用于将transformers分支通过expand层转换后的特征和对应的resnet50特征经过双线性池化层,进行特征融合交互,并通过损失函数进行约束。
[0051]
下面参考图4,其示出了适于用来实现本技术实施例的电子设备的计算机系统400的结构示意图。图4示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0052]
如图4所示,计算机系统400包括中央处理单元(cpu)401,其可以根据存储在只读存储器(rom)402中的程序或者从存储部分408加载到随机访问存储器(ram)403中的程序而执行各种适当的动作和处理。在ram 403中,还存储有系统400操作所需的各种程序和数据。cpu 401、rom 402以及ram 403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。
[0053]
以下部件连接至i/o接口405:包括键盘、鼠标等的输入部分406;包括诸如液晶显示器(lcd)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至i/o接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
[0054]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸
介质411被安装。在该计算机程序被中央处理单元(cpu)401执行时,执行本技术的方法中限定的上述功能。需要说明的是,本技术的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0055]
可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0056]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0057]
描述于本技术实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。
[0058]
作为另一方面,本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:将输入图像切成多个图像小块,将图像小块作为
transformers分支网络的输入;将部分transformers分支网络的网络快的特征信息通过expand层后引入resnet50分支网络中对应的残差卷积块,expand层将2d张量拓展为4d张量;将拓展后的4d张量特征信息和对应的残差卷积块进行通道级联;将transformers分支通过expand层转换后的特征和对应的resnet50特征经过双线性池化层,进行特征融合交互,并通过损失函数进行约束。
[0059]
以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1