老哥学习网 - www.lg9.cn 2024年05月20日 09:57 星期一
当前位置 首页 >公文范文 > 公文大全 >

适应跨域的行人重识别算法

发布时间:2023-06-27 15:45:14 浏览数:

石祥滨,吴天宇

(沈阳航空航天大学 计算机学院,沈阳 110136)

行人重识别(Person Re-Identification),又称行人再识别技术,是通过图像或视频序列比对其他图像中是否存在特定目标的计算机视觉技术,被广泛定义为图像检索的子问题[1]。常见的重识别目标包括车辆、行人、动物等,本文研究对象主体为行人。行人是典型的非刚性对象,易形变且检索难度大。行人重识别有着广泛的应用,如智能安防、无人超市监控、人机交互、相册聚类等,是跨摄像机跟踪、人体行为分析等领域的重要基础。行人重识别包括特征提取和检索匹配两个步骤,通过对行人提取外观特征来判断输入端身份,因此提取高精度特征是行人重识别的重要研究方向。

传统算法提取行人外观特征,通常基于颜色、纹理、形状、梯度等基础视觉信息,如WH算法[2]、LOMO算法[3]、SIFT算法[4]、Fish算法[5]等,但传统的手工特征描述表达能力有限。近些年基于深度学习的特征提取方法逐渐成为主流,与传统算法不同,基于深度学习的方法可以提取出复杂且高精度的行人特征。基于深度学习的行人重识别可划分为表征学习的Re-ID方法、度量学习的Re-ID方法、局部特征的Re-ID方法[6]。基于表征学习的方法将行人重识别看作分类问题或是验证问题。Geng等[7]利用分类损失和验证损失来训练网络,每个损失对应一个子网络,分类子网络对图片的ID身份进行预测,而验证子网络作为二分类网络来判断两张图片是否属于同一身份;
Lin等[8]在公共数据集中标注了额外的属性,例如性别、头发、衣着等,网络不仅需要预测给定图像的身份标签,同时需要准确预测行人的属性,加强了网络的泛化能力。度量学习旨在通过卷积神经网络学习出行人图像间的相似度,表现为同一行人的不同样本图片间的相似度高于不同行人的样本图片间的相似度。其中,定义一个映射f(x)将行人图像映射到一维向量空间Rf,再定义一个距离函数d(x,y)来计算两个向量间的距离。通过最小化网络的损失值,寻求一个最优的映射f(x)。常用的度量损失函数有对比损失(Contrastive Loss)[9]、三元组损失(Triplet Loss)[10]、四元组损失(Quadruplet Loss)[11]、难采样三元组损失(Tri-Hard Loss)[12]、边界挖掘损失(MSML)[13]等。基于局部特征的行人重识别算法使用图像等分切块的方式,或者融合骨架关键点信息、姿态矫正等学习特征。PCB算法[14]将行人图像水平分为6块,分别进行身份分类后拼接成统一向量再进行度量。PBF引入姿态估计模型[15]估计出14个行人关键点,并用仿射变换将关键点对齐,提取出不同尺度上的局部特征。

上述研究中,缺乏对行人跨摄像机发生形态变化的考量,只通过增加三元组中不同视域的正例数量,来提升模型应对行人图像风格转换的问题。不少研究还在使用黑色图像块模拟遮挡,但这种方法破坏了图像的原始结构。为了解决光照变换带来的影响,使用灰色图像代替原始图像成了常见的方法,但该策略丢失了图像的色彩信息。在众多度量Re-ID的工作中,为了解决三元组损失收敛困难的问题,通常将与分类损失结合使用,这种方式收敛条件不明确,损害特征空间的可分离性。

为解决以上问题,本文引入IBN模块应对图像风格变换的问题,将它嵌入至ResNet50中,组合使用Circle Loss和Center Loss,结合动态学习率策略,能够提升模型的精度和收敛速度,并加强特征的内聚性。本文提出一种随机灰度擦除的数据增强方法,配合多种数据图像预处理手段,有效应对光照变化对模型的影响。

行人重识别中存在风格转换的问题,如形态变化和视角切换等。为了解决这些问题,本文引入了 IBN模块,它将BN(Batch Normalization)和IN(Instance Normalization)组合,BN使批次数据分布一致,IN从单例图像中学习图像风格,适应风格变化,提升模型适应视域变化的能力。IBN结合两种结构的优势,在网络浅层保留图像风格信息,在深层使数据前后分布一致,有益于加速网格模型的收敛,防止梯度消失。

