基于掩膜注意力的行人重识别方法及重识别装置与流程

文档序号:27268400发布日期:2021-11-06 02:33阅读:376来源:国知局
基于掩膜注意力的行人重识别方法及重识别装置与流程

1.本发明涉及图像处理技术领域,特别涉及一种基于掩膜注意力的行人重识别方法及识别装置。


背景技术:

2.目前的行人重识别技术从方法论上主要包括局部特征学习的方法、基于生成对抗网络的方法等。其中局部特征学习大多采用图像切片或姿态估计的方法,一定程度上可以抓取更多图像细节特征,但在衣装极度相似比如工地制服(戴安全帽、穿反光衣)时,由于局部特征学习是把所有局部特征图按同样的权重整合到最终行人特征向量中的,缺乏对图像中除制服外的个性化特征(比如袖子颜色、配饰、鞋子颜色等)的重视。基于生成对抗网络的方法实质上只是一种图像增强的方法,可以将当前训练集中的行人着装或背景风格进行更换,从而扩充训练集规模或者训练集的场景,从而使得网络提取的行人特征辨识度更好,但在解决衣装极度相似问题时效果不明显。
3.因此,如何在具有较高相似度的图像之间提取个性化特征,成为本领域技术人员亟待解决的问题。


技术实现要素:

4.本发明的目的是提供一种能够准确提取行人图像中个性化特征的技术方案,以解决现有技术中存在的上述问题。
5.为实现上述目的,本发明提供一种基于掩膜注意力的行人重识别方法,包括以下步骤:
6.获取待识别行人图像,确定所述待识别特征图像中包含的第一对象区域;
7.对所述第一对象区域进行模糊处理得到掩膜特征图像,所述第一对象区域在所述掩膜特征图像中的辨识度低于所述第一对象区域在所述待识别特征图像中的辨识度;
8.基于注意力机制从所述掩膜特征图像中提取目标特征向量;
9.将所述目标特征向量与预设数据库中的多个预设特征向量进行对比,以确定所述待识别行人的身份信息。
10.根据本发明提供的行人重识别方法,所述获取待识别行人图像,确定所述待识别特征图像中包含的第一对象区域的步骤包括:
11.获取待识别行人图像,通过基础特征模型对所述待识别行人图像进行特征提取以得到待识别特征图像;
12.对所述待识别特征图像进行目标检测,以获取所述待识别特征图像中包含的第一对象区域。
13.根据本发明提供的行人重识别方法,所述对所述待识别特征图像进行目标检测,以获取所述待识别特征图像中包含的第一对象区域的步骤包括:
14.将所述待识别特征图像作为输入数据,输入经过机器学习训练的目标检测模型,
以输出所述待识别特征图像中包含的具有同一性的一个或多个第一对象区域;
15.获取所述第一对象区域在所述待识别特征图像中的位置数据。
16.根据本发明提供的行人重识别方法,所述对所述第一对象区域进行模糊处理得到掩膜特征图像的步骤包括:
17.将所述待识别特征图像中的所述第一对象区域填充为模糊像素;以得到所述掩膜特征图像;所述模糊像素包括零像素或均值像素中的任一种。
18.根据本发明提供的行人重识别方法,所述对所述第一对象区域进行模糊处理得到掩膜特征图像的步骤还包括:
19.对所述待识别特征图像进行切分以得到多个切分特征图像;
20.根据所述位置数据计算每个所述切分特征图像中包含的所述第一对象区域的第二对象区域;
21.将每个所述切分特征图像中的所述第二对象区域填充为所述模糊像素,以得到多个所述掩膜特征图像。
22.根据本发明提供的行人重识别方法,所述基于注意力机制从所述掩膜特征图像中提取目标特征向量的步骤包括:
23.分别将每个所述掩膜特征图像输入经过机器学习训练的注意力模型,以输出每个所述掩膜特征图像中包含的具有差异性的单一特征向量;
24.将所有所述单一特征向量相加或相拼接,以得到所述目标特征向量。
25.根据本发明提供的行人重识别方法,所述目标检测模型和所述注意力模型的训练过程包括:
26.获取标识了标准对象区域和标准向量的多个第一样本数据,将所述第一样本数据依次输入所述基础特征模型和所述目标检测模型,输出预测对象区域;
27.通过id损失函数和三元组损失函数对所述目标检测模型进行训练,以确定所述目标检测模型中的第一权重参数;
28.在所述目标检测模型训练完成的情况下,将所述第一样本数据依次输入所述基础特征模型、所述目标检测模型和所述注意力模型,输出预测向量;
29.通过分类损失函数和回归损失函数对所述注意力模型进行训练,确定所述注意力模型中的第二权重参数以及重新调整所述第一权重参数。
30.根据本发明提供的行人重识别方法,所述通过分类损失函数和回归损失函数对所述注意力模型进行训练,确定所述注意力模型中的第二权重参数以及重新调整所述第一权重参数的步骤中,所述目标检测模型的学习率小于所述注意力模型的学习率。
31.为实现上述目的,本发明还提供一种基于掩膜注意力的行人重识别装置,包括:
32.目标检测模块,适用于获取待识别行人图像,确定所述待识别特征图像中包含的第一对象区域;
33.掩膜处理模块,适用于对所述第一对象区域进行模糊处理得到掩膜特征图像,所述第一对象区域在所述掩膜特征图像中的辨识度低于所述第一对象区域在所述待识别特征图像中的辨识度;
34.注意力模块,适用于基于注意力机制从所述掩膜特征图像中提取目标特征向量;
35.重识别模块,适用于将所述目标特征向量与预设数据库中的多个预设特征向量进
行对比,以确定所述待识别行人的身份信息。
36.为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
37.为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
38.本发明提供的基于掩膜注意力的行人重识别方法及重识别装置,通过端到端的特征监督掩模注意力网络(supervisory

mask

attention network)实现快速、准确地进行行人重识别。本发明使用一个监督分支,对局部特征学习网络中的特征图进行掩模处理,同时在掩模之后的局部分支中加入通道和空间注意力机制来提升网络特征辨识度。进一步,本发明针对mask的方法中的比例分配进行组合调整,使得网络更关注同一着装(如工地工人的安全帽、反光衣)以外的一些特征信息比如袖子颜色、配饰、鞋子颜色等,从而在很大程度上解决相同着装、配饰问题。
附图说明
39.图1为本发明基于掩膜注意力的行人重识别方法实施例一的流程图;
40.图2示出了本发明实施例一的行人重识别方法所应用的网络结构示意图;
41.图3示出了本发明实施例一的目标检测模型和注意力模型的训练过程示意图;
42.图4为本发明的行人重识别装置实施例一的程序模块示意图;
43.图5为本发明的行人重识别装置实施例一的硬件结构示意图。
具体实施方式
44.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
45.实施例一
46.请参阅图1,本实施例提出一种基于掩膜注意力的行人重识别方法,包括以下步骤:
47.s100:获取待识别行人图像,确定所述待识别特征图像中包含的第一对象区域。
48.本实施例中的待识别行人图像可以包括通过固定设置的影像设备拍摄到的、出现在某特定场景中的行人全身图像。本实施例中的第一对象区域指的是待识别行人图像中具有相同或相似特征的区域,比如具有相同颜色的区域、具有相同或相似形状的区域等。可以通过预设的像素值范围或者预设的形状边框提取第一对象区域。在一个示例中,步骤s100可以通过步骤s110和s120来实现,具体如下所示。
49.s110:获取待识别行人图像,通过基础特征模型对所述待识别行人图像进行特征提取以得到待识别特征图像。
50.基础特征模型可以是通过深度学习算法对任意神经网络模型进行训练得到的机器学习模型,其输入数据为待识别行人图像,输出数据为经过特征提取后得到的待识别特
征数据。
51.可以理解,当上述特定场景为施工现场、企业内部园区等场所时,由于出入该场所的人员大多穿着统一制式服装,因此不同待识别行人图像经过基础特征模型提取到的待识别特征数据可能会包含大量相同或相似特征。
52.s120:对所述待识别特征图像进行目标检测,以获取所述待识别特征图像中包含的第一对象区域。
53.本实施例进行目标检测的目的是从待识别特征图像中检测出具有相同或相似特征的区域,并通过边框形式将检测到的区域划分出来。本实施例可以利用现有的任意目标检测方法进行检测,包括r

