人脸特征的处理方法、装置和存储介质与流程

文档序号:18475918发布日期:2019-08-20 21:03阅读:298来源:国知局
人脸特征的处理方法、装置和存储介质与流程

本发明涉及图像处理领域,具体而言,涉及一种人脸特征的处理方法、装置和存储介质。



背景技术:

目前,在对人脸特征进行处理时,需要训练深度网络模型,通过修改深度网络模型的特征输出维度来实现对人脸特征的压缩,比如,将1024维的人脸特征降低为256维的人脸特征。

上述方法虽然可以实现对人脸特征的压缩,但是特征维度的切换,需要重新训练深度网络模型,从而大大增加了这种对人脸特征进行处理的成本。

针对上述的对人脸特征进行处理的成本大的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种人脸特征的处理方法、装置和存储介质,以至少解决相关技术中对人脸特征进行处理的成本大的技术问题。

根据本发明实施例的一个方面,提供了一种人脸特征的处理方法。该方法包括:在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量;对原始特征向量进行归一化处理,得到第一特征向量;对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间;获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度;在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

根据本发明实施例的另一方面,还提供了一种人脸特征的处理装置。该装置包括:第一提取单元,用于在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量;第一处理单元,用于对原始特征向量进行归一化处理,得到第一特征向量;转换单元,用于对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间;第一获取单元,用于获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度;第一确定单元,用于在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

在本发明实施例中,在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量,对归一化处理后的第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,第二特征向量所占的存储空间小于原始特征向量所占的存储空间,进而比对第二特征向量与预先存储的目标人脸对象的目标特征向量,在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,也就是说,将第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,达到了对人脸特征数据进行压缩的目的,降低了对人脸特征进行存储的压力,进而在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,避免了在对人脸特征进行处理时,由于特征维度的切换需要重新训练模型导致的成本大的问题,实现了降低对人脸特征进行处理的成本的技术效果,进而解决了相关技术中对人脸特征进行处理的成本大的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的人脸特征的处理方法的硬件环境的示意图;

图2是根据本发明实施例的一种人脸特征的处理方法的流程图;

图3是根据本发明实施例的一种基于量化的人脸特征压缩方法的流程图;

图4是根据本发明实施例的一种从人脸图像中抽取float32特征数据的方法的流程图;

图5是根据本发明实施例一种对人脸特征数据进行量化处理的方法的流程图;

图6是根据本发明实施例的一种人脸特征数据比对的方法的流程图;

图7是根据本发明实施例一种基于量化的人脸特征压缩的示意图;

图8是根据本发明实施例的一种人脸核身的场景示意图;

图9是根据本发明实施例的一种人脸检索的场景示意图;

图10是根据本发明实施例的一种人脸特征的处理装置的示意图;以及

图11是根据本发明实施例的一种电子装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例的一个方面,提供了一种人脸特征的处理方法。可选地,作为一种可选的实施方式,上述人脸特征的处理方法可以但不限于应用于如图1所示的环境中。其中,图1是根据本发明实施例的图像检测方法的硬件环境的示意图。如图1所示,用户102可以与用户设备104之间可以进行数据交互,用户设备104中可以但不限于包括存储器106和处理器108。

在该实施例中,用户设备104可以输入目标图像,可以通过处理器108执行步骤s102,通过网络110将上述目标图像的数据发送给服务器112。服务器112中包含有数据库114和处理器116。

服务器112在获取到上述目标图像的数据之后,处理器116在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量,对原始特征向量进行归一化处理,得到第一特征向量,对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间,处理器116从数据库114中获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度,在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,进而执行步骤s104,通过网络110将待识别人脸对象为目标人脸对象的结果返回给用户设备104。

用户设备104可以通过存储器106中存储待识别人脸对象为目标人脸对象的结果。

在相关技术中,在对人脸特征进行处理时,特征维度的切换,需要重新训练深度网络模型,从而大大增加了这种对人脸特征进行处理的成本。而本发明实施例将第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,达到了对人脸特征数据进行压缩的目的,降低了对人脸特征进行存储的压力,进而在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,避免了在对人脸特征进行处理时,由于特征维度的切换需要重新训练模型导致的成本大的问题,实现了降低对人脸特征进行处理的成本的技术效果,进而解决了相关技术中对人脸特征进行处理的成本大的技术问题。

图2是根据本发明实施例的一种人脸特征的处理方法的流程图。如图2所示,该方法可以包括以下步骤:

步骤s202,在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量。

在步骤s202提供的技术方案中,从目标图像中提取出待识别人脸对象的第一数据类型的原始特征向量,该原始特征向量用于按照第一数据类型表示出待识别人脸对象的人脸特征。

在该实施例中,目标图像可以为当前输入的包含人脸的图像,可以对目标图像进行人脸检测、人脸配准和人脸特征识别,从而得到待识别人脸对象的第一数据类型的原始特征向量,其中,待识别人脸对象为待进行识别的人脸。

可选地,该实施例通过人脸检测网络模型对输入的目标图像进行人脸检测,在目标图像中准确定位到人脸的位置,从而在目标图像中找到人脸,得到待识别人脸对象的人脸检测结果。

在得到待识别人脸对象的人脸检测结果之后,根据人脸检测结果进行人脸关键点配准,也即,根据人脸检测结果进行人脸特征点的检测与定位,可以通过人脸配准网络模型根据人脸检测结果进行人脸关键点配准,找到眉毛、眼睛、鼻子、嘴巴等特征的位置,得到待识别人脸对象的配准结果。

在得到待识别人脸对象的配准结果之后,根据配准结果进行人脸对齐,也即,根据配准结果进行人脸矫正,使得人脸变正。在根据配准结果进行人脸对齐之后,对对齐后的图像进行抠图,比如,将对齐后的图像抠成248*248的人脸图像,然后将抠好的人脸图像输入至人脸识别模型,该人脸识别模型可以为深度神经网络,比如,为卷积神经网络,通过人脸识别模型从抠好的人脸图像中提取出第一数据类型的原始特征向量,该原始特征向量用于按照第一数据类型表示出待识别人脸对象的人脸特征,比如,第一数据类型为单精度浮点类型,该原始特征向量包括一组单精度浮点类型的特征数据,也即,包括多维的单精度浮点类型的特征数据,其中,多维可以为1024维,单精度浮点类型可以为float32类型、float64类型等。

