一种基于多任务学习的遮挡行人重识别方法

文档序号:25053272发布日期:2021-05-14 13:33阅读:126来源:国知局
一种基于多任务学习的遮挡行人重识别方法

1.本申请实施例涉及计算机视觉图像处理技术领域,具体涉及一种基于多任务学习的遮挡行人重识别方法。


背景技术:

2.行人重识别旨在通过多个非重叠的摄像机对目标人员进行再识别,即给定一个调查对象和一个图库,我们的目标是在图库中找到包含该调查对象的同一个人的所有图像。它是计算机视觉领域的一个重要研究课题,目前已被应用于许多重要的公共场所,特别是拥挤的场所,如校园、商场、机场等。然而,面向研究的场景与实际应用的场景还有很大的差距,现实场景中存在很多影响reid精确度的因素,主要存在以下问题:摄像机像素问题,摄像机可能会因为与行人的距离导致像素较低;行人姿态问题,行人各种各样的姿态变化和不确定性,也大大增加了难度,这些挑战导致了重新识别仍然是一个未解决的问题;遮挡问题,照片中的行人可能会被其他行人、广告牌、墙壁和汽车等遮挡,给行人重识别的研究带来了一定阻碍,所以行人重识别在遮挡方面还存在很大的难度。
3.遮挡问题是不可避免的,当图片中出现遮挡物时,可能会导致错误的识别结果,所以我们可以通过多任务学习,使得网络可以更加注重图片上的局部信息和特征,而不是整体信息,减小对遮挡部分的信息关注,这样可以很大程度上解决遮挡带来的难题。


技术实现要素:

4.为此,本申请实施例公开了一种基于多任务学习的遮挡行人重识别方法,本方法分为两个分支,其中一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习,另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果,我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身份进行训练。利用剩下的一半行人身份作为测试集,对行人重识别网络进行训练,得到网络模型,评估网络模型的识别效果。将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果。把gallery数据集输入到模型,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id。输入查询行人图像,得到行人特征,检索图像特征,计算相似度,选出相似度最高的照片,得到的id就是查询图像的行人id。
5.为了实现上述目的,本申请实施例提供如下技术方案:
6.根据本申请实施例,提供了一种基于多任务学习的遮挡行人重识别方法,包括:
7.一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习;
8.另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,然后结合两者特征;
9.结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果;
10.我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身份进行训练,得到网络模型;
11.我们利用剩下的一半行人身份作为测试集,评估网络模型的识别效果,将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果;
12.把gallery数据集输入到训练好的模型中,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id;
13.输入查询行人图像,得到行人特征,检索图像特征,计算相似度,选出相似度最高的照片,得到的id就是查询图像的行人id。
14.综上所述,本申请实施例提供了一种基于多任务学习的遮挡行人重识别方法,本方法分为两个分支,其中一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习,另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果。我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身份进行训练,得到网络模型;我们利用剩下的一半行人身份作为测试集,评估网络模型的识别效果,将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果;把gallery数据集输入到多任务模型中,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id。我们用遮挡图片作为查询图像,检索图像特征,计算相似度,从gallery中选出相似度最高的照片,得到的id就是查询图像的行人id。
附图说明
15.图1为本申请实施例提供的一种基于多任务学习的遮挡行人重识别方法流程图。
16.图2为本申请实施例提供的一种基于多任务学习的遮挡行人重识别网络结构图。
17.图3为本申请实施例提供的遮挡图模块的结构。
18.图4为本申请实施例提供的全身图模块的结构。
具体实施方式
19.下面由特定的具体实施例说明本发明的实现方式,而以下的描述,是为了说明而不是为了限定,还可以以其它方式实现本申请,而不应被这里阐述的实施例所限制,说明是为了让相关人员轻易了解本发明所展现的内容。
20.图1为本申请实施例提供的一种基于多任务学习的遮挡行人重识别方法流程图,所述方法包括如下步骤:
21.步骤101,一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习;
22.步骤102,另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,然后结合两者特征;
23.步骤103,结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果;
24.步骤104,我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身
份进行训练,得到网络模型;
25.步骤105,我们利用剩下的一半行人身份作为测试集,评估网络模型的识别效果,将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果;
26.步骤106,把gallery数据集输入到训练好的模型中,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id;
27.步骤107,输入查询行人图像,得到行人特征,检索图像特征,计算相似度,选出相似度最高的照片,得到的id就是查询图像的行人id。
28.在一种可能的实施方式中,所述步骤101中构建一个分支中的随机遮挡模块的方法,具体步骤如下:
29.一个有n张图m个行人id的数据集x,用表示数据集x中的所有样本,表示第i个行人id的第j张图,通过映射函数,把数据集x转化为数据集z,数据集z中的每张图片都是随机遮挡的图片,表示数据集z中的所有样本,表示由生成的第i张图第j个行人;
30.此外,我们需要学习一种特征提取器h,使同一人的特征接近,不同人的特征差距更大;
31.然后我们在卷积神经网络中训练这些遮挡图片,来识别每个人的身份,在数据集x上训练,目标函数为:
[0032][0033]
公式中f(
·
)是分类器,l
p
(
·
)是身份损失函数,由映射函数得到数据集z后,将两个数据集合并组合起来,得到目标函数:
[0034][0035]
我们将行人重识别作为一个分类问题,并使用softmax损失作为身份损失,损失函数为:
[0036][0037]
公式中k表示共k个行人身份,表示第i个训练样本为第k个分类的预测结果。
[0038]
所述步骤102中分别对全身图进行局部特征学习和姿态估计,具体步骤如下:
[0039]
全身图经过骨干网络resnet50得到tensor t;
[0040]
然后对全身图进行姿态估计,输入图片,利用姿态估计器得到18个地标,对于每个地标,姿态估计器预测其坐标和置信度得分,然后与阈值γ进行比较,置信度大于γ的求出其坐标,小于γ的置为0,公式如下:
[0041]
[0042]
利用地标生成以地面真实位置为中心的二维高斯热图,每张热图明确编码了行人不同区域的信息;
[0043]
将tensort平均池化为全局特征f
g
,每张热图乘以t,得到姿态引导特征图,聚焦行人非遮挡部分,抑制来自遮挡区域的信息;
[0044]
每一个姿态引导特征图经过一个平均池化层,生成一个2048维的特征向量,然后对所有特征向量最大池化,并将它们与全局特征f
g
连接起来,记为f
cat
,将f
cat
输入全连接层,记为姿态导向全局特征f
pose
,使用softmax预测每个输入图像的id。
[0045]
图2为本申请实施例所使用的网络整体结构,本方法分为两个分支,其中一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习,另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果,最后结合全身图和遮挡图的行人id,按照相似度大小排列,得到识别结果。我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身份进行训练,得到网络模型;我们利用剩下的一半行人身份作为测试集,评估网络模型的识别效果,将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果;把gallery数据集输入到多任务模型中,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id。我们用遮挡图片作为query图像,检索图像特征,计算相似度,从gallery中选出相似度最高的图片,得到的id就是query图像的行人id。
[0046]
图3为本申请实施例提供的遮挡图模块的结构示意图,计算流程如下:
[0047]
一个有n张图m个行人id的数据集x,用表示数据集x中的所有样本,表示第i个行人id的第j张图,通过映射函数,把数据集x转化为数据集z,数据集z中的每张图片都是随机遮挡的图片,表示数据集z中的所有样本,表示由生成的第i张图第j个行人;
[0048]
此外,我们需要学习一种特征提取器h,使同一人的特征接近,不同人的特征差距更大;
[0049]
然后我们在卷积神经网络中训练这些遮挡图片,来识别每个人的身份,在数据集x上训练,目标函数为:
[0050][0051]
公式中f(
·
)是分类器,l
p
(
·
)是身份损失函数,由映射函数得到数据集z后,将两个数据集合并组合起来,得到目标函数:
[0052][0053]
我们将行人重识别作为一个分类问题,并使用softmax损失作为身份损失,损失函数为:
[0054]
[0055]
公式中k表示共k个行人身份,表示第i个训练样本为第k个分类的预测结果。
[0056]
图4为本申请实施例提供的全身图模块的结构示意图,分别对全身图进行局部特征学习和姿态估计,计算流程如下:
[0057]
对于局部特征分支,全身图经过骨干网络resnet50得到tensor t;把tensor t水平均分成六部分,经过平均池化得到6个列向量g,然后对每一向量进行卷积操作,降低维数得到列向量h,最后所有的列向量h输入到由全连接层和softmax函数构成的分类器中,得到预测的行人id;
[0058]
输入图片,利用姿态估计器得到18个地标,对于每个地标,姿态估计器预测其坐标和置信度得分,利用地标生成以地面真实位置为中心的二维高斯热图,每张热图明确编码了行人不同区域的信息;将tensor t平均池化为全局特征f
g
,每张热图乘以t,得到姿态引导特征图,聚焦行人非遮挡部分,抑制来自遮挡区域的信息;
[0059]
每一个姿态引导特征图经过一个平均池化层,生成一个2048维的特征向量,然后对所有特征向量最大池化,并将它们与全局特征f
g
连接起来,记为f
cat
,将f
cat
输入全连接层,记为姿态导向全局特征f
pose
,使用softmax预测每个输入图像的id。
[0060]
为验证本发明的准确性和鲁棒性,本发明在occluded

