基于多支路特征融合的行人重识别研究*

2021-03-01 03:33杨荻椿艾美慧李利荣
计算机工程与科学 2021年2期
关键词:集上分支行人

熊 炜,杨荻椿,艾美慧,李 敏,李利荣

(1.湖北工业大学电气与电子工程学院,湖北 武汉 430068;2.美国南卡罗来纳大学计算机科学与工程系,南卡 哥伦比亚 29201)

1 引言

近年来智能安防建设快速发展,人们对监控视频处理的要求日益提高,依靠人脸、指纹等生物特征进行重识别显得十分困难,此时行人重识别Person ReID(Person Re-IDentification)技术成为了一个重要的替代品。行人重识别是计算机视觉领域的一个热门研究课题,意指在跨摄像头的情况下检索特定行人图像。目前该项技术的识别能力已经超越了人类本身[1],但是仍然存在以下困难:在拍摄过程中摄像头参数、拍摄环境和行人姿态的变化容易造成所拍摄行人图像质量低劣的问题。如何应对这些挑战,是当前研究的首要任务。

行人重识别研究主要分为基于传统方法和基于深度学习方法2类[2]。

传统的行人重识别从特征表达和距离度量学习2个方面进行研究。基于特征表达的方法重点在于设计鲁棒、可靠的行人图像特征外观模型,即能够区分不同行人同时又不受光照和视角变化的影响。2005年Zajdel等人[3]公开描述了行人重识别的概念。2006年Gheissari等人[4]首次在计算机视觉领域顶级会议CVPR(IEEE Conference on Computer Vision and Pattern Recognition)上提出利用H-S直方图和边缘直方图提取行人特征,至此行人重识别正式进入研究阶段。Hamdoun等人[5]提出在一定时间间隔的视频序列上提取相同区域的特征点用来表示行人外观变化。Gray等人[6]利用RGB、HSV、YCbCr颜色通道和亮度纹理通道提取被分割为3个部分的行人图像特征。Farenzena等人[7]根据行人结构的对称性将图像分割为不同区域,并提取每个区域的累积颜色特征和纹理特征。而基于距离度量学习的方法则关注的是找到有效的行人特征相似度的度量标准,即通过度量学习的方法获得新的距离度量空间,使得同一行人不同图像的特征距离小于不同行人之间的距离。研究学者[8-10]基于欧氏距离、马氏距离等距离度量函数提出不同的度量方法,皆旨在优化行人样本之间的距离。但是,这些传统方法的行人重识别性能不佳[11],只适用于小型数据集,难以胜任实际运用。

随着深度学习时代的来临,研究人员开始运用深度学习进行行人重识别[12]。卷积神经网络(CNN)强大的特征提取能力和学习能力使基于深度学习的行人重识别取得了阶段性的进步,基本取代了传统方法。Geng等人[13]使用预训练好的GoogleNet提取全局特征,将分类损失函数和验证损失函数结合用于训练网络,实验证明了使用迁移获得的预训练网络可以大幅提升识别效果。大量学者[14-16]通过人工对数据集增加属性标签,利用属性标签中的额外信息和行人特征互补提升模型性能。然而,以全局特征为主的行人重识别很快进入了瓶颈阶段,学术界意识到需要引入行人图像中的局部特征进行识别[17]。Wei等人[18]设计了基于全局特征和局部特征对齐的特征描述子GLAD(Global-Local-Alignment Descriptor),将行人的全局特征和局部特征(头、上身、下身)融合进行特征表征。Zheng等人[19]针对行人图像不对齐现象,通过使用姿态估计模型得到局部骨架关键点进行语义部件对齐,从而提取局部特征。Zhao等人[20]提出了Spindle Net,同样是通过姿态信息提取行人骨架点,然后根据这些点将行人划分为7个区域,最后与全局特征相融合。Zhang等人[21]提出了密集语义对齐的网络框架,首先将行人图像分为24个语义区域并映射到UV空间,获得密集语义对齐的24个身体部分图像,然后将所提取的全局特征和局部特征进行融合。但是,使用姿态估计需要用到在其他数据集上已经预训练好的模型,会引入数据误差,增加网络结构复杂度。于是Sun等人[22]将图像统一进行均匀分块,对每一块采用一个损失函数训练,考虑到统一分块可能出现语义部分不对齐的现象,提出了RPP(Refined Part Pooling)策略,最终将所有局部特征组合成全局特征,得到的评价指标刷新了历史记录。Li等人[23]提出了协调注意力网络HA-CNN(Harmonious Attention Convolution Neural Network),通过多条分支学习具有判别度的像素和特征区域,并引入了交叉感知学习机制,最后将各分支特征进行融合。虽然上述方法的识别效果已经有了一定提升,但是忽略了使用低层可识别性语义信息,并且网络结构复杂。