步骤s204,对原始特征向量进行归一化处理,得到第一特征向量。

在步骤s204提供的技术方案中,在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量之后,对原始特征向量进行归一化处理,得到第一数据类型的第一特征向量,也即,对原始特征向量包括的多个维度的特征数据进行标准化处理,从而同等程度的看待原始特征向量中的各个特征数据,将各个特征数据量化到统一的区间,从而确保在对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之后,将第二特征向量与目标特征向量直接进行比对,以获取待识别人脸对象与目标人脸对象之间的相似度,增强特征数据之间的可比性,其中,目标特征向量也为经归一化处理后的特征向量。

可选地,该实施例在对原始特征向量进行归一化处理,得到第一特征向量时,根据第一特征向量的多个维度的特征数据获取原始特征向量的模长,将每个维度的特征数据与模长之商,确定为第一特征向量的特征数据。

可选地,获取原始特征向量的多个维度的特征数据的平方和,对该平方和进行开方,得到原始特征向量的模长,进而将每个维度的特征数据与模长之商,确定为第一特征向量的特征数据,从而实现通过原始特征向量的多个维度的特征数据,对原始特征向量进行归一化处理,使得原始特征向量的模长为1。

步骤s206,对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量。

在步骤s206提供的技术方案中,在对原始特征向量进行归一化处理,得到第一特征向量之后,对该第一特征向量进行压缩处理,将第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量用于按照第二数据类型表示出待识别人脸对象的人脸特征,且该第二特征向量所占的存储空间小于原始特征向量所占的存储空间,该第二特征向量为归一化的特征向量。

在该实施例中,第一数据类型使得原始特征数据相对于第二数据类型的第二特征向量连续,第二数据类型使得第二特征向量相对于第一数据类型的原始特征向量离散,比如,该第二数据类型为整型,可以为int8、int16等,原始特征向量的第一数据类型为单精度浮点类型,可以为float32类型、float64类型等,单精度浮点类型的原始特征向量相对于整型的第二特征向量连续,整型的第二特征向量相对于单精度浮点类型的原始特征向量离散,从而实现了将第一数据类型的原始特征向量,转换为相对离散的第二数据类型的第二特征向量,实现了对原始特征向量进行量化处理,从而降低了对特征数据进行存储的压力。

该实施例的第一类型转换关系为将第一数据类型的第一特征向量向第二数据类型的第二特征向量进行转化的映射关系,比如,为float32空间内的第一特征向量与int8空间的第二特征向量之间的映射关系,从而使得第二数据类型的第二特征向量所占的存储空间小于原始特征向量所占的存储空间,可以使得数据特征所占硬盘与内存的体积减少4倍,降低了对特征数据进行存储的压力,且无需重新训练深度网络,降低了对人脸特征进行处理的成本,加快人脸比对的速度,并且保证了对第一特征向量按照第一类型转换关系进行转换处理,得到的第二数据类型的第二特征向量的效果基本无损。

步骤s208,获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度。

在步骤s208提供的技术方案中,在对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之后,通过第二特征向量进行人脸识别比对,可以获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度。

该实施例的目标人脸对象可以为预先已向数据库录入身份信息的人脸,目标特征向量用于按照第二数据类型表示出目标人脸对象的人脸特征,为经归一化处理后的特征向量。在获取预先存储的目标人脸对象的目标特征向量之后,将第二特征向量与目标特征向量作为参与比对的两个特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度,该相似度用于指示待识别人脸对象和目标人脸对象之间的相似程度。

步骤s210,在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

在步骤s210提供的技术方案中,在获取待识别人脸对象与目标人脸对象之间的相似度之后,判断相似度是否大于第一目标阈值,该第一目标阈值也即判断阈值,可以为预先设置好的用于衡量相似度大小的临界值,比如,该第一目标阈值为75%。在相似度大于第一目标阈值的情况下,也即,在待识别人脸对象与目标人脸对象之间的相似程度较高的情况下,确定待识别人脸对象为目标人脸对象,可以认为待识别人脸对象与目标人脸对象来自于同一个人;可选地,在相似度不大于第一目标阈值的情况下,也即,在待识别人脸对象与目标人脸对象之间的相似程度较低的情况下,确定待识别人脸对象与目标人脸对象的差距较大,可以认为待识别人脸对象与目标人脸对象并非自于同一个人,从而实现了对人脸进行识别比对,在降低了对人脸特征数据的存储压力的同时,降低了人脸比对的运算量,进而加快了人脸比对的速度。

通过上述步骤s202至步骤s210,将第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,达到了对人脸特征数据进行压缩的目的,降低了对人脸特征进行存储的压力,进而在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,避免了在对人脸特征进行处理时,由于特征维度的切换需要重新训练模型导致的成本大的问题,实现了降低对人脸特征进行处理的成本的技术效果,进而解决了相关技术中对人脸特征进行处理的成本大的技术问题。

作为一种可选的实施方式,在步骤s206,对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之前,该方法还包括:分别在多个图像样本中对人脸对象进行特征提取,得到第一数据类型的多个特征向量样本;对多个特征向量样本进行归一化处理;获取归一化处理后的多个特征向量样本的第一数据区间;对第一数据区间进行过滤处理,得到关键区间;基于关键区间确定第一类型转换关系。

在该实施例中,在对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之前,可以基于多个图像样本估算关键区间,该关键区间也即对第一数据类型的第一特征向量进行处理的量化区间,用于确定在对原始特征向量进行量化处理时的第一类型转换关系,且该实施例的第二数据类型的第二特征向量需要处于该关键区间中。

在该实施例中,输入多个图像样本,该多个目标图像可以为百万级人脸图像,分别在多个图像样本中对人脸对象进行特征提取,得到第一数据类型的多个特征向量样本,可以分别对多个图像样本进行人脸检测、人脸配准和人脸特征识别,从而得到多个特征向量样本,该多个特征向量样本可以为百万级人脸特征。

