行人再识别方法、装置及存储介质与流程

文档序号:22388828发布日期:2020-09-29 17:52阅读:156来源:国知局
行人再识别方法、装置及存储介质与流程

本公开涉及行人再识别领域,尤其涉及一种行人再识别方法、装置及存储介质。



背景技术:

行人再识别问题已成为计算机视觉领域的研究热点,行人再识别就是在多个摄像头的情况下,给定一个人的身份id,与多个摄像头下的人物特征匹配,从而精确找到这个人所在的身份id。

基于非深度学习的行人再识别方法,手工特征设计繁琐,且算法精度不高;相比于非深度学习的方法,基于深度学习的行人再识别方法,算法精度得到提升,运行速度较快,其针对特定场景(人流可控)进行行人再识别效果较好,但针对复杂场景(如复杂人流场所、火车站、京东无人店等)算法精度受限,例如在行人再识别中不同场景(跨摄像头)及行人不同衣着(季节不同、衣服风格差异)等跨数据集性行人误识等问题。

由此可见,目前基于深度学习方法仍缺乏跨域的模型泛化能力,即基于特征场景下训练好的网络模型未能较好地应用到新的场景中,包括同一人在同一场景下穿不同衣服,或穿一样的衣服在不同场景,在复杂场景下,行人再识别模型仍漏识、误识问题有待解决。



技术实现要素:

有鉴于此,本公开实施例提供了一种泛化能力强、识别准确的行人再识别方法、装置及存储介质。

为达到上述目的,本公开实施例的技术方案是这样实现的:

第一方面,本公开实施例提供一种行人再识别方法,所述方法包括:

获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息。

其中,在所述基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,还包括:

获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;

将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;

根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;

将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

其中,所述将所述第二训练样本输入神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件之前,还包括:

获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

其中,所述生成对抗网络包括生成网络和识别网络,所述将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像之前,包括:

获取其他视域场景下的源域图像;

将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;

将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果,通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

其中,在基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,还包括:

对所述待识别图像中的待识别对象进行姿态校正。

其中,所述对所述待识别图像中的待识别对象进行姿态校正,包括:

获取目标视域场景下的目标域图像训练集;

基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;

基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

第二方面,本公开实施例还提供一种行人再识别装置,包括获取模块和处理模块,其中,

所述获取模块,用于获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

所述处理模块,用于基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的类别。

其中,还包括训练模块,所述训练模块用于获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

其中,所述训练模块还用于获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

其中,所述生成对抗网络包括生成网络和识别网络,所述训练模块包括:

生成网络训练单元,用于获取其他视域场景下的源域图像;将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

识别网络训练单元,用于获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果;

收敛单元,用于通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

其中,还包括姿态校正模块,所述姿态校正模块还用于对所述待识别图像中的待识别对象进行姿态校正。

其中,所述姿态校正模块包括:

空间变换网络训练单元,用于获取目标视域场景下的目标域图像训练集;基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

校正单元,用于基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

第三方面,本公开实施例还提供一种行人再识别装置,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;

其中,所述处理器用于运行所述计算机程序时,实现如本公开任一实施例所述的行人再识别方法。

第四方面,本公开实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如本公开任一实施例所述的行人再识别方法。

本公开实施例中,所述方法通过获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;这里,用于行人再识别的神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息,通过训练后的神经网络确定待识别图像中待识别对象的识别结果,如此,解决了行人再识别的神经网络跨域的模型泛化能力中的行人数据集扩充问题,使得所述再识别的神经网络具有针对不同的场景更鲁棒的特征学习能力,能够较好地应用到新的应用场景,提升了识别准确率,有效地减少了漏识、误识的问题。

附图说明

图1为本公开一实施例提供的无人店行人再识别场景示意图;

图2为本公开一实施例提供的一种行人再识别方法的流程示意图;

图3为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图4为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图5a为本公开一实施例提供的源域和目标域之间图像转换之前的效果图;

图5b为本公开一实施例提供的源域和目标域之间图像转换之后的效果图;

图6为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图7为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图8为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图9a为本公开一实施例提供的待识别图像姿态校正前的效果图;

图9b为本公开一实施例提供的待识别图像姿态校正后的效果图;

图10为本公开又一实施例提供的一种行人再识别方法的流程示意图;