cnn系列算法、ssd算法、yolo算法等,本实施例对此不做限制。在一个示例中,本实施例基于ssd算法训练了目标检测模型,该目标检测模型对于输入的待识别特征图像,可以输出由方框标示出的第一对象区域。
54.在一个示例中,第一对象区域可以包括安全帽区域和工装上衣区域。当然在其它的示例中,上述第一对象区域可以根据不同的着装特征而有所不同。总之,第一对象区域最终划分的是待识别特征图像中共性较大而不具有个性化识别价值的区域。本实施例可以进一步获取第一对象区域在待识别特征图像中的位置信息,例如对应方框四个顶点的坐标值。这样在后续处理流程中可以进行准确定位。
55.s200:对所述第一对象区域进行模糊处理得到掩膜特征图像,所述第一对象区域在所述掩膜特征图像中的辨识度低于所述第一对象区域在所述待识别特征图像中的辨识度。
56.本步骤对第一对象区域进行模糊处理的目的是进一步弱化第一对象区域的个性化识别价值,以保证在进一步特征提取的过程中上述第一对象区域的特征不被提取到。本实施例通过掩膜方式进行模糊化处理,具体可以是在待识别特征图像之上覆盖一层掩膜mask,其中该mask的大小与待识别特征图像相同,并且掩膜mask在第一对象区域的位置处填充有模糊像素。其中模糊像素可以是零像素或均值像素其中之一,零像素指的是黑色像素,均值像素指的是把待识别特征图像中的所有像素平均之后得到的平均颜色像素。除了第一对象区域的位置之外,上述掩膜mask的其它位置不填充像素。这样,待识别特征图像在第一对象区域之外的部分就被突出显示出来。
57.s300:基于注意力机制从所述掩膜特征图像中提取目标特征向量。
58.深度学习中的注意力机制本质是从众多信息中选择出对当前任务目标更关键的信息。注意力模型可以基于编码器

解码器结构,该模型可以自动学习每个节点的注意力权重,其中该权重用于捕获编码器隐状态和解码器隐状态之间的相关性。这些注意力权重之后会被用于构建语境向量,而该语境向量被作为输入传递给解码器。这样,注意力模型可以基于输入的掩膜特征图像,输出关注的目标特征向量。本实施例中的注意力模型可以利用现有的任意具备注意力机制的网络结构,例如序列到序列(seq2seq)网络、自注意力机制(self

attention)网络等经机器学习训练得到,本实施例不做限制。
59.s400:将所述目标特征向量与预设数据库中的多个预设特征向量进行对比,以确定所述待识别行人的身份信息。
60.本实施例中的预设数据库中预先存储多名候选行人各自对应的候选特征向量以及身份信息,通过将目标特征向量与候选特征向量进行对比,可以得到与目标特征向量相
一致的目标候选特征,从而确定与目标候选特征相对应的行人身份信息。其中目标候选特征可以是与目标特征向量相似度最高且超过预设阈值的特征。
61.通过上述步骤,本实施例首先通过基础特征模型提取待识别图像中的待识别特征图像,通过目标检测确定待识别特征图像中识别价值较低的第一对象区域,通过掩膜方式进一步模糊第一对象区域以弱化其特征,最后通过注意力模型从掩膜处理后的待识别特征图像中提取关注度较高的目标特征向量,可以实现在快速、准确地进行行人重识别,提高了行人重识别在相同着装场景下的识别精度。
62.在一个示例中,为了提高准确率,可以进一步将待识别特征图像进行切分,从而得到多个切分特征图像。例如特征图像a10为行人的全身图像,将f1均匀切分为上下两部分,则可以得到切分特征图像a21和a22;将f1均匀切分为上中下三部分,则可以得到切分特征图像a31、a32和a33,以此类推。在此基础上,可以根据第一对象区域的位置信息,计算出第一对象区域分别分布在每个切分特征图像中的区域,即第二对象区域。可以理解,所有第二对象区域的面积之和等于所有第一对象区域的面积之和。进一步,将第二对象区域填充为所述模糊像素,以得到多个所述掩膜特征图像。
63.如前所述,在对待识别特征图像进行切分,并经过模糊处理后得到多个掩膜特征图像的基础上,进一步将多个掩膜特征图像分别输入多个注意力模型,可以得到多个单一特征向量。这里的单一特征向量指的是每个掩膜特征图像经过注意力模型后的输出数据。为了实现特征向量的整合,在一个示例中,可以将所有所述单一特征向量相加或相拼接,以得到所述目标特征向量。其中将单一特征向量相加,指的是特征向量的维度不变,相加后每个新的特征值等于同维度的原特征值之和。将单一特征向量相拼接,指的是每个特征值不变而增加特征向量的维度。例如单一特征向量分别为{a1,a2,a3}、{b1,b2,b3}、{c1,c2,c3},上述单一特征向量相拼接后得到的目标特征向量为{a1,a2,a3,b1,b2,b3,c1,c2,c3}。
64.图2示出了本发明实施例一的行人重识别方法所应用的网络结构示意图。如图2所示,基础特征模型选用resnet