可选地,该实施例通过人脸检测网络模型对输入的每个图像样本进行人脸检测,在每个图像样本中准确定位到人脸的位置,从而得到每个图像样本中的人脸检测结果,进而根据每个图像样本中的人脸检测结果进行人脸关键点配准,也即,根据每个图像样本中的人脸检测结果进行人脸特征点的检测与定位,可以通过人脸配准网络模型根据人脸检测结果进行人脸关键点配准,得到每个图像样本中的人脸对象的配准结果。在得到每个图像样本中的人脸对象的配准结果之后,根据配准结果进行人脸对齐,也即,根据配准结果进行人脸矫正,使得人脸变正。在根据每个图像样本中的人脸对象的配准结果进行人脸对齐之后,对对齐后的图像进行抠图,将抠好的人脸图像输入至人脸识别模型,通过人脸识别模型从抠好的人脸图像中提取出特征向量样本,该特征向量样本可以包括1024维的单精度浮点类型的特征数据。

在得到第一数据类型的多个特征向量样本之后,对多个特征向量样本进行归一化处理,也即,对每个特征向量样本包括的多个维度的特征数据进行标准化处理,从而同等程度的看待每个特征向量样本中的各个特征数据,将每个特征向量样本中的各个特征数据量化到统一的区间。

在对多个特征向量样本进行归一化处理之后,获取归一化处理后的多个特征向量样本的第一数据区间,该第一数据区间的上界数据可以为归一化处理后的多个特征向量样本中的最大特征数据,该第一数据区间的下界数据可以为归一化处理后的多个特征向量样本中的最小特征数据。对第一数据区间进行过滤处理,得到关键区间,也即,关键区间包含于第一数据区间,进而基于关键区间确定第一类型转换关系,其中,第一数据区间中的特征向量为正态分布,关键区间可以不包括第一数据区间中少量的较大特征数据或者少量的较小特征数据,从而提高将第一数据类型的原始特征向量转化为第二数据类型的第二特征向量的精度。

下面对上述基于关键区间确定第一类型转换关系的方法进行介绍。

作为一种可选的实施方式,基于关键区间确定第一类型转换关系包括:获取关键区间的第一上界数据、关键区间的第一下界数据、第二数据区间的第二上界数据和第二数据区间的第二下界数据,其中,第二数据区间与第二数据类型相关联;通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型。

在该实施例中,关键区间的第一上界数据和关键区间的第一下界数据对称,与第二数据类型相关联的第二数据区间的第二上界数据和第二下界数据对称,比如,关键区间的第一上界数据为max、关键区间的第一下界数据为min,则-max=min,第二数据类型为int8类型,第二数据区间的第二上界数据和第二下界数据对称,第二上界数据可以为127,第二下界数据可以为-127。可以获取关键区间的第一上界数据、关键区间的第一下界数据、第二数据区间的第二上界数据和第二数据区间的第二下界数据,通过第一上界数据、关键区间的第一下界数据、第二数据区间的第二上界数据和第二数据区间的第二下界数据确定用于指示第一类型转换关系的目标模型,该目标模型可以为对第一数据类型的第一特征向量进行计算的目标函数。

可选地,该实施例在通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型时,将第一上界数据和第一下界数据二者之间的差,确定为目标模型的第一差;将第二上界数据和第二下界数据二者之间的差,确定为目标模型的第二差;将第二差与第一差二者之间的商,确定为目标模型的中间值;将目标模型的输入变量与第一下界数据二者之间的差,确定为目标模型的第三差,且将第三差和中间值二者之间的积,确定为目标模型的第一积,其中,输入变量用于表示第一特征向量中的特征数据;将对第一积与第二上界数据之间的差进行取整得到的结果,确定为目标模型的输出结果,其中,输出结果用于表示第二特征向量中的特征数据;通过输出结果确定第二特征向量。

在该实施例中,可以将第一上界数据和第一下界数据二者之间的差,确定为目标模型的第一差,比如,将第一上界数据max和第一下界数据min二者之间的差,确定为目标模型的第一差(max-min)。

将第二上界数据和第二下界数据二者之间的差,确定为目标模型的第二差,比如,将第二上界数据127和第二下界数据-127二者之间的差,确定为目标模型的第二差127-(-127)=254。

将第二差与第一差二者之间的商,确定为目标模型的中间值,比如,将第二差254与第一差(max-min)二者之间的商,确定为目标模型的中间值scale=254/(max-min),该中间值也即将第一数据类型的第一特征向量转化为第二数据类型的第二特征向量的量化精度。

将目标模型的输入变量与第一下界数据二者之间的差,确定为目标模型的第三差,比如,将目标模型的输入变量feature_float32_value与第一下界值min二者之间的差,确定为目标模型的第三差(feature_float32_value-min),且将第三差和中间值二者之间的积,确定为目标模型的第一积,比如,将第三差(feature_float32_value-min)和中间值scale二者之间的积,确定为目标模型的第一积scale*(feature_float32_value-min)。

将对第一积与第二上界数据之间的差进行取整得到的结果,确定为目标模型的输出结果,比如,将对第一积scale*(feature_float32_value-min)与第二上界数据127之间的差进行取整得到的结果round(scale*(feature_float32_value-min)-127),确定为目标模型的输出结果,该输出结果用于表示第二特征向量中的特征数据,也即,目标模型可以表示为feature_int8_value=round(scale*(feature_float32_value-min)-127),其中,round用于表示四舍五入,进而通过输出结果确定第二数据类型的第二特征向量,从而实现了通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型的目的。

需要说明的是,上述通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型的方法仅为本发明实施例的一种举例,并不代表本发明实施例的确定目标模型的方法仅为上述方法,任何可以通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定目标模型的方法都在本发明实施例的范围之内,此处不再一一举例说明。

下面对该实施例的得到第二数据类型的第二特征向量的过程进行介绍。