图11为本公开一实施例提供的一种行人再识别装置的结构示意图;

图12为本公开又一实施例提供的一种行人再识别装置的结构示意图。

具体实施方式

以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本公开,并不用于限定本公开。另外,以下所提供的实施例是用于实施本公开的部分实施例,而非提供实施本公开的全部实施例,在不冲突的情况下,本公开实施例记载的技术方案可以任意组合的方式实施。

需要说明的是,在本公开实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其他要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分电路、部分处理器、部分程序或软件等等)。

例如,本公开实施例提供的一种行人再识别方法包含了一系列的步骤,但是本公开实施例提供的一种行人再识别方法不限于所记载的步骤,同样地,本公开实施例提供的一种行人再识别装置包括了一系列模块,但是本公开实施例提供的装置不限于包括所明确记载的模块,还可以包括为获取相关信息、或基于信息进行处理时所需要设置的模块。

为了能够更加便于对本公开实施例提供的行人再识别方法的实现流程的理解,以下以无人店行人再识别场景为例对本公开的应用场景进行示例性说明:

请参见图1,为本公开一实施例提供的无人店行人再识别场景示意图,无人店店内包括多个摄像头和与所述摄像头连接的处理设备,例如,摄像头a1、摄像头a2和摄像头a3,各个摄像头分别与处理设备b连接。每个摄像头设置在无人店不同的角落,所述不同的角落可能具有不同的光线强度、拍摄视角等。每当购物者首次进入无人店,摄像头会采集购物者的图像数据,所述处理设备会给所述购物者分配一个身份,这样,每个进入无人店的购物者都对应有唯一一个身份,这里,可以是通过获取购物者的人脸图像并通过id确定购物者身份。例如,设置在无人店门口的摄像头为a1,在购物者x进入无人店时,所述处理设备会采集购物者x的图像数据并对应定义或获取一个id。在所述购物者x从摄像头a1进入下一个a2摄像头的拍摄范围时,处理器通过应用本公开的行人再识别方法就能够快速准确地识别出a2摄像头中的购物者x,实现购物者的再识别,以满足无人店购物流程中的自动跟踪、购物者的信息收集和自动结算等需要。例如,购物者进店后购物,通过多个摄像头确定用户id,以保证不同用户有不同的id以实现跟踪,在购物者走出无人店时,根据用户id完成自动结账。

以下将针对本公开实施例进行详细说明:

第一方面,本公开实施例提供一种行人再识别方法,请参见图2,为本公开一实施例提供的一种行人再识别方法的流程示意图,所述方法包括:

步骤11,获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

这里,所述待识别对象为需要识别的目标对象。本公开实施例中,待识别对象是指人,具有脸、姿态、装束等特征,可以是具有多个摄像头的无人售货店中某个摄像头场景范围内的购物者,例如,购物者a、购物者b和购物者c;所述目标视域场景对应一个图像采集设备,例如摄像头,这里的视域场景通常跟所述摄像头的安装位置有关,不同的摄像头分别对应特定的光照强度、拍摄角度、拍摄范围等。所述待识别图像可以是从摄像头拍摄到的视频中截取的一段帧序列并对所述帧序列中的多帧图像经过图像数据融合处理之后得到的图像;也可以是指不同拍摄设备直接拍摄得到的包含有待识别对象的照片。

步骤12,基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息。

这里,所述行人再识别神经网络可以是基于已知的图像数据集预训练得到的神经网络模型,例如,bp神经网络模型、卷积神经网络模型或者是经过上述神经网络模型的变形。

这里,在进行特征提取和匹配前,可以对进行待识别的图像与用于训练的图像进行一定的预处理,将经过预处理后的用于训练的图像数据输入神经网络中进行训练获得神经网络模型。以下将以卷积神经网络为例进行说明:

作为一种实施方式,请参见图3,为本公开又一实施例提供的一种行人再识别方法的流程示意图,所述步骤12,基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,可以包括:

步骤21,对用于训练行人再识别神经网络的图像样本集进行预处理,其中,所述图像样本集中包含有所述待识别对象的多张图片和对应身份信息。所述预处理可以是将所述样本集中的图像样本归一化为100*100*20大小的图像,并对图像样本集中的图像进行灰度化处理。

