基于图神经网络的行人重识别算法
2021-06-16蒋若辉杨淇黄炜智
蒋若辉 杨淇 黄炜智
(河北大学网络空间安全与计算机学院 河北省保定市 071000)
行人重识别(Person re-identification)是一个非常实用的研究方向,可以广泛应用于监控、安全、刑事侦查等领域[1]。行人重识别任务是指给定一个行人,然后在不同的地点、时间和摄像机中检索出目标行人。近年来,行人重识别技术有了很大的发展,但还没有达到可以实际应用的水平。主要原因是行人重识别需要解决图像和视频的分辨率、人体姿态、人体尺度、人体遮挡、光照等因素带来的问题,使得我们很难对于不同摄像头下的多姿态行人进行准确的识别。
目前,主流解决的方案是基于图像的人物识别,包括表征学习和距离度量学习。对于表征学习,我们已经从传统的手工设计的特征过渡到深层神经网络,它可以学习更多的区分性特征。目前,在行人重识别任务中,除了提取全局特征外,人们更关注于图像的局部特征。例如,早期采用了一些硬部件方法,后来发展到自适应部件方法,然后发展到部件检测的方法。提取特征的鲁棒性也逐渐增强。距离度量学习的目标是学习一个合适的特征空间,其中属于一个人的特征向量非常接近,而属于不同人的特征向量相距很远。然而,基于图像的识别方法只能提取空间特征,获取的特征单一,无法解决遮挡问题。此外,现有的人体识别模型大多是独立地从不同的人体部位获取特征,缺乏人体部位之间存在的联系。
图神经网络近些年发展迅猛,在图上使用卷积运算,将神经网络应用于非欧几里得数据进行特征学习。图模型匹配与传统序列形式的特征匹配相比具有较强的灵活性,对于物体多视角,图像畸变,物体多态,物体遮挡等以往不好解决的因素,具有一定的特殊优势。
本文提出了一种新的特征提取方式,使被遮挡的部分特征接近中心特征,从而在一定程度上消除了遮挡等问题带来的复杂因素问题。我们在Occluded-DukeMTMC 数据集上进行了实验,实验表明,图神经网络在遮挡行人重识别任务中可以发挥很大的作用。
1 方法
1.1 卷积神经网络
卷积神经网络(Convolutional Neural Networks,CNN)。卷积神经网络是一种特殊的神经网络,近年来被广泛认为是计算机视觉领域的最佳技术之一[2]。卷积神经网络通过使用多个非线性特征提取单元阶段性的提取特征进行特征提取,卷积神经网络能够从数据中学习不同特征的信息,最后进行整合,得到一张图像的整体特征。卷积神经网络具有从原始输入中自动学习特征的能力,无需使用手工特征,并且卷积神经网络的参数量较少,使得深层卷积神经网络的计算具有可能性。后来人们发现,多层卷积神经网络可以更好的对于特征进行表述,因此诞生了许多深度卷积神经网络,如经典的ResNet,VGG 网络。卷积神经网络发展已经十分成熟,并仍在继续进步。
1.2 基于图像的行人重识别
近年来,人们在基于图像的行人重识别研究中提出了大量的模型。随着神经卷积网络的发展,特征提取方法已经从最早的人工特征发展到通过深层神经网络进行更稳健的特征提取。目前主要分为表征学习和距离度量学习两大类。表征学习使用各种CNN 结构来提取更健壮的特征,例如基于零件的方法。PCB 方法提出了一种合理的划分策略,可以学习区分零件的特征。对于距离度量学习,将CNN 结构嵌入到深度学习结构中,并共享网络参数的权值,从而缩小类内差距,增加类间差距。使用三重损失来训练网络将同一个人的特征拉近,并将不同人的特征分开。然而,上述方法的缺点是无法解决遮挡问题。在我们提出的方法中,我们基于部件特征对于浅层特征进行图卷积,使遮挡部位特征尽量趋近于中心特征,再进行深层次的特征提取。
1.3 基于零件的识别方法
基于零件的模型学习行人不同部位的局部特征,增强了全局行人特征的交叉视图匹配。基于零件的模型可以简单地将行人重模型中间层的输出特征映射拆分为几个水平条纹,并学习每个条纹的局部特征。另一种基于部位的模型将人体分割成有意义的身体部位,并学习每个身体部位的局部特征。但是这种识别方法对于遮挡行人的识别明显是无意义的,将行人图像的某一部分与遮挡物体进行匹配,在距离空间中只会越来越远,在无遮挡的图像中尚可,但在遮挡图像中仍有不足之处。
1.4 图神经网络
图神经网络旨在将神经网络应用于非欧几里得数据进行特征学习,图模型的基本原理考虑了样本之间的关系,可以很好地应用于有监督训练和半监督学习,近年来逐渐应用于一些计算机视觉任务中。Kpif 在 2017年提出了图卷积神经网络(Graph Convolutional Neural Network,GCN),它为图结构数据的处理提供了一种崭新的思路,将卷积神经网络应用到了图结构的数据中。
我们得出结论:在行人重识别与图神经网络相结合的方法中,图像中的各个部分被视为图节点,每个节点之间的关系通过构造图来表示。在我们的方法中,我们设计了一个新的图神经网络来学习最终的行人特征表示。将图片的每一部分视为一个图节点,根据其关系构造图结构。
2 图卷积行人重识别网络
本文的目的是提出一种基于图卷积的行人重识别网络,通过在网络中增加图卷积模块,有效的对于遮挡部分进行处理,使网络对于遮挡的部分更加敏感。在一定程度上解决了当匹配行人出现遮挡问题时传统神经网络无法准确学习特征的问题。
2.1 图卷积神经网络
在以往的研究工作中,图神经网络利用相邻节点的信息来更新自身节点的状态。受这些方法的启发,我们提出了图卷积行人重识别网络,利用人体不同位置的关系来解决行人中遮挡等不可控因素的问题。
根据人体各部位的空间关系提取人体各部位的特征。利用各部分之间的关系建立特征图。其次,将部位特征嵌入到特征图的节点中,利用相邻特征和自身特征的信息更新节点特征。
图1:图卷积行人重识别网络结构
使用亲和矩阵来表示行人映射图中节点和节点之间的相关性,并使用投影度量来计算两个亲和矩阵的距离。最后,利用交叉熵损失对模型进行训练,以减少人内距离,增加人与人之间的距离。该模块可以有效地计算高维特征之间的距离,减少或消除遮挡等不可控因素的影响。
2.2 网络结构
如图1 所示,首先,输入的行人图片经过浅层次的卷积提取浅层特征,对于这些浅层特征,若图像中包含遮挡,则这些被遮挡的部分特征为负特征,对于整体的特征有一定影响,所以将浅层特征经过图神经网络聚合后,将遮挡部分的特征进行综合,自适应地获得聚合特征节点之间的内在亲和结构信息,以达到遮挡不变性。将综合后的特征再进行深层次的特征提取,最后进行融合全局特征后输出到全连接层进行识别。
3 主要实验
3.1 数据集
Occluded-DukeMTMC 数据集[3]是一个从DukeMTMC-ReID数据集衍生出来的大规模遮挡的行人重识别数据集。DukeMTMCreID 包含来自702 个人的 16522 个训练图像、2228 个查询图像和17661 个库图像。在原始的DukeMTMC-reID 数据集中,训练集、查询集和库集分别包含14%、15%、10%的遮挡图像。原始数据集的被遮挡样本数较少,不适用于评价被遮挡的行人识别方法。在Occluded-DukeMTMC 数据集中,包含一个以上的人或一个被树或汽车等障碍物遮挡的人的图像被标注为遮挡图像,查询集包含100%的遮挡图像。因此,在计算查询图像和库图像之间的成对距离时,总是存在至少一个遮挡图像。Occluded-DukeMTMC 是迄今为止最大的遮挡行人重识别数据集,它的训练集包含15618 幅图像,共包括702 个身份。测试集包含1110 个身份,包括17661 个库图像和2210 个查询图像。
我们在Occluded-DukeMTMC数据集上评估了我们提出的框架。在对比实验中,我们提出的框架在Rank-1 评分方面达到了46.9%,显示了有效性。
3.2 评价指标
Rank-n:
Rank-n 简单来说就是在置信度最高的n 个结果中有正确结果的概率,例如Rank-1,就是置信度最高的结果正确的概率,Rank-5就是置信度最高的五个预测结果中有正确结果的概率。
mAP:
mAP 为平均准确率,是取所有类别AP 的平均值,衡量的是在所有类别上的平均好坏程度。
3.3 实验效果
表1:实验数据对比
本文采用Pytorch 框架进行实验,分别在本文提出的方法,PCB,和传统卷积神经网络上进行了实验。由表1 可知,在Occluded_Duke 数据集上Rank-1 达到了46.9%,mAP 达到了34.1%,并验证了增加图神经模块的优越性。相比于PCB 网络,本文方法仍具有优越性。
4 结束语
本文提出了一种基于图神经网络的行人重识别算法,利用图像节点相邻特征传递的信息来更新特征。该方法可以对行人各部分之间的关系构造邻接图。通过邻接图传递的信息对每个部分进行聚合,自适应地获得聚合特征节点之间的内在亲和结构信息,为了减少遮挡等不变因素对性能的影响,提出了遮挡不变性的概念,使每个部分特征与整体特征更接近。实验结果证实本文方法对于遮挡行人重识别的有效性。