作为一种可选的实施方式,得到第二数据类型的第二特征向量的过程包括:通过目标模型对第一特征向量中的特征数据进行处理,得到输出结果;在输出结果大于第二上界数据的情况下,将第二上界数据确定为第二特征向量的特征数据;在输出结果小于第二下界数据的情况下,将第二下界数据,确定为第二特征向量的特征数据;在输出结果大于等于第二下界数据且小于等于第二上界数据的情况下,将输出结果确定为第二特征向量的特征数据;通过第二特征向量的特征数据确定第二特征向量。

在通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型之后,通过目标模型对第一特征向量进行转换处理,得到第二数据类型的第二特征向量,需要保证第二特征向量处于第二下界数据和第二上界数据之间。该实施例设定一个数据饱和策略,在输出结果大于第二上界数据的情况下,直接将第二上界数据确定为第二特征向量的特征数据,比如,第二上界数据为127,则feature_int8_value=min(127,feature_int8_value);在输出结果小于第二下界数据的情况下,将第二下界数据,确定为第二特征向量的特征数据,比如,feature_int8_value=max(-127,feature_int8_value);在输出结果大于等于第二下界数据且小于等于第二上界数据的情况下,将直接输出结果确定为第二特征向量的特征数据,从而确保第二特征向量处于第二下界数据和第二上界数据之间,进而通过第二特征向量的特征数据确定第二特征向量。

该实施例在通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型之后,通过目标模型对第一特征向量进行转换处理,进而得到第二数据类型的第二特征向量,实现了将第一数据类型的原始特征向量,转换为相对离散的第二数据类型的第二特征向量,降低对人脸特征进行存储的压力,进而降低了对人脸特征进行处理的成本,并且保证了对第一特征向量按照第一类型转换关系进行转换处理,得到的第二数据类型的第二特征向量的效果基本无损。

作为一种可选的实施方式,获取归一化处理后的多个特征向量样本的第一数据区间包括:获取归一化处理后的每个特征向量样本在多个维度上的特征数据,得到多个特征数据;确定与多个特征数据对应的第一数据区间。

在该实施例中,在获取归一化处理后的多个特征向量样本的第一数据区间时,获取归一化处理后的每个特征向量样本在多个维度上的特征数据,得到多个特征数据,从多个特征数据中确定最大特征数据和最小特征数据,可以将最大特征数据确定为第一数据区间的第一上界数据,将最小特征数据确定为第一数据区间的第一下界数据,从而确定第一数据区间。

下面对上述的对第一数据区间进行过滤处理,得到关键区间的方法进行介绍。

作为一种可选的实施方式,对第一数据区间进行过滤处理,得到关键区间包括:从第一数据区间中,过滤掉大于第一特征数据且小于第二特征数据的特征数据,得到关键区间,其中,关键区间中的特征数据占第一数据区间中的特征数据的比例,大于第二目标阈值。

在该实施例中,在对第一数据区间进行过滤处理,得到关键区间时,可以先确定第一特征数据和第二特征数据,该第一特征数据可以为用于区分第一数据区间中少量的较大特征数据的临界特征数据,第二特征数据可以为第一数据区间中用于区分少量的较小特征数据的临界特征数据。过滤掉大于第一特征数据且小于第二特征数据的特征数据,得到关键区间,该关键区间中的特征数据占第一数据区间中的特征数据的比例,大于第二目标阈值,也即,使得在提高将第一数据类型的原始特征向量转化为第二数据类型的第二特征向量的精度的同时,也要确定第一数据区间中尽可能多的特征数据落在关键区间中,比如,使得第一数据区间中99.8%的特征数据落在关键区间中。

作为一种可选的实施方式,获取预先存储的目标人脸对象的目标特征向量包括:获取预先存储的多个预定人脸对象的特征向量,其中,每个预定人脸对象的特征向量为第二数据类型的归一化的特征向量;将遍历到的一个预定人脸对象的特征向量,确定为目标人脸对象的目标特征向量。

在该实施例中,可以预先在数据库中存储多个预定人脸对象的特征向量,该多个预定人脸对象可以为预先向数据库录入身份信息的多张人脸,每个预定人脸对象对应一个特征向量,该每个预定人脸对象的特征向量为第二数据类型的归一化的特征向量,包括用于按照第二数据类型表示出一个人脸对象的人脸特征,从而同等程度的看待每个预定人脸对象的特征向量中的各个特征数据,将各个特征数据量化到统一的区间。从多个预定人脸对象的特征向量进行遍历,将遍历到的一个预定人脸对象的特征向量,确定为目标人脸对象的目标特征向量,进而比对第二特征向量与每次遍历确定的目标特征向量,以获取待识别人脸对象与多个人脸对象之间的相似度,得到多个相似度。

可选地,该实施例判断多个相似度中的最大相似度是否大于第一目标阈值,在最大相似度大于第一目标阈值的情况下,确定待识别人脸对象和与最大相似度对应的人脸对象来自同一人,可以将与最大相似度对应的人脸对象确定为对待识别人脸对象进行检索的检索结果。可选地,在最大相似度不大于第一目标阈值的情况下,则确定待识别人脸对象不为多个人脸对象中的任一人脸对象,确定未对待识别人脸对象检索出与其相近的人脸对象,从而实现了人脸检索,并且将为第一数据类型的原始特征向量,转换为相对离散的第二数据类型的第二特征向量,在降低了对人脸特征数据的存储压力的同时,降低了人脸检索的运算量,进而加快了人脸检索的速度。

可选地,该实施例还可以用于核验待识别人脸对象所来自的人的身份,如果待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值,则确定待识别人脸对象为目标人脸对象,则待识别人脸对象所来自的人的身份是符合要求的,或者将目标人脸对象所来自的人的身份确定为待识别人脸对象所来自的人的身份。

作为一种可选的实施方式,步骤s208,比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度包括:获取第二特征向量和第二数据类型的目标特征向量之间的第一余弦距离;对第一余弦距离按照第二类型转换关系进行转换处理,得到第一数据类型的第二余弦距离;将第二余弦距离确定为相似度。