reid和dukemtmc

reid上进行实验。采用平均精度均值(meanaverage precision,map)和累积匹配特征曲线(cumulative match characteristic curve,cmc curve)来评估模型效果。在occluded

reid和dukemtmc

reid数据集上进行实验,并与现有的行人重识别方法进行识别结果比较,得到如表1所示的识别结果数据。
[0061]
表1
[0062][0063]
本发明方法在occluded

reid和dukemtmc

reid的rank

1的准确率分别为50.3%和79.8%,map的准确率分别为35.8%和62.1%,超出大多数行人重识别算法。
[0064]
综上所述,本申请实施例提供了一种基于多任务学习的遮挡行人重识别方法,本方法分为两个分支,其中一个分支构建随机遮挡模块,自动生成部分遮挡图片,得到遮挡数据集进行学习,另一个分支针对全身图,分别对全身图进行局部特征学习和姿态估计,结合全身图学习到的行人id和遮挡图学习到的行人id,按照相似度大小排列,得到识别结果,最
后结合全身图和遮挡图的行人id,按照相似度大小排列,得到识别结果。我们用遮挡图片作为query,全身图作为gallery,随机选择一半行人身份进行训练,得到网络模型;我们利用剩下的一半行人身份作为测试集,评估网络模型的识别效果,将测试数据集输入到模型中,采用平均精度均值map和累积匹配特征曲线cmc curve来评估模型效果;把gallery数据集输入到多任务模型中,保存模型提取的行人图像特征,最终得到一个行人图像特征数据库,每个特征都有唯一的行人id。输入查询行人图像,得到行人特征,检索图像特征,计算相似度,选出相似度最高的图片,得到的id就是查询图像的行人id。
[0065]
需要说明的是,本申请虽然提供了方法和流程图,但这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果,基于常规或者无创造性的手段可以包括更多或者更少的操作步骤,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0066]
所应理解的是,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1