本申请涉及人脸识别技术领域,具体涉及一种人脸检索方法及相关产品。
背景技术:
人脸识别是一项热门的计算机技术研究领域,它属于生物特征识别技术,是对生物体(一般特指人)本身的生物特征来区分生物体个体是指能够识别或验证图像或视频中的主体的身份的技术。首个人脸识别算法诞生于七十年代初。自那以后,它们的准确度已经大幅提升。人脸识别的潜在应用范围更广,因为它也可被部署在用户不期望与系统合作的环境中,比如监控系统中。人脸识别的其它常见应用还包括访问控制、欺诈检测、身份认证和社交媒体。
当被部署在无约束条件的环境中时,由于人脸图像在现实世界中的呈现具有高度的可变性(这类人脸图像通常被称为自然人脸),所以人脸识别也是最有挑战性的生物识别方法之一。由于人脸图像可变的地方包括头部姿势、年龄、遮挡、光照条件和人脸表情,导致了人脸识别的准确率也无法达到很高,因此,如何提升人脸检索精度的问题亟待解决。
技术实现要素:
本申请实施例提供了一种人脸检索方法及相关产品,能够提升人脸识别准确率。
第一方面,本申请实施例提供一种人脸检索方法,所述方法包括:
获取目标人脸图像;
采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出所述n个第二检索图像。
第二方面,本申请实施例提供了一种人脸检索装置,所述装置包括:
获取单元,用于获取目标人脸图像;
搜索单元,用于采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
第一选取单元,用于从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
运算单元,用于将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
第二选取单元,用于从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出单元,用于输出所述n个第二检索图像。
第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具备如下有益效果:
可以看出,本申请实施例中所描述的人脸检索方法及相关产品,获取目标人脸图像,采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p为大于1的整数,预设数据库中包括p个图像,从p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,q为小于p且大于1的整数,将q个第一检索图像、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,输出n个第二检索图像,如此,能够通过神经网络模型对第一次检索结果进行优化,有助于提升人脸检索精度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种人脸检索方法的流程示意图;
图1b是本申请实施例提供的一种循环神经网络rnn的结构示意图;
图2是本申请实施例提供的另一种人脸检索方法的流程示意图;
图3是本申请实施例提供的一种电子设备的结构示意图;
图4是本申请实施例提供的一种人脸检索装置的功能单元组成框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例所涉及到的电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备(智能手表、智能手环、无线耳机、增强现实/虚拟现实设备、智能眼镜)、服务器、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,ue),移动台(mobilestation,ms),终端设备(terminaldevice)等等。为方便描述,上面提到的设备统称为电子设备。
下面对本申请实施例进行详细介绍。
请参阅图1a,图1a是本申请实施例提供的一种人脸检索方法的流程示意图,如图所示,本人脸检索方法包括:
101、获取目标人脸图像。
其中,本申请实施例中,目标人脸图像可以为仅包括人脸区域的图像,或者,也可以为人的全身或者半身图像。当然,目标人脸图像也可以为目标对象戴墨镜或者口罩的图像,或者,目标人脸图像可以为多曝光或者暗环境下拍摄的人脸图像。
在一个可能的示例中,上述步骤101,获取目标人脸图像,可以包括如下步骤:
11、获取目标对象与摄像头之间的目标拍摄距离;
12、依据所述目标拍摄距离确定目标变焦参数;
13、获取目标环境参数;
14、确定与所述目标环境参数对应的目标拍摄参数;
15、依据所述目标变焦参数、所述目标拍摄参数进行拍摄,得到所述目标人脸图像。
其中,本申请实施例中,目标环境参数可以为以下至少一种:环境亮度、天气(如:暴雨、雾天、晴天、下雪天等等)、磁场干扰强度、光源数量等等,在此不做限定,拍摄参数可以为以下至少一种:曝光时长、感光度、白平衡参数、曝光补偿参数、去雾参数等等,在此不做限定。目标对象可以为人。具体实现中,电子设备可以获取目标对象与摄像头之间的目标拍摄距离,电子设备中可以预先存储拍摄距离与变焦参数之间的映射关系,进而,可以依据该映射关系确定目标环境参数对应的目标拍摄参数,电子设备还可以获取目标环境参数,电子设备中可以预先存储环境参数与拍摄参数之间的映射关系,进而,依据该映射关系确定目标环境参数对应的目标拍摄参数,进一步地,依据该目标变焦参数、目标拍摄参数进行拍摄,得到目标人脸图像。
102、采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像。
其中,上述预设算法可以为以下至少一种:汉明距离、欧式距离、余弦距离、结构相似性(structuralsimilarityindexmeasurement,ssim)等等,在此不做限定。电子设备中可以预先存储预设数据库,该预设数据库中可以存储大量图片,例如,电子设备可以连接多个摄像头,每一摄像头可以进行拍摄,得到大量图像,对这些图像进行人脸提取,得到大量人脸图像,由这些人脸图像构成该预设数据库。具体实现中,预设数据库中可以包括p个图像,p为大于1的整数,电子设备可以采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p个图像中每一图像对应一个相似度值。
在一个可能的示例中,上述步骤102,采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,可以包括如下步骤:
21、对所述目标人脸图像进行特征提取,得到第一特征集;
22、对所述预设数据库中每一图像进行图像分割,得到p个人脸区域图像;
23、对所述p个人脸区域图像中每一人脸区域图像进行特征提取,得到p个第二特征集;
24、计算所述第一特征集与所述p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离;
25、依据所述p个特征距离确定所述p个相似度值。
其中,电子设备可以对目标人脸图像进行特征提取,得到第一特征集,该特征提取具体的实现方式为以下至少一种:harris角点检测、尺度不变特征变换(scaleinvariantfeaturetransform,sift)、surf算法等等,在此不做限定。进一步地,电子设备还可以对预设数据库中每一图像进行图像分割,得到p个人脸区域图像,每一图像对应一个人脸区域图像,对p个人脸区域图像中的每一人脸区域图像进行特征提取,得到p个第二特征集,进而,可以计算第一特征集与p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离,电子设备中可以预先存储特征距离与相似度值之间的映射关系,进而,依据该映射关系可以确定p个特征距离中每一特征距离对应的相似度值,得到p个相似度值。
103、从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数。
其中,第一预设阈值可以由用户自行设置或者系统默认,电子设备可以从p个相似度值中选取大于第一预设阈值的q个相似度值,例如,先选取最大值,再选取次大值,以此类推,或者,电子设备可以将p个相似度值按照从大到小顺序进行排序,并从该p个相似度值中选取排在前面的一些相似度值,例如topq(100),得到q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,该q为小于p且大于1的整数。
104、将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像。
其中,上述预设神经网络模型可以为以下至少一种:卷积神经网络、循环神经网络(rnn,recurrentneuralnetworks)、deeplab算法等等,在此不做限定。具体实现中,电子设备可以将q个第一检索图像、目标人脸图像输入到预设神经网络模型进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,如此,相当于重新确定q个第一检索图像与目标人脸图像之间的相似度。
在一个可能的示例中,上述步骤104,将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,可以包括如下步骤:
41、获取所述q个第一检索图像中每一第一检索图像的标识信息,得到q个标识信息;
42、获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集;
43、将所述q个标识信息和所述q个特征集构建为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集;
44、将所述q个合并特征集、所述目标人脸图像输入到所述预设神经网络模型中进行运算,得到所述q个运算结果,每一合并特征集对应一个运算结果。
其中,上述标识信息可以为以下至少一种:第一检索图像的排序位置、匹配位置(如:图像中哪些特征点曾被预设算法匹配成功过)等等,在此不做限定。具体实现中,电子设备可以获取q个第一检索图像中每一第一检索图像中的标识信息,得到q个标识信息,以及可以获取q个第一检索图像中每一检索图像的特征集,得到q个特征集,该特征集可以包括特征点或者特征纹路。进一步地,可以将q个标识信息以及q个特征集构成为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集,进而,可以将q个合并特征集、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一合并特征集对应一个运算结果,运算结果即为相似度值。由于通过以上的监督式训练,进行了二次的监督式学习,可以充分利用到标签的信息,学习到更多的信息,因此在人脸识别的性能上会比之前的方法更优。
在一个可能的示例中,上述步骤42,获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集,可以包括如下步骤:
421、获取所述第一检索图像i中的所有特征点,得到m个特征点,所述第一检索图像i为所述q个第一检索图像中的任一第一检索图像,所述m为大于1的整数;
422、确定所述m个特征点中每一特征点的模,得到m个模;
423、确定所述m个特征点中每一特征点与所述目标人脸图像中相应特征点之间的最大比对值,得到m个最大比对值;
424、将所述m个模和所述m个最大比对值构成m个特征参数组,每一特征点对应一个特征参数组,每一特征参数组包括一个模和一个最大比对值;
425、从所述m个特征参数组中选取模处于第一预设范围,且最大比对值处于第二预设范围的目标特征参数组,得到k个目标特征参数组,所述k为小于所述m的正整数;
426、将所述k个目标特征参数组对应的特征点作为所述第一检索图像i的特征集。
其中,上述第一预设范围、第二预设范围均可以由用户自行设置或者系统默认。以第一检索图像i为例,该第一检索图像i为q个第一检索图像中的任一检索图像,电子设备可以获取该第一检索图像i中的所有特征点,得到m个特征点,进而,由于每一特征点均可以当作向量,即包括大小和方向,可以确定该m个特征点中每一特征点的模,得到m个模,每一特征点对应一个模,m为大于1的整数,进而,可以确定m个特征点中每一特征点与目标人脸图像中相应特征点之间的最大比对值,由于m个特征点中每一特征点均与目标人脸图像中每一特征点比对过,因此,目标人脸图像中有多少个特征点,则会得到多少个比对值,可以选取每一个特征点对应的最大比对值,可以将m个模和m个最大比对值构成m个特征参数组,每一特征点对应一个特征参数组,每一特征参数组包括一个模和一个最大比对值,从m个特征参数组中选取模处于第一预设范围且最大比对值处于第二预设范围的目标特征参数组,得到k个目标特征参数组,k为大于1且小于m的整数,进而,可以将k个目标特征参数组对应的特征点作为第一检索图像i的特征集,如此,可以筛选出稳健的特征点。
105、从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数。
其中,上述第二预设阈值可以由用户自行设置或者系统默认,具体实现中,电子设备可以从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并且获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,反之,如果q个运算结果中所有运算结果小于或等于第二预设阈值,则说明检索失败。
106、输出所述n个第二检索图像。
具体地,可以展示该n个第二检索图像,如按照运算结果由大到小顺序展示该n个第二检索图像。
具体实现中,由于传统的人脸识别方法是通过对图像中的人脸进行检测和截取、人脸部位的图像预处理、特征提取、相似度计算以及最终的分类来进行人脸识别的。传统的这种方法在很多场景的识别其实已经能够做到很好的分类,但还是有部分会有识别错误的存在。基于此,本申请实施例基于传统的人脸特征提取模型的特征输出,如提取top100相似的特征人脸,进行二次重排序,利用标签信息,使用rnn(recurrentneuralnetworks)网络结构进行建模,重新输出特征重要程度序列,使得人脸识别准确度进一步提升。由于本申请实施例着重优化了特征提取输出之后的重排序阶段,从而提高人脸识别技术的准确率。
上述本申请实施例所描述的人脸检索方法,具体如下:
首先,通过大量的有类别标记的人脸图片,训练提取人脸图片特征的网络模型,在实际使用阶段,将图像输入网络模型,提取图像的特征向量,然后与数据库中的人脸进行相似度比较,获取top100相似的人脸特征,每一人脸图像对应一个标识信息id,判断该id是否在top100的人脸中出现,如果出现则保存该top100的特征,并新建2个长度为100的列表,其中一个表l1记录匹配位置,将匹配的人脸位置记录为1,不匹配记为0.1。另外一个表l2记录欧式距离dn,n∈[1,100];反之,如果没有出现,则跳过。
其次,构建数据集模块:将上一步中的top100特征和对应的id特征保存,xq表示id的特征,xdn表示topn特征n∈[1,100],xq,dn表示id和topn特征的合并。
进一步地,通过在rnn中引入门控循环单元(gatedrecurrentunit,gru),即在rnn中加入该门控循环单元,防止梯度消失。输入组合特征xq,dn,经过rnn网络的前向预测,输出score(即相似度值),与标签dn*l1进行损失计算,反向传播,训练整个模型,rnn训练流程如下图1b所示,最后可以对rnn运算结果进行排序,以及从排序后的运算结果中选取大于第二预设阈值的运算结果对应的图像。
其中,通过以上的监督式训练,可以学习到内在的规律,通过score的大小代替原先欧式距离dn,这种重排序方法,相比起原先的方法(直接通过特征间的欧式距离,进而进行分类),进行了二次的监督式学习,可以充分利用到标签的信息,学习到更多的信息,因此在人脸识别的性能上会比之前的方法更优。
在一个可能的示例中,上述步骤101与步骤102之间还可以包括如下步骤:
a1、对所述目标人脸图像进行图像分割,得到人脸区域图像;
a2、对所述人脸区域图像进行特征点分析;
a3、将所述人脸区域图像划分为多个区域,每一区域的面积相等;
a4、确定所述多个区域中每一区域的特征点分布密度,得到多个特征点分布密度值;
a5、从所述多个特征点分布密度值中选取小于预设特征点分布密度值的特征点分布密度值,得到至少一个特征点分布密度值;
a6、按照预设的特征点分布密度值对应的图像增强参数之间的映射关系确定所述至少一个特征点分布密度值对应的至少一个目标图像增强参数,每一特征点分布密度值对应一个目标图像增强参数;
a7、依据所述至少一个目标图像增强参数对所述至少一个特征点分布密度值对应的区域进行图像增强处理,得到图像增强处理后的所述目标人脸图像。
具体实现中,预设特征点分布密度值可以由用户自行设置或者系统默认。电子设备可以对目标人脸图像进行图像分割,得到人脸区域图像,即仅包括人脸的图像,再对人脸区域图像进行特征点分析,将人脸区域图像划分为多个区域,每一区域的面积可相等,进一步地,可以确定多个区域中每一区域的特征点分布密度,得到多个特征点分布密度,从该多个特征点分布密度值中选取小于预设特征点分布密度值的特征点分布密度值,得到至少一个特征点分布密度值,电子设备中可以预先存储预设的特征点分布密度值对应的图像增强参数之间的映射关系,图像增强参数可以包括图像增强算法标识以及对应的控制参数,图像增强算法可以为以下至少一种:灰度拉伸、直方图均衡化、平滑处理、小波变换等等,在此不做限定,进而,可以依据该映射关系确定至少一个特征点分布密度值对应的至少一个目标图像增强参数,每一特征点分布密度值对应一个目标图像增强参数,依据至少一个目标图像增强参数对至少一个特征点分布密度值对应的区域进行图像增强处理,得到图像增强处理后的目标人脸图像,再将图像增强处理后的目标人脸图像应用于步骤102和步骤104,如此,可以针对性地对人脸图像进行图像增强处理,有助于提升人脸检索精度。
可以看出,本申请实施例中所描述的人脸检索方法,获取目标人脸图像,采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p为大于1的整数,预设数据库中包括p个图像,从p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,q为小于p且大于1的整数,将q个第一检索图像、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,输出n个第二检索图像,如此,能够通过神经网络模型对第一次检索结果进行优化,有助于提升人脸检索精度。
与上述图1a所示的实施例一致地,请参阅图2,图2是本申请实施例提供的一种人脸检索方法的流程示意图,如图所示,本人脸检索方法包括:
201、获取目标人脸图像。
202、获取身份验证信息。
其中,身份验证信息可以为以下至少一种:声纹信息、指纹信息、虹膜信息、字符串、图案、滑动轨迹等等,在此不做限定。
203、在所述身份验证信息被验证成功时,采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像。
204、从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数。
205、将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像。
206、从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数。
207、输出所述n个第二检索图像。
其中,上述步骤201-步骤207的具体描述可以参照上述图1a所描述的人脸检索方法的相应步骤,在此不再赘述。
可以看出,本申请实施例中所描述的人脸检索方法,获取目标人脸图像,获取身份验证信息,在该身份验证信息被验证成功时,采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p为大于1的整数,预设数据库中包括p个图像,从p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,q为小于p且大于1的整数,将q个第一检索图像、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,输出n个第二检索图像,如此,能够通过神经网络模型对第一次检索结果进行优化,有助于提升人脸检索精度。
与上述实施例一致地,请参阅图3,图3是本申请实施例提供的一种电子设备的结构示意图,如图所示,该电子设备包括处理器、存储器、通信接口以及一个或多个程序,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,本申请实施例中,上述程序包括用于执行以下步骤的指令:
获取目标人脸图像;
采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出所述n个第二检索图像。
可以看出,本申请实施例中所描述的电子设备,获取目标人脸图像,采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p为大于1的整数,预设数据库中包括p个图像,从p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,q为小于p且大于1的整数,将q个第一检索图像、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,输出n个第二检索图像,如此,能够通过神经网络模型对第一次检索结果进行优化,有助于提升人脸检索精度。
在一个可能的示例中,在所述采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值方面,上述程序包括用于执行以下步骤的指令:
对所述目标人脸图像进行特征提取,得到第一特征集;
对所述预设数据库中每一图像进行图像分割,得到p个人脸区域图像;
对所述p个人脸区域图像中每一人脸区域图像进行特征提取,得到p个第二特征集;
计算所述第一特征集与所述p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离;
依据所述p个特征距离确定所述p个相似度值。
在一个可能的示例中,在所述将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果方面,上述程序包括用于执行以下步骤的指令:
获取所述q个第一检索图像中每一第一检索图像的标识信息,得到q个标识信息;
获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集;
将所述q个标识信息和所述q个特征集构建为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集;
将所述q个合并特征集、所述目标人脸图像输入到所述预设神经网络模型中进行运算,得到所述q个运算结果,每一合并特征集对应一个运算结果。
在一个可能的示例中,在所述获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集方面,上述程序包括用于执行以下步骤的指令:
获取所述第一检索图像i中的所有特征点,得到m个特征点,所述第一检索图像i为所述q个第一检索图像中的任一第一检索图像,所述m为大于1的整数;
确定所述m个特征点中每一特征点的模,得到m个模;
确定所述m个特征点中每一特征点与所述目标人脸图像中相应特征点之间的最大比对值,得到m个最大比对值;
将所述m个模和所述m个最大比对值构成m个特征参数组,每一特征点对应一个特征参数组,每一特征参数组包括一个模和一个最大比对值;
从所述m个特征参数组中选取模处于第一预设范围,且最大比对值处于第二预设范围的目标特征参数组,得到k个目标特征参数组,所述k为小于所述m的正整数;
将所述k个目标特征参数组对应的特征点作为所述第一检索图像i的特征集。
在一个可能的示例中,在所述获取目标人脸图像方面,上述程序包括用于执行以下步骤的指令:
获取目标对象与摄像头之间的目标拍摄距离;
依据所述目标拍摄距离确定目标变焦参数;
获取目标环境参数;
确定与所述目标环境参数对应的目标拍摄参数;
依据所述目标变焦参数、所述目标拍摄参数进行拍摄,得到所述目标人脸图像。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图4是本申请实施例中所涉及的人脸检索装置400的功能单元组成框图。该人脸检索装置400,所述装置包括:获取单元401、搜索单元402、第一选取单元403、运算单元404、第二选取单元405和输出单元406,其中,
获取单元401,用于获取目标人脸图像;
搜索单元402,用于采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
第一选取单元403,用于从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
运算单元404,用于将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
第二选取单元405,用于从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出单元406,用于输出所述n个第二检索图像。
可以看出,本申请实施例中所描述的人脸检索装置,获取目标人脸图像,采用预设算法将目标人脸图像在预设数据库中进行搜索,得到p个相似度值,p为大于1的整数,预设数据库中包括p个图像,从p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,q为小于p且大于1的整数,将q个第一检索图像、目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像,从q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,n小于q的正整数,输出n个第二检索图像,如此,能够通过神经网络模型对第一次检索结果进行优化,有助于提升人脸检索精度。
在一个可能的示例中,在所述采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值方面,所述搜索单元402具体用于:
对所述目标人脸图像进行特征提取,得到第一特征集;
对所述预设数据库中每一图像进行图像分割,得到p个人脸区域图像;
对所述p个人脸区域图像中每一人脸区域图像进行特征提取,得到p个第二特征集;
计算所述第一特征集与所述p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离;
依据所述p个特征距离确定所述p个相似度值。
在一个可能的示例中,在所述将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果方面,所述运算单元404具体用于:
获取所述q个第一检索图像中每一第一检索图像的标识信息,得到q个标识信息;
获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集;
将所述q个标识信息和所述q个特征集构建为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集;
将所述q个合并特征集、所述目标人脸图像输入到所述预设神经网络模型中进行运算,得到所述q个运算结果,每一合并特征集对应一个运算结果。
在一个可能的示例中,在所述获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集方面,所述运算单元404具体用于:
获取所述第一检索图像i中的所有特征点,得到m个特征点,所述第一检索图像i为所述q个第一检索图像中的任一第一检索图像,所述m为大于1的整数;
确定所述m个特征点中每一特征点的模,得到m个模;
确定所述m个特征点中每一特征点与所述目标人脸图像中相应特征点之间的最大比对值,得到m个最大比对值;
将所述m个模和所述m个最大比对值构成m个特征参数组,每一特征点对应一个特征参数组,每一特征参数组包括一个模和一个最大比对值;
从所述m个特征参数组中选取模处于第一预设范围,且最大比对值处于第二预设范围的目标特征参数组,得到k个目标特征参数组,所述k为小于所述m的正整数;
将所述k个目标特征参数组对应的特征点作为所述第一检索图像i的特征集。
在一个可能的示例中,在所述获取目标人脸图像方面,所述获取单元401具体用于:
获取目标对象与摄像头之间的目标拍摄距离;
依据所述目标拍摄距离确定目标变焦参数;
获取目标环境参数;
确定与所述目标环境参数对应的目标拍摄参数;
依据所述目标变焦参数、所述目标拍摄参数进行拍摄,得到所述目标人脸图像。
可以理解的是,本实施例的人脸检索装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取器(英文:randomaccessmemory,简称:ram)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
1.一种人脸检索方法,其特征在于,所述方法包括:
获取目标人脸图像;
采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出所述n个第二检索图像。
2.根据权利要求1所述的方法,其特征在于,所述采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,包括:
对所述目标人脸图像进行特征提取,得到第一特征集;
对所述预设数据库中每一图像进行图像分割,得到p个人脸区域图像;
对所述p个人脸区域图像中每一人脸区域图像进行特征提取,得到p个第二特征集;
计算所述第一特征集与所述p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离;
依据所述p个特征距离确定所述p个相似度值。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,包括:
获取所述q个第一检索图像中每一第一检索图像的标识信息,得到q个标识信息;
获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集;
将所述q个标识信息和所述q个特征集构建为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集;
将所述q个合并特征集、所述目标人脸图像输入到所述预设神经网络模型中进行运算,得到所述q个运算结果,每一合并特征集对应一个运算结果。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集,包括:
获取所述第一检索图像i中的所有特征点,得到m个特征点,所述第一检索图像i为所述q个第一检索图像中的任一第一检索图像,所述m为大于1的整数;
确定所述m个特征点中每一特征点的模,得到m个模;
确定所述m个特征点中每一特征点与所述目标人脸图像中相应特征点之间的最大比对值,得到m个最大比对值;
将所述m个模和所述m个最大比对值构成m个特征参数组,每一特征点对应一个特征参数组,每一特征参数组包括一个模和一个最大比对值;
从所述m个特征参数组中选取模处于第一预设范围,且最大比对值处于第二预设范围的目标特征参数组,得到k个目标特征参数组,所述k为小于所述m的正整数;
将所述k个目标特征参数组对应的特征点作为所述第一检索图像i的特征集。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取目标人脸图像,包括:
获取目标对象与摄像头之间的目标拍摄距离;
依据所述目标拍摄距离确定目标变焦参数;
获取目标环境参数;
确定与所述目标环境参数对应的目标拍摄参数;
依据所述目标变焦参数、所述目标拍摄参数进行拍摄,得到所述目标人脸图像。
6.一种人脸检索装置,其特征在于,所述装置包括:
获取单元,用于获取目标人脸图像;
搜索单元,用于采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值,所述p为大于1的整数,所述预设数据库中包括p个图像;
第一选取单元,用于从所述p个相似度值中选取大于第一预设阈值的q个相似度值,并获取该q个相似度值对应的图像,得到q个第一检索图像,所述q为小于所述p且大于1的整数;
运算单元,用于将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果,每一运算结果对应一个第一检索图像;
第二选取单元,用于从所述q个运算结果中选取大于第二预设阈值的运算结果,得到n个目标运算结果,并获取该n个目标运算结果对应的图像,得到n个第二检索图像,所述n小于所述q的正整数;
输出单元,用于输出所述n个第二检索图像。
7.根据权利要求6所述的装置,其特征在于,在所述采用预设算法将所述目标人脸图像在预设数据库中进行搜索,得到p个相似度值方面,所述搜索单元具体用于:
对所述目标人脸图像进行特征提取,得到第一特征集;
对所述预设数据库中每一图像进行图像分割,得到p个人脸区域图像;
对所述p个人脸区域图像中每一人脸区域图像进行特征提取,得到p个第二特征集;
计算所述第一特征集与所述p个第二特征集中每一第二特征集之间的特征距离,得到p个特征距离;
依据所述p个特征距离确定所述p个相似度值。
8.根据权利要求6或7所述的装置,其特征在于,在所述将所述q个第一检索图像、所述目标人脸图像输入到预设神经网络模型中进行运算,得到q个运算结果方面,所述运算单元具体用于:
获取所述q个第一检索图像中每一第一检索图像的标识信息,得到q个标识信息;
获取所述q个第一检索图像中每一检索图像中的特征集,得到q个特征集;
将所述q个标识信息和所述q个特征集构建为q个合并特征集,每一合并特征集包括唯一一个第一检索图像的标识信息以及特征集;
将所述q个合并特征集、所述目标人脸图像输入到所述预设神经网络模型中进行运算,得到所述q个运算结果,每一合并特征集对应一个运算结果。
9.一种电子设备,其特征在于,包括处理器、存储器,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-5任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-5任一项所述的方法。
技术总结