为了弥补已有行人重识别方法不能利用有效特征信息进行识别、网络结构复杂的缺陷,本文提出了一种多支路特征融合的网络模型。选用SE-ResNeXt50[24]作为基础骨干网络,将3个不同的卷积块(其中包括1个低层卷积块)分别接出1条支路,采用通道域注意力模型CAM(Channel Attention Model)[25]加强语义关联特征通道聚集,为提取高细粒度特征,采用批特征擦除BFE(Batch Feature Erasing)[26],并且对不同卷积层采用不同的正则化方法。距离度量时,本文采用了聚类损失函数[27]。本文所提网络模型在Market1501、DukeMTMC-reID、CUHK03和MSMT17数据集上进行了单域和跨域实验,结果表明所提取的特征具有良好的表征能力和泛化能力。

2 基于多支路特征融合的行人重识别模型

2.1 行人重识别网络模型结构

本文提出的网络模型结构如图1所示,由骨干网络和3个分支网络(Branch1,Branch2,Branch3)构成,其中,f1,f2,f3为行人特征向量。骨干网络采用了SE-ResNeXt50网络;Branch1由CAM[25]、实例和批量正则化IBN(Instance and Batch Normalization)[28]和全局平均池化GAP(Global Average Pooling)组成;Branch2由GAP组成;Branch3由批标准正则化BN(Batch Normalization)、BFE[26]和全局最大池化GMP(Global Max Pooling)组成。最后将3个分支网络所输出的特征f1,f2和f3进行融合,融合特征f用于行人分类。

Figure 1 Structure of the proposed network model

SE-ResNeXt50网络是2017年ImageNet夺冠模型SENet[24]和残差模型ResNeXt[29]的结合,它通过自动学习特征通道权重参数的机制和多支路卷积的设计提升了识别效果。本文对SE-ResNeXt50进行了如下修改:(1)移除网络最后的池化层和全连接层;(2)将conv_5中的下采样步长从2变为1。分支网络Branch1首先将SE-ResNeXt50的第3个卷积块conv_3输出的特征引出,虽然低层卷积所提取的特征在通道上语义相关性较高,但是这些通道关联并不紧凑,故加入CAM对语义相似的通道进行聚合;然后通过1×1卷积进行升维处理,同时为了消除不同行人的外观特征差异和增强模型泛化能力,采用IBN分别对每幅行人图像和批量行人图像联合进行归一化处理;最后通过GAP得到特征f1,f1大小为1×1×2048。分支网络Branch2是把SE-ResNeXt50的第5个卷积块conv_5输出的全局特征通过GAP得到特征f2,f2大小为1×1×2048,该分支用于监督Branch1和Branch3学习。分支网络Branch3首先将SE-ResNeXt50的第4个卷积块conv_4输出的特征引出,通过1×1卷积进行升维处理,但是Branch1中采用实例正则化IN(Instance Normalization)[30]消除不同外观行人的个体特征差异的同时,也丢失了不同行人之间可识别的相关特征信息,故采用BN进行归一化处理,保留不同行人特征的差异性,使得Branch1和Branch3互补学习;然后加入BFE,随机把同一批量行人特征图的相同语义部分区域的值全部置为零,目的是为了让网络注重学习其它更加具有辨别性的特征信息;最后通过GMP增强特征擦除后学习到的显著局部特征,加快模型收敛速度[26],得到特征f3,f3大小为1×1×2048。将经过尺度统一后的3个分支特征f1、f2和f3融合,得到特征f,f大小为1×1×2048,然后通过Softmax函数进行分类。运用聚类损失函数[27]和标签平滑损失函数[31]训练该网络模型,3个分支网络联合学习,相互监督。