步骤22,将经过预处理后的样本输入到初始的卷积神经网络中进行迭代训练,直至收敛。

在一可选的实施例中,所述初始的卷积神经网络可以依次包括以下层级:卷积层c1层、池化层s1层、卷积层c2层、池化层s2层、卷积层c3层、池化层s3层。

卷积层c1层:选取32个不同的卷积核,尺寸大小为3*3*3,步长为1,并以边距为0进行填充,输入图像经过卷积层后,卷积层c1层输出图像大小为100*100*20,变量总量为32*100*100*20;

池化层s1层:这一层采用最大池化方法,池化尺寸为2*2*2,步长为2,边距为0进行填充,池化层s1层输出图像大小为50*50*10,变量总量为32*50*50*10;

卷积层c2层:这一层选取64个不同的卷积核,尺寸大小、步长、边距填充方式与c1层相同,卷积层c2层的输出图像大小为50*50*10,变量总量为64*50*50*10;

池化层s2层:这一层的基本设置与s1层完全相同,经过s2层,池化层s2层的输出图像大小为25*25*5,变量总量为64*25*25*5;

卷积层c3层:这一层卷积核的个数设置为128个,卷积核尺寸大小、步长、边距填充方式同c1、c2层相同,所得到的特征图大小为25*25*5,变量总量为128*25*25*5;

池化层s3层:这一层的基本设置于s1、s2层完全相同,经过s3层,池化层s3层的输出图像大小为13*13*3,总变量为128*13*13*3。

这里,在上述每一个卷积层之后都设置有一个激活层,所述激活层包括relu激活函数,用以添加非线性特征之后再进行池化层的操作。在经过上述层之后,再经过一个具有1024个神经元的全连接层来获得更为高级的特征,在这一层,通过在损失函数里添加稀疏化规则项来提高模型针对于特定问题的泛化能力。最后将全连接层输出的特征向量传入到softmax层中,将使交叉熵损失函数最小化为目的来迭代训练网络模型,经过softmax操作来为数据的类别分配概率,从而得到分类结果,实现分类匹配。

步骤23、将待识别图像进行预处理,将预处理后的待识别图像输入到训练好的行人再识别神经网络,得到与所述待识别对象对应的识别结果。

这里,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像包括将其它视域场景下的源域图像通过转换成为符合目标视域场景下的光照、清晰度等场景因素的目标域图像以增加训练样本量并减少人工标注的工作量。例如,可以基于生成对抗网络的跨域自适应数据增强的整体框架进行上述转换,所述生成对抗网络可以用作行人再识别网络训练阶段样本数据增强及测试阶段数据预处理,请参见图4,为本公开又一实施例提供的一种行人再识别方法的流程示意图,a为源域图像,b为目标域图像,这里,源域b场景下的图像可以通过生成对抗网络生成目标域b场景下的图像,反之,b域图像可以通过生成对抗网络获得a域图像,即,行人再识别过程包括步骤31:通过训练生成对抗网络获得a-b域和b-a域图像转换的模型,将a-b域和b-a域图像转换作为行人再识别前的预处理,使得所获得的源域图像更趋向于目标域图像的场景风格。该网络的优势在于生成的b域图像可以作为b域行人再识别网络的训练样本,这样训练好的b域行人再识别模型具有更好的场景泛化性,不仅能很好的解决b域样本数据增强,还能解决当前b域场景的行人再识别。请参见图5a和5b,为本公开一实施例提供的源域和目标域之间图像转换前后效果对比图。

本公开实施例中,所述方法通过获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;这里,用于行人再识别的神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息,通过训练后的神经网络确定待识别图像中待识别对象的识别结果,如此,解决了行人再识别的神经网络跨域的模型泛化能力中的行人数据集扩充问题,使得所述再识别的神经网络具有针对不同的场景更鲁棒的特征学习能力,能够较好地应用到新的应用场景,提升了识别准确率,有效地减少了漏识、误识的问题。请参见图6,为本公开又一实施例提供的一种行人再识别方法的流程示意图,作为一种实施例,所述步骤12,基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,还包括:

步骤41,获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;