50网络,待识别行人图像经resnet

50网络输出待识别特征图像,待识别特征图像通过图2右下角的目标检测模型,以输出标示了第一对象区域的待识别特征图像。在图2的示例中,目标检测模型选择了ssd(single shot multibox detector)网络六个检测分支中的三个。该目标检测模型在训练过程中使用的损失函数为分类loss和回归loss,其中回归loss一般采用l1范数或mse()表示。图2右上角方框中为局部特征学习分支,会先对特征进行mask处理,mask方式包括了填充0像素或填充像素均值。之后在对mask掉的局部特征添加注意力模块。其中,“c+s attention”(channel+spatial attention)是注意力机制中的一种,该注意力模型在训练过程中使用的损失函数包括id loss(l
id
)和tri loss(l
tri
)。上述各个损失函数的数学表达式如下所示:
65.l
id


∑log(p(x));
66.l
tri
=∑[d(a,p)

d(a,n)+m,0]
+

[0067]
l1=∑|y

f(x)|;
[0068][0069]
以上数学式中,x表示输入行人图像的特征向量,p(x)为特征向量x经过softmax归一化后的概率值,取值范围为[0,1]。d(*)表示一种距离计算方式,可表示欧式或其他等距
离;图像分组<a,p>中a为训练集中任意一张图,p表示与a同类别的图;图像分组<a,n>中a为训练集中任意一张图,n表示与a不同类别的图;m为一个浮点型常量,可根据训练过程进行设置。f(x)表示特征向量进行网络后处理后得到的坐标信息,y表示x对应的真实标签(坐标)信息,|*|表示计算绝对值,表示计算l2范数的平方值。
[0070]
图3示出了本发明实施例一的目标检测模型和注意力模型的训练过程示意图。如图3所示,本实施例通过以下步骤对目标检测模型和注意力模型进行训练:
[0071]
s310:获取标识了标准对象区域和标准向量的多个第一样本数据,将所述第一样本数据依次输入所述基础特征模型和所述目标检测模型,输出预测对象区域。上述第一样本数据可以来自工地现场采集的多张员工体态图像,每张员工体态图像已通过手工标注或者机器标注的方式标识出了标准对象区域和标准向量,例如标准对象区域为安全帽和上衣,标准向量是经过归一化计算的一组数据集合。
[0072]
s320:通过id损失函数和三元组损失函数对所述目标检测模型进行训练,以确定所述目标检测模型中的第一权重参数。本步骤中的第一权重参数包括目标检测模型中每个隐变量的权重值。
[0073]
s330:在所述目标检测模型训练完成的情况下,将所述第一样本数据依次输入所述基础特征模型、所述目标检测模型和所述注意力模型,输出预测向量。也就是说,本实施例先对基础特征模型和目标检测模型进行第一次训练,然后再对基础特征模型、目标检测模型和注意力模型进行第二次训练。
[0074]
s340:通过分类损失函数和回归损失函数对所述注意力模型进行训练,确定所述注意力模型中的第二权重参数以及重新调整所述第一权重参数。需要说明的是,本实施例是在目标检测模型已经过第一次训练的基础上,再次对目标检测模型和注意力模型进行训练。考虑到整个网络结构中目标检测模型和注意力模型两个训练任务的巨大差异性,可能会引起整个网络的损失值大幅振荡从而导致网络梯度爆炸,因此本步骤中,目标检测模型的学习率小于注意力模型的学习率。具体来说,在开启注意力模型的训练时将基础特征模型和目标检测模型的学习率(learning rate)从一个很小的值进行warn