在网络训练过程中,通常将图像分批次送入网络中,使每个批次训练的数据具有不同的分布,BN用于对每一批数据作归一化处理,使其分布一致。它将数据归一化至均值为0、方差为1的正态分布上,这样不仅能使数据分布一致,而且可以避免出现梯度消失。通过计算每个批次的均值与方差,沿着批次维度对该批次作归一化,同时引入缩放和平移变量,保证每一次数据经过归一化后还保留原有学习来的特征,如式(1)所示

(1)

其中:B={x1…xm}表示批次;
μ表示一个批次的均值;
σ2表示批次方差;
γ、β是缩放和平移变量;
是浮点数据误差补偿值。

IN对单图像实例在长宽维度上对图像的每个像素进行归一化。当训练图像风格变化时,生成结果主要依赖于某个图像实例,整批次归一化不适合图像风格化,而IN学习的特征不受外观变化的影响,如颜色、样式等,能够消除外观变化对特征学习产生的影响。IN可在不增加模型计算代价的情况下,有效提升模型泛化能力,同时IN能较为容易地与主流网络骨架结合,具体如式(2)所示

(2)

可以看出,BN增强了特征间的差异性,但破坏了如光照、姿态、颜色等浅层信息,而IN能够保留这些浅层信息,并在一定程度上适应图像风格的转化。IBN结构结合了两者的优点,可以提升Re-ID模型对行人外观变化的适应性,加强模型对行人跨视域运动的适应能力。本文将IBN嵌入至经典残差网络骨架ResNet50中。ResNet50中包含了4个layer结构,每个layer中又包含了个数不同的残差块。将IBN嵌入每个残差块的第一、二个卷积层后,一半通道使用IN,一半通道使用BN,合并它们的输出送入第三个卷积层。随着网络深度的加深,无法通过IN学习到浅层信息,本文只在前3个layer使用IBN残差块,layer4使用原始的残差结构。如图1所示,图1a为原始残差块,图1b为嵌入IBN后的结构块。

图1 原始残差块与嵌入IBN后的对比图

网络的深度扩展了深层特征的信息量,在ResNet50中包含了4个layer结构,为了获取深层信息的同时丰富特征的粒度,将删除主干网络layer 4中最后的空间向下采样操作,即将最后一层的最后一个残差块的步距设置为1[16]。当输入图像的尺寸为256×128时,经过ResNet50骨架网络后特征图大小变为8×4。但将步距设为1后,输出特征图大小变为16×8,提升了特征图包含的粒度信息,更高的空间分辨率使网络学到更丰富的信息,同时这种操作并没有显著增加计算成本。

为了使模型能够应对遮挡情况,大多数工作在训练过程中选择用黑色图像块模拟遮挡,使模型适应遮挡情况。使用黑色方块遮挡图片会破坏原始图像结构,丢失部分数据信息。另一部分工作在训练期间使用灰色图像代替原始图像,目的在于降低光照对行人重识别模型带来的不利影响,这种方式丢失了图像的颜色信息,降低了模型对色彩的辨识能力。综合考量两种方案,本文提出一种随机灰度擦除的数据增强方式。它在模拟遮挡的前提下保留了部分色彩信息,灰色图像块的使用使模型在一定程度上适应光照变换,其对比图如图2所示。

图2 随机擦除与随机灰度擦除对比图

这种增强方式不占用多余的计算资源和显存,也能够与其他图像预处理方式如Padding、灰度化、水平翻转、色度调整、图像标准化等相互补充,如图3所示。

图3 图像预处理技巧

在训练模型过程中,以一定概率pr对输入图像进行灰度图像擦除,1-pr的概率不对图像做任何处理,其流程是随机选取一个矩形区域,并将矩形区域中的像素替换为灰度图像中相同矩形区域的像素。设Sl和Sh分别是随机生成矩形区域的最小面积和最大面积,r1和r2是随机生成矩阵区域的最小纵横比和最大纵横比,xT和yT为随机生成的左上角坐标,确保生成的坐标和生成的矩阵框落在原图像中,当找到满足要求的生成矩阵后,用灰度图像块替换掉原图像在生成矩阵位置的图像,本文使用加权平均法对图像灰度化。

行人重识别中最常用的两种方法为身份分类和特征度量,前者从带有身份类别标签的数据中学习,将每个人看作一个类别进行任务分类;
后者从带有成对标签的数据中学习,网络模型用于特征空间中“拉近”相同身份特征,“推远”不同身份特征,通过计算目标间相似度来判断是否为同身份,如图4所示。在训练阶段同时使用两种范式,会引发损失函数对所有样本相似度产生一致惩罚的问题,忽视了它们之间的对应关系。

图4 3种Loss方式

