一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种人脸识别方法、系统及存储介质与流程

2022-07-02 07:19:46 来源:中国专利 TAG:


1.本技术实施例涉及人脸识别技术领域,尤其涉及一种人脸识别方法、系统及存储介质。


背景技术:

2.随着以深度学习为代表的人工智能技术广泛普及,自动人脸识别系统被广泛应用于智慧安防、智慧城市、智慧金融、智慧交通等场景。人脸识别系统的研制厂商众多,不同算法厂商采用的深度学习算法不尽相同;但不同场景下,不同厂商的不同算法性能表现迥异,深度学习的迁移性和多场景适配性在实际落地中受到较大阻碍。
[0003]“深度学习的

黑箱’性质是造成深度学习推广能力差的一个原因,以图像识别为例,通过深度学习只能发现重复出现的局部片段(模式),很难发现具有语义的部件”。因此当前数据驱动的深度学习算法,在根源上无法做到一个模型适用所有场景。
[0004]
受限于知识产权和算法算力紧密耦合,当前客户采购人脸识别系统往往只能采购其中一个厂商。具体来说,1)算法厂商不希望人脸识别过程中的特征值(底库特征和待识别的人脸特征)被客户知晓,以免引发知识产权/商业机密的泄露,一般会对人脸特征加密;2)为了进一步保护知识产权/减少适配代价,算法厂商往往提供软硬一体解决方案,即便大多数硬件使用的是通用处理器/加速卡;采购多厂商的人脸识别系统意味着要采购多套软硬一体产品。
[0005]
在标准人脸识别系统的工作流程,分为离线识别系统和在线识别系统,其中在线识别系统分为特征提取和特征比对两个模块。无法互联互通和灵活调度,意味着:1)离线阶段只能使用1个厂商提供的特征提取器,得到1份人脸特征底库(往往经过加密),2)在线阶段只能使用同一厂商的识别系统,使用其离线阶段获取的特征底库,进行人脸识别。因为特征底库经过了自加密,各厂商的识别系统无法互联互通,且识别系统中第一步骤往往是解密。然而,识别系统是有互联互通的潜在可能的,因为在线识别系统内部的特征比对模块已然存在国家/地方标准,其计算公式在标准中也有统一的数学表达。
[0006]
依图等公司提出《基于通用人脸特征模板的人脸识别技术要求标准研究报告》,其中提到了“通用人脸特征模板”一项技术,其也是一种算法算力解耦和人脸识别系统系统互联互通的方案。基于通用人脸特征模板的方案,从保护人脸原图隐私的角度,提出了“通用人脸特征模板”这个概念。通用模板由权威机构生成,离线阶段下发给各个ai厂商。该方案认为,下发通用人脸特征模板,相比下发人脸原图,减少了人脸隐私的泄露;同时辅以签名/证书等手段,进一步减小了通用人脸特征模板下发产生的人脸隐私泄露风险。
[0007]
可见现有方案中,离线阶段训练获得“通用人脸特征模板”到各厂商自有“人脸特征参考”之间的转换器最为关键。在此并不详述该转换器的训练策略,但是本转换器带来一种可能:虽然各个厂商的深度学习网络设计错综复杂,一旦采用现有方案,转换器这种相对简单的深度学习网络设计会趋同,从而有可能从算法角度统一各个厂商的人脸识别系统。即各个厂商的人脸识别系统变为“通用人脸特征提取模型” “高度趋同的转换器”。
[0008]
在对现有技术的研究和实践过程中,本技术实施例的发明人发现:
[0009]
1)通用人脸特征提取模型 高度趋同的转换器架构设计,使得各ai厂商创新频出的网络设计,最后会变为结构简单的转换器设计,创新和多样性只体现在转换器参数中,实际落地中预计会有较大阻力;
[0010]
2)通用人脸特征提取模型 高度趋同的转换器架构设计,尤其是转换器的训练获得方式,相比传统单模型,其精度损失并无实验/理论支撑。


技术实现要素:

[0011]
本技术实施例提供了一种人脸识别方法、系统及存储介质,能够根据场景灵活调度人脸识别算法,可以最大化规避当前深度学习的不鲁棒不可扩展性质,提高实际场景人脸识别的准确性;同时极大的降低了用户采购成本。
[0012]
第一方面中,从第一节点角度介绍本技术实施例提供的一种人脸识别方法,应用于人脸识别系统中的第一节点,所述人脸识别系统还包括至少一个第二节点,所述第二节点包括人脸特征库,所述人脸特征库包括多个预设密文特征,其特征在于,所述方法包括:
[0013]
从多个人脸识别模型中确定目标人脸识别模型;
[0014]
接收待识别图片;
[0015]
基于所述目标人脸识别模型对所述待识别图片进行特征提取,得到目标人脸特征;
[0016]
在人脸特征库中获取与所述目标人脸识别模型对应的目标人脸特征库;
[0017]
将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文;
[0018]
输出所述目标相似度密文。
[0019]
一种可能的设计中,所述从多个人脸识别模型中确定目标人脸识别模型,包括:
[0020]
获取当前系统时间,基于所述当前系统时间所属于的时间段确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型;
[0021]
或获取当前定位信息,基于所述当前定位信息所属于的定位区域确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0022]
一种可能的设计中,所述从多个人脸识别模型中确定目标人脸识别模型,包括:
[0023]
获取图像采集装置的扫描数据,若所述扫描数据包括与预设对象匹配的目标对象,则确定与所述预设对象对应的业务场景为所述目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0024]
一种可能的设计中,所述从多个人脸识别模型中确定目标人脸识别模型,包括:
[0025]
获取用户录入的关键词集,获取与所述关键词集对应的所述目标人脸识别模型。
[0026]
例如,该关键词集可为用户在交互界面手动输入,也可以是接收用户的语音信号中识别得到。具体来说,可在用户目测判断当前所属场景后,获取用户手动输入的关键词,或者接收用户的语音信号,然后从多个人脸识别模型中匹配与该关键词或语音信号匹配的目标人脸识别模型,并切换到该目标人脸识别模型。
[0027]
一种可能的设计中,所述从多个人脸识别模型中确定目标人脸识别模型,包括:
[0028]
获取多个人脸识别模型对应的人脸识别模型推荐列表,根据人脸识别模型推荐列
表确定目标人脸识别模型。
[0029]
可通过以下方式获取人脸识别模型推荐列表:
[0030]
a、根据多个人脸识别模型的应用类型或者根据历史评测结果,当新部署或者环境,位置变化时,给一个目标算法的推荐列表出来(可标注优先级)。
[0031]
b、根据多个人脸识别模型的历史评测结果,当新部署或者环境,位置变化时,给一个目标算法的推荐列表出来(可标注优先级)。
[0032]
一种可能的设计中,每个第一节点内预先部署的多个人脸识别模型可不同或相同,可以新增人脸识别模型、删除评分低于预设评分的历史人脸识别模型。本技术实施例不对各个第一节点内部署的多个人脸识别模型的类型、数量、更新方式等作限定。
[0033]
或者,先获取第一节点在历史时段内对各人脸时别模型的使用数据,再根据使用数据确定不适合该第一节点使用的候选人脸识别模型,则删除该候选人脸识别模型,例如在历史时段内的使用次数小于预设次数;或者,根据使用数据、环境数据、业务场景、位置信息中的至少一项确定不适合该第一节点用或者不可能用到的候选人脸识别模型,则删除该候选人脸识别模型。
[0034]
第二方面中,从第二节点角度本技术实施例提供一种人脸识别方法,应用于人脸识别系统中的第二节点,所述人脸识别系统还包括至少一个第一节点,其特征在于,所述方法包括:
[0035]
获取人脸图片库以及多个人脸识别模型的特征提取器;
[0036]
基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库;
[0037]
对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库;
[0038]
对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征;
[0039]
将所述人脸特征库发送至所述第一节点。
[0040]
一种可能的设计中,所述对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库,包括:
[0041]
在可信执行环境下调用所述多个人脸识别模型分别对应的解密函数;
[0042]
在可信执行环境下对所述多个人脸识别模型分别对应的初始人脸特征库根据对应的解密函数进行解密,得到与各初始人脸特征库对应的候选人脸特征库。
[0043]
一种可能的设计中,所述对各候选人脸特征库分别进行全同态加密,得到人脸特征库,包括:
[0044]
在可信执行环境下基于所调用的加密公钥对各候选人脸特征库分别进行全同态加密,得到各候选人脸特征库分别对应的全同态加密人脸特征库,以组成所述人脸特征库。
[0045]
一种可能的设计中,所述对各候选人脸特征库分别进行全同态加密,得到人脸特征库,包括:
[0046]
接收特征提取器所属提供方发送的调用指令;
[0047]
响应于所述调用指令,将全同态加密接口及加密公钥发送至所述特征提取器所属提供方;
[0048]
接收所述特征提取器所属提供方发送的所述人脸特征库;其中,所述人脸特征库
为所述特征提取器所属提供方调用所述全同态加密接口并采用所述加密公钥对候选人脸特征库进行全同态加密得到。
[0049]
一种可能的设计中,所述人脸特征库可保存在区块链节点上。
[0050]
第三方面中,本技术实施例提供一种人脸识别系统,包括第一节点和第二节点,第一节点具有实现对应于上述第一方面提供的人脸识别方法的功能,第二节点具有实现对应于上述第二方面提供的人脸识别方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
[0051]
第四方面中,本技术实施例提供一种计算机设备,具有实现对应于上述第一方面提供的人脸识别方法的功能,具有实现对应于上述第二方面提供的人脸识别的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
[0052]
本技术实施例又一方面提供了一种计算机设备,其包括至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述存储器中的计算机程序来执行上述第一方面、第一方面中的各种可能的设计、上述第二方面、第二方面中的各种可能的设计中提供的方法。
[0053]
本技术实施例又一方面提供了一种计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述第一方面、第一方面中的各种可能的设计、上述第二方面、第二方面中的各种可能的设计中提供的方法。
[0054]
根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面、第一方面中的各种可能的设计、上述第二方面、第二方面中的各种可能的设计中提供的方法。
[0055]
相较于现有技术,本技术实施例提供的方案中,在智慧安防、智慧城市、智慧教育等场景中,可以将人脸图片库保存在第二节点,并由第二节点对人脸图片库进行特征提取、解密及全同态加密后得到对应的人脸特征库后,将人脸特征库发送至第一节点用于人脸识别,不会涉及到人脸图片库明文泄漏,提高了数据安全性。而且在第一节点中可以部署多个人脸识别模型,基于当前从多个人脸识别模型中确定的目标人脸识别模型对待识别图片进行特征提取后,即可直接与目标人脸识别模型对应的目标人脸特征库进行匹配得到用于识别用户的目标相似度密文,使得第一节点中将算法算力解耦,且能根据场景灵活调度人脸识别算法,可以最大化规避当前深度学习的不鲁棒不可扩展性质,提高实际场景人脸识别的准确性;同时极大的降低了用户采购成本。
附图说明
[0056]
图1a为本技术实施例提供的一种人脸识别系统的示意图;
[0057]
图1b为本技术实施例提供的一种人脸识别系统的应用场景示意图;
[0058]
图1c为本技术实施例提供的一种人脸识别系统的应用场景示意图;
[0059]
图2a为本技术实施例中人脸识别方法的一种流程示意图;
[0060]
图2b为本技术实施例中人脸识别方法的一种流程示意图;
[0061]
图2c为本技术实施例中人脸识别方法的一种流程示意图;
[0062]
图3a为本技术实施例中基于当前系统时间确定目标业务场景方式的示意图;
[0063]
图3b为本技术实施例中基于当前定位信息确定目标业务场景方式的示意图;
[0064]
图3c为本技术实施例中基于定位信息确定目标业务场景方式的示意图;
[0065]
图3d为本技术实施例中基于环境变化确定目标业务场景方式的示意图;
[0066]
图3e为本技术实施例中基于扫描数据确定目标业务场景方式的示意图;
[0067]
图3f为本技术实施例中基于扫描数据确定目标业务场景方式的示意图;
[0068]
图3g为本技术实施例中基于人脸识别模型推荐列表确定目标人脸识别模型方式的示意图;
[0069]
图4a为本技术实施例中第一节点的一种结构示意图;
[0070]
图4b为本技术实施例中第二节点的一种结构示意图;
[0071]
图4c为本技术实施例中人脸识别系统的一种结构示意图;
[0072]
图5为本技术实施例中服务器的一种结构示意图;
[0073]
图6为本技术实施例中服务终端的一种结构示意图;
[0074]
图7为本技术实施例中服务器的一种结构示意图。
具体实施方式
[0075]
本技术实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本技术实施例中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本技术实施例中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本技术实施例方案的目的。
[0076]
本技术实施例供了一种人脸识别方法、系统、计算机设备及存储介质,可用于第一节点侧或第二节点侧,第一节点侧可用于执行人脸识别,第二节点侧可用于向多个第一节点提供全面的人脸特征库。例如智慧安防、智慧监控或智慧教育场景时,人脸识别结果可以用于确定用户身份信息。该方案可应用于第一节点可为服务器或服务终端,第二节点可为服务器。本技术实施例以第一节点为服务器为例,当应用于服务终端侧,可参考对第一节点为服务器的实施例,不作赘述。
[0077]
本技术实施例的方案可基于人工智能技术实现,具体来说涉及人工智能技术中的计算机视觉技术领域和云技术中的云计算、云存储和数据库等领域,下面将分别进行介绍。
[0078]
人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
[0079]
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0080]
计算机视觉技术(computer vision,cv)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
[0081]
本技术实施例的方案可基于云技术实现,具体来说涉及云技术中的云计算、云存储和数据库等技术领域,下面将分别进行介绍。
[0082]
云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。本技术实施例可通过云技术对终端下发提示信息,发送目标会话的页面等,以及从终端获取会话记录。
[0083]
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。在本技术实施例中,可将网络配置、配置实例、配置模型、转换模板、划分的网络区域等信息均保存在该数据库中,便于服务器调取。
[0084]
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(id,id entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记
录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
[0085]
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(raid,redundant array of independent disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
[0086]
数据库(database),简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
[0087]
数据库管理系统(英语:database management system,简称dbms)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、xml(extensible markup language,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如sql(结构化查询语言(structured query language)、xquery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些dbms能够跨类别,例如,同时支持多种查询语言。在本技术实施例中,可将人脸特征库存储在该数据库中,便于服务器调取。
[0088]
其中,需要特别说明的是,本技术实施例涉及的服务终端,可以是指向服务终端提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。例如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。例如,个人通信业务(英文全称:personal communication service,英文简称:pcs)电话、无绳电话、会话发起协议(sip)话机、无线本地环路(wireless local loop,英文简称:wll)站、个人数字助理(英文全称:personal digital assistant,英文简称:pda)等设备。
[0089]
在服务终端进行人脸识别时,服务终端还需要从先基于人脸图片库获取人脸特征库。具体来说,服务终端用于制作、保存、加密、更新人脸图片库。
[0090]
本技术实施例中,服务终端是先获取人脸图片库以及多个人脸识别模型的特征提取器;基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库;
[0091]
对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库;对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征;将所述人脸特征库发送至所述第一节点。
[0092]
一些实施方式中,本技术实施例可应用于如图1a-图1c所示的一种人脸识别系统1,所述人脸识别系统1包括至少一个第一节点10(也可以理解为第一服务器)、至少一个第二节点20(也可以理解为第二服务器)、至少一个图像采集装置30。所述第一节点10与所述第二节点20之间可以进行数据交互,所述图像采集装置30与所述第一节点10可以进行数据交互。所述人脸识别系统1,还可以包括第三服务器(与后续描述的第三节点相对应),所述
第二节点20与所述第三节点之间可以进行数据交互,所述第一节点10也与所述第三节点之间可以进行数据交互。第一节点与图像采集装置可集中部署或分离式部署,本技术实施例不对此作限定,仅以分离式部署为例。
[0093]
当基于上述图1a所述的人脸识别系统实现本技术实施例中的人脸识别方法时,可参考如图1b、图1c所示的一种应用场景示意图。
[0094]
本技术实施例中,所述第一节点10用于执行人脸识别,所述第二节点20包括人脸特征库,用于向所述第一节点10提供数据人脸数据库作为匹配基础,且第二节点20中一旦获取到了人脸数据库后需要及时部署到所述第一节点10,更具体可以将人脸数据库部署到与所述第一节点10融合设置的第三节点(第三节点的主要作用是存储第二节点发送的人脸数据库以供第一节点10进行人脸识别使用)。例如:所述第二节点20可以是权威机构总服务器,所述第三节点可以是权威机构市一级或县一级服务器。
[0095]
所述第一节点10从多个人脸识别模型中确定目标人脸识别模型;接收待识别图片;基于所述目标人脸识别模型对所述待识别图片进行特征提取,得到目标人脸特征;在人脸特征库中获取与所述目标人脸识别模型对应的目标人脸特征库;将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文;输出所述目标相似度密文。可选地,所述第一节点10可以是诸如服务器、云服务器等终端设备,本技术实施例对此不作限定。所述第一节点10中可以安装应用程序的客户端。其中,该应用程序是指任意能够为所述第一节点10、所述第二节点20及所述图像采集装置30之间提供交互平台的计算机程序。
[0096]
所述第二节点20获取人脸图片库以及多个人脸识别模型的特征提取器;基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库;对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库;对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征;将所述人脸特征库发送至所述第一节点。可选地,所述第二节点20可以是诸如服务器、云服务器等终端设备,本技术实施例对此不作限定。
[0097]
其中,需要特别说明的是,本技术涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0098]
本技术实施例涉及的服务终端,该服务终端可以包括:智能手机、平板电脑、笔记本电脑、桌上型电脑、智能电视、智能音箱、个人数字助理(英文全称:personal digital assistant,英文简称:pda)、台式计算机、智能手表等携带多媒体数据处理功能(例如,视频数据播放功能、音乐数据播放功能)的智能终端,但并不局限于此。
[0099]
本技术实施例主要提供以下技术方案:
[0100]
1、第二节点对人脸图片库基于多个不同开发产商(也即多个特征提取器所属提供方)提供的人脸识别模型的特征提取器提取人脸特征并解密后再进行全同态加密得到各特征提取器对应的全同态加密人脸特征库,从而组成人脸特征库;该人脸特征库由第二节点发送至第一节点具体应用。
[0101]
2、第一节点从预先部署的多个人脸识别模型中确定目标人脸识别模型,然后基于目标人脸识别模型对图像采集装置发送的待识别图片进行特征提取得到目标人脸特征,之后将第一节点中已部署的人脸特征库中确定与目标人脸识别模型对应的目标人脸特征库,最后将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文并输出所述目标相似度密文。
[0102]
下面,将结合几个实施例对本技术技术方案进行详细的介绍说明。
[0103]
参照图2a,以下介绍本技术实施例所提供的一种人脸识别方法,本技术实施例包括:
[0104]
201、第二节点获取人脸图片库以及多个人脸识别模型的特征提取器。
[0105]
本技术实施例中,第二节点是部署于权威机构的权威机构服务器,其主要功能是制作、保存、加密、更新人脸图片库。具体来说,可以基于多个不同开发产商(也即多个特征提取器所属提供方)提供的人脸识别模型的特征提取器提取人脸特征并解密后再进行全同态加密得到各特征提取器对应的全同态加密人脸特征库,从而组成人脸特征库。
[0106]
其中,由于在第二节点中预先存储了人脸图片库,及从多个开发产商分别发送的人脸识别模型的特征提取器,此时第二节点可以获取人脸图片库中包括的人脸图片(是原始采集的人脸图片,未经全同态加密等处理),以及获取多个人脸识别模型的特征提取器。而且,第二节点无需获取多个开发产商分别发送的人脸识别模型的特征比对模块,也无需要求多个开发产商开发高度趋同的转换器,仅仅只需获取多个开发产商分别发送的人脸识别模型的特征提取器,使得开发产商开发人脸识别模型的完整性得到了保证。
[0107]
202、第二节点基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库。
[0108]
本技术实施例中,可以是先在第二节点中部署可信执行环境(tee,全称是trusted execution environment)。此时可以在可信执行环境下通过所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得得到各人脸识别模型分别对应的初始人脸特征库。
[0109]
例如,第二节点中存储的人脸图片库中包括10亿张以上的海量人脸图像照片,且第二节点中存储了n1个开发产商提供的n1个特征提取器(其中n1为正整数),此时由每一个开发产商提供的特征提取器在可信执行环境下对人脸图片库进行特征提取,得到与每一个特征提取器分别对应的初始人脸特征库,也就是得到n1个初始人脸特征库。可见,通过多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,一方面中,能够保留各特征提取器基于自身特性所提取的人脸特征,实现不改变开发产商的特征提取器设计;另一方面中,能够降低开发产商的适配难度,以及降低将算法与算力解耦方案的推广难度。
[0110]
203、第二节点对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库。
[0111]
在本技术实施例中,各初始人脸特征库中包括的初始人脸特征均是非明文结果数据,需要在第二节点中对各初始人脸特征库中包括的初始人脸特征进行解密,得到各初始人脸特征库对应的候选人脸特征库。这一解密过程也是为了将各初始人脸特征还原成与人脸图片库相对应的且为明文数据结果的候选人脸特征。可见,在第二节点中对各初始人脸
特征库进行解密,可以确保后续同态加密过程正常进行。
[0112]
一些实施方式中,步骤203具体包括:
[0113]
在可信执行环境下调用所述多个人脸识别模型分别对应的解密函数;
[0114]
在可信执行环境下对所述多个人脸识别模型分别对应的初始人脸特征库根据对应的解密函数进行解密,得到与各初始人脸特征库对应的候选人脸特征库。
[0115]
在本技术实施例中,例如以一个初始人脸特征库为例,其为第二节点使用开发产商1提供的特征提取器1对人脸图片库中各人脸图片进行特征提取,由所得到的各初始人脸特征组成初始人脸特征库1,其中所述初始人脸特征库1可理解为与特征提取器1相对应的初始人脸特征库。此时需要在第二节点的可信执行环境下先调用开发产商1提供的解密函数1,然后由解密函数1对初始人脸特征库1中各个初始人脸特征进行解密,从而得到特征提取器1对应的初始人脸特征库。可见,由于是在可信执行环境下对初始人脸特征库进行解密,可保证解密过程中数据不泄露,提高了数据安全性。
[0116]
204、第二节点对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征。
[0117]
在本技术实施例中,在第二节点中获取到各候选人脸特征库后,为了确保后续发送至第一节点的人脸特征库是加密的,此时可以先在第二节点中对各候选人脸特征库分别进行全同态加密,从而得到了人脸特征库。可见,对各候选人脸特征库分别进行全同态加密,可有效提各候选人脸特征库的安全性,确保后续其被发送至其他节点时是全同态加密数据,避免了明文发送人脸图片库。
[0118]
一些实施方式中,作为步骤204的第一实施例,步骤204具体包括:
[0119]
在可信执行环境下基于所调用的加密公钥对各候选人脸特征库分别进行全同态加密,得到各候选人脸特征库分别对应的全同态加密人脸特征库,以组成所述人脸特征库。
[0120]
在本技术实施例中,作为第二节点中全同态加密的第一种实现方式,由于之前已在第二节点中获取到了与各初始人脸特征库对应的候选人脸特征库,这里还可以继续在第二节点的可信执行环境下由第二节点所提供的加密公钥对各候选人脸特征库分别进行全同态加密,得到各候选人脸特征库分别对应的全同态加密人脸特征库,以组成所述人脸特征库。可见,基于第二节点的可信执行环境对各个候选人脸特征库执行全动态加密,能有效保护各个候选人脸特征库的数据安全性。
[0121]
一些实施方式中,作为步骤204的第二实施例,步骤204具体包括:
[0122]
接收特征提取器所属提供方发送的调用指令;
[0123]
响应于所述调用指令,将全同态加密接口及加密公钥发送至所述特征提取器所属提供方;
[0124]
接收所述特征提取器所属提供方发送的所述人脸特征库;其中,所述人脸特征库为所述特征提取器所属提供方调用所述全同态加密接口并采用所述加密公钥对候选人脸特征库进行全同态加密得到。
[0125]
在本技术实施例中,作为第二节点中全同态加密的第二种实现方式,此时第二节点并不是自身执行全动态加密操作,而是特征提取器所属提供方(例如开发产商1提供了特征提取器1,其也可以视为一个特征提取器所属提供方)在申请调用第二节点提供的全同态加密接口及加密公钥成功后,在特征提取器所属提供方中采用所述加密公钥对候选人脸特
征库进行全同态加密,得到与候选人脸特征库对应的人脸特征库。可见,基于第二节点向特征提取器所属提供方提供全同态加密接口及加密公钥,可在特征提取器所属提供方中自行对候选人脸特征库进行全同态加密,能有效保护各个候选人脸特征库的数据安全性。
[0126]
更具体的,第二节点可将全同态加密接口及加密公钥部署于可信执行环境,第二节点在接收特征提取器所属提供方发送的调用指令后响应该调用指令,将可信执行环境中部署的全同态加密接口及加密公钥发送至所述特征提取器所属提供方;这样当在特征提取器所属提供方基于所述加密公钥对候选人脸特征库进行全同态加密得到人脸特征库后,由特征提取器所属提供方将人脸特征库发送至第二节点。可见,基于第二节点的可信执行环境向各开发产商提供全同态加密接口和加密公钥,由各个开发产商在可信执行环境下调用该全同态加密接口及加密公钥,以对各开发产商分别相应的候选人脸特征库进行全同态加密,也能有效保护各个候选人脸特征库的数据安全性。
[0127]
205、第二节点将所述人脸特征库发送至所述第一节点。
[0128]
在本技术实施例中,当在第二节点中完成了对人脸图片库的特征提取、特征解密及全同态加密后得到了人脸特征库,若其数据量较大则需提前部署到第一节点,以提高在第一节点中进行数据处理的效率,避免了第一节点在处理数据过程中对所述第二节点的频繁数据或接口调用。其中,所述人脸特征库可保存在区块链节点上。
[0129]
具体实施时,第二节点还可将所述人脸特征库发送至第三节点,由第三节点作为所述人脸特征库的存储装置。之后第一节点要使用所述人脸特征库时,从所述第三节点中获取所述人脸特征库即可。
[0130]
206、第一节点从多个人脸识别模型中确定目标人脸识别模型。
[0131]
在本技术实施例中,第一节点是部署于前端应用侧的算力平台服务器,有区别于部署于权威机构的权威机构服务器。在第一节点中存储了多个不同开发产商(也即特征提取器所属提供方)提供的人脸识别模型,每个人脸识别模型均包括特征提取器和特征比对模块。
[0132]
由于在第一节点中部署了多个人脸识别模型,每一人脸识别模型的性能不同,且在不同的业务场景下各有人脸识别准确度的优势,故此时需要在第一节点中确定此时所用的目标人脸识别模型。可见,基于上述方式,将算法与算力解耦,使得第一节点中能根据场景灵活调度人脸识别算法,可以最大化规避当前深度学习的不鲁棒不可扩展性质,提高实际场景人脸识别的准确性;同时极大的降低了用户采购成本。下面分别从基于定位信息的变化、基于环境变化、基于扫描数据等业务场景介绍如何从多个人脸识别模型中确定目标人脸识别模型:
[0133]
方式1、根据第一节点的当前系统时间确定目标业务场景及目标人脸识别模型
[0134]
一些实施方式中,可实时、周期性或随机地获取当前系统时间,然后基于所述当前系统时间所属于的时间段确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0135]
例如,本技术实施例中,第一节点可以更具体基于所述当前系统时间所属于的时间段确定目标业务场景,例如图3a所示,当前系统时间是8:00,是属于8:00-18:00对应的白天时间段,此时可以将白天时间段对应的白天业务场景作为所述目标业务场景。
[0136]
可见,由于在第一节点中存储了多个人脸识别模型,且每一人脸识别模型所适用
的业务场景均有预先设定,当确定了目标业务场景后即可根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0137]
方式2、根据第一节点的当前定位信息确定目标业务场景及目标人脸识别模型
[0138]
一些实施方式中,可先获取图像采集装置发送的当前定位信息,基于所述当前定位信息所属于的定位区域确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0139]
或者是第一节点还可以更具体基于所述当前定位信息所属于的定位区域确定所述目标业务场景,参考图3b,例如当前定位信息对应经纬度值(xx1e,xx2n)(表示东经xx1北纬xx2),当前定位信息的经纬度值属于a国家b城市,而a国家b城市主要生活是黑色肤色人种,此时可以基于a国家b城市对应的b城市人脸识别场景作为所述目标业务场景。可见,基于所获取的单维度特征(如当前系统时间或当前定位信息)可快速确定目标业务场景,便于后续根据目标业务场景来选定相应的人脸识别模型。
[0140]
具体的,基于所述当前定位信息所属于的定位区域确定所述目标业务场景,及根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型时,还可参考如图3c所示的基于定位信息确定目标业务场景方式的示意图。当第一节点初始从图像采集装置接收到的图像中判定其位于火车站候车室,之后位于火车站候车室的图像采集装置未启用而位于医院的图像采集装置启用,即第一节点检测当前位于医院的图像采集装置启用,则第一节点中将医院适用的人脸识别模型作为目标人脸识别模型。
[0141]
方式3、根据当前环境变化确定目标业务场景及目标人脸识别模型
[0142]
具体的,还可以基于当前环境变化确定所述目标业务场景,及根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0143]
一些实施方式中,可通过以下方式确定目标人脸识别模型:
[0144]
获取图像采集装置的扫描数据,若所述扫描数据包括与预设对象匹配的目标对象,则确定与所述预设对象对应的业务场景为所述目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0145]
本技术实施例中,在第一节点中可以接收多个图像采集装置中的其中一个图像采集装置(如图像采集装置1)上传的扫描数据,其中扫描数据可以理解为图像采集装置在接收到第一节点发送的扫描指令后或是图像采集装置按周期自动产生扫描指令后,先采集一帧或多帧当前场景图像作为扫描数据,然后在第一节点中基于预先存储的图像识别模型(如卷积神经网络等)对扫描数据中包括的对象进行检测。
[0146]
例如基于图像识别模型识别到所述扫描数据中包括火车站候车厅这一对象,而在预设对象中也是火车站候车厅,则确定所述扫描数据包括与预设对象匹配的目标对象,此时将火车站候车厅这一预设对象作为目标业务场景。可见,第一节点基于扫描数据中包括的识别对象可以快速确定目标业务场景,从而进一步基于目标业务场景从多个人脸识别模型中确定目标人脸识别模型。
[0147]
具体可参考如图3d所示的基于环境变化确定目标业务场景方式的示意图。当第一节点初始从图像采集装置接收到的图像中判定其位于火车站候车室,且此时第一节点中启用的是人脸识别模型1。之后位于火车站候车室的图像采集装置未启用而位于火车站广场的图像采集装置启用,即第一节点检测当前位于火车站广场的图像采集装置启用,则第一
节点中将火车站广场适用的人脸识别模型2作为目标人脸识别模型。
[0148]
具体的,可参考如图3e所示的基于扫描数据确定目标业务场景方式的示意图。当图像采集装置先采集火车站候车室的图片得到火车站候车室的场景图像,将该火车站候车室的场景图像作为扫描数据上传至第一节点。此时第一节点中还未从多个人脸识别模型中确定目标人脸识别模型以进行人脸识别模型的初始化,故在第一节点中基于预先存储的图像识别模型对该火车站候车室的场景图像进行识别,检测到该火车站候车室的场景图像对应的当前业务场景与火车站场景匹配度为99%,在第一节点上提示“检测到当前业务场景与火车站场景匹配度为99%,请确认是否切换或启用到人脸识别模型1”以实现对第一节点后台操作人员进行及时提示。当第一节点后台操作人员确认切换或启用到人脸识别模型1时,则第一节点中将人脸识别模型1作为目标人脸识别模型。其中,人脸识别模型1可以理解为ai算法产商a(也可以理解为开发产商a,或特征提取器所属提供方a)所提供的人脸识别模型。
[0149]
具体的,还可参考如图3f所示的基于扫描数据确定目标业务场景方式的示意图。当图像采集装置先采集火车站候车室的图片得到火车站候车室的场景图像,将该火车站候车室的场景图像作为扫描数据上传至第一节点。此时第一节点中还未从多个人脸识别模型中确定目标人脸识别模型以进行人脸识别模型的初始化,故在第一节点中基于预先存储的图像识别模型对该火车站候车室的场景图像进行识别,检测到该火车站候车室的场景图像对应的当前业务场景与火车站场景匹配度为99%,第一节点自动切换或启用到人脸识别模型1时,则第一节点中将人脸识别模型1作为目标人脸识别模型。
[0150]
方式4、根据用户录入的关键词集确定目标人脸识别模型
[0151]
一些实施方式中,所述从多个人脸识别模型中确定目标人脸识别模型,包括:
[0152]
获取用户录入的关键词集,获取与所述关键词集对应的所述目标人脸识别模型。
[0153]
本技术实施例中,在第一节点中可以接收用户录入的关键词集,然后将关键词集作为检索条件在多个人脸识别模型中确定所述目标人脸识别模型。
[0154]
其中,在第一节点中存储有多个人脸识别模型,每一人脸识别模型对应不同的关键词集,即每一人脸识别模型对应由多个具体关键词字段的具体取值组成的关键词集。一些实施方式中,该关键词集可与人脸识别模型构成下表1所示的映射关系:
[0155][0156]
表1
[0157]
上表1所示的映射关系可为预先配置,即在第一节点中可以基于需求配置大量的关键词集及每一关键词集对应的人脸识别模型。一旦第一节点获取到用户录入的关键词集后,即可基于关键词集中每个关键词的具体取值及上述表1对应的人脸识别模型及关键词
集关系列表共同确定目标人脸识别模型。可见,基于录入的关键词集也可快速确定目标人脸识别模型。具体地,在表1中a11表示在人脸识别模型1下关键词字段1的具体取值,a12表示在人脸识别模型1下关键词字段2的具体取值,依次类推,am2m1表示表示在人脸识别模型m2下关键词字段m1的具体取值。
[0158]
作为方式四的另一并列实施例,用户录入的关键词集可替换为用户录入的语音信号,根据语音信号经过语音识别得到的关键词集来确定所述目标人脸识别模型。可见,基于语音录入方式也能快速切换第一节点中部署的人脸识别模型。
[0159]
方式5、根据人脸识别模型推荐列表确定目标人脸识别模型
[0160]
在每一第一节点中还可以根据各人脸识别模型的历史测评结果(如人脸识别模型在第一节点中的历史使用频次可视为一种历史测评结果)的降序顺序来排名,以得到人脸识别模型推荐列表,且每一第一节点可根据人脸识别模型推荐列表作为参考数据来自定义选定目标人脸识别模型。
[0161]
具体的,还可参考如图3g所示的基于人脸识别模型推荐列表确定目标人脸识别模型方式的示意图,当第一节点为新部署或者第一节点所处环境、位置等变化时,也能基于第一节点中预先存储的推荐算法(如协同过滤推荐算法,可以环境参数、位置参数等参数组成参数集合作为协同过滤推荐算法的输入参数)计算第一节点中所存储多个人脸识别模型各自对应的推荐权重值,基于各人脸识别模型的推荐权重值的降序顺序排名,以得到人脸识别模型推荐列表。
[0162]
其中,每个第一节点内预先部署的人脸识别模型集合不同或相同,而且每一节点内部署的人脸识别模型集合可以新增新的人脸识别模型,也可删除推荐权重值排名低(例如排名为最后3名)或历史测评结果排名低(例如排名为最后3名)的人脸识别模型。或者,还可根据每一第一节点在一段时间的各人脸识别模型使用数据来确定不适合该第一节点使用或者不可能用到的人脸识别模型。
[0163]
需要说明的是,上述方式1-方式5之间可以组合实施,具体来说,组合方式有:从方式1-方式5任意选取2个方式来组合;从方式1-方式5任意选取3个方式来组合;从方式1-方式5任意选取4个方式来组合;从方式1-方式5任意5个方式来组合。
[0164]
207、第一节点接收图像采集装置发送的待识别图片。
[0165]
在本技术实施例中,第一节点具体实施时是部署于前端应用侧的算力平台服务器,且第一节点中存储了多个不同开发产商提供的人脸识别模型。与第一节点通信连接的图像采集装置,则用于采集人脸图像并将人脸图像上传至第一节点中进行人脸识别。
[0166]
其中,所述图像采集装置可以是安防摄像头、监控摄像头、手机摄像头、云摄像头等。所述图像采集装置可以部署于不同场所以适应不同具体应用场景,例如可以应用于智慧安防(即将图像采集装置部署在楼宇、室内等安防需求高的场所)、智慧城市(如将图像采集装置部署在交通枢纽、重点街道、重点场所等位置)、智慧教育(如将图像采集装置部署在平板电脑智能手机、或笔记本电脑等智能终端上,且平板电脑智能手机、或笔记本电脑上运行在线教育软件等)等场景。当图像采集装置采集到待识别图像并发送至第一节点时,第一节点先是接收并保存所述待识别图片。可见,第一节点及时接收到待识别图片后可以便于进行人脸识别。
[0167]
例如:在智慧城市等重点人工智能场景中,所述第二节点可以是国家/省市权威机
构的服务器,在大范围部署图像采集装置的场景下,保护人脸图片库不泄露意义重大。由于各地图像采集装置数据量巨大,无法全部集中在第二节点处理。因此,需要各地就地高速处理。本实施例将所述人脸特征库分发至至少一个部署在不同物理区域的所述第三节点或第一节点,使不同物理区域的所述第二节点或第一节点能够就地利用各自的人脸特征库进行人脸识别。
[0168]
208、第一节点基于所述目标人脸识别模型对所述待识别图片进行特征提取,得到目标人脸特征。
[0169]
在本技术实施例中,由于待识别图片已由图像采集装置上传至第一节点保存,此时在第一节点中已确定了目标人脸识别模型后,可基于目标人脸识别模型中的特征提取器对所述待识别图片进行特征提取得到目标人脸特征。例如所述目标人脸识别模型为卷积神经网络且其包括输入层、卷积层、池化层、全连接层和输出层,则输入层、卷积层和池化层可以组成特征提取器。可见,基于目标人脸识别模型可由快速提取到待识别图片对应的目标人脸特征。
[0170]
209、第一节点在人脸特征库中获取与所述目标人脸识别模型对应的目标人脸特征库。
[0171]
在本技术实施例中,由于作为权威机构服务器的第二节点中已将人脸图片库基于多个不同开发产商提供的人脸识别模型进行特征提取、特征解密及全同态加密得到了人脸特征库,且在人脸特征库中是一定包括与所述目标人脸识别模型对应的目标人脸特征库。可见,可根据所述目标人脸识别模型快速确定目标人脸特征库,便于后续将目标人脸特征与目标人脸特征库进行特征相似度比对。而且,在第一节点中存储的是人脸特征库,并不是人脸图片库及初始人脸特征库,完全避免了人脸图片库及初始人脸特征库明文泄漏的风险,提高了数据安全性。
[0172]
210、第一节点将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文。
[0173]
在本技术实施例中,当已知了所述目标人脸特征库中各个预设密文特征后,可以基于目标人脸识别模型的特征比对模块来计算获取所述目标人脸特征与各个预设密文特征的特征相似度。此时在计算所述目标人脸特征与每个预设密文特征的特征相似度,有至少以下两种方式:
[0174]
第一种是所述目标人脸特征是直接以明文计算与每个预设密文特征的特征相似度;
[0175]
第二种是所述目标人脸特征先通过加密公钥进行全同态加密后得到目标人脸加密特征后,然后计算目标人脸加密特征与每个预设密文特征的特征相似度。其中,所述加密公钥由第二节点发送至第一节点。
[0176]
在上述两种方式中计算所述目标人脸特征与每个预设密文特征的特征相似度,特征相似度可以是欧式距离或余弦相似度等。可见,在确定了目标人脸特征和目标人脸特征库中各个预设密文特征后,可以快速获取目标人脸特征与每个特征相似度的特征相似度,从而可以进一步确定目标相似度密文。
[0177]
一些实施方式中,步骤210具体包括:
[0178]
若从所述目标人脸特征库中匹配到目标预设密文特征,则确定人脸识别成功;
[0179]
根据所述目标人脸特征与所述目标预设密文特征,得到所述目标相似度密文;其中,所述目标预设密文特征为所述人脸特征库中相似度不小于预设相似度的预设密文特征。
[0180]
其中,所述预设相似度可以进行自定义配置。
[0181]
在本技术实施例中,若从所述人脸特征库中未匹配到所述目标预设密文特征,则确定人脸识别失败或者异常,发出提示信息,所述提示信息用于提示人脸识别失败,以便及时提醒相关工作人员针对异常进行响应。
[0182]
211、第一节点输出所述目标相似度密文。
[0183]
在本技术实施例中,所述第一节点可以直接输出所述目标相似度密文的用户标识至第二节点或第三节点,具体参考图2b和图2c,并在所述第二节点或第三节点进行解密,以获取到人脸识别结果的明文。需要说明的是,所述第三节点是所述第二节点的次级节点,所述第三节点与所述第二节点间的数据交互具有安全防护,不会造成数据泄露。其中,所述目标相似度密文可保存在区块链节点上。
[0184]
可见,通过本方案,在智慧安防、智慧城市、智慧教育等场景中,可以将人脸图片库保存在第二节点,并由第二节点对人脸图片库进行特征提取、解密及全同态加密后得到对应的人脸特征库后,将人脸特征库发送至第一节点用于人脸识别,不会涉及到人脸图片库明文泄漏,提高了数据安全性。而且在第一节点中可以部署多个人脸识别模型,基于当前从多个人脸识别模型中确定的目标人脸识别模型对待识别图片进行特征提取后,即可直接与目标人脸识别模型对应的目标人脸特征库进行匹配得到用于识别用户的目标相似度密文,使得第一节点中将算法算力解耦,且能根据场景灵活调度人脸识别算法,可以最大化规避当前深度学习的不鲁棒不可扩展性质,提高实际场景人脸识别的准确性;同时极大的降低了用户采购成本。
[0185]
图2a至图3f中任一项所对应的实施例中所提及的任一技术特征也同样适用于本技术实施例中的图4a-图4c所对应的实施例,后续类似之处不再赘述。
[0186]
参阅图4a-4c,图4a为本技术实施例中第一节点的一种结构示意图;图4b为本技术实施例中第二节点的一种结构示意图;图4c为本技术实施例中人脸识别系统的一种结构示意图。如图4c所示的一种人脸识别系统的结构示意图,其可应用于智慧安防、智慧城市、智慧教育等场景。本技术实施例中的人脸识别系统能够实现对应于上述图2a所对应的实施例中所执行的人脸识别方法的步骤。人脸识别系统实现的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。如图4c所示所述人脸识别系统1可包括至少一个第一节点10和至少一个第二节点20,如图4a所述第一节点10包括第一收发模块11、第一处理模块12和第一输入输出模块13,如图4b所述第二节点包括第二收发模块21和第二处理模块22,所述第一收发模块11、所述第一处理模块12、所述第一输入输出模块13,所述第二收发模块21和所述第二处理模块22的功能实现可参考图2a所对应的实施例中所执行的操作,此处不作赘述。
[0187]
一些实施方式中,对于人脸识别系统1中的第二节点20,所述人脸识别系统1还包括至少一个第一节点10,所述第二节点20包括:
[0188]
所述第二处理模块22,用于获取人脸图片库以及多个人脸识别模型的特征提取
器。
[0189]
本技术实施例中,第二节点是部署于权威机构的权威机构服务器,其主要功能是保存人脸图片库,还可以基于多个不同开发产商(也即多个特征提取器所属提供方)提供的人脸识别模型的特征提取器提取人脸特征并解密后再进行全同态加密得到各特征提取器对应的全同态加密人脸特征库,从而组成人脸特征库。
[0190]
其中,由于在第二节点中预先存储了人脸图片库,及从多个开发产商分别发送的人脸识别模型的特征提取器,此时第二节点可以获取人脸图片库中包括的人脸图片(是原始采集的人脸图片,未经全同态加密等处理),以及获取多个人脸识别模型的特征提取器。而且,第二节点无需获取多个开发产商分别发送的人脸识别模型的特征比对模块,也无需要求多个开发产商开发高度趋同的转换器,仅仅只需获取多个开发产商分别发送的人脸识别模型的特征提取器,使得开发产商开发人脸识别模型的完整性得到了保证。
[0191]
所述第二处理模块22,还用于基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库。
[0192]
本技术实施例中,可以是先在第二节点中部署可信执行环境(tee,全称是trusted execution environment)。此时可以在可信执行环境下通过所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得得到各人脸识别模型分别对应的初始人脸特征库。
[0193]
所述第二处理模块22,还用于对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库。
[0194]
在本技术实施例中,各初始人脸特征库中包括的初始人脸特征均是非明文结果数据,需要在第二节点中对各初始人脸特征库中包括的初始人脸特征进行解密,得到各初始人脸特征库对应的候选人脸特征库。这一解密过程也是为了将各初始人脸特征还原成与人脸图片库相对应的且为明文数据结果的候选人脸特征。可见,在第二节点中对各初始人脸特征库进行解密,可以确保后续同态加密过程正常进行。
[0195]
一些实施方式中,所述第二处理模块22具体用于:
[0196]
在可信执行环境下调用所述多个人脸识别模型分别对应的解密函数;
[0197]
在可信执行环境下对所述多个人脸识别模型分别对应的初始人脸特征库根据对应的解密函数进行解密,得到与各初始人脸特征库对应的候选人脸特征库。
[0198]
所述第二处理模块22,还用于对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征。
[0199]
一些实施方式中,所述第二处理模块22具体用于:
[0200]
在可信执行环境下基于所调用的加密公钥对各候选人脸特征库分别进行全同态加密,得到各候选人脸特征库分别对应的全同态加密人脸特征库,以组成所述人脸特征库。
[0201]
一些实施方式中,所述第二处理模块22还具体用于:
[0202]
接收特征提取器所属提供方发送的调用指令;
[0203]
响应于所述调用指令,将全同态加密接口及加密公钥发送至所述特征提取器所属提供方;
[0204]
接收所述特征提取器所属提供方发送的所述人脸特征库;其中,所述人脸特征库为所述特征提取器所属提供方调用所述全同态加密接口并采用所述加密公钥对候选人脸
特征库进行全同态加密得到。
[0205]
所述第二收发模块21,用于将所述人脸特征库发送至所述第一节点。
[0206]
其中,对于人脸识别系统1中的第一节点10,所述人脸识别系统1还包括至少一个第二节点20,所述第二节点20包括人脸特征库,所述人脸特征库包括多个预设密文特征。在第一节点10中,包括:
[0207]
第一处理模块12,用于从多个人脸识别模型中确定目标人脸识别模型。
[0208]
一些实施方式中,所述第一处理模块12具体用于:
[0209]
获取当前系统时间,基于所述当前系统时间所属于的时间段确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型;
[0210]
或获取当前定位信息,基于所述当前定位信息所属于的定位区域确定目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0211]
一些实施方式中,所述第一处理模块12还具体用于:
[0212]
获取图像采集装置的扫描数据,若所述扫描数据包括与预设对象匹配的目标对象,则确定与所述预设对象对应的业务场景为所述目标业务场景,根据所述目标业务场景从多个人脸识别模型中确定所述目标人脸识别模型。
[0213]
一些实施方式中,所述第一处理模块12还具体用于:
[0214]
获取用户录入的关键词集,获取与所述关键词集对应的所述目标人脸识别模型。
[0215]
所述第一收发模块11,用于接收图像采集装置发送的待识别图片。
[0216]
第一处理模块12,还用于基于所述目标人脸识别模型对所述待识别图片进行特征提取,得到目标人脸特征。
[0217]
第一处理模块12,还用于在人脸特征库中获取与所述目标人脸识别模型对应的目标人脸特征库。
[0218]
第一处理模块12,还用于将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文。
[0219]
一些实施方式中所述第一处理模块12具体用于:
[0220]
若从所述目标人脸特征库中匹配到目标预设密文特征,则确定人脸识别成功;
[0221]
根据所述目标人脸特征与所述目标预设密文特征,得到所述目标相似度密文;其中,所述目标预设密文特征为所述人脸特征库中相似度不小于预设相似度的预设密文特征。
[0222]
其中,所述预设相似度可以进行自定义配置。
[0223]
第一输入输出模块13,用于输出所述目标相似度密文。
[0224]
可见,通过本方案,在智慧安防、智慧城市、智慧教育等场景中,可以将人脸图片库保存在第二节点,并由第二节点对人脸图片库进行特征提取、解密及全同态加密后得到对应的人脸特征库后,将人脸特征库发送至第一节点用于人脸识别,不会涉及到人脸图片库明文泄漏,提高了数据安全性。而且在第一节点中可以部署多个人脸识别模型,基于当前从多个人脸识别模型中确定的目标人脸识别模型对待识别图片进行特征提取后,即可直接与目标人脸识别模型对应的目标人脸特征库进行匹配得到用于识别用户的目标相似度密文,使得第一节点中将算法算力解耦,且能根据场景灵活调度人脸识别算法,可以最大化规避当前深度学习的不鲁棒不可扩展性质,提高实际场景人脸识别的准确性;同时极大的降低
term evolution,英文简称:lte)、电子邮件、短消息服务(英文全称:short messaging service,英文简称:sms)等。
[0232]
存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0233]
输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0234]
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(英文全称:liquid crystal display,英文简称:lcd)、有机发光二极管(英文全称:organic light-emitting diode,英文简称:oled)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。
[0235]
手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0236]
音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转
换为音频数据,再将音频数据输出处理器680处理后,经rf电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。
[0237]
wi-fi属于短距离无线传输技术,手机通过wi-fi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了w-ifi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略。
[0238]
处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
[0239]
手机还包括给各个部件供电的电源690(比如电池),电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0240]
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0241]
在本技术实施例中,该手机所包括的处理器680还具有控制执行以上由图4a所示的第一节点的方法流程或图4b所示的第二节点的方法流程。
[0242]
图7是本技术实施例提供的一种服务器结构示意图,该服务器720可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(英文全称:central processing units,英文简称:cpu)722(例如,一个或一个以上处理器)和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在服务器720上执行存储介质730中的一系列指令操作。
[0243]
服务器720还可以包括一个或一个以上电源726,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口758,和/或,一个或一个以上操作系统741,例如windows server,mac os x,unix,linux,freebsd等等。
[0244]
上述实施例中由服务器所执行的步骤可以基于该图7所示的服务器720的结构。例如上述实施例中由图4a所示的第一节点所执行的步骤可以基于该图7所示的服务器结构。例如,所述处理器7202通过调用存储器732中的指令,执行以下操作:
[0245]
从多个人脸识别模型中确定目标人脸识别模型;
[0246]
通过输入输出接口758接收待识别图片;
[0247]
基于所述目标人脸识别模型对所述待识别图片进行特征提取,得到目标人脸特征;
[0248]
在人脸特征库中获取与所述目标人脸识别模型对应的目标人脸特征库;
[0249]
将所述目标人脸特征与所述目标人脸特征库中的各预设密文特征进行匹配,得到目标相似度密文;
[0250]
通过输入输出接口758输出所述目标相似度密文。
[0251]
又例如,上述实施例中由图4b所示的第二节点所执行的步骤可以基于该图7所示的服务器结构。所述处理器7202通过调用存储器732中的指令,执行以下操作:
[0252]
获取人脸图片库以及多个人脸识别模型的特征提取器;
[0253]
基于所述多个人脸识别模型的特征提取器对所述人脸图片库分别进行人脸特征提取,得到各人脸识别模型分别对应的初始人脸特征库;
[0254]
对各初始人脸特征库进行解密,得到各初始人脸特征库对应的候选人脸特征库;
[0255]
对各候选人脸特征库分别进行全同态加密,得到人脸特征库;其中,所述人脸特征库包括多个预设密文特征;
[0256]
通过输入输出接口758将所述人脸特征库发送至所述第一节点。
[0257]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0258]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0259]
在本技术实施例所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0260]
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0261]
另外,在本技术实施例各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
[0262]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0263]
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机计算机程序时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半
导体介质(例如固态硬盘solid state disk(ssd))等。
[0264]
以上对本技术实施例所提供的技术方案进行了详细介绍,本技术实施例中应用了具体个例对本技术实施例的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术实施例的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术实施例的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献