2.2 通道域注意力模型CAM

所谓注意力机制一般来说就是卷积网络首先快速浏览行人图像的全局信息,获得重点关注的分类信息区域;然后投入更多注意力到重点关注区域,以提取可辨别性特征,去除干扰信息。由于低层卷积提取的特征更多是局部底层粗略信息,高层卷积提取的特征更多的是全局语义信息,因此只有低层卷积提取出准确的边缘信息,高层卷积才能更好地获得完整行人特征。本文所用的骨干网络SE-ResNeXt50的低层卷积所提取特征注重行人粗略的语义部分(如头手等明显的部分),并且随着网络深度的加深,这些有关联的特征通道是分散的,并不能有效表征相关语义信息,为充分利用边缘特征信息,本文对conv_3输出的特征图M加入注意力机制。CAM[25]将具有相似语义信息的特征通道聚类,增强了特征的识别性。

本文所采用的通道域注意力模型如图2所示,其中,特征图M∈RH×W×C,H和W分别表示特征图的高度和宽度,C表示通道数;Mci表示第i个通道的特征矩阵;关系矩阵Ecicj∈RH×W表示第j个通道对第i个通道的关联度;M′ci表示M′中第i个通道的特征矩阵;M′表示通过CAM聚类语义相关通道后的特征图。

Figure 2 Schematic diagram of CMA model

关系矩阵Ecicj的计算如式(1)所示:

(1)

特征矩阵M′ci的计算如式(2)所示:

(2)

其中,γ是超参数,控制CAM的影响力大小。

特征图M′由各通道特征矩阵M′ci拼接可得。

2.3 实例和批量正则化IBN

分类问题中常使用批量正则化BN,BN对每一批量图像进行归一化以保证数据分布的一致性,但是行人重识别数据集是从不同摄像头拍摄得到的,网络所提取的同一行人特征会随光照、视角等因素的变化而变化,导致所做的正则化处理不能代表整体数据分布,会出现类内(Within-class)行人之间的度量距离大于类间(Between-classes)行人的情况。实例正则化IN常用于图像风格迁移中,可保留图像的风格信息,还可以加速模型收敛速度。而在行人重识别中注重保持不同行人图像之间实例独立,故可采用IN解决数据分布不统一的问题。但是,Pan等人[28]指出IN在降低图像外观差异的同时,会损失相关特征信息,BN在保存图像可识别特征的同时,会对网络处理外观信息时产生影响,于是提出IBN-Net,联合使用IN和BN提升了模型的表征能力和泛化能力。IN和BN的本质区别在于,IN是将单幅图像的单个通道通过计算均值、方差进行标准正态分布,BN是将整个批量图像的同一通道通过计算均值、方差进行标准正态分布。式(3)列举了IN和BN中计算均值μ的区别。

(3)

其中,H和W分别表示图像的高度和宽度,B表示批量图像数量,xjk表示图像中第j行、第k列像素的像素值,xjkm表示第m幅图像中第i行、第j列像素的像素值。

由于IBN可以充分利用IN和BN的优势,同时将劣势互补,极大增强了模型识别能力,故本文在Branch1中使用IBN代替BN,如图3所示,对特征图M′经过升维处理后进行IBN正则化,其中一半通道使用IN,另一半通道使用BN。

Figure 3 Schematic diagram of IBN

2.4 批特征擦除BFE

Branch1和Branch2这2个分支网络均是提取全局特征,存在着可判别性特征缺乏的问题,近年来有研究者证明了特征融合方法的有效性[18-21]。故本文通过批特征擦除BFE提取局部特征与全局特征进行特征融合。批特征擦除BFE[26]采用极其简单的机制达到了较高的识别效果,即随机擦除同一训练批次特征图的相同区域,这一区域应能够包含一个语义部分特征,从而达到网络更加注重学习剩余特征的目的。BFE首先根据设置擦除的矩形高度比he和宽度比we计算擦除矩形区域的高HBFE和宽WBFE,如式(4)所示:

HBFE=H×he

WBFE=W×we

(4)

其中,H和W分别表示特征图的高度和宽度。

假设随机选择矩形的1个顶点坐标为p1(x,y),其中,x∈(0,H-HBFE),y∈(0,W-WBFE),则另外3个顶点坐标分别为p2(x,y+WBFE)、p3(x+HBFE,y)、p4(x+HBFE,y+WBFE),然后将矩形区域像素的像素值全部置为零。

2.5 损失函数

本文所提网络模型采用聚类损失函数[27]和标签平滑损失函数[31]联合训练。聚类损失函数可以在距离度量中输出行人图像之间更大的类间变化距离和更小的类内变化距离。如式(5)所示,聚类损失函数类似于三元组损失函数,与其相比,聚类损失函数在其基础上度量目标行人与正负样本之间的距离是通过各类样本集合的特征映射平均值计算的。

(5)

交叉熵损失函数[32]是常见的分类损失函数,但在行人重识别数据集中,训练集数量有限,容易造成模型过拟合,因此希望网络模型不要过度依赖真实标签,能够接受少量的错误标签,提升泛化能力。如式(6)所示,给定错误率ε,对行人标签实施平滑处理(Label Smoothing)[31]。

(6)

其中,K为行人数量总和,k是行人标签,pi是网络预测该行人属于标签i行人的概率,qi是真伪标签。

因此,本文采用的联合损失函数Lloss如式(7)所示,2个损失函数不同的优化目标会共同约束特征,学习更多具有识别性的特征。

Lloss=Lcluster+Llabel

(7)

3 实验与分析

为验证本文所提网络模型的有效性,分别在Market1501、CUHK03、DukeMTMC-reID和MSMT17共4个数据集上进行实验,使用Rank-1、Rank-5和mAP作为评价指标对模型进行评估。

3.1 数据集

Market1501数据集[33]是由6个不同视角摄像头在清华大学校园所采集的共1 501个行人32 668幅DPM检测器自动检测并切割成矩形框的行人图像,其中,训练集由751个行人的12 936幅图像组成,测试集由750个行人的19 732幅图像组成。

DukeMTMC-reID[34]是DukeMTMC数据集的子集,它由8个不同视角摄像头在杜克大学校园所采集的图像构成,共有1 812个行人36 441幅人工检测的图像,并提供了行人属性的标记,其中,训练集由702个行人的16 522幅图像组成,测试集由702个行人的19 889幅图像组成;在gallery查询集中加入了额外的408个干扰行人。

CUHK03[35]是2014年以来第1个可用于深度学习训练的大规模行人重识别数据集,它由10个(5对)不同视角摄像头在香港中文大学校园所采集的图像构成,共有1 467个行人14 097幅图像,并提供了DPM检测器检测和人工检测2个类型数据集。本实验采用了基于DPM检测器获取的检测数据集和文献[37]所提的测试协议,将数据集分为:训练集(767个行人)和测试集(700个行人)。

MSMT17[36]是2018年CVPR会议上提出的大型数据集,它是由15个摄像头(12个室外、3个室内)在北京大学所采集的图像构成,采集是在不同气候条件、不同时间段进行的,共有4 101个行人126 441幅Faster RCNN检测器检测所得行人图像,其中训练集由1 041个行人的32 621幅图像组成;测试集由3 060人的93 820幅图像组成。

3.2 实验设置

本文实验环境为64位Ubuntu16.04操作系统,Python3.6、Pytorch1.0.1、iGame GeForce RTX 2070显卡、64 GB内存。

在数据集预处理阶段,所有图像尺度统一为258×128,并通过翻转、随机遮挡等操作对数据进行了增强处理。共设置100次迭代,每个训练批次大小为32(8个行人,每个行人有4幅图像)。优化器采用Adam,初始学习率为3.5×10-4。

3.3 实验步骤