在度量学习中通常会引入一个决策边界m,使得类间相似度sn和类内相似度sp之间拉开间距,但这个决策边界存在歧义性。给出两组样本的相似度参数,其中s1的类间相似度和类内相似度分别为sn,sp={0.1,0.4},s2为sn,sp={0.5,0.8},它们同时满足sn-sp=-0.3的决策边界,但前者sp甚至小于后者sn,这样的收敛条件损害特征空间的可分离性。

本文引用Circle Loss作为损失函数[17],它统一分类与度量两种损失并明确收敛状态。Circle Loss认为这两种学习方法没有本质区别,它们共同的目标是在提升类内相似度sp的同时最小化类间相似度sn,不断优化sn-sp使其最小,直至收敛。使用Circle Loss会将sn和sp给予相同尺度的关注,不会只偏向降低sn或提升sp。

(3)

其中:γ是尺度因子控制损失维度;
m是决策边界阈值,它由两个范式组成。

当给定身份标签时,设N是训练的类别数,计算x与分类层中权重向量wi(i=1,2,…,N)的余弦相似度。x与N-1类之间的相似度得分如式(4)所示,其中wj指第j个非目标类的权重向量,同时获得关于单一样本x的类内相似度得分如式(5)所示

(4)

(5)

在分类任务中,单样本x中同标签图像为一类整体,式(3)可转换为AM-SoftMax[18],如式(6)所示。若取m=0,γ=1且用矩阵乘法代替余弦相似度,则公式最终退化为SoftMax损失。

(6)

(7)

其中:max[·]+=max(0,x),式(7)中使用了softplus=lg(1+ex)≈max(0,x)进行近似转换,当γ趋近正无穷时,式(3)退化为难例挖掘三元组损失。

(8)

分类损失在训练初期对网络模型提升高,但后期易过拟合,而难例挖掘三元组损失容易受超参影响经常难以收敛。Circle Loss可以有效地加快收敛速度,明确收敛条件并统一两种损失值,保证类内的紧凑性和类间的可分离性。为了加强同身份标签特征的内聚性,本文加入Center Loss作为Circle Loss的补充,其定义如式(9)所示

(9)

其中:yj是一个批次中第j张图像的标签;
B代表批次的数目;
f指代特征;
cyj表示第yj个类的中心特征。式(9)有效地表达类内变化和特征之间的关系,即学习每个类的中心特征,并惩罚与其距离较远的特征,因此Center Loss增加了类内紧凑性。最终本文综合的损失函数如式(10)所示,其中β为超参权重,取0.005。

L=losscircle+βlosscenter

(10)

如图5所示,对比各种损失下特征在二维空间中的分布情况,不同深浅的点代表来自不同类的特征。

图5 二维可视化特征在空间的分布对比

综上所述,本文提出的最终网络模型如图6所示。

图6 适应跨域的行人重识别网络模型

4.1 实验配置与准备

本文使用标准行人重新识别数据集Market1501[19]和Duke-ReID[20],它们共同包含多季节、多时间、跨视域、高清晰和低清晰度摄像机行人图像,并具有丰富的场景和背景以及复杂的灯光变化。本文使用最常见的评估行人重识别指标Rank-1和mAP[21],实验在CUDA10.1、OpenCV4.2、Pytorch1.7、显卡GTX2070、8G显存的环境下进行。

在实验阶段使用了开源行人重识别框架ReID Baseline。在准备阶段,首先将图片大小调整为256×128,并通过图3中的方法进行预处理,以50%的概率对图像进行水平翻转,同时使用文中提出的随机灰度擦除方法对图像进行增强,pr选择0.4。图像批次输入数目为32,网络骨架使用ResNet50-IBN,初始学习率设为0.000 35,网络共经历120个epochs。训练采用线性Warm-Up策略,在训练初期学习率逐步提升至3.5×10-4,在前10个epoch逐步提升至初始学习率;
经历40次迭代后,网络趋于稳定,此时使用余弦退火的策略逐渐降低学习率,相比传统的截断式降低学习率方法,更能保证网络稳定性,不会出现损失值震荡的情况,如图7所示。学习率优化器使用SGD,损失函数使用Circle Loss和Center Loss的线性结合,其中边界阈值m=2.5,γ=32,β=0.005。

图7 学习率策略对比

4.2 实验结果