在该实施例中,在比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度时,可以计算第二特征向量和第二数据类型的目标特征向量之间的比对距离,该实施例可以计算第二特征向量和目标特征向量之间的第一余弦距离,比如,将第二特征向量和目标特征向量之间的点乘结果确定为第一余弦距离,该第一余弦距离也即余弦相似度,用于指示第二特征向量和目标特征向量之间的相似程度的大小。该第一余弦距离的数据类型也为第二数据类型。

举例而言,第二特征向量[x1、x2……xn],目标特征向量[y1、y2……yn]。其中,x1、x2……xn用于表示第二特征向量的特征数据,y1、y2……yn用于表示目标特征向量的特征数据,n用于表示维度。第一余弦距离可以通过公式表示:

其中,由于第二特征向量[x1、x2……xn],目标特征向量[y1、y2……yn]为归一化的特征向量,因而,第一余弦距离也即,第一余弦距离为第二特征向量和目标特征向量的内积(点乘结果)。

在获取第二特征向量和第二数据类型的目标特征向量之间的第一余弦距离之后,对第一余弦距离按照第二类型转换关系进行转换处理,得到第一数据类型的第二余弦距离,该第二余弦距离的数据类型为第一数据类型,也即,将第一余弦距离映射回第一数据类型的数据空间中,比如,将第一余弦距离映射回float空间,可选地,该实施例将第二特征向量和目标特征向量之间的点乘结果与上述scale=254/(max-min)二者之间的商的平方确定为第二余弦距离,进而将第二余弦距离确定为待识别人脸对象与目标人脸对象之间的相似度,进而在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,从而实现了对人脸进行识别比对,加快了人脸比对的速度,比如,运算加速可以达1-4倍(视具体硬件平台而定)。

需要说明的是,上述通过获取第二特征向量和第二数据类型的目标特征向量之间的第一余弦距离,来比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度的方法仅为本发明实施例的一种举例,并不代表本发明实施例的获取待识别人脸对象与目标人脸对象之间的相似度的方法仅为上述方法,任何可以获取待识别人脸对象与目标人脸对象之间的相似度的方法都在本发明实施例的范围之内,比如,通过欧式距离获取待识别人脸对象与目标人脸对象之间的相似度,此处不再一一举例说明。

作为一种可选的实施方式,第一数据类型为单精度浮点类型,第二数据类型为整型。

在该实施例中,第一数据类型为单精度浮点类型,比如,为float类型,可以为float32、float64等用于指示原始特征向量的数据类型。第二数据类型为整型,比如,为int8、int16等用于指示第二特征向量的数据类型。

需要说明的是,该实施例的第一数据类型为float32、float64,第二数据类型为int8、int16仅为本发明实施例的一种举例说明,并不代表本发明实施例的原始数据类型仅为float32、float64,第二数据类型仅为int8、int16,任何有关将原始特征向量转化为相对离散的第二特征向量的数据类型,以降低对特征数据进行存储的压力的方法都在本发明实施例的范围之内,此处不再一一举例说明。

该实施例提供了一种简单、快速、有效的人脸特征处理的方法,将第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,达到了对人脸特征数据进行压缩的目的,使得特征所占硬盘与内存的体积可以减少4倍,降低了对人脸特征进行存储的压力,进而在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,实现人脸检索加速,运算加速可以达1-4倍,避免了在对人脸特征进行处理时,由于特征维度的切换需要重新训练模型导致的成本大的问题,实现了降低对人脸特征进行处理的成本的技术效果,保证了人脸特征的效果无损。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

下面结合优选的实施例对本发明的技术方案进行说明。

该实施例提供了一种简单、快速、有效的人脸特征压缩、人脸检索加速的算法,该加速算法主要通过将人脸特征由float32量化为int8,从而降低人脸特征存储的压力、加快人脸比对的速度。

下面对本发明实施例的基于量化的人脸特征压缩方法进行介绍。

图3是根据本发明实施例的一种基于量化的人脸特征压缩方法的流程图。如图3所示,该方法包括以下步骤:

步骤s301,从百万级别的人脸图像抽取float32特征数据,并估算量化区间。

步骤s302,基于量化区间对需要进行压缩处理的float32特征数据进行量化处理,得到压缩后的人脸特征数据。

步骤s303,通过压缩后的人脸特征数据与存储的目标人脸特征数据进行比对,以确定参与比对的两个特征数据对应的人脸是否来自于一个人。

下面对本发明实施例的从百万级别的人脸图像抽取float32特征数据,并估算量化区间进行介绍。

图4是根据本发明实施例的一种从人脸图像中抽取float32特征数据的方法的流程图。如图4所示,该方法包括以下步骤:

步骤s401,获取百万级人脸图像。

步骤s402,对百万级人脸图像进行人脸检测,得到人脸检测结果。

该实施例通过人脸检测网络模型对输入的人脸图像进行人脸检测,在人脸图像中准确定位到人脸的位置,得到人脸检测结果。

步骤s403,根据人脸检测结果进行人脸关键点配准,得到配准结果。

该实施例在对百万级人脸图像进行人脸检测之后,根据人脸检测结果进行人脸特征点的检测与定位,可以通过人脸配准网络模型根据人脸检测结果进行人脸关键点配准,在人脸上找到眼睛、鼻子、嘴巴等特征的位置,得到配准结果。

步骤s404,根据配准结果对齐人脸并抠图。

该实施例可以根据人脸配准结果将人脸对齐并抠成248*248的图像。

步骤s405,将抠好的人脸图像输入人脸识别模型,得到多维的float32特征。

该实施例的人脸识别模型为一个卷积神经网络,可以将一张248*248的人脸图像转换为一个1024维的float32特征,该特征可以在人脸核身、人脸检索等应用场景中,用于人脸比对。

步骤s406,估算量化区间。

在该实施例中,通过对人脸特征数据进行归一化处理,使得每个人脸特征数据的模长为1,以确保在float32特征量化为int8特征之后能够在int8内直接计算cos距离并映射回float空间。可选地,该实施例对特征人脸特征数据中的各维特征数据的平方值进行求和,并开根得到现有模长,之后对于原特征的每个维度上的值,除以该模长,从而得到归一化处理后的人脸特征数据。