up处理,而注意力模型的学习率则先设置为一个居中值如1e
‑3等进行训练,然后每n个epoch下降1e
‑1倍,从而保证reid子网络能够进行充分的优化同时尽量保证检测模型不受影响。
[0075]
综上所述,本发明提出了一个端到端的特征监督掩模注意力网络(supervisory

mask

attention network),并针对mask的方法中的比例分配进行组合调整,使得网络更关注同一着装(如工地工人的安全帽、反光衣)以外的一些特征信息比如袖子颜色、配饰、鞋子颜色等从而在很大程度上解决相同着装、配饰问题;进一步,本发明提出了一种多任务分阶段训练和warn

up等训练机制,有效防止了多任务模型在训练过程中的梯度爆炸。
[0076]
请继续参阅图4,示出了一种基于掩膜注意力的行人重识别装置,在本实施例中,行人重识别装置40可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述行人重识别方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述行人重识别装置40在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
[0077]
目标检测模块41,适用于获取待识别行人图像,确定所述待识别特征图像中包含
的第一对象区域;
[0078]
掩膜处理模块42,适用于对所述第一对象区域进行模糊处理得到掩膜特征图像,所述第一对象区域在所述掩膜特征图像中的辨识度低于所述第一对象区域在所述待识别特征图像中的辨识度;
[0079]
注意力模块43,适用于基于注意力机制从所述掩膜特征图像中提取目标特征向量;
[0080]
重识别模块44,适用于将所述目标特征向量与预设数据库中的多个预设特征向量进行对比,以确定所述待识别行人的身份信息。
[0081]
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备50至少包括但不限于:可通过系统总线相互通信连接的存储器51、处理器52,如图5所示。需要指出的是,图5仅示出了具有组件51

52的计算机设备50,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0082]
本实施例中,存储器51(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器51可以是计算机设备50的内部存储单元,例如该计算机设备50的硬盘或内存。在另一些实施例中,存储器51也可以是计算机设备50的外部存储设备,例如该计算机设备50上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。当然,存储器51还可以既包括计算机设备50的内部存储单元也包括其外部存储设备。本实施例中,存储器51通常用于存储安装于计算机设备50的操作系统和各类应用软件,例如实施例一的行人重识别装置40的程序代码等。此外,存储器51还可以用于暂时地存储已经输出或者将要输出的各类数据。
[0083]
处理器52在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器52通常用于控制计算机设备50的总体操作。本实施例中,处理器52用于运行存储器51中存储的程序代码或者处理数据,例如运行行人重识别装置50,以实现实施例一的行人重识别方法。
[0084]
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储行人重识别装置50,被处理器执行时实现实施例一的行人重识别方法。
[0085]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0086]
流程图中或在此以其它方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明
的实施例所属技术领域的技术人员所理解。
[0087]
本技术领域的普通技术人员可以理解,实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0088]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0089]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
[0090]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1