用于步态识别的模型训练方法、步态识别方法及装置与流程

文档序号:31857092发布日期:2022-10-19 03:17阅读:66来源:国知局
用于步态识别的模型训练方法、步态识别方法及装置与流程

1.本技术涉及深度学习、计算机视觉等人工智能技术领域,尤其涉及一种用于步态识别的模型训练方法、步态识别方法及装置。


背景技术:

2.步态识别,是一种生物特征识别技术,通过提取人在正常行走过程中的姿态变化以及体型体态信息进行身份鉴定,相较于其它行人重识别技术,具有远距离、无感知、不易伪装等优点,能够很好的解决行人重识别技术中因人体纹理信息干扰而识别精度大幅度下降的问题。
3.相关技术中的步态识别方法,通常是从视频流中提取二值轮廓图像序列,再从二值轮廓图像序列中计算出行人步态特征,进而根据行人步态特征进行身份鉴定。但是,相关技术从二值轮廓图像序列中得到的行人步态特征仅包括二维的信息,而人们生活的真实场景是三维空间,视频流的拍摄视角包括三维的视角信息,不同三维视角下的步态信息存在极大的差异,仅依靠二维的信息进行步态识别,无法得到准确的识别结果。


技术实现要素:

4.本技术旨在至少在一定程度上解决相关技术中的技术问题之一。
5.本技术提出一种用于步态识别的模型训练方法、步态识别方法及装置,以解决相关技术中的步态识别方法存在的识别准确性低的技术问题。
6.本技术第一方面实施例提出了一种用于步态识别的模型训练方法,包括:获取多个对象分别对应的训练样本,其中,每个所述训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息;将各所述步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征;根据所述多个对象分别对应的训练样本中,属于同一对象的所述步态样本序列生成正样本序列对、属于不同对象的所述步态样本序列生成负样本序列对;根据所述正样本序列对与所述负样本序列对中的各所述步态样本序列的预测三维步态特征,确定第一损失值;根据所述第一损失值调整所述步态特征提取模型的模型参数。
7.本技术实施例提供的用于步态识别的模型训练方法,通过获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值,根据第一损失值调整步态特征提取模型的模型参数,实现了基于多个对象分别对应的
训练样本,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
8.本技术第二方面实施例提出了一种步态识别方法,包括:获取至少一个步态查询序列以及多个步态匹配序列;所述步态查询序列包括多帧步态查询图像;所述步态匹配序列包括多帧步态匹配图像;获取每个所述步态查询序列中多帧所述步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息;获取每个所述步态匹配序列中多帧所述步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息;将各所述步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征;并将各所述步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入所述步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征;所述步态特征提取模型通过第一方面实施例所述的方法训练得到;基于各所述第一三维步态特征以及各所述第二三维步态特征,从各所述步态匹配序列中获取与每个所述步态查询序列匹配的目标序列。
9.本技术实施例提供的步态识别方法,通过获取至少一个步态查询序列以及多个步态匹配序列,步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像,获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息,获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息,将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征,并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,提高了步态识别的识别准确性。
10.本技术第三方面实施例提出了一种用于步态识别的模型训练装置,包括:第一获取模块,用于获取多个对象分别对应的训练样本,其中,每个所述训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息;第一处理模块,用于将各所述步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征;生成模块,用于根据所述多个对象分别对应的训练样本中,属于同一对象的所述步态样本序列生成正样本序列对、属于不同对象的所述步态样本序列生成负样本序列对;确定模块,用于根据所述正样本序列对与所述负样本序列对中的各所述步态样本序列的预测三维步态特征,确定第一损失值;调整模块,用于根据所述第一损失值调整所述步态特征提取模型的模型参数。
11.本技术实施例提供的用于步态识别的模型训练装置,通过获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征,根据多个对象分别对应的训练样本中,属于同一对象的
步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值,根据第一损失值调整步态特征提取模型的模型参数,实现了基于多个对象分别对应的训练样本,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
12.本技术第四方面实施例提出了一种步态识别装置,包括:第二获取模块,用于获取至少一个步态查询序列以及多个步态匹配序列;所述步态查询序列包括多帧步态查询图像;所述步态匹配序列包括多帧步态匹配图像;第三获取模块,用于获取每个所述步态查询序列中多帧所述步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息;第四获取模块,用于获取每个所述步态匹配序列中多帧所述步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息;第二处理模块,用于将各所述步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征;并将各所述步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入所述步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征;所述步态特征提取模型通过第一方面实施例所述的方法训练得到;第五获取模块,用于基于各所述第一三维步态特征以及各所述第二三维步态特征,从各所述步态匹配序列中获取与每个所述步态查询序列匹配的目标序列。
13.本技术实施例提供的步态识别装置,通过获取至少一个步态查询序列以及多个步态匹配序列,步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像,获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息,获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息,将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征,并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,提高了步态识别的识别准确性。
14.本技术第五方面实施例提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本技术第一方面实施例提出的用于步态识别的模型训练方法,或者执行如本技术第二方面实施例提出的步态识别方法。
15.本技术第六方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本技术第一方面实施例提出的用于步态识别的模型训练方法,或者执行如本技术第二方面实施例提出的步态识别方法。
16.本技术第七方面实施例提出了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本技术第一方面实施例提出的用于步态识别的模型训练方法,或者实现如本技术第二方面实施例提出的步态识别方法。
17.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
18.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
19.图1为本技术实施例一所提供的用于步态识别的模型训练方法的流程示意图;
20.图2为本技术实施例二所提供的用于步态识别的模型训练方法的流程示意图;
21.图3为本技术实施例二所提供的步态特征提取模型的架构示意图;
22.图4为本技术实施例三所提供的用于步态识别的模型训练方法的流程示意图;
23.图5为本技术实施例四所提供的步态识别方法的流程示意图;
24.图6为本技术实施例五所提供的用于步态识别的模型训练装置的结构示意图;
25.图7为本技术实施例六所提供的步态识别装置的结构示意图;
26.图8示出了适于用来实现本技术实施方式的示例性电子设备的框图。
具体实施方式
27.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
28.需要说明的是,本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
29.可以理解的是,以监控场景为例,监控摄像头通常是以俯视视角采集视频流,视频流的拍摄视角不仅包括前后侧,还包括一个俯视的角度,因此视频流的拍摄视角包括三维的视角信息,不同三维视角下的步态信息存在极大的差异。而相关技术中的步态识别方法,从二值轮廓图像序列中得到的行人步态特征仅包括二维的信息,仅依靠二维的信息进行步态识别,无法得到准确的识别结果。
30.本技术针对相关技术中的步态识别方法存在的识别准确性低的技术问题,提出一种能够提高步态识别的识别准确的用于步态识别的模型训练方法、步态识别方法、装置、电子设备、存储介质以及计算机程序产品。
31.下面参考附图描述本技术实施例的用于步态识别的模型训练方法、步态识别方法、装置、电子设备、存储介质以及计算机程序产品。
32.下面首先对本技术实施例提供的用于步态识别的模型训练方法进行说明。其中,需要说明的是,本技术实施例提供的用于步态识别的模型训练方法,由用于步态识别的模型训练装置执行,以下将用于步态识别的模型训练装置简称为模型训练装置。其中,该用于步态识别的模型训练装置可以为电子设备,也可以被配置在电子设备中,以对步态特征提取模型进行训练,进而通过训练后的步态特征提取模型进行步态识别时,能够提高步态识别的识别准确性。
33.其中,电子设备可以为个人电脑(personal computer,简称pc)、云端设备、移动设备、服务器等,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备
等任意硬件设备,本技术对此不作限制。
34.图1为本技术实施例所提供的用于步态识别的模型训练方法的流程示意图。如图1所示,该用于步态识别的模型训练方法可以包括以下步骤101-105。
35.步骤101,获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息。
36.其中,步态,指走路所表现的姿态。对象,可以是人体,也可以是其它能够通过步态的唯一性进行身份鉴定的对象,本技术对此不作限制。本技术各实施例以对象为人体为例进行说明。
37.一个步态样本序列包括多帧步态样本图像,其中,每帧步态样本图像可以为rgb色彩模式的步态图像,也可以为其它模式的步态图像,本技术对此不作限制。一个步态样本序列包括的多帧步态样本图像,可以为从视频流中提取的一个时间段内的多帧步态样本图像。其中,该时间段,可以根据需要设置,比如可以为一个步态周期,或者1秒、2秒等,本技术对此不作限制。其中,步态周期指人行走时,同一只脚从脚跟离地跨出,到再次脚跟着地的行进过程。
38.二维步态轮廓信息,可以为二维步态轮廓图中所包含的信息。
39.三维步态模型信息,可以为三维人体网格模型所包含的三维人体网格参数信息。其中,三维步态模型信息,比如可以包括三维的视角参数、人体体型参数、人体的姿态参数、旋转矩阵、相机的内参等信息。
40.在本技术的实施例中,对于每个对象,可以采集该对象在多个时间段内的多帧步态样本图像,并根据每个时间段内采集的多帧步态样本图像生成对应的一个步态样本序列,从而根据该对象在多个时间段内的多帧步态样本图像,生成该对象对应的多个步态样本序列。
41.进一步的,对于每个步态样本序列,可以采用相关技术中的比如hrnet-segmentation(high-resolution net-segmentation,高分辨率网络-切割)等语义分割算法,从该步态样本序列包括的每帧步态样本图像中提取出对应的二维步态轮廓图,从而根据每帧步态样本图像的二维步态轮廓图得到对应的二维步态轮廓信息。其中,hrnet-segmentation为一种语义分割算法,核心思想是融合多层级的特征,实现高分辨率特征的建模。
42.并且,对于每个步态样本序列,可以采用比如romp(regress all meshes in a one-stage fashion for multiple 3d people,单阶段为多个人体回归所有三维网格)等三维人体网格重建算法,基于该步态样本序列包括的每帧步态样本图像回归出该帧步态样本图像对应的三维人体网格模型,从而根据每帧步态样本图像的三维人体网格模型得到对应的三维步态模型信息。
43.通过对每个对象分别对应的多个步态样本序列,采用上述方式获取其中每个步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,即可生成每个对象分别对应的训练样本,进而模型训练装置即可获取包括各对象分别对应的训练样本的训练集。
44.需要说明的是,上述生成多个对象分别对应的训练样本的方式,仅是示例性说明,
不能理解为对本技术技术方案的限制,在实际应用中,本领域技术人员可以采用其它任意可行的方式生成多个对象分别对应的训练样本,本技术对生成多个对象分别对应的训练样本的方式不作限制。
45.步骤102,将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征。
46.其中,步态特征提取模型,可以为预先构建的深度学习模型,模型的输入包括步态序列中多帧步态图像的二维步态轮廓信息和三维步态模型信息,输出为对应的步态序列的三维步态特征。
47.在本技术的实施例中,对于一个步态样本序列,将该步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,即可利用步态特征提取模型,基于该步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息进行特征提取,获取对应的该步态样本序列的预测三维步态特征。通过对于每个步态样本序列进行上述操作,即可获取各步态样本序列分别对应的预测三维步态特征。
48.步骤103,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对。
49.在本技术的实施例中,可以将多个对象分别对应的训练样本中,属于同一对象的两个步态样本序列作为正样本序列对、属于不同对象的两个步态样本序列作为负样本序列对,从而生成多个正样本序列对和多个负样本序列对。
50.步骤104,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值。
51.步骤105,根据第一损失值调整步态特征提取模型的模型参数。
52.在本技术的实施例中,可以预先设置三元组损失函数,从而在确定多个对象分别对应的训练样本中各步态样本序列的预测三维步态特征以及正样本序列对和负样本序列对后,可以将正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,代入三元组损失函数,从而确定第一损失值,并根据第一损失值调整步态特征提取模型的模型参数,以使三元组损失函数最小化,来优化步态特征提取模型的模型参数。通过重复步骤101-105,对步态特征提取模型的模型参数进行多次迭代优化,即可得到训练后的步态特征提取模型。
53.其中,三元组损失函数,可以通过以下公式(1)表示,通过利用该三元组损失函数对步态特征提取模型进行训练,可以使步态特征提取模型学习步态样本序列之间的相似性或差异。
[0054][0055]
其中,l
tri
表示三元组损失函数。表示锚样本,包括第i个步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息。表示相对于锚样本的正样本序列,即与第i个步态样本序列属于同一对象的步态样本序列,其中包括该正样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息;表示相对于锚样本的负样本序列,即与第i个步态样本序列属于不同对象的步态样本序列,其中包括该负样本序列中
多帧步态样本图像的二维步态轮廓信息和三维步态模型信息。n’表示训练集中锚样本的数量。m表示阈值参数,可以根据需要设置。m(
·
)表示步态特征提取模型提取步态特征的过程。
[0056]
其中,可以根据需要选择adam(adaptive moment estimation,自适应矩估计)、sgd(stochastic gradient descent,随机梯度下降)、bgd(batch gradient descent,批量梯度下降)法等任意优化方法,对步态特征提取模型的模型参数进行优化,本公开对此不作限制。
[0057]
举例来说,本技术实施例中,可以先获取32个对象分别对应的训练样本,每个训练样本包括4个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,再将32*4个步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征,根据32个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对,将正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,代入三元组损失函数,从而确定第一损失值,并根据第一损失值来优化步态特征提取模型的模型参数,从而完成步态特征提取模型的一轮训练。
[0058]
进一步的,可以再获取32个对象分别对应的训练样本,每个训练样本包括4个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,并按照上述方式,确定另一第一损失值,并根据该另一第一损失值对模型参数调整后的步态特征提取模型的模型参数进一步优化,从而完成步态特征提取模型的又一轮训练。
[0059]
由此,通过多轮训练,对步态特征提取模型的模型参数进行多次迭代优化,即可得到训练后的步态特征提取模型。
[0060]
在本技术的实施例中,为了优化步态特征提取模型的训练效果,还可以在上述第一损失值的基础上,利用其它损失函数确定其它损失值,进而根据多种损失值对步态特征提取模型的模型参数进行调整。
[0061]
相应的,本技术实施例中,各步态样本序列可以以所属的真实对象进行标注,步态特征提取模型还可以与分类模型连接,其中,分类模型用于基于步态样本序列的预测三维步态特征,预测对应步态样本序列的所属对象。本技术的实施例中,在对步态特征提取模型进行训练时,对于每个步态样本序列,可以将步态特征提取模型输出的对应该步态样本序列的预测三维步态特征输入分类模型,以利用分类模型预测对应的该步态样本序列的所属对象,得到该步态样本序列属于各对象的置信度。进而可以根据各步态样本序列分别属于各对象的置信度与所属的真实对象,确定第三损失值,进而根据第一损失值和第三损失值确定目标损失值,根据目标损失值调整步态特征提取模型的模型参数。通过多次迭代对步态特征提取模型的模型参数进行优化,即可得到训练后的步态特征提取模型。
[0062]
本技术实施例中的训练后的步态特征提取模型,可以用于基于步态序列的二维步态轮廓信息和三维步态模型信息,获取对应步态序列的三维步态特征。由于三维步态模型信息包括大量数量的三维人体关键点的信息,相比相关技术中的稀疏的三维人体关键点,本技术实施例中的三维步态模型信息包含的信息更加精确和精细化,进而通过基于二维步
态轮廓信息和更加精确和精细化的三维步态模型信息,可以获取更加精确和精细化的三维步态特征,且由于三维步态特征包括三维的视角信息,从而利用该三维步态特征进行步态识别,可以很好的解决真实场景下步态识别的跨三维视角问题,提高步态识别的识别准确性。
[0063]
综上,本技术实施例提供的用于步态识别的模型训练方法,通过获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值,根据第一损失值调整步态特征提取模型的模型参数,实现了基于多个对象分别对应的训练样本,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
[0064]
在一种可能的实现形式中,步态特征提取模型可以包括轮廓特征提取模块、空间转换模块,与轮廓特征提取模块及空间转换模块分别连接的特征对齐模块、与特征对齐模块连接的池化模块。下面结合图2-3,对本技术实施例中的用于步态识别的模型训练方法中,通过步态特征提取模型获取步态样本序列的预测三维步态特征的过程进行进一步说明。
[0065]
图2为本技术实施例二所提供的用于步态识别的模型训练方法的流程示意图。如图2所示,用于步态识别的模型训练方法可以包括以下步骤201-210。
[0066]
步骤201,获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息。
[0067]
其中,步骤201的具体实现过程及原理,可以参考上述实施例的详细描述,此处不再赘述。
[0068]
步骤202,对于每个步态样本序列,将其中各步态样本图像的二维步态轮廓信息输入轮廓特征提取模块,以基于各二维步态轮廓信息进行轮廓特征提取,得到各步态样本图像分别对应的二维轮廓特征。
[0069]
其中,二维轮廓特征中包括丰富的人体外观信息。
[0070]
参考图3,本技术实施例中的步态特征提取模型可以包括轮廓特征提取模块301、空间转换模块302、与轮廓特征提取模块301及空间转换模块302分别连接的特征对齐模块303、与特征对齐模块303连接的池化模块304。
[0071]
其中,轮廓特征提取模块301,用于从二维步态轮廓信息中提取轮廓特征,其可以由任意能够实现该功能的卷积神经网络模型等模型构成,本技术对构成轮廓特征提取模块301的模型的结构和类型不作限制。
[0072]
本技术实施例和附图3中以轮廓特征提取模块301由相关技术中的sln(silhouette learning network,剪影学习网络)模型构成为例进行示意。其中,sln模型的
模型结构可以如下表1所示。其中,表1中的左列表示sln模型的各个网络层,右列表示对应网络层的参数。leakyrelu表示relu(rectified linear unit,修正线性单元)激活函数的变种,将relu的所有负值赋予一个非零斜率,leakyrelu(0.01)表示负值区域的斜率为0.01。
[0073]
表1 sln模型的模型结构
[0074][0075]
在本技术的实施例中,以seg(x
ij
)表示第i个步态样本序列中第j帧步态样本图像x
ij
的二维步态轮廓信息,可以将第i个步态样本序列中第j帧步态样本图像x
ij
的二维步态轮廓信息seg(x
ij
)输入轮廓特征提取模块301,以利用轮廓特征提取模块301,基于二维步态轮廓信息seg(x
ij
)进行轮廓特征提取,得到第i个步态样本序列中第j帧步态样本图像x
ij
对应的二维轮廓特征。其中,利用轮廓特征提取模块301得到第i个步态样本序列中第j帧步态样本图像x
ij
对应的二维轮廓特征的过程可以表示为以下公式(2)。
[0076]fij
=f(seg(x
ij
))
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0077]
其中,x
ij
表示第i个步态样本序列中的第j帧步态样本图像,并且x
ij
∈rh×w,h和w分别对应步态样本图像x
ij
的高和宽。seg(x
ij
)表示第i个步态样本序列中第j帧步态样本图像x
ij
的二维步态轮廓信息。f(
·
)表示sln模型。f
ij
∈rh×w表示二维步态轮廓信息seg(x
ij
)经过sln模型提取后的二维轮廓特征,其中h和w分别对应二维轮廓特征的高和宽。i∈{1,2,

,n},j∈{1,2,

,l}。其中,l表示步态样本序列的长度,即步态样本序列中包括的步态样本图像的帧数。n表示多个对象对应的步态样本序列的总个数,比如步骤201中的对象数量为32、每个对象对应的训练样本中包括4个步态样本序列时,n为128。需要说明的是,为了方便表示,本技术实施例中省略了特征的通道维表示。
[0078]
步骤203,将其中各步态样本图像的三维步态模型信息输入空间转换模块,以基于各三维步态模型信息进行隐变换估计,得到各步态样本图像分别对应的隐变换矩阵。
[0079]
其中,隐变换矩阵,为能够实现坐标系转换的变换矩阵。
[0080]
空间转换模块302,用于基于三维步态模型信息确定对应的隐变换矩阵,其可以由任意能够实现该功能的模型构成,本技术对构成空间转换模块302的模型的结构和类型不作限制。比如,本技术实施例中可以构建stn(spatial transformation network,空间变换网络)模型,图3中以空间转换模块302由stn模型构成为例进行示意。
[0081]
其中,stn模型的模型结构可以如下表2所示。其中,表2中的左列表示stn模型的各个网络层,右列表示对应网络层的参数。h和w分别对应二维轮廓特征的高和宽。
[0082]
表2 stn模型的模型结构
[0083][0084]
在本技术的实施例中,以y
ij
表示第i个步态样本序列中第j帧步态样本图像x
ij
的三维步态模型信息,其中,y
ij
可以通过y
ij
=romp(x
ij
)表示,romp(
·
)为三维网格重建过程。本技术的实施例中,可以将第i个步态样本序列中第j帧步态样本图像x
ij
的三维步态模型信息y
ij
输入空间转换模块302,以利用空间转换模块302,基于三维步态模型信息y
ij
进行隐变换估计,得到第i个步态样本序列中第j帧步态样本图像x
ij
对应的隐变换矩阵。其中,利用空间转换模块302得到第i个步态样本序列中第j帧步态样本图像x
ij
对应的隐变换矩阵的过程可以表示为以下公式(3)。
[0085]gij
=s(y
ij
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0086]
其中,s(
·
)表示stn模型。g
ij
表示stn模型估计的第i个步态样本序列中第j帧步态样本图像对应的隐变换矩阵。
[0087]
需要说明的是,在实际应用中,stn模型估计的第i个步态样本序列中第j帧步态样本图像对应的隐变换矩阵g
ij
可能为一个一维向量,为了利用隐变换矩阵g
ij
进行后续的空间转换,需要对该一维向量进行尺寸变换,得到w
×
h维的矩阵,再对该w
×
h维的矩阵进行处理,得到一个方阵,将该方阵作为后续进行空间转换所利用的隐变换矩阵。具体的,对该一维向量进行尺寸变换时,可以将该一维向量中的各元素按照第一行到第w行,每行h个元素的顺序依次排列,从而得到w
×
h维的矩阵,并通过补0的方式,得到方阵。
[0088]
步骤204,将各步态样本图像分别对应的二维轮廓特征与隐变换矩阵输入特征对齐模块,以利用隐变换矩阵将对应的二维轮廓特征对齐至三维空间,得到对应的步态样本图像的对齐后步态特征。
[0089]
其中,特征对齐模块303,用于利用隐变换矩阵将二维轮廓特征对齐至三维空间。
[0090]
本技术的实施例中,对于第i个步态样本序列中的第j帧步态样本图像,特征对齐模块303可以采用以下公式(4)所示的方式,利用隐变换矩阵将对应的二维轮廓特征对齐至三维空间。
[0091]
f'
ij
=f
ij
·
(i+g
ij
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0092]
其中,i表示单位矩阵。
·
表示矩阵相乘。g
ij
表示第i个步态样本序列中的第j帧步态样本图像x
ij
对应的隐变换矩阵,该隐变换矩阵为方阵。f
ij
'表示第i个步态样本序列中的第j帧步态样本图像x
ij
对应的对齐后步态特征。
[0093]
通过上述过程,实现了利用步态样本序列中多帧步态样本图像的更加精确和精细化的三维步态模型信息,估计出三维空间隐变换矩阵,从而将富含人体外观信息的二维轮廓特征对齐至三维空间。
[0094]
步骤205,将各步态样本图像的对齐后步态特征输入池化模块,以对各对齐后步态特征进行池化,得到步态样本序列的预测三维步态特征。
[0095]
在本技术的实施例中,可以将第i个步态样本序列中各帧步态样本图像对应的对齐后步态特征输入池化模块304,以利用池化模块304对第i个步态样本序列中各帧步态样本图像对应的对齐后步态特征进行时间维池化和空间维池化池化,得到第i个步态样本序列的预测三维步态特征fi。
[0096]
其中,比如可以采用相关技术中的sp(set pooling,集合池化)池化方法进行时间维池化,采用相关技术中的hpp(horizontal pyramid pooling,水平金字塔池化)方法进行空间维池化,本技术对池化方法不作限制。
[0097]
通过对每个步态样本序列,将其中包括的多帧步态样本图像分别对应的对齐后步态特征进行池化,可以实现对多帧步态样本图像分别对应的对齐后步态特征的降维,从而提高数据处理效率。
[0098]
步骤206,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对。
[0099]
步骤207,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值。
[0100]
其中,步骤206-207的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。
[0101]
步骤208,将各训练样本包括的多个步态样本序列中,各步态样本图像分别对应的隐变换矩阵,代入正则化损失函数,以确定第二损失值。
[0102]
其中,步骤208可以在步骤207之后执行,也可以在步骤207之前执行,本技术对步骤208的执行时机不作限制,只需在步骤203之后执行即可。
[0103]
步骤209,根据第一损失值与第二损失值,确定目标损失值。
[0104]
步骤210,根据目标损失值调整步态特征提取模型的模型参数,以使目标损失值最小化。
[0105]
可以理解的是,视角的转换相当于坐标系的转换,本技术实施例中,基于坐标系的变换思想,可以将隐变换矩阵限制在正交矩阵范围,从而实现更好的视角变换。而为了实现将隐变换矩阵限制在正交矩阵范围,在训练过程中,可以增加变换矩阵的正则化损失函数,从而利用该正则化损失函数和三元组损失函数实现对步态特征提取模型的训练。
[0106]
其中,正则化损失函数可以通过以下公式(5)表示。
[0107][0108]
其中,l
reg
表示正则化损失函数。表示frobenius范数。t表示转置。
[0109]
在本技术的实施例中,可以将各训练样本包括的多个步态样本序列中,各步态样本图像分别对应的隐变换矩阵,代入上述公式(5)所示的正则化损失函数,以确定第二损失值,根据第一损失值与第二损失值,确定目标损失值,进而根据目标损失值调整步态特征提取模型的模型参数,以使目标损失值最小化,来优化步态特征提取模型的模型参数。通过重复步骤201-210,对步态特征提取模型的模型参数进行多次迭代优化,即可得到训练后的步态特征提取模型。
[0110]
综上,本技术实施例提供的用于步态识别的模型训练方法,实现了基于多个对象分别对应的训练样本,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
[0111]
在一种可能的实现形式中,为了优化步态特征提取模型的训练效果,还可以在上述第一损失值和第二损失值的基础上,利用其它损失函数确定其它损失值,进而根据多种损失值对步态特征提取模型的模型参数进行调整。下面针对上述情况,下面结合图4,对本技术实施例中的用于步态识别的模型训练方法进行进一步说明。
[0112]
图4为本技术实施例三所提供的用于步态识别的模型训练方法的流程示意图。如图4所示,用于步态识别的模型训练方法可以包括以下步骤401-412。
[0113]
步骤401,获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息。
[0114]
步骤402,对于每个步态样本序列,将其中各步态样本图像的二维步态轮廓信息输入轮廓特征提取模块,以基于各二维步态轮廓信息进行轮廓特征提取,得到各步态样本图像分别对应的二维轮廓特征。
[0115]
步骤403,将其中各步态样本图像的三维步态模型信息输入空间转换模块,以基于各三维步态模型信息进行隐变换估计,得到各步态样本图像分别对应的隐变换矩阵。
[0116]
步骤404,将各步态样本图像分别对应的二维轮廓特征与隐变换矩阵输入特征对齐模块,以利用隐变换矩阵将对应的二维轮廓特征对齐至三维空间,得到对应的步态样本图像的对齐后步态特征。
[0117]
步骤405,将各步态样本图像的对齐后步态特征输入池化模块,以对各对齐后步态特征进行池化,得到步态样本序列的预测三维步态特征。
[0118]
步骤406,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对。
[0119]
步骤407,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值。
[0120]
步骤408,将各训练样本包括的多个步态样本序列中,各步态样本图像分别对应的
隐变换矩阵,代入正则化损失函数,以确定第二损失值。
[0121]
其中,步骤401-408的具体实现过程及原理,可以参考附图3及上述实施例的详细描述,此处不再赘述。
[0122]
其中,步骤408可以在步骤407之后执行,也可以在步骤407之前执行,本技术对步骤408的执行时机不作限制,只需在步骤403之后执行即可。
[0123]
步骤409,将各步态样本序列的预测三维步态特征输入分类模型,以利用分类模型预测各步态样本序列的所属对象,得到各步态样本序列分别属于各对象的置信度。
[0124]
其中,分类模型,可以为任意能够实现目标分类的神经网络模型,本技术对分类模型的模型结构和类型不作限制。
[0125]
本技术实施例中,各步态样本序列可以以所属的真实对象进行标注,步态特征提取模型还可以与分类模型连接(图3中未示出),其中,分类模型用于基于步态样本序列的预测三维步态特征,预测对应步态样本序列的所属对象。本技术的实施例中,在对步态特征提取模型进行训练时,对于每个步态样本序列,可以将步态特征提取模型输出的对应该步态样本序列的预测三维步态特征输入分类模型,以利用分类模型预测对应的该步态样本序列的所属对象,得到该步态样本序列属于各对象的置信度。
[0126]
步骤410,根据各步态样本序列分别属于各对象的置信度与所属的真实对象,确定第三损失值。
[0127]
在本技术的实施例中,可以将各步态样本序列分别属于各对象的置信度与所属的真实对象,代入交叉熵损失函数,确定第三损失值。
[0128]
其中,交叉熵损失函数可以为公式(6)所示,通过利用该交叉熵损失函数对步态特征提取模型进行训练,可以使步态特征提取模型在整个数据集的样本空间内,学习类内和类间的差异性。
[0129][0130]
其中,l
ce
表示交叉熵损失函数。c表示整个训练过程中对象的总数量,也称为类别数。为标签,是一个符号函数,在第i个步态样本序列所属的真实对象为c时,为1,否则为0。表示第i个步态样本序列属于对象或类别c的置信度(也称为预测概率)。
[0131]
需要说明的是,步骤409、410可以在步骤408之后执行,也可以在步骤408之前执行,本技术对步骤408、409的执行时机不作限制,只需在步骤405之后执行即可。
[0132]
步骤411,根据第一损失值、第二损失值与第三损失值确定目标损失值。
[0133]
在本技术的实施例中,根据第一损失值、第二损失值与第三损失值确定目标损失值时,可以为第一损失值、第二损失值和第三损失值设置对应的权重,相应的,可以通过以下公式(7)所示的总的损失函数,确定目标损失值。
[0134]
l
total
=αl
tri
+βl
ce
+γl
reg
ꢀꢀꢀꢀꢀꢀ
(7)
[0135]
其中,α、β和γ分别表示三元组损失函数、交叉熵损失函数、变换矩阵的正则化损失函数对应的权重。其中,权重可以根据三元组损失函数、交叉熵损失函数、正则化损失函数各自的重要程度确定,越重要的损失函数对应的权重越大。
[0136]
步骤412,根据目标损失值调整步态特征提取模型的模型参数,以使目标损失值最
小化。
[0137]
在本技术的实施例中,根据第一损失值、第二损失值和第三损失值确定目标损失值后,即可根据目标损失值调整步态特征提取模型的模型参数。通过多次迭代对步态特征提取模型的模型参数进行优化,即可得到训练后的步态特征提取模型。
[0138]
综上,本技术实施例提供的用于步态识别的模型训练方法,实现了基于多个对象分别对应的训练样本,采用多种损失函数,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
[0139]
基于上述实施例,本技术实施例还提供一种步态识别方法。其中,需要说明的是,本技术实施例提供的步态识别方法,由步态识别装置执行。其中,该步态识别装置可以为电子设备,也可以被配置在电子设备中,以提高步态识别的识别准确性。
[0140]
下面结合图5,对本技术实施例提供的步态识别方法进行说明。
[0141]
图5为本技术实施例四所提供的步态识别方法的流程示意图。如图5所示,步态识别方法可以包括以下步骤501-505。
[0142]
步骤501,获取至少一个步态查询序列以及多个步态匹配序列;步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像。
[0143]
其中,步态查询序列指进行步态识别时所依据的目标步态序列。一个步态查询序列包括多帧步态查询图像,其中,每帧步态查询图像可以为rgb色彩模式的步态图像,也可以为其它模式的图像,本技术对此不作限制。一个步态查询序列包括的多帧步态查询图像,可以为从视频流中提取的一个时间段内的多帧步态查询图像。其中,该时间段,可以根据需要设置。
[0144]
其中,步态匹配序列,指进行步态识别时需要从中识别出目标序列的步态序列,其中,目标序列为与步态查询序列匹配的步态序列。一个步态匹配序列包括多帧步态匹配图像,其中,每帧步态匹配图像可以为rgb色彩模式的步态图像,也可以为其它模式的图像,本技术对此不作限制。一个步态匹配序列包括的多帧步态匹配图像,可以为从视频流中提取的一个时间段内的多帧步态匹配图像。其中,该时间段,可以根据需要设置。
[0145]
举例来说,为了从2个监控摄像头分别采集的视频流a、b中识别出与行人x匹配的行人,本技术实施例中,可以采集行人x的一段视频流c,并从该视频流c中提取出多帧步态图像,利用该多帧步态图像生成一个步态查询序列c,并称该多帧步态图像为步态查询图像。另外,可以从视频流a中提取出多帧步态图像,利用该多帧步态图像生成一个步态匹配序列a,且称该多帧步态图像为步态匹配图像,并且,可以从视频流b中提取出多帧步态图像,利用该多帧步态图像生成一个步态匹配序列b,且称该多帧步态图像为步态匹配图像。由此,可以获取1个步态查询序列c和2个步态匹配序列a、b。
[0146]
步骤502,获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息。
[0147]
其中,第一二维步态轮廓信息,可以为二维步态轮廓图中所包含的信息。
[0148]
第一三维步态模型信息,可以为三维人体网格模型所包含的三维人体网格参数信息。其中,三维步态模型信息,比如可以包括三维的视角参数、人体体型参数、人体的姿态参数、旋转矩阵、相机的内参等信息。
[0149]
本技术的实施例中,对于每个步态查询序列,可以采用相关技术中的比如hrnet-segmentation等语义分割算法,从该步态查询序列包括的每帧步态查询图像中提取出对应的二维步态轮廓图,从而根据每帧步态查询图像的二维步态轮廓图得到对应的第一二维步态轮廓信息。对于每个步态查询序列,可以采用比如romp等三维人体网格重建算法,基于该步态查询序列包括的每帧步态查询图像回归出对应的三维人体网格模型,从而根据每帧步态查询图像的三维人体网格模型得到对应的第一三维步态模型信息。
[0150]
步骤503,获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息。
[0151]
其中,步骤503的具体实现过程及原理,可以参考步骤502的描述,此处不再赘述。
[0152]
步骤504,将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征;并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征。
[0153]
在本技术的实施例中,可以采用上述任一实施例中的用于步态识别的模型训练方法,预先训练得到步态特征提取模型,步态特征提取模型的输入包括步态序列中多帧步态图像的二维步态轮廓信息和三维步态模型信息,输出为对应的步态序列的三维步态特征,从而可以将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征,并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征。
[0154]
其中,通过步态特征提取模型获取步态查询序列的第一三维步态特征和步态匹配序列的第二三维步态特征的过程,可以参考上述实施例中通过步态特征提取模型获取步态样本序列的预测三维步态特征的过程,此处不再赘述。
[0155]
步骤505,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列。
[0156]
本技术的实施例中,步态识别装置可以遍历每个步态查询序列,对于每个步态查询序列,可以根据该步态查询序列的第一三维步态特征,以及各步态匹配序列的第二三维步态特征,从各步态匹配序列中获取与该步态查询序列匹配的目标序列,从而可以获取与各步态查询序列分别匹配的各目标序列。
[0157]
其中,参考图3,对于每个步态查询序列,可以根据该步态查询序列的第一三维步态特征,以及各步态匹配序列的第二三维步态特征,确定每个步态查询序列与各步态匹配序列之间的相似度,进而根据相似度,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列。
[0158]
其中,相似度,用于衡量步态查询序列与步态匹配序列之间的相似程度。相似度,可以通过步态查询序列的第一三维步态特征与步态匹配序列的第二三维步态特征之间的欧式距离得到,也可以通过其它方式得到,本技术对此不作限制。
[0159]
由于三维步态模型信息包括大量数量的三维人体关键点的信息,相比相关技术中的稀疏的三维人体关键点,本技术实施例中的三维步态模型信息包含的信息更加精确和精细化,进而通过基于二维步态轮廓信息和更加精确和精细化的三维步态模型信息,可以获
取更加精确和精细化的三维步态特征,从而本技术实施例可以获取步态查询序列的更加精确和精细化的第一三维步态特征,以及步态匹配序列的更加精确和精细化的第二三维步态特征,且由于三维步态特征包括三维的视角信息,从而利用第一三维步态特征和第二三维步态特征进行步态识别,可以很好的解决真实场景下步态识别的跨三维视角问题,从各步态匹配序列中准确获取与每个步态查询序列匹配的目标序列。
[0160]
在一种可能的实现形式中,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,可以通过以下方式实现:基于每个步态查询序列对应的第一三维步态特征以及各步态匹配序列对应的第二三维步态特征,确定每个步态查询序列与各步态匹配序列之间的相似度;对于每个步态查询序列,将各步态匹配序列按照与步态查询序列之间的相似度从高到低的顺序排序,并将排序在前的预设数量的步态匹配序列,确定为与步态查询序列匹配的目标序列。
[0161]
其中,预设数量可以根据需要任意设置,本技术对此不作限制。
[0162]
举例来说,假设预设数量为1,步态识别装置获取的步态查询序列的数量为2个,分别为步态查询序列d和e,获取的步态匹配序列的数量为20个。则对于步态查询序列d,步态识别装置可以确定步态查询序列d与20个步态匹配序列之间的相似度,并将20个步态匹配序列按照相似度从高到低的顺序排序,将排序在前的1个步态匹配序列,确定为与步态查询序列d匹配的目标序列。同样的,对于步态查询序列e,也可以采用类似的方式,从20个步态匹配序列中确定与步态查询序列e匹配的1个目标序列,从而得到2个目标序列。
[0163]
在另一种可能的实现形式中,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,可以通过以下方式实现:基于每个步态查询序列对应的第一三维步态特征以及各步态匹配序列对应的第二三维步态特征,确定每个步态查询序列与各步态匹配序列之间的相似度;对于每个步态查询序列,将各步态匹配序列中对应的相似度大于预设阈值的步态匹配序列,确定为与步态查询序列匹配的目标序列。其中,预设阈值,可以根据需要任意设置,本技术对此不作限制。
[0164]
由此,通过基于每个步态查询序列对应的第一三维步态特征以及各步态匹配序列对应的第二三维步态特征,确定每个步态查询序列与各步态匹配序列之间的相似度,进而根据相似度从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,可以准确获取与每个步态查询序列匹配的目标序列。
[0165]
综上,本技术实施例提供的步态识别方法,通过获取至少一个步态查询序列以及多个步态匹配序列,步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像,获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息,获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息,将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征,并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,提高了步态识别的识别准确性。
[0166]
图6为本技术实施例五所提供的用于步态识别的模型训练装置的结构示意图。
[0167]
如图6所示,该用于步态识别的模型训练装置600可以包括:第一获取模块610、第一处理模块620、生成模块630、确定模块640和调整模块650。
[0168]
其中,第一获取模块610,用于获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息;
[0169]
第一处理模块620,用于将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征;
[0170]
生成模块630,用于根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对;
[0171]
确定模块640,用于根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值;
[0172]
调整模块650,用于根据第一损失值调整步态特征提取模型的模型参数。
[0173]
需要说明的是,本技术实施例提供的用于步态识别的模型训练装置,可以执行前述实施例的用于步态识别的模型训练方法,该用于步态识别的模型训练装置可以为电子设备,也可以被配置在电子设备中,以对步态特征提取模型进行训练,进而通过训练后的步态特征提取模型进行步态识别时,能够提高步态识别的识别准确性。
[0174]
其中,电子设备可以为pc、云端设备、移动设备、服务器等,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备等任意硬件设备,本技术对此不作限制。
[0175]
在本技术实施例的一种可能的实现方式中,步态特征提取模型可以包括轮廓特征提取模块、空间转换模块,与轮廓特征提取模块及空间转换模块分别连接的特征对齐模块、与特征对齐模块连接的池化模块;
[0176]
第一处理模块620,包括:
[0177]
特征提取单元,用于对于每个步态样本序列,将其中各步态样本图像的二维步态轮廓信息输入轮廓特征提取模块,以基于各二维步态轮廓信息进行轮廓特征提取,得到各步态样本图像分别对应的二维轮廓特征;
[0178]
隐变换估计单元,用于将其中各步态样本图像的三维步态模型信息输入空间转换模块,以基于各三维步态模型信息进行隐变换估计,得到各步态样本图像分别对应的隐变换矩阵;
[0179]
对齐单元,用于将各步态样本图像分别对应的二维轮廓特征与隐变换矩阵输入特征对齐模块,以利用隐变换矩阵将对应的二维轮廓特征对齐至三维空间,得到对应的步态样本图像的对齐后步态特征;
[0180]
池化单元,用于将各步态样本图像的对齐后步态特征输入池化模块,以对各对齐后步态特征进行池化,得到步态样本序列的预测三维步态特征。
[0181]
在本技术实施例的另一种可能的实现方式中,调整模块650,包括:
[0182]
第一处理单元,用于将各训练样本包括的多个步态样本序列中,各步态样本图像分别对应的隐变换矩阵,代入正则化损失函数,以确定第二损失值;
[0183]
第一确定单元,用于根据第一损失值与第二损失值,确定目标损失值;
[0184]
调整单元,用于根据目标损失值调整步态特征提取模型的模型参数,以使目标损失值最小化。
[0185]
在本技术实施例的另一种可能的实现方式中,各步态样本序列以所属的真实对象进行标注;第一确定单元,用于:
[0186]
将各步态样本序列的预测三维步态特征输入分类模型,以利用分类模型预测各步态样本序列的所属对象,得到各步态样本序列分别属于各对象的置信度;
[0187]
根据各步态样本序列分别属于各对象的置信度与所属的真实对象,确定第三损失值;
[0188]
根据第一损失值、第二损失值与第三损失值确定目标损失值。
[0189]
需要说明的是,前述用于步态识别的模型训练方法实施例中的解释说明也适用于该实施例的用于步态识别的模型训练装置,此处不再赘述。
[0190]
本技术实施例的用于步态识别的模型训练装置,通过获取多个对象分别对应的训练样本,其中,每个训练样本包括多个步态样本序列,以及包括对应步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息,将各步态样本序列中多帧步态样本图像的二维步态轮廓信息和三维步态模型信息输入步态特征提取模型,以获取对应步态样本序列的预测三维步态特征,根据多个对象分别对应的训练样本中,属于同一对象的步态样本序列生成正样本序列对、属于不同对象的步态样本序列生成负样本序列对,根据正样本序列对与负样本序列对中的各步态样本序列的预测三维步态特征,确定第一损失值,根据第一损失值调整步态特征提取模型的模型参数,实现了基于多个对象分别对应的训练样本,对步态特征提取模型进行模型训练,得到用于步态识别的步态特征提取模型,利用训练后得到的步态特征提取模型可以获取步态序列的三维步态特征,进而利用三维步态特征进行步态识别,可以提高步态识别的识别准确性。
[0191]
图7为本技术实施例六所提供的步态识别装置的结构示意图。
[0192]
如图7所示,该步态识别装置700可以包括:第二获取模块710、第三获取模块720、第四获取模块730、第二处理模块740和第五获取模块750。
[0193]
其中,第二获取模块710,用于获取至少一个步态查询序列以及多个步态匹配序列;步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像;
[0194]
第三获取模块720,用于获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息;
[0195]
第四获取模块730,用于获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息;
[0196]
第二处理模块740,用于将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征;并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征;步态特征提取模型通过前述任一实施例提出的用于步态识别的模型训练方法训练得到;
[0197]
第五获取模块750,用于基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列。
[0198]
需要说明的是,本技术实施例提供的步态识别装置,可以执行前述实施例的步态识别方法,该步态识别装置可以为电子设备,也可以被配置在电子设备中,以提高步态识别的识别准确性。
[0199]
其中,电子设备可以为pc、云端设备、移动设备、服务器等,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备等任意硬件设备,本技术对此不作限制。
[0200]
在本技术实施例的一种可能的实现方式中,第五获取模块750,包括:
[0201]
第二确定单元,用于基于每个步态查询序列对应的第一三维步态特征以及各步态匹配序列对应的第二三维步态特征,确定每个步态查询序列与各步态匹配序列之间的相似度;
[0202]
第二处理单元,用于对于每个步态查询序列,将各步态匹配序列按照与步态查询序列之间的相似度从高到低的顺序排序,并将排序在前的预设数量的步态匹配序列,确定为与步态查询序列匹配的目标序列。
[0203]
本技术实施例的步态识别装置,通过获取至少一个步态查询序列以及多个步态匹配序列,步态查询序列包括多帧步态查询图像;步态匹配序列包括多帧步态匹配图像,获取每个步态查询序列中多帧步态查询图像的第一二维步态轮廓信息以及第一三维步态模型信息,获取每个步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息以及第二三维步态模型信息,将各步态查询序列中多帧步态查询图像的第一二维步态轮廓信息和第一三维步态模型信息输入步态特征提取模型,以获取对应步态查询序列的第一三维步态特征,并将各步态匹配序列中多帧步态匹配图像的第二二维步态轮廓信息和第二三维步态模型信息输入步态特征提取模型,以获取对应步态匹配序列的第二三维步态特征,基于各第一三维步态特征以及各第二三维步态特征,从各步态匹配序列中获取与每个步态查询序列匹配的目标序列,提高了步态识别的识别准确性。
[0204]
为了实现上述实施例,本技术还提出一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本技术前述任一实施例提出的用于步态识别的模型训练方法,或者执行如本技术前述任一实施例提出的步态识别方法。
[0205]
为了实现上述实施例,本技术还提出一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本技术前述任一实施例提出的用于步态识别的模型训练方法,或者执行如本技术前述任一实施例提出的步态识别方法。
[0206]
为了实现上述实施例,本技术还提出一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本技术前述任一实施例提出的用于步态识别的模型训练方法,或者实现如本技术前述任一实施例提出的步态识别方法。
[0207]
图8示出了适于用来实现本技术实施方式的示例性电子设备的框图。图8显示的电子设备800仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0208]
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0209]
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industry standard architecture;以下简称:isa)总线,微通道体系结构(micro channel architecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(video electronics standards association;以下简称:vesa)局域总线以及外围组件互连(peripheral component interconnection;以下简称:pci)总线。
[0210]
电子设备800典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备800访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0211]
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(random access memory;以下简称:ram)30和/或高速缓存存储器32。电子设备800可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compact disc read only memory;以下简称:cd-rom)、数字多功能只读光盘(digital video disc read only memory;以下简称:dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本技术各实施例的功能。
[0212]
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本技术所描述的实施例中的功能和/或方法。
[0213]
电子设备800也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,电子设备800还可以通过网络适配器20与一个或者多个网络(例如局域网(local area network;以下简称:lan),广域网(wide area network;以下简称:wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备800的其它模块通信。应当明白,尽管图8中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0214]
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
[0215]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任
一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0216]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0217]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0218]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0219]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0220]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0221]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0222]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描
述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1