基于归一化处理后的人脸特征数据确定量化区间的上界max与下界min,以使99.8%的特征数据都可以落在上界与下界之间,同时上界与下界对称,也即,-max=min,从而确定量化区间,使得尽可能多的值落在量化区间之中。

下面对本发明实施例的基于量化区间对需要进行压缩处理的float32特征数据进行量化处理,得到压缩后的人脸特征数据的方法进行介绍。

图5是根据本发明实施例一种对人脸特征数据进行量化处理的方法的流程图。如图5所示,该方法包括以下步骤:

步骤s501,获取需要压缩的float32人脸特征数据。

从输入的图像中提取出待识别人脸对象的float32人脸特征数据。输入的图像可以为包含人脸的图像,可以对输入的图像进行人脸检测、人脸配准和人脸特征识别,从而得到待识别人脸对象的float32人脸特征数据。

步骤s502,对提取出的float32人脸特征数据进行量化处理,得到量化处理后的int8人脸特征数据。

在该实施例中,建立float32空间内的数据与int8空间对应的数据之间的映射关系。

可选地,scale=254/(max-min),其中,max用于表示量化区间的上界值,min用于表示量化区间的下界值,254是根据要压缩的float32人脸特征数据映射到int8空间中所得到的人脸特征数据的数据区间的范围进行确定的,比如,为-127~127。

在该实施例中,映射后的人脸特征数据feature_int8_value=round(scale*(feature_float32_value-min)-127),其中,feature_float32_value用于表示映射前的float32人脸特征数据,round表示四舍五入。

可选地,feature_int8_value’=min(127,feature_int8_value)。

可选地,eature_int8_value’=max(-127,feature_int8_value)。

从而通过上述映射关系将float32空间内的人脸特征数据映射到int8空间中,实现了对float32人脸特征数据进行量化处理。

下面对本发明实施例的通过压缩后的人脸特征数据与存储的目标人脸特征数据进行比对的方法进行介绍。

图6是根据本发明实施例的一种人脸特征数据比对的方法的流程图。如图6所示,该方法包括以下步骤:

步骤s601,获取压缩后的人脸特征数据与存储的目标人脸特征数据之间的点乘结果。

该实施例的压缩后的人脸特征数据与存储的目标人脸特征数据之间的点乘结果的数据类型均为int8。

步骤s602,将点乘结果映射回float32空间中,得到相似度。

该实施例可以用压缩后的人脸特征数据与存储的目标人脸特征数据之间的点乘结果与scale之间的商的平方映,将点乘结果映射回float32空间射中,将得到的值确定为压缩后的人脸特征数据与存储的目标人脸特征数据之间的相似度。

步骤s603,判断相似度是否大于目标阈值。

步骤s604,参与比对的两个人脸特征数据对应的人脸来自于一个人。

在判断相似度是否大于目标阈值之后,如果判断出相似度小于目标阈值,则确定参与比对的两个人脸特征数据对应的人脸来自于一个人。

步骤s605,参与比对的两个人脸特征数据对应的人脸来自于非同人。

在判断相似度是否大于目标阈值之后,如果判断出相似度不大于目标阈值,则确定参与比对的两个人脸特征数据对应的人脸来自于非同人。

图7是根据本发明实施例一种基于量化的人脸特征压缩的示意图。如图7所示,基于量化的人脸特征压缩包括估算量化区间阶段、特征量化阶段和特征比对阶段。可选地,在估算量化区间阶段,通过人脸检测网络模型对输入的百万级人脸图像进行人脸检测,得到人脸检测结果,再通过人脸配准网络模型根据人脸检测结果进行配准,根据检配准结果将人脸对齐并抠成248*248的图像,然后将抠好的人脸图像输入人脸识别模型,该人脸识别模型为一个卷积神经网络,可以将一张248*248的人脸图像转换百万级人脸特征,比如,转换为一组1024维的float32特征,该特征可以用于人脸核身与人脸检索应用场景中的人脸比对。

在该实施例中,归一化特征使每个人脸特征数据的模长为1,这一步的作用是确保在float32特征量化为int8特征之后能够在int8内直接计算cos距离并映射回float空间。具体做法可以为对人脸特征数据的各维人脸特征数据的平方值求和并开根得到现有模长,之后对于原特征的每个维度上的人脸特征数据除以该模长,得到归一化后的特征。

基于上述归一化的特征得出一个上界max与下界min,使99.8%的特征数据落在上界与下界之间,同时上界与下界对称即-max=min,从而确定量化区间,使尽可能多的值落在量化区间之中。

在特征量化阶段,对于需要压缩的float32特征数据,其从float32空间到int8空间的映射关系可以为:scale=254/(max-min);

映射后的人脸特征数据feature_int8_value=round(scale*(feature_float32_value-min)-127),其中,feature_float32_value用于表示映射前的float32人脸特征数据,round表示四舍五入。

可选地,feature_int8_value’=min(127,feature_int8_value)。

可选地,eature_int8_value’=max(-127,feature_int8_value)。

从而通过上述映射关系,将需要压缩的float32特征数据,进行特征量化处理,得到压缩后的int8特征数据。

在特征比对阶段,求取比对特征的内积,将比对特征的内机映射回float32空间,得到比对距离,该比对距离用于指示比对特征的相似程度。可选地,float32空间中的比对距离可以用int8空间中两个人脸特征数据的点乘结果除以scale的平方映射得到。在映射完成后,如果比对距离如果高于判断阈值,则判定参与比对的两个人脸特征数据对应的人脸来自于一个人,否则参与比对的两个人脸特征数据对应的人脸来自于非同人。

本发明实施例的应用环境可以但不限于参照上述实施例中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述人脸特征的处理方法的一种可选的具体应用。

图8是根据本发明实施例的一种人脸核身的场景示意图。如图8所示,该实施例可以通过终端对待识别人脸对象进行检测,比如,通过终端对输入的待识别人脸对象的图像进行人脸检测,得到人脸图像,在人脸图像中准确定位到人脸的位置,根据得到的人脸检测结果进行人脸特征点的检测与定位,比如,在人脸上找到眼睛、鼻子、嘴巴等特征的位置,进而对齐人脸并抠图,最后从抠好的人脸图像中识别出1024维的float32特征数据,对1024维的float32特征数据基于量化区间进行量化处理,得到压缩后的人脸特征数据int8特征数据,可以获取压缩后的人脸特征数据与存储的目标人脸对象的目标人脸特征数据之间的相似度,其中,目标人脸对象可以为预先录入合法身份信息的人脸对象。