将提出的模型与Baseline以及其他优秀Re-ID算法进行比对实验,结果见表1所示。其中IDE为身份分类的表征Re-ID,TriNets为使用了难例挖掘采样三元组的度量Re-ID,在采用同样预处理方案训练的前提下,使用本文提出的损失函数大幅提升了模型精度,Rank-1在两个数据集分别达到92.13%和86.37%,mAP达到74.02%和73.85%。PBF使用双基线网络,同时提取表征和行人关键点,结合了姿态信息,AlignedRe-ID与PCB为局部Re-ID,通过提取局部信息提升模型精度,本文的方法使用全局特征,并且没有引入额外的信息,设计简单,更容易复现。实验修改开源框架,在Market1501数据集中,Rank-1达到94.2%,mAP达到84%;在DukeMTMC-ReID数据集中,Rank-1达到了86.5%,mAP达到76.6%。通过消融实验可以看出本文提出的方法有效地提升了Baseline的水准,并超过了上述经典ReID算法,证明了方法的有效性。

表1 对比实验 %

图8展示了Rank-1和mAP随训练时间增长的变化,在第20个epoch时模型已经获取较高精度,验证了本文提出的损失函数可以加快收敛速度。

图8 Rank-1与mAP曲线

4.3 实际应用

在现实环境中,Reid模型需要应用到实时环境中,高精度模型往往计算量大、推断速度慢、延迟高,所以在实验中使用简单的模型蒸馏,以上述方案得到的模型作为教师模型,将其中的知识传递给较小的模型ResNet18-IBN,在不降低精度的前提下,尽可能提升速度。

应用KL离散度衡量教师和学生学习特征的差异,在蒸馏阶段需要对教师模型进行推理得到输出的预测身份向量,因此在蒸馏阶段需要使用SoftMax作为损失函数,加入温度T,本文T=10°。在知识蒸馏过程中,将平滑后的教师输出与学生平滑预测结果通过KL离散度得到蒸馏损失,蒸馏过程如图9所示。

图9 知识蒸馏流程

最终得到学生模型ResNet18-IBN,其精度对比如表2所示。

表2 与非蒸馏模型的结果对比 %

使用蒸馏方案得到的R18-IBN模型与ResNet50-IBN相比在精度上降低了2%,对比使用非蒸馏方案训练R18-IBN模型有8%左右的精度提升。以32张行人图像为一个批次传入网络中,速度从78.6 ms降低至25.9 ms,在推理速度上有较大幅度提升。图10展示了CMC曲线,将排名前15的模型准确率可视化显示。

图10 CMC曲线

挑选一名测试集中的行人与查询集进行度量,得到了Rank-10的度量排名,如图11所示,查询得到的10张图标号皆为深色,表示与查询目标身份相同。可以看出通过本文提出方法得到的模型在测试集中有着良好的表现。

图11 查询测试Rank-10

行人重识别常应用到视频查询任务,本文将模型应用于校园监控视频中。给定n张待查询图像输入到网络中,随后在一个降采样的视频中通过检测器获取候选目标,并逐一进行度量,同时记录相关信息并做出相似性排序。算法流程如图12所示。本文提出的方法可以代替人力查询视频,降低查询成本。

图12 离线视频查询目标

本文修改传统分类网络ResNet50,加入IBN模块,使模型适应风格转换。提出一种随机灰度擦除的图像预处理方案,降低了光照变化对模型的影响。使用Circle Loss损失函数替换SoftMax Loss和Triplet Loss的线性组合,提升了模型收敛速度,明确了收敛目标,并引入Center Loss,加强了学习得到模型的内聚性。结合了Warm-Up和余弦退火的学习率策略使网络能够稳定收敛。通过开源框架ReID-Baseline进行实验,在Market1501和Duke-ReID两个数据集中均有明显的提升。最后让本文提出的模型作为教师模型,通过知识蒸馏得到表现良好的ResNet18-IBN学生模型,它能够在现实中完成跨视域查询任务,取得了不错的效果。在未来的研究中,将进一步配合跟踪算法,完成跨摄像机的多目标跟踪任务。

猜你喜欢 度量行人灰度 采用改进导重法的拓扑结构灰度单元过滤技术北京航空航天大学学报(2022年6期)2022-07-02鲍文慧《度量空间之一》上海文化(文化研究)(2022年3期)2022-06-28模糊度量空间的强嵌入数学年刊A辑(中文版)(2022年4期)2022-02-16毒舌出没,行人避让意林(2021年5期)2021-04-18Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值天津医科大学学报(2021年1期)2021-01-26迷向表示分为6个不可约直和的旗流形上不变爱因斯坦度量数学年刊A辑(中文版)(2019年3期)2019-10-08路不为寻找者而设扬子江(2019年1期)2019-03-08我是行人小天使·一年级语数英综合(2017年6期)2017-06-07基于最大加权投影求解的彩色图像灰度化对比度保留算法自动化学报(2017年5期)2017-05-14曝光闯红灯行人值得借鉴汽车与安全(2016年5期)2016-12-01

推荐访问:算法 行人 识别

相关文章:

Top