一种基于相机感知和深度学习的无监督域适应行人重识别方法

文档序号:32872376发布日期:2023-01-07 05:44阅读:33来源:国知局
一种基于相机感知和深度学习的无监督域适应行人重识别方法

1.本发明涉及行人重识别技术领域,具体而言,涉及一种基于相机感知和深度学习的无监督域适应行人重识别方法。


背景技术:

2.行人重识别是近年来计算机视觉领域比较热门的研究方向之一,它是一个图像检索中的问题,是利用计算机视觉技术判断图像或视频中是否存在特定行人的技术,即给定一个监控行人图像检索跨设备下的该行人图片。
3.随着科技的发展,行人重识别技术已经被广泛应用到智能安防、视频监控等领域。目前,行人重识别已经在有标注的监督领域取得了比较大的突破,并且展现出了优越的性能。但是,由于标注数据集需要较高的人工成本,而无标签的数据往往是十分廉价而且规模比较大的。如何扩展到大型未标注的数据集和新的数据域越来越受到人们的关注,无监督域适应行人重识别应运而生。
4.目前先进的无监督域适应行人重识别方法大多采用基于伪标签的方式。首先,利用有标签的源域数据预训练网络模型,然后,对无标签的目标域样本估计伪标签用于训练。基于伪标签的方法极大地提高了无监督域适应行人重识别模型的效果。然而,无监督的方法与有监督的方法相比,在性能上仍有较大差距。由于不同相机视角拍摄下,同一个行人的图片存在较大差异,聚类算法不能保证同一个行人的图片样本会被分配到相同的伪标签,这就不可避免地引入了噪声标签。模型训练中容易受到标签噪声的影响,导致模型性能的下降。


技术实现要素:

5.本发明解决的问题是如何降低因跨相机视角造成的同个行人在图片上的差异,提高对噪声标签的鲁棒性。
6.为解决上述问题,本发明提供一种基于相机感知和深度学习的无监督域适应行人重识别方法,包括:
7.步骤1、获取一个有标签的源域数据集和一个无标签的目标域数据集其中,ns为源域数据集中的图片样本的数量,n
t
为目标域数据集中的图片样本的数量,源域图片对应的真实标签将源域数据集和目标域数据集中的每张图片样本进行预处理;
8.步骤2、构建基于相机感知的行人重识别网络模型,并将预处理后的源域数据集和目标域数据集输入行人重识别网络模型进行特征提取,得到特征集其中,为源域数据集中图片样本xs的特征,为目标域数据集中
图片样本x
t
的特征;
9.步骤3、根据图片自带的相机标签,分别对中同一个相机内的特征进行全局聚类,分别得到多个相机的相机内部伪标签所述相机内部伪标签内包含多个精细类样本集合;对的特征集中的进行全局聚类,得到跨相机的全局伪标签所述跨相机的全局伪标签内包含多个粗糙类样本集合;
10.步骤4、根据聚类结果构建相机不可知记忆模块和相机感知记忆模块,并根据跨相机的全局伪标签和相机内部伪标签计算一致性系数矩阵;然后基于一致性系数矩阵和跨相机的全局伪标签对多个相机的相机内部伪标签进行编整,得到修整后的跨相机的全局伪标签和修整后的相机内部伪标签进而得到带有伪标签的目标域数据集
11.步骤5、采用联合训练的方式,通过计算源域数据集和目标域数据集的训练损失,梯度回传更新行人重识别网络模型的参数,动态更新相机不可知记忆模块和相机感知记忆模块的参数,保存行人重识别网络模型的参数的最优参数。
12.本发明的有益效果是:采用将目标域数据集中的特征基于图片样本自带的相机编号进行筛分,然后进行聚类得到多个相机的相机内部伪标签,并基于一致性系数矩阵和跨相机的全局伪标签对多个相机的相机内部伪标签进行重新编整,使得多个相机内的属于同一类代理的伪标签的类代理编号一致,修正后的跨相机的全局伪标签克服了全局聚类中跨视角造成的同个行人在图片上的差异,并通过计算源域数据集和目标域数据集的对比损失进一步缓解了目标域数据集中的相机域差异,提高了对噪声标签的鲁棒性。
13.作为优选,所述步骤1中将源域数据集和目标域数据集中的每张图片样本进行预处理具体包括:先将每张图片样本的尺寸调整到相同的高度和宽度;然后进行水平翻转、补零填充、标准化和随机擦除操作。
14.作为优选,所述步骤2构建的行人重识别网络模型包括用于进行特征提取的特征提取器,所述特征提取器包括五个阶段,其中前四个阶段为 resnet50网络框架的前四个阶段,分别为:
15.第一阶段:对图片样本依次进行卷积操作、归一化操作、relu激活函数和最大池化操作;其中,卷积操作的卷积核数据为64,卷积核的尺寸为 7
×
7,补零参数值为3,补偿为2;最大池化操作的池化核的尺寸为3
×
3,补零参数值为1,步长为2;
16.第二阶段:包括三个瓶颈层;
17.第三阶段:包括四个瓶颈层;
18.第四阶段:包括六个瓶颈层;
19.所述特征提取器的第五阶段包括三个瓶颈层,用于对特征提取器前四个阶段得到的特征图进出池化,得到源域数据集和目标域数据集中每张图片样本的特征,其中,第一个瓶颈层中所有的卷积步长均为1,以及下采样操作中卷积步长为1;其余两个瓶颈层的卷积层的卷积步长为1,且取消下采样操作。
20.作为优选,所述步骤3包括:
21.步骤301、计算中两两特征之间的杰卡德距离,得到n
×
n维的距离矩阵;
22.步骤302、结合得到的德距离矩阵,采用dbscan密度聚类算法进行聚类,对同一个簇中的特征赋予相同的伪标签,对聚类产生的离群点,赋予其最接近的簇的伪标签;得到跨相机的全局伪标签
23.步骤303、根据图片样本自带的相机标签,筛分处同一个相机的特征集合,并计算特征集合内两两特征之间的杰卡德距离,得到相机内的距离矩阵;
24.步骤304、结合相机内的距离矩阵,采用自适应层次聚类法进行相机内部的聚类操作,对离群点分配最接近的簇的伪标签,得到相机的相机内部伪标签
25.作为优选,所述步骤4包括:
26.步骤401、根据聚类结果构建相机不可知记忆模块和相机感知记忆模块;
27.步骤402、根据跨相机的全局伪标签和相机内部伪标签计算一致性系数矩阵为:
[0028][0029]
式中,为相机内部伪标签内的精细类样本集合,内的精细类样本集合,zc为相机内部伪标签的类代理总数;为全局伪标签内的粗糙类样本集合,l∈{1,

,l};
[0030]
步骤403、基于一致性系数矩阵和跨相机的全局伪标签从各个相机的相机内部伪标签中筛出属于同一类代理的精细类样本集合并重新进行整编,得到修正后的全局伪标签方式为:
[0031][0032]
重新整编后的各个相机的相机内部伪标签为
[0033]
步骤404、基于修正后的全局伪标签和各个相机的相机内部伪标签为得到带有伪标签的目标域数据集其中,其中,表示c号相机下有标签样本的数据集,是目标域数据集中图片样本的全局伪标签,是整理后的类代理总数,是整理后的类代理总数,是目标域数据集中图片样本在c号相机下相机内伪标签,表示c号相机下类代理数,表示目标域数据集中图片样本的相机编号,表示c号相机下的图片样本数量;
[0034]
作为优选,所述步骤5包括:
[0035]
步骤501、源域数据集的训练损失的计算公式为:
[0036]
[0037][0038][0039]
式中,为源域数据集的总损失,为源域数据集的交叉熵损失,为源域数据集的三元组损失;表示源域数据集中图片样本属于类代理的概率,||
·
||表示l2范数距离,i,p和i,n表示在小批次的图片样本中困难正样本索引和困难负样本索引,m=0.3表示三元组中的距离;
[0040]
步骤502、目标域数据集的训练损失计算公式为:
[0041][0042]
式中,表示目标域数据集中带有自我惩罚机制的全局对比损失;表示目标域数据集的相机感知对比损失,λ1用于平衡相机感知对比损失在目标域总损失中的比重;表示目标域数据集的三元组损失;其中,结合自我惩罚机制的全局对比损失的计算公式为:
[0043][0044]
式中,τa表示温度系数,τa=0.05;表示目标域数据集中的图片样本总数;
[0045]
相机感知对比损失的计算公式为:
[0046][0047]
式中,为相机内对比损失,为相机间对比损失,λ2= 0.5为超参数,用于平衡相机内对比损失和相机间对比损失的权重;相机内对比损失的计算公式表示:
[0048][0049]
式中,表示从第1个相机至第个相机内的类代理总数;表示第c个相机内的图片样本总数;
[0050]
相机间对比损失的公式表示:
[0051][0052]
式中,和分别表示图片样本的正相机类代理索引集合和负相机类代理索引集合,|
·
|表示是类代理索引集合中元素的数量,|表示是类代理索引集合中元素的数量,
[0053]
三元组损失为:
[0054][0055]
式中,||
·
||表示l2范数距离,i,p和i,n表示在小批次图片样本的困难正样本的索引和困难负样本的索引,m=0.3表示三元组中的距离;
[0056]
步骤503、计算源域数据集的训练损失和目标域数据集的训练损失总和:
[0057][0058]
步骤504、更新相机不可知记忆模块d表示特征维度,表示相机不可知记忆模块中的类别总数,存储全局伪标签为l的所有图片样本的平均特征动量表示,即类l的全局类代理;
[0059]
更新相机感知记忆模块表示相机感知记忆模块中的类别总数,存储某相机类中的所有图片样本的平均特征,即相机类代理;
[0060]
所述相机不可知记忆模块和相机感知记忆模块的更新方式相同,均为利用j类的困难正样本对j类代理进行动量更新,其公式为:
[0061][0062]
其中,μ为动量更新系数,μ=0.2;
[0063]
步骤505、相机不可知记忆模块和相机感知记忆模块的更新次数等于行人重识别网络模型对源域数据集和目标域数据集的训练次数;判断当前训练次数是否在预设训练次数范围内,若是,则返回步骤2中进行特征提取;若否,停止训练。
具体实施方式
[0064]
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
[0065]
一种基于相机感知和深度学习的无监督域适应行人重识别方法,包括:
[0066]
步骤1、获取一个有标签的源域数据集和一个无标签的目标域数据集其中,ns为源域数据集中的图片样本的数量,n
t
为目标域数据集中的图片样本的数量,源域图片对应的真实标签将源域数据集和目标域数据集中的
每张图片样本进行预处理;本实施例的预处理包括对源域数据集和目标域数据集中的每张图片样本进行预处理具体包括:先将每张图片样本的尺寸调整到相同的高度和宽度;然后进行水平翻转、补零填充、标准化和随机擦除操作;
[0067]
步骤2、构建基于相机感知的行人重识别网络模型,并将预处理后的源域数据集和目标域数据集输入行人重识别网络模型进行特征提取,得到特征集其中,为源域数据集中图片样本xs的特征,为目标域数据集中图片样本x
t
的特征,本实施例中,的特征,本实施例中,
[0068]
本实施例中的行人重识别网络模型包括用于进行特征提取的特征提取器,所述特征提取器包括五个阶段,其中前四个阶段为resnet50网络框架的前四个阶段,分别为:
[0069]
第一阶段:对图片样本依次进行卷积操作、归一化操作、relu激活函数和最大池化操作;其中,卷积操作的卷积核数据为64,卷积核的尺寸为 7
×
7,补零参数值为3,补偿为2;最大池化操作的池化核的尺寸为3
×
3,补零参数值为1,步长为2;
[0070]
第二阶段:包括三个瓶颈层;
[0071]
第三阶段:包括四个瓶颈层;
[0072]
第四阶段:包括六个瓶颈层;
[0073]
所述特征提取器的第五阶段包括三个瓶颈层,用于对特征提取器前四个阶段得到的特征图进出池化,得到源域数据集和目标域数据集中每张图片样本的特征,其中,第一个瓶颈层中所有的卷积步长均为1,以及下采样操作中卷积步长为1;其余两个瓶颈层的卷积层的卷积步长为1,且取消下采样操作;
[0074]
本实施例采用在imagenet数据集上预训练特征提取器的参数,其中,采用dsbn替换bn,并使用广义平均池化替换原模型中的全局平均池化;此处,关于resnet50网络框架为现有技术,对于resnet50网络框架的每个层不做过多赘述;
[0075]
步骤3、根据图片自带的相机标签,分别对中同一个相机内的特征进行全局聚类,分别得到多个相机的相机内部伪标签所述相机内部伪标签内包含多个精细类样本集合;对的特征集中的进行全局聚类,得到跨相机的全局伪标签所述跨相机的全局伪标签内包含多个粗糙类样本集合;具体包括:
[0076]
步骤301、计算中两两特征之间的杰卡德距离,得到n
×
n维的距离矩阵;
[0077]
步骤302、结合得到的德距离矩阵,采用dbscan密度聚类算法进行聚类,对同一个簇中的特征赋予相同的伪标签,对聚类产生的离群点,赋予其最接近的簇的伪标签;得到跨相机的全局伪标签
[0078]
步骤303、根据图片样本自带的相机标签,筛分处同一个相机的特征集合,并计算特征集合内两两特征之间的杰卡德距离,得到相机内的距离矩阵;
[0079]
步骤304、结合相机内的距离矩阵,采用自适应层次聚类法进行相机内部的聚类操作,对离群点分配最接近的簇的伪标签,得到相机的相机内部伪标签
[0080]
步骤4、根据聚类结果构建相机不可知记忆模块和相机感知记忆模块,并根据跨相
机的全局伪标签和相机内部伪标签计算一致性系数矩阵;然后基于一致性系数矩阵和跨相机的全局伪标签对多个相机的相机内部伪标签进行编整,得到修整后的跨相机的全局伪标签和修整后的相机内部伪标签进而得到带有伪标签的目标域数据集具体包括:
[0081]
步骤401、根据聚类结果构建相机不可知记忆模块和相机感知记忆模块;
[0082]
步骤402、根据跨相机的全局伪标签和相机内部伪标签计算一致性系数矩阵为:
[0083][0084]
式中,为相机内部伪标签内的精细类样本集合,内的精细类样本集合,zc为相机内部伪标签的类代理总数;为全局伪标签内的粗糙类样本集合,l∈{1,

,l};
[0085]
步骤403、基于一致性系数矩阵和跨相机的全局伪标签从各个相机的相机内部伪标签中筛出属于同一类代理的精细类样本集合并重新进行整编,得到修正后的全局伪标签方式为:
[0086][0087]
重新整编后的各个相机的相机内部伪标签为
[0088]
步骤404、基于修正后的全局伪标签和各个相机的相机内部伪标签为得到带有伪标签的目标域数据集其中,其中,表示c号相机下有标签样本的数据集,是目标域数据集中图片样本的全局伪标签,是整理后的类代理总数,是整理后的类代理总数,是目标域数据集中图片样本在c号相机下相机内伪标签,表示c号相机下类代理数,表示目标域数据集中图片样本的相机编号,表示c号相机下的图片样本数量;
[0089]
步骤5、采用联合训练的方式,通过计算源域数据集和目标域数据集的训练损失,梯度回传更新行人重识别网络模型的参数,动态更新相机不可知记忆模块和相机感知记忆模块的参数,保存行人重识别网络模型的参数的最优参数;具体包括:
[0090]
步骤501、源域数据集的训练损失的计算公式为:
[0091][0092]
[0093][0094]
式中,为源域数据集的总损失,为源域数据集的交叉熵损失,为源域数据集的三元组损失;表示源域数据集中图片样本属于类代理的概率,||
·
||表示l2范数距离,i,p和i,n表示在小批次的图片样本中困难正样本索引和困难负样本索引,m=0.3表示三元组中的距离;由此,通过有监督的学习方式能够让行人重识别网络模型在源域数据集上具有较好的性能;
[0095]
步骤502、目标域数据集的训练损失计算公式为:
[0096][0097]
式中,表示目标域数据集中带有自我惩罚机制的全局对比损失;表示目标域数据集的相机感知对比损失,λ1用于平衡相机感知对比损失在目标域总损失中的比重;表示目标域数据集的三元组损失;
[0098]
其中,本实施例设置了对对低置信度样本的自我惩罚机制 (self-penalization,sp);低置信度样本是指该样本特征与相机不可知记忆模块中的所有全局类代理进行相似度计算,经过softmax归一化之后得到的置信度中,最高概率值低于阈值μ的样本;低置信度样本的伪标签大概率不是正确的标签,因此需要增加该样本与其他伪标签类代理之间的相似度,降低该样本与其对应伪标签类代理的相似度,自我惩罚定义如下:
[0099][0100]
式中μ表示置信度阈值;本实施例将μ固定设置为超参数,然而网络预测往往都是从较低置信度开始的,置信度值随着训练逐渐增加,固定的阈值不能很好的反映训练过程中不断变化的置信度,为此,本实施例采用自适应阈值的方式,置信度阈值μ=mean-2.3
×
std,即随小批量的样本平均值和标准差而自适应变化;
[0101]
由此,本实施例结合自我惩罚机制的全局对比损失的计算公式为:
[0102][0103]
式中,τa表示温度系数,τa=0.05;表示目标域数据集中的图片样本总数;通过全局对比损失来拉近图片样本在全局聚类中对应的类代理之间的距离,远离全局聚类中其他类代理,从而实现分类;
[0104]
但是,由于全局聚类中的图片样本受相机影响较大,导致类代理的差异较大,因此,增加相机感知对比损失来缓解全局聚类带来的差异,相机感知对比损失约束样本和各相机代理之间的关系,提高模型的识别能力;
[0105]
相机感知对比损失的计算公式为:
[0106][0107]
式中,为相机内对比损失,为相机间对比损失,λ2= 0.5为超参数,用于平衡相机内对比损失和相机间对比损失的权重;相机内对比损失的计算公式表示:
[0108][0109]
式中,表示从第1个相机至第个相机内的类代理总数;表示第c个相机内的图片样本总数,从而缓解各相机中图片样本数量不均衡的问题,提高行人重识别网络模型在相机内的识别能力;
[0110]
相机间对比损失的公式表示:
[0111][0112]
式中,和分别表示图片样本的正相机类代理索引集合和负相机类代理索引集合,|
·
|表示是类代理索引集合中元素的数量,|表示是类代理索引集合中元素的数量,本实施例增设相机间对比损失来拉近图片样本与其余相机中的正相机类代理,远离挖掘出来负相机类代理,提高行人重识别网络模型在跨相机的识别能力;
[0113]
由于相机感知对比损失在作用上类似于交叉熵损失,只能达到类间分离的效果,无法实现类内紧凑;而无监督行人重识别任务和有监督行人重识别任务一样,既需要实现类间分离,又需要实现类内紧凑;因此,本实施例在相机感知对比损失的基础上,增加了三元组损失,所述三元组损失计算公式为:
[0114][0115]
式中,||
·
||表示l2范数距离,i,p和i,n表示在小批次图片样本的困难正样本的索引和困难负样本的索引,m=0.3表示三元组中的距离;
[0116]
步骤503、计算源域数据集的训练损失和目标域数据集的训练损失总和:
[0117][0118]
步骤504、更新相机不可知记忆模块d表示特征维度,表示相机不可
知记忆模块中的类别总数,存储全局伪标签为l的所有图片样本的平均特征动量表示,即类l的全局类代理;
[0119]
更新相机感知记忆模块表示相机感知记忆模块中的类别总数,存储某相机类中的所有图片样本的平均特征,即相机类代理;
[0120]
所述相机不可知记忆模块和相机感知记忆模块的更新方式相同,均为利用j类的困难正样本对j类代理进行动量更新,其公式为:
[0121][0122]
其中,μ为动量更新系数,μ=0.2;
[0123]
步骤505、相机不可知记忆模块和相机感知记忆模块的更新次数等于行人重识别网络模型对源域数据集和目标域数据集的训练次数,本实施例中预设训练次数为50次,判断当前训练次数是否在预设训练次数范围内,若是,则返回步骤2中进行特征提取;若否,停止训练;
[0124]
此外,本实施例中将源域数据集和目标域数据集作为训练样本数据随机分成多个组,每个组包含p个类代理,每个类代理包含k张图片样本,一个组有p
×
k张图片样本;一个目标域的图片样本包括一个特征还包括两个标签,分别为跨相机的全局伪标签样本在相机内部伪标签对样本的全局伪标签进行修正,得到修正后的全局伪标签为相机内部伪标签为
[0125]
实验:
[0126]
本技术quadro p5000上运行,优化器采用adam,学习率为0.00035,训练迭代次数为50次;训练前,图片样本的尺寸被resize成256
×
128,批次大小为32,其中包含8个伪类,每类4个样本;本发明通过使用指标map 和rank-1/5/10衡量识别效果。
[0127]
消融实验:为了评估本发明的优越性,本发明对所提出的相机感知聚类模块(ca),自我惩罚机制(sp)和相机感知对比损失进行评估。实验在 market-1501