这里,在应用场景中,可以是每个摄像头对应一个视域场景,例如,在某个应用场景中,包括a、b、c三个摄像头,则对应a、b、c三个视域场景。当c视域为目标视域时,a、b视域则为其他视域,在c视域场景下采集到的图像为目标域图像,在a、b视域场景下采集到的图像为源域图像;当b视域为目标视域时,a、c视域则为其他视域,在b视域场景下采集到的图像为目标与图像,在a、c视域场景下采集到的图像为源域图像。这里,其他视域场景下的图像对应源域图像。

步骤42、将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;

这里,所述风格可以是指不同视域场景下采集到的图片具有不同的光线强度、姿态、视角等。

步骤43、根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;

这里,所述第二训练样本由所述第一训练样本转换而来,所述第一训练样本中的样本图片携带有身份信息标注,则第一训练样本中的样本图片在转换后同样对应有身份信息,可以用所述身份信息对转换后的样本图片进行标注。

步骤44、将所述第二训练样本输入神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

这里,作为一种实施方式,训练所述神经网络模型进行迭代训练的样本可以不仅仅包括第二训练样本,还可以包括目标域场景下获得的样本。

所述步骤44,将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件之前,还包括:

获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

这里,这里原始目标图像可以是在上一时段目标对象进入目标视域时识别目标对象后采集到的包含有所述目标对象的图像。将目标对象在所述目标视域场景下的原始目标图像及其身份信息标注作为第二训练样本的一部分,可以增加样本数量,增强样本,使得训练后的行人再识别网络具有更好的泛化能力,提高识别准确率,获得良好的识别效果。

请参见图7,为本公开又一实施例提供的一种行人再识别方法的流程示意图,所述步骤42,将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像之前,包括:

步骤51:获取其他视域场景下的源域图像;

步骤52:将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

步骤53:获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;

步骤54:将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果,通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

这里,所述生成对抗网络(generativeadversarialnet,gan)包括生成模型(generativemodel)和判别模型(discriminativemodel)。所述生成模型也可以称为生成器(generator)或生成网络,可以表示为g;所述判别模型也可以称为判别器(discriminator)或判别网络,可以表示为d。一般地,g可以接收一个随机的噪声向量z,通过这个噪声生成数据(如图像),记为g(z),在本公开实施例中,所述噪声对应源域采集到的源域图像的特征向量。d可以接收g(z)或接收真实图像,以判断所接收的图像为真实图像的概率,假设d所接收的图像表示为x,则d的输出可以表示为d(x),d(x)的值可以位于0~1区间,d(x)=1表示x为真实图像,d(x)=0.5表示x有50%的概率为真实图像,d(x)=0表示不可能为真实图像,本公开实施例中,所述真实图像为目标视域场景下采集到的目标域图像。g和d这两者可以同时训练,g的目标是尽量生成接近真实的图像试图欺骗d,而d的目标是尽量将g生成的图像区分开来。可见g和d是一个动态的博弈过程,在训练d时,最小化判别误差;在训练g时,最大化判别误差。两个目的均可以通过反向传播方法实现。经过交替优化训练,两种模型g和d都能得到提升,直到到达一个“g生成的图像与真实图像无法区分”的点,也就是使得d(g(z))=0.5,此时,所述生成对抗网络能够将其他视域场景下的源图像转换成符合目标视域场景的目标域图像。

这里,若以pr和pg分别表示真实图像的分布和g的生成图像的分布,其中,所述真实图像为目标视域场景下采集到的图像,所述生成图像为源域图像输入所述生成网络进行训练,获得的对应的输出图像,那么可以将d的目标函数表示为:

结合g的目标,可以将整个的优化目标函数表示为:

分别对d和g进行交替迭代:固定g优化d,一段时间后固定d优化g,直到预设的损失函数满足收敛条件。这样,经过交替迭代训练,两种模型g和d都能得到提升,直到达到一个“g生成的图像与真实图像无法区分”的点,即使得d(g(z))=0.5。

在一个可选的实施例中,所述步骤12,在基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,还包括:对所述待识别图像中的待识别对象进行姿态校正。请参见图8,为本公开又一实施例提供的一种行人再识别方法的流程示意图,作为一种实施例,所述对所述待识别图像中的待识别对象进行姿态校正,包括:

步骤61,获取目标视域场景下的目标域图像训练集;

步骤62,基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;

这里,通过目标域图像训练集生成仿射变换图像样本集,包括平移、旋转、缩放、倾斜等情况。

