人脸识别方法、装置、计算机可读存储介质与处理器
文献发布时间:2023-06-19 13:46:35
技术领域
本发明涉及人脸识别领域,具体而言,涉及一种人脸识别方法、装置、计算机可读存储介质与处理器。
背景技术
当前,人脸识别技术已广泛应用在支付、安防、考勤等领域。随着使用场景的扩充和人脸数据量的增大,大数据量下人脸识别的速度需求也越来越高。
目前的人脸识别技术通常会在获取人脸图像后,对整个人脸数据库进行匹配。排除匹配分数落在置信阈值外的人脸,然后按照人脸图片的相似程度对匹配分数落在置信阈值内的人脸图像进行排序,给出人脸识别分析结果。若数据量很大,则匹配的时间也会很长,这就会给用户的实际应用带来不好的体验。为了避免该问题,需要按照一定的规则对人脸数据库进行排序,使人脸能较早的匹配到数据库中对应的数据,从而减少匹配的次数,提高识别速度。
现有技术中,有些是通过人脸外的用户特征来对数据库重新排序,比如,从用户活跃度角度,降序排列数据库;从时间角度,利用用户刷脸的时间习惯,在特定时间内对数据库重排。但还有些通过对属性特征的简单组合来对数据库进行重新排序,比如,在匹配时,排除落在组合分类之外的数据,以减少数据量。上述方法,虽然提高了分类的速度,但这些方法整体分类能力较弱,且稳定性不佳。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种人脸识别方法、装置、计算机可读存储介质与处理器,以至少解决相关技术中人脸识别速度较慢、稳定性较差的技术问题。
根据本发明实施例的一个方面,提供了一种人脸识别方法,包括:对第一人脸图像的属性特征数据进行编码,得到所述第一人脸图像的人脸属性编码,其中,所述第一人脸图像为待进行人脸识别的图像;确定所述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离;基于所述预定距离确定所述预定存储介质中的多个第二人脸图像,其中,所述多个第二人脸图像为预先存储于所述预定存储介质并用于辅助人脸匹配的图像;确定所述多个第二人脸图像中与所述第一人脸图像的相似度最大的人脸图像为目标人脸图像;基于所述目标人脸图像得到所述第一人脸图像的识别结果。
可选地,对第一人脸图像的属性特征数据进行编码,得到所述第一人脸图像的人脸属性编码,包括:采集所述第一人脸图像;对所述第一人脸图像进行分析,得到所述属性特征数据;对所述属性特征数据进行编码,得到所述第一人脸图像的人脸属性编码。
可选地,对所述第一人脸图像进行分析,得到所述属性特征数据,包括:将所述第一人脸图像输入人脸属性分析模型,其中,所述人脸属性分析模型为预先使用多组训练数据通过机器学习训练得到的,所述多组训练数据中的每一组训练数据均包括:人脸图像以及带有属性标注的人脸图像;获取所述人脸属性分析模型的输出结果;基于所述输出结果得到所述属性特征数据。
可选地,在将所述第一人脸图像输入人脸属性分析模型之前,所述方法还包括:采集所述人脸图像;基于属性特征表对所述人脸图像进行标注,得到所述带有属性标注的人脸图像,其中,所述属性特征表基于属性特征分布状态生成;对第一数量的所述人脸图像以及所述第一数量的所述带有属性标注的人脸图像进行训练,得到所述人脸属性分析模型。
可选地,所述方法还包括:利用除所述第一数量的人脸图像以及除所述第一数量的带有标注的人脸图像对所述人脸属性分析模型进行测试。
可选地,确定所述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离,包括:获取所述预定存储介质中的每一个预定编码;确定所述人脸属性编码分别与所述每一个预定编码之间的预定距离。
可选地,基于所述预定距离确定所述预定存储介质中的多个第二人脸图像,包括:获取距离阈值;将所述预定距离分别与所述距离阈值进行比对,得到第一比对结果;基于所述第一比对结果过滤掉距离大于所述距离阈值的部分人脸图像,得到所述多个第二人脸图像。
可选地,确定所述多个第二人脸图像中与所述第一人脸图像的相似度最大的人脸图像为目标人脸图像,包括:将所述多个第二人脸图像以及所述第一人脸图像均进行分割,得到所述多个第二人脸图像中每一个人脸图像的多个人脸特征向量片段以及所述第一人脸图像的多个人脸特征向量片段;将所述每一个人脸图像的多个人脸特征向量片段与所述第一人脸图像的多个人脸特征向量片段进行比对,得到第二比对结果;基于所述第二比对结果过滤掉所述多个第二人脸图像中人脸特征向量片段与所述第一人脸图像的人脸特征向量片段的相似度不大于预设阈值的部分人脸图像,得到预定数量的第二人脸图像;确定所述预定数量的人脸图像中与所述第一人脸图像的相似度最大的人脸图像为所述目标人脸图像。
根据本发明实施例的另一方面,还提供了一种人脸识别装置,包括:编码单元,用于对第一人脸图像的属性特征数据进行编码,得到所述第一人脸图像的人脸属性编码,其中,所述第一人脸图像为待进行人脸识别的图像;第一确定单元,用于确定所述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离;第二确定单元,基于所述预定距离确定所述预定存储介质中的多个第二人脸图像,其中,所述多个第二人脸图像为预先存储于所述预定存储介质并用于辅助人脸匹配的图像;第三确定单元,用于确定所述多个第二人脸图像中与所述第一人脸图像的相似度最大的人脸图像为目标人脸图像;识别单元,用于基于所述目标人脸图像得到所述第一人脸图像的识别结果。
可选地,所述编码单元还包括采集模块、分析模块和编码模块,其中,所述采集模块用于采集所述第一人脸图像;所述分析模块用于对所述第一人脸图像进行分析,得到所述属性特征数据;所述编码模块用于对所述属性特征数据进行编码,得到所述第一人脸图像的人脸属性编码。
可选地,所述分析模块还包括输入子模块、获取子模块和生成子模块,其中,所述输入子模块用于将所述第一人脸图像输入人脸属性分析模型,其中,所述人脸属性分析模型为预先使用多组训练数据通过机器学习训练得到的,所述多组训练数据中的每一组训练数据均包括:人脸图像以及带有属性标注的人脸图像;所述获取子模块用于获取所述人脸属性分析模型的输出结果;所述生成子模块用于基于所述输出结果得到所述属性特征数据。
可选地,所述装置还包括采集单元、标注单元和训练单元,所述采集单元用于在将所述第一人脸图像输入人脸属性分析模型之前,采集所述人脸图像;所述标注单元用于基于属性特征表对所述人脸图像进行标注,得到所述带有属性标注的人脸图像,其中,所述属性特征表基于属性特征分布状态生成;所述训练单元用于对第一数量的所述人脸图像以及所述第一数量的所述带有属性标注的人脸图像进行训练,得到所述人脸属性分析模型。
可选地,所述装置还包括测试单元,用于利用除所述第一数量的人脸图像以及除所述第一数量的带有标注的人脸图像对所述人脸属性分析模型进行测试。
可选地,所述第一确定单元还包括第一获取模块和第一确定模块,其中,所述第一获取模块用于获取所述预定存储介质中的每一个预定编码;所述第一确定模块用于确定所述人脸属性编码分别与所述每一个预定编码之间的预定距离。
可选地,所述第二确定单元还包括第二获取模块、第一对比模块和第二过滤模块,其中,所述第二获取模块用于获取距离阈值;所述第一对比模块用于将所述预定距离分别与所述距离阈值进行比对,得到第一比对结果;所述第二过滤模块用于基于所述第一比对结果过滤掉距离大于所述距离阈值的部分人脸图像,得到所述多个第二人脸图像。
可选地,所述第三确定单元还包括分割模块、第二对比模块、第二过滤模块和第二确定模块,其中,所述分割模块用于将所述多个第二人脸图像以及所述第一人脸图像均进行分割,得到所述多个第二人脸图像中每一个人脸图像的多个人脸特征向量片段以及所述第一人脸图像的多个人脸特征向量片段;所述第二对比模块用于将所述每一个人脸图像的多个人脸特征向量片段与所述第一人脸图像的多个人脸特征向量片段进行比对,得到第二比对结果;所述第二过滤模块用于基于所述第二比对结果过滤掉所述多个第二人脸图像中人脸特征向量片段与所述第一人脸图像的人脸特征向量片段的相似度不大于预设阈值的部分人脸图像,得到预定数量的第二人脸图像;所述第二确定模块用于确定所述预定数量的人脸图像中与所述第一人脸图像的相似度最大的人脸图像为所述目标人脸图像。
根据本发明实施例的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行任意一种所述的人脸识别方法。
根据本发明实施例的再一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的人脸识别方法。
在本发明实施例中提供的人脸识别方法中,首先,对第一人脸图像的属性特征数据进行编码,得到第一人脸图像的人脸属性编码,然后,根据人脸属性编码与预定存储介质中的预定编码确定预定距离,之后,根据预定距离确定预定存储介质中的多个第二人脸图像,最后,将多个第二人脸图像中与第一人脸图像的相似度最大的人脸图像确定为目标人脸图像,得到人脸图像的识别结果。在该方案中,根据人脸属性编码与预定存储介质中的预定编码确定预定距离,根据预定距离确定预定存储介质中的多个第二人脸图像,这样保证了在人脸识别的过程中可以优先找到相似的数据,减少匹配的次数,提高了人脸识别的速度,后续将多个第二人脸图像中的与第一人脸图像的相似度最大的人脸图像确定为目标人脸图像,这样保证了人脸识别的稳定性较高,从而解决了相关技术中人脸识别速度较慢、稳定性较差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的人脸识别方法的流程图;
图2是根据本发明实施例的一种可选的人脸属性分析的流程图;
图3是根据本发明实施例的一种可选的训练人脸属性分析模型的流程图;
图4是根据本发明实施例的一种可选的人脸识别的流程图;
图5是根据本发明实施例的人脸识别装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
针对上述技术问题,在本发明中,发明人根据实际使用人群,进行人脸属性特征筛选。对实际使用人群进行数据统计和分析,研究人群的属性分布,使用主成分分析法排除在此群体中分类能力较差的属性。将其余属性汇总,建立人脸属性表,用于人脸属性特征标注。根据实际使用人群的人脸属性表标注训练数据,训练得到人脸识别与属性分析神经网络模型。通过训练好的模型,获取到人脸属性数据,生成一串对应的二进制特征编码,用以表示人脸的属性特征表。利用人脸属性编码,在人脸识别前先进行特征编码相似度分析,按照相似度降序排列,对数据库中的人脸数据进行匹配,匹配成功则中止匹配。这一方法使人脸优先匹配到相似的匹配数据,减少了人脸匹配的次数,从而提升了人脸匹配的速度。由于利用人脸的属性编码,而非属性特征的简单组合,改变人脸匹配的顺序,而不将任何匹配数据剔除。
通过上述方式,在大数据量人脸匹配过程中,通过利用人脸属性特征的特征编码,对匹配数据进行排序,使人脸优先匹配到相似的匹配数据,减少了人脸匹配的次数,从而提升了人脸匹配的速度。利用人脸的属性编码,而非属性特征的简单组合,改变人脸匹配的顺序,而不将任何匹配数据剔除。本方法具有较好的稳定性,既能提升分类的速度,又能保证匹配的稳定性,可适用于大部分使用场合。
下面结合具体实施例进行详细说明。
实施例1
根据本发明实施例,提供了一种人脸识别方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的人脸识别方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,对第一人脸图像的属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码,其中,上述第一人脸图像为待进行人脸识别的图像。
步骤S104,确定上述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离。
可选地,上述预定存储介质为存储预定编码的存储介质,上述预定存储介质具体可以数据库,但并不限于数据库,还可以为其他的存储介质;上述预定编码为预先存储在预定存储介质中的多个人脸属性编码,上述预定距离包括但不限于:余弦距离、Jaccard距离、Levenshtein距离、汉明距离等。
步骤S106,基于上述预定距离确定上述预定存储介质中的多个第二人脸图像,其中,上述多个第二人脸图像为预先存储于上述预定存储介质并用于辅助人脸匹配的图像。
步骤S108,确定上述多个第二人脸图像中与上述第一人脸图像的相似度最大的人脸图像为目标人脸图像。
步骤S110,基于上述目标人脸图像得到上述第一人脸图像的识别结果。
由上可知,本发明实施例中,首先,对第一人脸图像的属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码,然后,根据上述人脸属性编码与预定存储介质中的预定编码确定预定距离,之后,根据预定距离确定预定存储介质中的多个第二人脸图像,最后,将多个第二人脸图像中与上述第一人脸图像的相似度最大的人脸图像确定为目标人脸图像,得到上述人脸图像的识别结果。在该方案中,根据人脸属性编码与预定存储介质中的预定编码确定预定距离,根据预定距离确定预定存储介质中的多个第二人脸图像,这样保证了在人脸识别的过程中可以优先找到相似的数据,减少匹配的次数,提高了人脸识别的速度,后续将多个第二人脸图像中的与第一人脸图像的相似度最大的人脸图像确定为目标人脸图像,这样保证了人脸识别的稳定性较高,从而解决了相关技术中人脸识别速度较慢、稳定性较差的技术问题。
作为一种可选的实施例中,在上述步骤S102中,对第一人脸图像的属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码,包括:采集上述第一人脸图像;对上述第一人脸图像进行分析,得到上述属性特征数据;对上述属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码。在该方案中,对采集的第一人脸图像进行分析,得到属性特征数据,后续对属性特征数据进行编码,这样保证了可以较为高效准确地得到人脸属性编码。
在上述的可选的实施例中,通常使用人脸常用且鲁棒性较高的12个属性特征作为属性特征数据,具体分别为:是否男性、圆脸、小眼睛、年轻、发际线高、有胡须、厚嘴唇、大鼻子、高颧骨、有眼袋、双下巴和浓眉。
具体地,如图2所示,首先,采集第一人脸图像,并进行人脸检测。若判断第一人脸图像中有人脸,则获取人脸位置坐标,对坐标范围内的人脸,进行属性分析,得到人脸的属性特征数据。在得到人脸的属性特征数据后,对属性特征数据进行编码,得到人脸属性编码,得到的人脸属性编码均为二分类后的结果,因此将会根据属性特征编码,得到一串长度小于等于12的二进制编码,每一位依次对应了这张人脸的一个属性。例如,使用12种属性特征数据,对一名属性为:男性、圆脸、大眼睛、年轻、发际线低、无胡须、厚嘴唇、大鼻子、低颧骨、无眼袋、双下巴、非浓眉的用户进行编码,生成的编码即为:110100110010。最后,将得到的人脸属性编码保存至数据库。
为了较为高效和准确地得到属性特征数据,作为一种可选的实施例中,对上述第一人脸图像进行分析,得到上述属性特征数据,包括:将上述第一人脸图像输入人脸属性分析模型,其中,上述人脸属性分析模型为预先使用多组训练数据通过机器学习训练得到的,上述多组训练数据中的每一组训练数据均包括:人脸图像以及带有属性标注的人脸图像;获取上述人脸属性分析模型的输出结果;基于上述输出结果得到上述属性特征数据。
在该实施例中,上述人脸属性分析模型为预先通过机器学习对多组数据进行训练得到的,在具体的训练过程中,直到得到的人脸分析模型可以匹配出人脸并识别出人脸属性特征数据,且模型具有理想的准确性为止。当然,在实际的应用过程中,人脸属性分析模型可以为能够进行人脸识别和人脸属性分析能力的多任务深度卷积神经网络分类器,但并不限于多任务深度卷积神经网络分类器,还可以为其他的能够实现人脸识别和人脸属性分析能力的分类器。
作为一种可选的实施例中,在将上述第一人脸图像输入人脸属性分析模型之前,该人脸识别方法还包括:采集上述人脸图像;基于属性特征表对上述人脸图像进行标注,得到上述带有属性标注的人脸图像,其中,上述属性特征表基于属性特征分布状态生成;对第一数量的上述人脸图像以及上述第一数量的上述带有属性标注的人脸图像进行训练,得到上述人脸属性分析模型。在该实施例中,基于属性特征表对采集到的人脸图像进行标注,后续对第一数量的上述人脸图像以及上述第一数量的上述带有属性标注的人脸图像进行训练,使得由训练得出的结果能够与带有属性标注的人脸图像进行对比,可以根据对比结果进一步地对人脸属性分析模型进行调整,进一步地保证了可以较为快速地得到准确性较高的人脸属性分析模型。
在该实施例中,对实际使用人群进行人脸属性特征分布统计和分析,获取研究人群的属性特征数据。然后使用主成分分析法,对人群的人脸属性特征进行降维,剔除分类性能较差的属性特征,从而减小属性匹配数据量,提高匹配速度。例如:在敬老院中,使用者基本为长者,则年龄属性会被剔除;在女子学校中,使用者基本为女性,则性别属性会被剔除。
具体地,在实际的应用过程中,如图3所示,首先,根据特征分布建立属性特征表,用于人脸属性特征标注。在采集人脸训练数据、匹配数据(可使用例如CelebA的人脸属性数据集)后,根据属性特征表对所有人脸图像进行属性标注。其次,建立人脸属性分析模型,之后,使用第一数量的上述人脸图像以及上述第一数量的上述带有属性标注的人脸图像进行训练,得到上述人脸属性分析模型。
为了较为快速地验证人脸属性分析模型的准确性,作为一种可选的实施例中,该人脸识别方法还包括:利用除上述第一数量的人脸图像以及除上述第一数量的带有标注的人脸图像对上述人脸属性分析模型进行测试。
具体地,在实际的应用过程中,上述第一数量可以称作为训练样本,除第一数量外的人脸图像可以称作为测试样本。在上述的实施例中,可以按照4:1的比例分配分布训练样本和测试样本,构建适用于本任务的人脸数据集。当然,还可以根据实际的数据量来分配训练样本和测试样本的比例,当数据量很小时,可使用7:3来分配训练样本和测试样本,或使用6:2:2来分配训练样本、验证样本和测试样本;当数据量非常大时,可使用98:1:1来分配训练样本、验证样本和测试样本。
作为一种可选的实施例中,上述步骤S104中,确定上述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离,包括:获取上述预定存储介质中的每一个预定编码;确定上述人脸属性编码分别与上述每一个预定编码之间的预定距离。在该实施例中,首先获取预定存储介质中的每一个预定编码,然后根据人脸属性编码和每一个预定编码确定预定距离,这样保证了可以较为高效准确地得到预定距离,后续根据得到的预定距离确定预定存储介质中的多个第二人脸图像,进一步地保证了可以较为高效准确地确定出多个第二人脸图像。
具体地,如图4所示,在实际进行人脸识别时,首先对人脸检测,若判断图像中有人脸,获取人脸位置坐标。对于处于坐标范围内的人脸,使用人脸属性分析模块模型进行属性分析,得到属性特征数据,并对得到属性特征数据进行编码,得到人脸属性编码。然后根据人脸属性编码与预定存储介质中的预定编码确定预定距离。当求得的预定距离越小,证明人脸属性编码与预定编码越相似,也就意味着两张人脸的属性越接近。之后,按照预定距离对预定存储介质中的多张人脸图像进行排序,得到多张第二人脸图像,最后,将第一人脸图像与多张第二人脸图像进行匹配。
为了更加高效地得到多个第二人脸图像,作为一种可选的实施例中,上述步骤S106中,基于上述预定距离确定上述预定存储介质中的多个第二人脸图像,包括:获取距离阈值;将上述预定距离分别与上述距离阈值进行比对,得到第一比对结果;基于上述第一比对结果过滤掉距离大于上述距离阈值的部分人脸图像,得到上述多个第二人脸图像。
具体地,在实际的应用过程中,上述预定距离可以为余弦距离,上述预定存储介质可以为数据库。在确定多个第二人脸图像的过程中,首先将数据库中的多个第二人脸图像的人脸属性编码,按余弦距离从小到大排序,并设定一定的阈值,将余弦距离大于此阈值的多个第二人脸图像的人脸属性编码对应的人脸数据排除,不参与后续的人脸识别,则其他的多个第二人脸图像按照排序顺序,依次与检测的第一人脸图像进行特征匹配。
作为一种可选的实施例中,上述步骤S108中,确定上述多个第二人脸图像中与上述第一人脸图像的相似度最大的人脸图像为目标人脸图像,包括:将上述多个第二人脸图像以及上述第一人脸图像均进行分割,得到上述多个第二人脸图像中每一个人脸图像的多个人脸特征向量片段以及上述第一人脸图像的多个人脸特征向量片段;将上述每一个人脸图像的多个人脸特征向量片段与上述第一人脸图像的多个人脸特征向量片段进行比对,得到第二比对结果;基于上述第二比对结果过滤掉上述多个第二人脸图像中人脸特征向量片段与上述第一人脸图像的人脸特征向量片段的相似度不大于预设阈值的部分人脸图像,得到预定数量的第二人脸图像;确定上述预定数量的人脸图像中与上述第一人脸图像的相似度最大的人脸图像为上述目标人脸图像。在该方案中,将上述预定数量的人脸图像与上述第一人脸图像的相似度最大的人脸图像确定为上述目标人脸图像,这样保证了可以较为高效地确定上述目标人脸图像,后续根据确定出的上述目标人脸图像,确定识别结果,进一步地保证了可以较为高效地得到识别结果。
在该实施例中,在匹配时,对检测出的第一人脸图像与所有筛选出的多个第二人脸图像的512维特征向量进行划分,得到等长的8个片段,从前到后依次对比该8个片段的相似性,并在每个片段对比时,按照预设的阈值淘汰差距大的第二人脸图像(通常在前两个片段对比后,就会淘汰掉绝大多数第二人脸图像),在对比完8个片段后,将大于预设阈值且相似度最高的人脸图像作为分析结果,返回对应的人脸数据;若没有匹配到的数据,则表明识别失败。
由上可知,通过本发明实施例提供的人脸识别方法,有效解决了以下技术问题:1)大数据量下,人脸匹配的速度慢。数据量越大,人脸匹配需要遍历的数据越多,导致了匹配时间长、速度慢,带给用户不好的使用体验;2)部分方法人脸匹配的稳定性不佳。利用人脸以外的特征进行数据库重排,缺乏稳定性和科学性,并不能适用于大部分的使用场合。同时实现了以下有益效果:1)使用特征筛选,通过主成分分析法进行特征降维,使用人脸常用且鲁棒性高的属性特征进行分类,提高人脸匹配的稳定性;2)通过使用属性编码,优化了人脸的匹配顺序,减少了人脸匹配的次数,从而提高了人脸匹配的速度。
实施例2
根据本发明实施例的另一方面,还提供了一种人脸识别装置,图5是根据本发明实施例的人脸识别装置的示意图,如图5所示,该人脸识别装置包括:编码单元50第一确定单元52、第二确定单元54、第三确定单元56以及识别单元58。下面对该人脸识别装置进行说明。
编码单元50,用于对第一人脸图像的属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码,其中,上述第一人脸图像为待进行人脸识别的图像;
第一确定单元52,用于确定上述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离;
第二确定单元54,基于上述预定距离确定上述预定存储介质中的多个第二人脸图像,其中,上述多个第二人脸图像为预先存储于上述预定存储介质并用于辅助人脸匹配的图像;
第三确定单元56,用于确定上述多个第二人脸图像中与上述第一人脸图像的相似度最大的人脸图像为目标人脸图像;
识别单元58,用于基于上述目标人脸图像得到上述第一人脸图像的识别结果。
此处需要说明的是,上述编码单元50第一确定单元52、第二确定单元54、第三确定单元56以及识别单元58对应于实施例1中的步骤S102至S110,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
由上可知,在本发明实施例中,可以利用编码单元50对第一人脸图像的属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码,其中,上述第一人脸图像为待进行人脸识别的图像;然后利用第一确定单元52确定上述人脸属性编码分别与预定存储介质中的每一个预定编码之间的预定距离;接着利用第二确定单元54上述预定距离确定上述预定存储介质中的多个第二人脸图像,其中,上述多个第二人脸图像为预先存储于上述预定存储介质并用于辅助人脸匹配的图像;再利用第三确定单元56确定上述多个第二人脸图像中与上述第一人脸图像的相似度最大的人脸图像为目标人脸图像;最后利用识别单元58基于上述目标人脸图像得到上述第一人脸图像的识别结果。在该方案中,根据人脸属性编码与预定存储介质中的预定编码确定预定距离,根据预定距离确定预定存储介质中的多个第二人脸图像,这样保证了在人脸识别的过程中可以优先找到相似的数据,减少匹配的次数,提高了人脸识别的速度,后续将多个第二人脸图像中的与第一人脸图像的相似度最大的人脸图像确定为目标人脸图像,这样保证了人脸识别的稳定性较高,进而解决了相关技术中人脸识别速度较慢、稳定性较差的技术问题。
可选地,上述编码单元还包括采集模块、分析模块和编码模块,其中,上述采集模块用于采集上述第一人脸图像;上述分析模块用于对上述第一人脸图像进行分析,得到上述属性特征数据;上述编码模块用于对上述属性特征数据进行编码,得到上述第一人脸图像的人脸属性编码。
可选地,上述分析模块还包括输入子模块、获取子模块和生成子模块,其中,上述输入子模块用于将上述第一人脸图像输入人脸属性分析模型,其中,上述人脸属性分析模型为预先使用多组训练数据通过机器学习训练得到的,上述多组训练数据中的每一组训练数据均包括:人脸图像以及带有属性标注的人脸图像;上述获取子模块用于获取上述人脸属性分析模型的输出结果;上述生成子模块用于基于上述输出结果得到上述属性特征数据。
可选地,上述装置还包括采集单元、标注单元和训练单元,上述采集单元用于在将上述第一人脸图像输入人脸属性分析模型之前,采集上述人脸图像;上述标注单元用于基于属性特征表对上述人脸图像进行标注,得到上述带有属性标注的人脸图像,其中,上述属性特征表基于属性特征分布状态生成;上述训练单元用于对第一数量的上述人脸图像以及上述第一数量的上述带有属性标注的人脸图像进行训练,得到上述人脸属性分析模型。
可选地,上述装置还包括测试单元,用于利用除上述第一数量的人脸图像以及除上述第一数量的带有标注的人脸图像对上述人脸属性分析模型进行测试。
可选地,上述第一确定单元还包括第一获取模块和第一确定模块,其中,上述第一获取模块用于获取上述预定存储介质中的每一个预定编码;上述第一确定模块用于确定上述人脸属性编码分别与上述每一个预定编码之间的预定距离。
可选地,上述第二确定单元还包括第二获取模块、第一对比模块和第二过滤模块,其中,上述第二获取模块用于获取距离阈值;上述第一对比模块用于将上述预定距离分别与上述距离阈值进行比对,得到第一比对结果;上述第二过滤模块用于基于上述第一比对结果过滤掉距离大于上述距离阈值的部分人脸图像,得到上述多个第二人脸图像。
可选地,上述第三确定单元还包括分割模块、第二对比模块、第二过滤模块和第二确定模块,其中,上述分割模块用于将上述多个第二人脸图像以及上述第一人脸图像均进行分割,得到上述多个第二人脸图像中每一个人脸图像的多个人脸特征向量片段以及上述第一人脸图像的多个人脸特征向量片段;上述第二对比模块用于将上述每一个人脸图像的多个人脸特征向量片段与上述第一人脸图像的多个人脸特征向量片段进行比对,得到第二比对结果;上述第二过滤模块用于基于上述第二比对结果过滤掉上述多个第二人脸图像中人脸特征向量片段与上述第一人脸图像的人脸特征向量片段的相似度不大于预设阈值的部分人脸图像,得到预定数量的第二人脸图像;上述第二确定模块用于确定上述预定数量的人脸图像中与上述第一人脸图像的相似度最大的人脸图像为上述目标人脸图像。
实施例3
根据本发明实施例的另外一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序,其中,在计算机程序被处理器运行时控制计算机存储介质所在设备执行上述中的任一种的人脸识别方法。
实施例4
根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行计算机程序,其中,计算机程序运行时执行上述中的任一种的人脸识别方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
- 人脸识别方法、装置、计算机可读存储介质与处理器
- 人脸年龄段识别方法及装置、计算机装置及可读存储介质