dukemtmc-reid任务上进行。如表1所示:
[0128][0129]
表1
[0130]
其中表1的第一行为基础网络,模型只使用一般聚类算法生成目标域伪标签进行
训练,且目标域损失函数仅由全局对比损失和三元组损失构成。第二行表示对基础网络加入相机感知聚类模块(ca)后的结果,可以发现模块的加入,网络模型效果提升了。第三行实验结果表示,在基础网络中加入自我惩罚机制(sp),模型效果也实现了稳定的提升。第四行实验结果表示,同时对baseline模型使用相机感知聚类方法和自我惩罚机制,模型效果得到了进一步提升,在map和rank-1分别达到了74.3%和85.1%。最后一行,在使用相机感知对比损失后,模型在market-1501
→ꢀ
dukemtmc-reid任务上达到了最优的效果,在map上达到了74.7%,在 rank-1上达到了85.8%。
[0131]
对比实验:为了评价本发明中基于相机感知的方法的有效性,将其与现有最先进的无监督域适应行人重识别方法进行对比。对比实验结果如表2 所示:
[0132][0133]
表2
[0134]
如表2所示,现有的无监督域适应行人重识别方法通常评估四个真实行人数据集
到真实行人数据集的域适应任务,分别是dukemtmc-reid

market-1501、market-1501