步骤63,基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

这里,所述空间变换网络具体包括定位网络、网格生成器和像素采样器,其中,定位网络包括卷积层、池化层、非线性激活单元层、全连接层及回归层。

这里,基于所述配对样本和所述仿射变换参数对所述空间变换网络进行训练,其中,仿射变换参数的监督训练通过计算网络回归值和真实标签值的平均均方差并进行反向梯度传播而实现;所述配对样本的监督训练通过计算目标域图像训练集样本与变换后的样本的平均像素值均方误差并进行反向梯度传播而实现;所述损失函数由两部分组成,即配对样本损失和变换参数损失,数学公式表示如下:

loss=mse(iln,iout)+mse(θevlθgt)

其中iin和iout分别表示输入的变换图像和网络计算输出的变换图像,θevl和θgt分别表示深度空间变换网络回归的仿射变换参数和真实的变换参数,mse表示平均均方误差;在该损失函数的作用下,通过反向梯度传播优化模型的参数值,使得模型达到较理想的状态。

步骤64,基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

本公开实施例中,在基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,采用空间变换网络对所述待识别图像中的待识别对象进行姿态校正,能够避免行人姿态不确定性造成识别时的不确定性,导致行人再识别模型的漏检、误识问题。

请参见图9a和9b,为本公开一实施例提供的待识别图像姿态校正前后对比效果图。

为了能够更加便于对本公开实施例提供的行人再识别方法的实现流程进一步理解,以下分别通过一个可选的具体实施例对本申请所提供的行人再识别方法进行进一步说明:

请参见图10,为本公开又一实施例提供的一种行人再识别方法的流程示意图,所述行人再识别方法包括如下步骤:

步骤s1,获取其他视域场景下的源域图像;将所述源域图像输入所述生成对抗网络进行训练,得到训练后的生成对抗网络;

其中,将源域图像输入所述生成对抗网络,通过生成网络得到对应的输出图像,所述源域图像与所述对应的输出图像分别对应不同的场景风格;获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果,通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络;

步骤s2,获取第一训练样本,将所述第一训练样本输入所述训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像,基于所述目标域图像对初始的神经网络模型进行训练,得到训练后的用于行人再识别的神经网络;

其中,所述第一训练样本包括目标对象在其它视域场景下的源域图像;根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;将所述第二训练样本输入初始的神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络;

步骤s3,获取目标视域场景下的目标域图像训练集;基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

步骤s4,获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

步骤s5,基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正;

步骤s6,基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息;

步骤s7,得到与所述待识别对象对应的识别结果,确定所述待识别对象的id。

本公开实施例放弃采用传统方法非深度学习方法针对不同场景下的图像进行不同的手工特征+特征匹配分步组合的行人再识别策略,采用深度学习神经网络完成行人特征提取及特征匹配端对端学习,具有针对不同场景更鲁棒的特征学习能力,相比于非深度学习的方法,基于深度学习的行人再识别方法,算法精度得到提升,运行速度较快,其针对特定场景(人流可控)进行行人再识别效果较好;本公开用于行人再识别的神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息,通过训练后的神经网络确定待识别图像中待识别对象的识别结果,如此,解决了行人再识别的神经网络跨域的模型泛化能力中的行人数据集扩充问题,使得所述再识别的神经网络具有针对不同的场景更鲁棒的特征学习能力,能够较好地应用到新的应用场景,提升了识别准确率,有效地减少了漏识、误识的问题。本公开在基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配之前,还会利用空间变换神经网络对所述待识别图像进行姿态校正,能够避免行人姿态不确定性造成识别时的不确定性,导致行人再识别模型的漏检、误识问题。

第二方面,本公开实施例提供一种行人再识别装置,请参见图11,为本公开一实施例提供的一种行人再识别装置结构示意图,所述行人再识别装置,包括获取模块71和处理模块72,其中,

所述获取模块71,用于获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

所述处理模块72,用于基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的类别。

其中,还包括训练模块73,所述训练模块用于获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

其中,所述训练模块73还用于获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

其中,所述生成对抗网络包括生成网络和识别网络,所述训练模块包括:

生成网络训练单元74,用于获取其他视域场景下的源域图像;所述处理模块72还用于将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