在获取压缩后的人脸特征数据与存储的目标人脸对象的目标人脸特征数据之间的相似度之后,如果相似度大于阈值,则确定待识别人脸对象为目标人脸对象,则待识别人脸对象所来自的人的身份是符合要求的,显示验证通过的结果,可选地,用户可以进一步选择执行下一步操作或者返回之前操作;如果相似度不大于阈值,则确定待识别人脸对象不为目标人脸对象,则待识别人脸对象所来自的人的身份不符合要求的,显示验证未通过的结果,用户可以进一步选择结束当前操作,或者返回之前操作重新进行验证,重新通过终端对输入的待识别人脸对象的图像进行人脸检测,重复执行上述方法,直至待识别人脸对象所来自的人的身份是符合要求的,显示验证通过的结果,或者在验证次数大于预定次数时,则结束人脸核身。

图9是根据本发明实施例的一种人脸检索的场景示意图。如图9所示,通过终端对待识别人脸对象进行检测,可以通过如图9所示的人脸识别方法识获取人脸图像的float32特征数据,并将float32特征数据进行量化处理,得到离散的int8特征数据。

该实施例预先在数据库中存储多个人脸对象的多组人脸特征数据,比如,存储a人脸对象的人脸特征数据、b人脸对象的人脸特征数据、c人脸对象的人脸特征数据。该多个人脸对象可以为预先向数据库录入身份信息的多张人脸。从多组人脸特征数据中对每组人脸特征数据进行遍历,将每次遍历到的一组人脸特征数据,确定为目标人脸特征数据,进而比对int8特征数据与每次遍历确定的目标人脸特征数据,以获取待识别人脸对象与多个人脸对象之间的相似度,得到多个相似度,比如,得到a相似度、b相似度和c相似度。其中,a相似度>b相似度>c相似度。

可选地,a相似度为96%,b相似度为89%,c相似度为82。判断多个相似度中的最大相似度是否大于阈值90%。比如,判断a相似度是否大于阈值。在a相似度大于阈值的情况下,确定待识别人脸对象和与a相似度对应的人脸对象来自同一人,可以将a人脸对象确定为对待识别人脸对象进行检索的检索结果,显示出检索出a的检索结果。用户可以进一步选择返回之前操作,或者执行下一步操作。

可选地,a相似度为70%,b相似度为65%,c相似度为55%,在最大相似度70%不大于阈值90%的情况下,则确定待识别人脸对象不为多个人脸对象中的任一人脸对象,则确定未对待识别人脸对象检索出与其相近的人脸对象。用户可以进一步选择返回之前操作,重新通过终端对输入的待识别人脸对象的图像进行人脸检测,重复执行上述方法,直至得到对待识别人脸对象进行检索的检索结果,或者在检索次数大于预定次数时,则结束人脸检索。

上述方法可以应用在所有人脸检索的场景,比如,建立嫌疑人库,根据当前获得的人脸图像在嫌疑人库中进行检索,如果可以检索出与其相近的人脸图像,则可以确定当前人脸图像所来自的人可能为犯罪者,如果未能检索出与其相近的人脸图像,则可以确定当前人脸图像来自的人可能不为犯罪者,从而有效地提升了人脸比对的效率。

该实施例通过上述方法实现了人脸检索,并且通过将为连续量的float32特征数据按照转化为离散量的float32特征数据,在降低了对人脸特征数据的存储压力的同时,降低了人脸检索的运算量,进而加快了人脸检索的速度。

需要说明的是,图8和图9所示的场景实施例仅为本发明实施例的一种举例,并不代表本发明实施例的应用场景仅为上述,任何可以基于量化的人脸特征压缩方法进行人脸比对的场景都在本发明实施例的范围之内,此处不再一一举例说明。

该实施例通过从百万级别的人脸图像抽取float32特征数据,并估算量化区间,对抽取的float32特征数据基于量化区间进行量化处理,得到压缩后的人脸特征数据,通过压缩后的人脸特征数据与存储的目标人脸特征数据进行比对,以确定参与比对的两个特征数据对应的人脸是否来自于一个人,无需重新训练深度网络,降低了对人脸特征数据进行处理的压力,同时压缩后人脸特征的效果基本无损,能够实现4倍的硬盘存储与内存占用压缩与1-4倍的检索加速。

根据本发明实施例的另一方面,还提供了一种用于实施上述人脸特征的处理方法的人脸特征的处理装置。图10是根据本发明实施例的一种人脸特征的处理装置的示意图。如图10所示,该人脸特征的处理装置100可以包括:第一提取单元10、第一处理单元20、转换单元30、第一获取单元40和第一确定单元50。

第一提取单元10,用于在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量。

第一处理单元20,用于对原始特征向量进行归一化处理,得到第一特征向量。

转换单元30,用于对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间。

第一获取单元40,用于获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度。

第一确定单元50,用于在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

可选地,该装置还包括:第二提取单元,用于在对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之前,分别在多个图像样本中对人脸对象进行特征提取,得到第一数据类型的多个特征向量样本;第二处理单元,用于对多个特征向量样本进行归一化处理;第二获取单元,用于获取归一化处理后的多个特征向量样本的第一数据区间;过滤单元,用于对第一数据区间进行过滤处理,得到关键区间;第二确定单元,用于基于关键区间确定第一类型转换关系。

可选地,第二确定单元包括:第一获取模块,用于获取关键区间的第一上界数据、关键区间的第一下界数据、第二数据区间的第二上界数据和第二数据区间的第二下界数据,其中,第二数据区间与第二数据类型相关联;第一确定模块,用于通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型。