本文所提网络模型的骨干网络是SE-ResNeXt50,初始权重参数是利用ImageNet预训练好的。为验证所选骨干网络的性能,分别以ResNet50、SE-ResNet50和SE-ResNeXt50作为骨干网络在Market1501上进行实验,训练过程中仅使用了Branch2,实验结果如表1所示。从表1中可以发现,虽然SE-ResNeXt50网络训练时间最长,但在Rank-1和mAP指标上均有明显优势,且训练时间仅比ResNet50多0.21 h,表明选用SE-ResNeXt50网络可以更有效地提升网络模型性能。

Table 1 Comparison experiments of backbone networks on Market1501

为验证所提模型中每个分支网络的效果,首先依次对每个分支网络进行实验,即每个实验中只有1个分支网络。然后进行了2个分支网络的实验,即每个实验中只有2个分支网络。最后进行3个分支网络的实验,即实验中有3个分支网络。分别在4个数据集上的实验结果如表2所示。通过实验结果可以发现:主干路Branch2是单个分支网络实验中识别效果最好的;在2个分支网络实验中,由Branch2组合的分支网络评价指标Rank-1和mAP均有大幅提升;当3个分支网络同时加入模型时,在Market1501上Rank-1达到了95.1%,mAP达到了86.8%,在DukeMTMC-reID上Rank-1达到了89.6%,mAP达到了79.1%,最为明显的在CUHK03上,Rank-1高达76.6%,mAP高达72.8%,在MSMT17上,Rank-1和mAP分别达到了80.2%和56.6%,这表明主干路Branch2所提取的全局特征是具有高表征能力的特征,3个分支网络相互监督学习,共同提升模型性能。

在Branch1中,CAM模型是为了将相关语义部分的特征通道进行聚类,从而增加特征信息,IBN正则化是为了提升特征表征能力和泛化能力,为了验证其有效性,在4个数据集上保持Branch2和Branch3不变的情况下,分别进行以下实验:(1)移除CAM;(2)用BN代替IBN。实验结果表明,在4个数据集上模型均有相似的提升效果,表3只展示了在Market1501上的结果,可以发现加入CAM模型后,Rank-1提高0.9%,mAP提高了1.5%;IBN正则化将模型的Rank-1和mAP分别提高了0.5%和1.3%。

在Branch3中,批特征擦除BFE对同一批次的特征图随机擦除一个明显语义部分,加强模型对其余可辨性特征的学习,并且可以防止过拟合现象的发生。为了验证其有效性,在4个数据集上保持Branch1和Branch2不变的情况下,进行有无BFE对比实验。实验结果表明,在4个数据集上模型均有相似的性能提升,表4只展示了在Market1501上的结果,在加入BFE后,Rank-1和mAP分别提高了1.5%和2.9%。

Table 2 Experiments of different branches combinations

Table 3 Effectiveness experiments of CAM and IBN

Table 4 Comparison experiments of BFE

Re-ranking[37]测试技巧是通过对行人特征向量K-reciprocal编码后进行杰卡德距离计算,然后将该距离与原始距离组合度量图像之间的距离,重新排序行人图像,可以提升模型性能。在测试本文所提模型时加入了Re-ranking,实验结果如表5所示,在3个数据集上评价指标均有大幅提升,其中在CUHK03上,Rank-1达到了85.4%,mAP达到了87.6%。

Table 5 Experiments of Re-ranking test technique

在MSMT17上进行测试时,由于显存不足,未得出实验结果,表9同理。

3.4 实验结果可视化

本节对深层卷积网络所提取的行人特征进行了映射,如图4所示。

Figure 4 Mapping of person features

从图4中可以看出,SE-ResNeXt50网络低层网络提取了行人轮廓,高层网络提取了相关可辨别性特征(如手提包),再次说明了所选取骨干网络的高性能。

行人图像查询结果可视化结果如图5所示。第1列为查询图像,后10列为查询结果排序图像,其中黑色边框表示错误识别,无色边框表示正确识别,可以发现对对有完整行人正面的查询图像所获得的查询结果更加精确,但是对有遮拦、行人背面的查询图像所获得的查询结果前5个识别图像基本准确。再次验证本文所提的行人重识别模型具有较好的识别效果。

Figure 5 Visualization of the query results

3.5 实验对比