识别网络训练单元75,用于获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果;

收敛单元76,用于通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

其中,还包括姿态校正模块77,所述姿态校正模块77还用于对所述待识别图像中的待识别对象进行姿态校正。

其中,所述姿态校正模块77包括:

空间变换网络训练单元78,用于获取目标视域场景下的目标域图像训练集;基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

校正单元79,用于基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

第三方面,本公开实施例提供一种行人再识别装置,请参见图12,为本公开又一实施例提供的一种行人再识别装置的结构示意图,所述行人再识别装置包括:处理器82和用于存储能够在处理器82上运行的计算机程序的存储器81;

其中,所述处理器82用于运行所述计算机程序时,所述处理器82执行所述计算机程序时包括实现如下步骤:

获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息。

这里,所述处理器82执行所述计算机程序时还用于实现:

获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;

将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;

根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;

将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

这里,所述处理器82执行所述计算机程序时还用于实现:获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

这里,所述处理器82执行所述计算机程序时还用于实现:

获取其他视域场景下的源域图像;

将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;

将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果,通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

这里,所述处理器82执行所述计算机程序时还用于实现:对所述待识别图像中的待识别对象进行姿态校正。

这里,所述处理器82执行所述计算机程序时还用于实现:获取目标视域场景下的目标域图像训练集;

基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;

基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

第四方面,本公开实施例提供一种计算机存储介质,例如包括存储有计算机程序的存储器,上述计算机程序可由上述装置中的处理器执行,以完成前述方法所述步骤。计算机存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。所述计算机存储介质中存储有计算机程序,其中,所述处理器用于运行所述计算机程序时,所述处理器82执行所述计算机程序时包括实现如下步骤:

获取目标视域场景下的待识别图像,所述待识别图像包括待识别对象;

基于训练后的用于行人再识别的神经网络对所述待识别图像进行特征提取和匹配,得到与所述待识别对象对应的识别结果;其中,所述神经网络的训练样本包括将其它视域场景下的源域图像转换至所述目标视域场景后得到的目标域图像及所述目标域图像中所包含的对象的身份信息。

这里,所述处理器82执行所述计算机程序时还用于实现:

获取第一训练样本,所述第一训练样本包括目标对象在其它视域场景下的源域图像;

将所述第一训练样本输入训练后的生成对抗网络进行风格转换,得到所述目标视域场景下的目标域图像;

根据携带所包含的目标对象的身份信息标注的所述目标域图像形成第二训练样本;

将所述第二训练样本输入所述神经网络模型进行迭代训练,直至所述神经网络模型的损失函数满足收敛条件,得到所述训练后的用于行人再识别的神经网络。

这里,所述处理器82执行所述计算机程序时还用于实现:获取包括目标对象在所述目标视域场景下的原始目标域图像,将携带有所包含的目标对象的身份信息标注的所述原始目标域图像作为所述第二训练样本的一部分。

这里,所述处理器82执行所述计算机程序时还用于实现:

获取其他视域场景下的源域图像;

将所述源域图像输入所述生成网络进行训练,获得对应的输出图像;其中,所述源域图像与所述对应的输出图像分别对应不同的场景风格;

获取目标视域场景下的目标域图像及所述目标域图像对应的场景标签;

将所述输出图像、所述目标域图像及所述目标域图像对应的场景标签输入所述识别网络进行训练,确定所述输出图像与所述目标域图像的场景识别结果,通过对所述生成网络和所述识别网络进行单独交替迭代训练直至设置的损失函数满足收敛条件,获得所述训练后的生成对抗网络。

这里,所述处理器82执行所述计算机程序时还用于实现:对所述待识别图像中的待识别对象进行姿态校正。

这里,所述处理器82执行所述计算机程序时还用于实现:获取目标视域场景下的目标域图像训练集;

基于仿射变换参数将所述目标域图像训练集生成仿射变换图像样本集并将生成的图像样本与原图像样本配对,获得配对样本;

基于所述配对样本和所述仿射变换参数训练空间变换网络,直至对应的损失函数满足收敛条件,得到训练后的用于行人姿态对齐的空间变换网络;

基于训练后的所述空间变换网络对所述待识别图像中的待识别对象进行姿态校正。

以上所述,仅为本公开的较佳实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1