可选地,转换单元包括:处理模块,用于通过目标模型对第一特征向量中的特征数据进行处理,得到输出结果;第二确定模块,用于在输出结果大于第二上界数据的情况下,将第二上界数据确定为第二特征向量的特征数据;在输出结果小于第二下界数据的情况下,将第二下界数据,确定为第二特征向量的特征数据;在输出结果大于等于第二下界数据且小于等于第二上界数据的情况下,将输出结果确定为第二特征向量的特征数据;通过第二特征向量的特征数据确定第二特征向量。

可选地,第二获取单元包括:第二获取模块,用于获取归一化处理后的每个特征向量样本在多个维度上的特征数据,得到多个特征数据;第三确定模块,用于确定与多个特征数据对应的第一数据区间。

需要说明的是,该实施例中的第一提取单元10可以用于执行本申请实施例中的步骤s202,该实施例中的第一处理单元20可以用于执行本申请实施例中的步骤s204,该实施例中的转换单元30可以用于执行本申请实施例中的步骤s206,该实施例中的第一获取单元40可以用于执行本申请实施例中的步骤s208,该实施例中的第一确定单元50可以用于执行本申请实施例中的步骤s210。

该实施例在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量,对归一化处理后的第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,第二特征向量所占的存储空间小于原始特征向量所占的存储空间,进而比对第二特征向量与预先存储的目标人脸对象的目标特征向量,在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,也就是说,将第一数据类型的原始特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,达到了对人脸特征数据进行压缩的目的,降低了对人脸特征进行存储的压力,进而在待识别人脸对象与目标人脸对象之间的相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象,避免了在对人脸特征进行处理时,由于特征维度的切换需要重新训练模型导致的成本大的问题,实现了降低对人脸特征进行处理的成本的技术效果,进而解决了相关技术中对人脸特征进行处理的成本大的技术问题。

此处需要说明的是,上述单元和模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述单元和模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。

根据本发明实施例的又一方面,还提供了一种用于实施上述人脸特征的处理方法的电子装置。

图11是根据本发明实施例的一种电子装置的结构框图。如图11所示,该电子装置包括存储器1102和处理器1104,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,上述处理器1104可以被设置为通过计算机程序执行以下步骤:

s1,在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量;

s2,对原始特征向量进行归一化处理,得到第一特征向量;

s3,对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间;

s4,获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度;

s5,在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

可选地,本领域普通技术人员可以理解,图11所示的结构仅为示意,电子装置也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobileinternetdevices,mid)、pad等终端设备。图11其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图11中所示更多或者更少的组件(如网络接口等),或者具有与图11所示不同的配置。

其中,存储器1102可用于存储软件程序以及模块,如本发明实施例中的人脸特征的处理方法和装置对应的程序指令/模块,处理器1104通过运行存储在存储器1102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的人脸特征的处理方法。存储器1102可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1102可进一步包括相对于处理器1104远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1102具体可以但不限于用于存储提取的识别人脸对象的人脸特征数据等信息。作为一种示例,如图11所示,上述存储器1102中可以但不限于包括上述人脸特征的处理装置100中的第一提取单元10、第一处理单元20、转换单元30、第一获取单元40和第一确定单元50。此外,还可以包括但不限于上述人脸特征的处理装置中的其他模块单元,本示例中不再赘述。

上述的传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1106包括一个网络适配器(networkinterfacecontroller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1106为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

此外,上述电子装置还包括:显示器1108,用于显示上述目标代码在第一目标函数中的执行状态;连接总线1110,用于连接上述电子装置中的各个模块部件。

根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,在目标图像中对待识别人脸对象进行特征提取,得到第一数据类型的原始特征向量;

s2,对原始特征向量进行归一化处理,得到第一特征向量;

s3,对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量,其中,第二特征向量所占的存储空间小于原始特征向量所占的存储空间;

s4,获取预先存储的目标人脸对象的目标特征向量,且比对第二特征向量与目标特征向量,以获取待识别人脸对象与目标人脸对象之间的相似度;

s5,在相似度大于第一目标阈值的情况下,确定待识别人脸对象为目标人脸对象。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,在对第一特征向量按照第一类型转换关系进行转换处理,得到第二数据类型的第二特征向量之前,分别在多个图像样本中对人脸对象进行特征提取,得到第一数据类型的多个特征向量样本;

s2,对多个特征向量样本进行归一化处理;

s3,获取归一化处理后的多个特征向量样本的第一数据区间;

s4,对第一数据区间进行过滤处理,得到关键区间;基于关键区间确定第一类型转换关系。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取关键区间的第一上界数据、关键区间的第一下界数据、第二数据区间的第二上界数据和第二数据区间的第二下界数据,其中,第二数据区间与第二数据类型相关联;

s2,通过第一上界数据、第一下界数据、第二上界数据和第二下界数据,确定用于指示第一类型转换关系的目标模型。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,通过目标模型对第一特征向量中的特征数据进行处理,得到输出结果;

s2,在输出结果大于第二上界数据的情况下,将第二上界数据确定为第二特征向量的特征数据;

s3,在输出结果小于第二下界数据的情况下,将第二下界数据,确定为第二特征向量的特征数据;

s4,在输出结果大于等于第二下界数据且小于等于第二上界数据的情况下,将输出结果确定为第二特征向量的特征数据;

s5,通过第二特征向量的特征数据确定第二特征向量。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取归一化处理后的每个特征向量样本在多个维度上的特征数据,得到多个特征数据;

s2,确定与多个特征数据对应的第一数据区间。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

从第一数据区间中,过滤掉大于第一特征数据且小于第二特征数据的特征数据,得到关键区间,其中,关键区间中的特征数据占第一数据区间中的特征数据的比例,大于第二目标阈值。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取预先存储的多个预定人脸对象的特征向量,其中,每个预定人脸对象的特征向量为第二数据类型的归一化的特征向量;

s2,将遍历到的一个预定人脸对象的特征向量,确定为目标人脸对象的目标特征向量。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取第二特征向量和第二数据类型的目标特征向量之间的第一余弦距离;

s2,对第一余弦距离按照第二类型转换关系进行转换处理,得到第一数据类型的第二余弦距离;

s3,将第二余弦距离确定为相似度。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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