dukemtmc-reid、market-1501

msmt17和 dukemtmc-reid

msmt17。本发明提出的方法在三个任务中都分别取得了一定优势的领先,在dukemtmc-reid

market-1501任务上也和先进方法的性能相差不大。
[0135][0136]
表3
[0137]
如表3所示,合成行人数据集到真实行人数据集域适应任务实验对比。因为合成行人数据集与真人数据集之间的域差异往往大于真人数据集之间的域差异,所以从合成行人数据集到真人数据集的域适应任务相比于真人数据集之间的域适应任务更具挑战性。在dukemtmc-reid和msmt17数据集上测试时,本方法远远超过目前先进的方法。其中在map指标上,本方法分别超过第二名方法5.1%和1.4%。在marekt-1501数据集上,idm方法从某种意义上采用了mix-up策略扩充了数据集,实现了最优性能。
[0138]
本发明针对相机因素对目标域样本聚类结果的影响,即难以将不同相机拍摄下的同一身份行人图片样本聚在一起,且难以区分同一相机下的不同行人,设计了一种基于相机感知的聚类方法。根据图片样本自带的相机编号,采用先分而治之,再匹配合并的方式,克服了以往全局聚类中跨视角带来的影响。此外考虑到同一身份行人内存在较大的类内差异,本发明增加了相机感知记忆模块和相机感知对比损失缓解了目标域中的相机域差异。最后本发明设计一种自我惩罚机制,对不可靠的样本伪标签进行惩罚学习,从而提高了网络对噪声标签的鲁棒性。
[0139]
虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员,在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1