为了验证本文所提模型的优越性,将其与近年来的主流模型进行了比较,表6~表10分别展示了在Market1501、DukeMTMC-reID、CUHK03、MSMT17和跨数据集上测试的评价指标对比结果。

表6所示为本文所提模型在Market1501数据集上与主流模型(CamStyle[38]、HA-CNN[23]、AlignedReID[1]、HSP[39]、PCB+RPP[22]、BFE[26]、DG-Net[40]和Bag Trick[41])的比较结果。与目前较优模型DG-Net[40]相比(未加Re-ranking),Rank-1和mAP分别提高了0.3%和0.8%。

表7所示为本文所提模型在DukeMTMC-reID数据集上与主流模型的比较结果。从表7中可以看出,ABD-Net[25]是目前性能较好的模型,本文在该模型基础上只引用了CAM,大大降低了模型复杂度,但是Rank-1和mAP分别提高了0.6%和0.5%。

表8所示为本文所提模型在CUHK03数据集上与主流模型的比较结果。本文所提模型的Rank-1和mAP分别达到了76.6%和73.2%,性能明显高于多数模型,加入Re-ranking后,Rank-1和mAP可以达到85.4%和87.6%。

Table 6 Performance comparison of mainstream models on Market1501

Table 7 Performance comparison of mainstream models on DukeMTMC-reID

表9所示为本文所提模型在MSMT17数据集上与主流模型的比较结果。MSMT17是一个更加接近实际情况的大型数据集,但是本文所提模型依然取得了较好的结果,Rank-1和mAP分别比DG-Net[40]提高了3%和4.3%,表明了本文所提模型对处理大数据集的优越性。

Table 8 Performance comparison of mainstream models on CUHK03

Table 9 Performance comparison of mainstream models on MSMT17

为了验证网络模型的泛化能力,本节还进行了跨域测试的实验,结果如表10所示,表10中M、D、C分别代表Market1501、DukeMTMC-reID、CUHK03,箭头(‘→’)左边字母代表训练集,右边字母代表测试集。可以发现所提模型在跨域测试中Rank-1和mAP最高只能达到62.5%和34.4%,相比其他模型Rank-1最高可提高0.3%,mAP最高可提高1.3%,也存在性能低于其他模型的现象。分析原因可知,行人重识别的数据集中训练集和测试集是不相交的,而且各数据间的风格差异颇大,比如Market1501中行人穿着基本是短袖和短裤,而DukeMTMC-reID中行人穿着基本是外套和长裤,导致模型跨域表现不佳。实验结果表明本文所提模型的泛化能力在一定程度上有所提升,但是总体识别能力有待进一步提高。

Table 10 Performance comparison of mainstream models on the cross-domain condition

同时,本文还在Market1501上对模型复杂性进行了比较,所有实验均是在相同实验参数的情况下进行的,实验结果如表11所示。从表11中可以发现,本文模型达到了高水平识别精度,训练时间相比DG-Net[40]减少了4.9 h、参数量比CamStyle[38]减少了约6.8 million。

Table 11 Comparison of model complexity

通过上述实验对比可知,本文所提模型不仅充分利用了低层卷积的有效特征信息,而且结构简单,所获得的特征拥有高细粒度的特征表征能力,能够达到很好的识别效果。

4 结束语

本文提出了一种多支路特征融合的行人重识别网络模型,利用融合后的特征进行重识别。该模型采用SE-ResNeXt50作为骨干网络,引出3个分支网络,根据每个分支的特点采用不同的处理方式,最后将3个分支的特征融合,并加入聚类损失函数和标签平滑损失函数联合训练模型。实验结果表明,本文所提模型在单域情况下,识别率达到了较好的效果,但在跨域情况下,识别率有待提升。未来的工作方向是在保证模型简单化的情况下,提升泛化能力。

猜你喜欢
集上分支行人
毒舌出没,行人避让
Cookie-Cutter集上的Gibbs测度
链完备偏序集上广义向量均衡问题解映射的保序性
巧分支与枝
路不为寻找者而设
一类拟齐次多项式中心的极限环分支
复扇形指标集上的分布混沌
我是行人
曝光闯红灯行人值得借鉴
生成分支q-矩阵的零流出性