CN114821751B - 图像识别方法、装置、系统及存储介质 - Google Patents

图像识别方法、装置、系统及存储介质 Download PDF

Info

Publication number
CN114821751B
CN114821751B CN202210732513.6A CN202210732513A CN114821751B CN 114821751 B CN114821751 B CN 114821751B CN 202210732513 A CN202210732513 A CN 202210732513A CN 114821751 B CN114821751 B CN 114821751B
Authority
CN
China
Prior art keywords
target
node
image
feature
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210732513.6A
Other languages
English (en)
Other versions
CN114821751A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Real AI Technology Co Ltd
Original Assignee
Beijing Real AI Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Real AI Technology Co Ltd filed Critical Beijing Real AI Technology Co Ltd
Priority to CN202210732513.6A priority Critical patent/CN114821751B/zh
Publication of CN114821751A publication Critical patent/CN114821751A/zh
Application granted granted Critical
Publication of CN114821751B publication Critical patent/CN114821751B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Image Analysis (AREA)

Abstract

本申请实施例涉及图像识别领域,并提供图像识别方法、装置、系统及存储介质,方法包括第一节点将待识别图像发送至目标节点并通过其中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将第一识别结果发回至目标节点,并根据目标私钥解密得到第二识别结果并发回至第一节点。本方案使得作为图像识别业务需求方的第一节点既能够通过第二节点返回的第二识别结果来判定当前待识别图像的真实结果,又无法直接接触或获取到属于该第二节点的目标特征库中的预设特征,从而起到很好的特征库隔离效果。

Description

图像识别方法、装置、系统及存储介质
技术领域
本申请实施例涉及图像识别技术领域,尤其涉及一种图像识别方法、装置、系统及存储介质。
背景技术
人脸识别是一项分析比较人脸视觉信息特征来进行身份鉴别的计算机技术,通常而言,人脸识别技术需要将用户的人脸图像与数据库中每一个图像进行识别,从而判断用户的人脸图像与数据库中哪一个图像相对应,从而得知用户的身份信息。
人脸识别已经在当代社会中起到了越来越重要的作用,如在支付验证、身份证识别中得到了大范围的应用。人脸识别技术通常使用服务器-客户端模型(C/S模型),在服务端存储了所有的人脸图像数据,客户端采集用户的人脸数据并对服务端发起请求。但在这种场景中,由于发送的都是明文的人脸信息,一些不规范的服务端在接受到人脸信息之后可以对这些信息进行滥用,造成人脸数据的泄露。
针对上面的问题,目前主要采用的是全同态加密的技术。全同态加密可以使得加密之后的数据依然可以进行加减乘除的计算,我们可以令计算的过程在密文状态下进行,得出最终的结果之后,再对结果进行解密,这样就可以在保护初始数据的情况下安全地完成期望的计算过程。在人脸识别的C/S模型中,这一计算过程即是人脸的比对,客户端只需要向服务端发送密文的人脸数据,之后服务端可以使用这一密文数据与数据库中的人脸数据进行距离计算得出计算结果,再返回给客户端即可。
在对现有技术的研究和实践过程中,本申请实施例的发明人发现,若服务端要对比对的结果进行解密,则其需要利用全同态加密的密钥对中的私钥。但是,一旦将全同态加密的密钥对中的私钥存储于服务端,已经拥有私钥的服务端就可以使用私钥直接对客户端传来的人脸图像进行解密。这种情况下,基于全同态加密的图像识别系统并没有起到对人脸图像进行保护的效果。
发明内容
本申请实施例提供了一种图像识别方法、装置及存储介质,能够避免在第一节点也即服务端中存储目标私钥,只能由第一节点将第一识别结果发回至目标节点并根据目标私钥解密得到第二识别结果,而且第一节点不能获取到目标节点中的目标私钥,无法对第一节点中获得的预设特征库进行解密,提高了图像识别系统的整体数据安全性。
第一方面中,从图像识别系统包括至少一个第一节点和至少一个第二节点的角度介绍本申请实施例提供的一种图像识别方法,应用于图像识别系统,所述图像识别系统包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;所述方法包括:
所述第一节点获取待识别图像并发送至目标节点,所述目标节点为所述至少一个第二节点中的任意节点;
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征;其中,所述目标图像识别模型为所述目标节点所部署的图像识别模型;
所述第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果;其中,所述目标特征库为所述目标节点对初始库进行全同态加密得到;
所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果,向所述第一节点发送所述第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
所述第一节点显示所述第二识别结果。
一种可能的设计中,所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果之前,所述方法还包括:
所述目标节点获取第一私钥并对所述第一私钥解密,得到第二私钥;其中,所述第一私钥是对所述全同态加密私钥进行加密得到。
一种可能的设计中,所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取初始图像库和第一测试集,所述初始图像库包括多个测试对象的至少一张测试图像,所述第一测试集包括目标测试对象的多张测试图像,所述目标测试对象为所述多个测试对象中的任意测试对象;
所述第一节点发送所述初始图像库和所述第一测试集至所述目标节点;所述目标节点中部署待评估的图像识别组件,所述图像识别组件中封装目标图像识别模型、以及用于生成全同态加密密钥的接口;
所述目标节点基于所述目标图像识别模型对所述初始图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到对应的目标特征库,以及基于所述目标图像识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果。
一种可能的设计中,所述图像识别系统为医疗症状识别系统,所述图像识别模型为症状识别模型;所述目标节点中部署待评估的症状识别组件,所述症状识别组件中封装症状识别模型、以及用于生成全同态加密密钥的接口;
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取第一医疗症状图像库和第一测试集,所述第一医疗症状图像库包括多个用户的至少一张医疗症状图像,所述第一测试集包括目标用户的多张医疗症状图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点发送所述第一医疗症状图像库和所述第一测试集至所述至少一个第二节点;
所述至少一个第二节点接收所述第一医疗症状图像库和所述第一测试集;
所述至少一个第二节点基于所述症状识别模型对所述第一医疗症状图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一医疗症状特征库,以及基于所述症状识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述至少一个第二节点根据所述目标特征集与所述第一医疗症状特征库的特征匹配结果,确定所述症状识别模型的模型评估结果。
一种可能的设计中,所述图像识别系统为人脸识别系统,所述图像识别模型为人脸识别模型;所述目标节点中部署待评估的人脸识别组件,所述人脸识别组件中封装人脸识别模型、以及用于生成全同态加密密钥的接口;所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取第一人脸图像库和第一测试集,所述第一人脸图像库包括多个用户的至少一张人脸图像,所述第一测试集包括目标用户的多张人脸图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点向所述目标节点发送所述第一人脸图像库和所述第一测试集;
所述目标节点基于所述人脸识别模型对所述第一人脸图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一人脸特征库,以及基于所述人脸识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述目标节点根据所述目标特征集与所述第一人脸特征库的特征匹配结果,确定所述人脸识别模型的模型评估结果。
一种可能的设计中,所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果,包括:
所述目标节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述目标特征库中各特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果;
所述目标节点根据各目标明文特征的最大特征相似度的平均值确定所述目标图像识别模型的模型评估结果。
一种可能的设计中,所述至少一个第二节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述预设特征库中各预设特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果之前,所述方法还包括:
所述第一节点从至少一个第二节点接收至少一个目标特征库以组成所述预设特征库,各所述目标特征库为对应的第二节点对初始特征库进行同态加密得到,所述目标特征库为所述预设特征库的子集;其中,各初始特征库为对应的第二节点对初始图像库基于图像识别模型进行特征提取得到。
一种可能的设计中,所述第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果之前,所述方法还包括:
获取初始库,对所述初始库进行全同态加密,得到目标特征库;
向所述第一节点发送所述目标特征库。
第二方面中,从第二节点的角度介绍本申请实施例提供一种图像识别方法,应用于图像识别系统中的至少一个第二节点 ,所述图像识别系统还包括第一节点,所述图像识别系统中包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;所述方法包括:
从所述第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为所述至少一个所述第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
向所述第一节点发送所述第二识别结果。
第三方面中,本申请实施例提供一种图像识别系统,所述系统包括至少一个第一节点和至少一个第二节点,所述图像识别系统具有实现对应于上述第一方面、及第一方面中的各种可能的设计中提供的图像识别方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
第四方面中,本申请实施例提供一种图像识别装置,具有实现对应于上述第二方面提供的图像识别方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一种可能的设计中,所述装置包括:
第二收发模块和第二处理模块;
所述第二收发模块,用于从所述第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为所述至少一个所述第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
所述第二处理模块,用于根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
所述第二收发模块,还用于向所述第一节点发送所述第二识别结果。
第五方面中,本申请实施例又一方面提供了一种计算机设备,其包括至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述存储器中的计算机程序来执行上述第一方面、第一方面中的各种可能的设计、上述第二方面、第二方面中的各种可能的设计中提供的方法。
本申请实施例又一方面提供了一种计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述第一方面、第一方面中的各种可能的设计、上述第二方面、第二方面中的各种可能的设计中提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面、第一方面中、上述第二方面、第二方面中的各种可能的设计的各种可能的设计所提供的方法。
相较于现有技术,本申请实施例提供的方案中,在智慧医疗、智慧安防、智慧城市、智慧教育等场景中,可以在第一节点将待识别图像发送至所述至少一个第二节点中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点。一方面中,由于作为图像识别业务需求方的第一节点中没有用于特征比对解密的目标私钥,在第一节点中无法对第一识别结果进行解密得到准确的明文比对结果,只能由第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果。而且第一节点也不能获取到第二节点中的目标私钥,所以无法获取到第二节点的目标特征库,从而能够确保第二节点中目标特征库的数据安全性。另一方面中,由于第一识别结果对于第一节点来讲为加密的模糊识别结果,第一节点无法对其解密,而由第二节点解密后返回的第二识别结果仅包括置信度以及目标对象在所述预设特征库中的索引,该索引仅指示目标对象是对应于预设特征库中的某查询编号的预设特征,所以,对于第一节点而言,第一节点既能够通过第二节点返回的第二识别结果来判定当前待识别图像的真实结果,又无法直接接触或获取到属于该第二节点的目标特征库中的预设特征,从而起到很好的特征库隔离效果,即能够通过这种识别机制来保障第二节点的目标特征库的隐私性。
而且,相较于现有技术中,作为图像识别业务需求方的第一节点通常是具有私钥的,因此能够直接在图像识别阶段用私钥解密得到所有识别结果相关的数据,包括不限于当前用于特征比对的目标特征库(即当前启用的图像识别算法的厂商,即本申请中的第二节点),由此可见,现有技术中,作为图像识别业务的服务提供者(第二节点)无法避免自身的相关知识产权(例如目标特征库)被图像识别业务需求方收集或获取。而采用本申请实施例的技术方案后,即便第二节点(即提供图像识别模型的算法厂商,例如人脸识别算法厂商)将该解密后的第二识别结果呈现给购买图像识别业务需求的第一节点(例如购买某人脸识别算法服务的公安机构),该第二节点也无法根据仅有的解密的第二识别结果(即上述置信度和索引)来收集出该第二节点用来进行比对的目标特征库(例如人脸特征库),因此能够保证面向第一节点提供图像识别算法服务的第二节点中数据的隐私性和安全性。
附图说明
图1a为本申请实施例提供的一种图像识别系统的示意图;
图1b为本申请实施例提供的一种图像识别系统的应用场景示意图;
图1c为本申请实施例提供的一种图像识别系统的应用场景示意图;
图2a为本申请实施例中图像识别方法的一种流程示意图;
图2b为本申请实施例中图像识别方法的另一种流程示意图;
图3a为本申请实施例中图像识别方法的另一种流程示意图;
图3b为本申请实施例中图像识别方法中图像识别组件的接口示意图;
图4a为本申请实施例中图像识别系统中第一节点的一种结构示意图;
图4b为本申请实施例中图像识别系统中第二节点的一种结构示意图;
图4c为本申请实施例中图像识别系统的一种结构示意图;
图5为本申请实施例中服务器的一种结构示意图;
图6为本申请实施例中服务终端的一种结构示意图;
图7为本申请实施例中服务器的一种结构示意图。
具体实施方式
本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本申请实施例中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请实施例中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请实施例方案的目的。
本申请实施例供了一种图像识别方法、装置、系统及存储介质,可用于第一节点侧及第二节点侧,或者仅用于第二节点侧,当用于第一节点侧及第二节点侧时可以在第一节点将待识别图像发送至所述至少一个第二节点中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点;当仅用于第二节点侧时第二节点先从所述第一节点接收第一识别结果,然后根据目标私钥对所述第一识别结果解密得到第二识别结果,最后向所述第一节点发送所述第二识别结果。该方案可应用于第一节点可为服务器或服务终端,第二节点也可为服务器或服务终端,第一节点与至少一个第二节点既可以是集成式部署(如第二节点为第一节点的组成部分之一),或者至少第一节点与至少一个第二节点还可以是分离式部署(如所述第一节点和第二节点可以具体部署于同一内网中,但第二节点并不为第一节点的组成部分之一,而是与第一节点是分离的两个部分)。本申请实施例以第一节点为服务器,第二节点为服务器或服务终端,且所述第一节点和第二节点可以具体部署于同一内网中为例,当第一节点应用于服务终端侧,可参考对第一节点为服务器的实施例,不作赘述。
本申请实施例的方案可基于人工智能技术实现,具体来说涉及人工智能技术中的计算机视觉技术技术领域和云技术中的云计算、云存储和数据库等领域,下面将分别进行介绍。
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision, CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例的方案可基于云技术实现,具体来说涉及云技术中的云计算、云存储和数据库等技术领域,下面将分别进行介绍。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(Cloudtechnology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图像类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。本申请实施例可通过云技术对图像识别结果进行保存。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。在本申请实施例中,可将网络配置等信息均保存在该存储系统中,便于服务器调取。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
数据库(Database),简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
数据库管理系统(英语:Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible MarkupLanguage,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如SQL(结构化查询语言(Structured QueryLanguage)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。在本申请实施例中,可将第二识别结果存储在该数据库管理系统中,便于服务器调取。
其中,需要特别说明的是,本申请实施例涉及的服务终端,可以是指向服务终端提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。例如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。例如,个人通信业务(英文全称:Personal Communication Service,英文简称:PCS)电话、无绳电话、会话发起协议(SIP)话机、无线本地环路(Wireless LocalLoop,英文简称:WLL)站、个人数字助理(英文全称:Personal Digital Assistant,英文简称:PDA)等设备。
在服务终端进行图像识别时,服务终端还需要预先存储预设特征库。具体来说,服务终端用于存储、制作、加密、保存预设特征库。
一些实施方式中,本申请实施例可应用于如图1a所示的一种图像识别系统1,所述图像识别系统1包括至少一个第一节点10和至少一个第二节点20,所述第一节点10与所述第二节点20之间可以进行数据交互。其中,所述图像识别系统1包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点20的至少一个基于全同态加密的目标特征库,各所述第二节点20中部署图像识别模型。
当基于上述图1a所述的图像识别系统实现本申请实施例中的图像识别方法时,可参考如图1b、图1c所示的一种应用场景示意图。
本申请实施例中,所述第一节点10先接收图像采集装置上传发送的待识别图像或者是第一节点本地已存储的待识别图像后,然后所述第一节点10将所述待识别图像发送至所述至少一个第二节点20中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后所述第一节点10将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点10将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点10。由于第一节点10中没有目标私钥,在第一节点10中无法对预设特征库中任意一个目标特征库进行解密,也就得不到与任意一个目标特征库对应的目标明文特征库。
其中,需要特别说明的是,本申请涉及的服务器业务服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
本申请实施例涉及的服务终端,该服务终端可以包括:智能手机、平板电脑、笔记本电脑、桌上型电脑、智能电视、智能音箱、、个人数字助理(英文全称:Personal DigitalAssistant,英文简称:PDA)、台式计算机、智能手表等携带多媒体数据处理功能(例如,视频数据播放功能、音乐数据播放功能)的智能终端,但并不局限于此。
本申请实施例主要提供以下技术方案:
在第一节点将待识别图像发送至所述至少一个第二节点中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点。
下面,将结合几个实施例对本申请技术方案进行详细的介绍说明。
参照图2a,以下从图像识别系统包括至少一个第一节点和至少一个第二节点的角度介绍介绍本申请实施例所提供的一种图像识别方法,应用于图像识别系统,所述图像识别系统包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;本申请实施例包括:
201、所述第一节点获取待识别图像并发送至目标节点,所述目标节点为所述至少一个第二节点中的任意节点。
在本申请实施例中,步骤201也可为所述第一节点获取待识别图像,并发送所述待识别图像至目标节点,所述目标节点为所述至少一个第二节点中的任意节点。其中至少第一节点是部署于权威机构的权威机构服务器,至少一个第二节点是部署于权威机构的算法服务器或算法设备,所述至少第一节点与所述至少一个第二节点既可以是集成式部署(如第二节点为第一节点的组成部分之一),所述至少第一节点与所述至少一个第二节点还可以是分离式部署(如所述第一节点和第二节点可以具体部署于同一内网中,但第二节点并不为第一节点的组成部分之一,而是与第一节点是分离的两个部分)。而且每一个第二节点中可以存储来自至少一个算法厂商的图像识别模型。之所以将所述第一节点和第二节点具体部署于同一内网中,以提高数据处理过程的安全性。
具体来说,先以一个第二节点只接收一个开发厂商服务器提供的图像识别模型的场景为例来具体说明。这样当第一节点接收了来自图像采集装置发送的待识别图像后或者是第一节点本地已存储的待识别图像后,第一节点即可将待识别图像发送至任意一个第二节点的图像识别模型进行具体的图像识别处理。当第一节点向所述目标节点发送所述待识别图像后,则由所述目标节点先接收所述待识别图像后再进行下一步的处理。
202、所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征;其中,所述目标图像识别模型为所述目标节点所部署的图像识别模型。
在本申请实施例中,由于多个第二节点均可以提供图像识别模型以供第一节点使用,故在第一节点获取到了待识别图像后,可任意调用一个第二节点作为目标节点,以基于所调用的目标节点中提供的目标图像识别模型对待识别图像进行特征提取,得到目标特征,且所得到的目标特征是待识别图像的明文特征。可见,所述目标特征是在目标节点中获取,而并非在第一节点中获取,这样第一节点无法获取到目标节点中目标图像识别模型的模型参数,提高了目标节点中目标图像识别模型的模型参数安全性。
203、所述第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果;其中,所述目标特征库为所述目标节点对初始库进行全同态加密得到。
在本申请实施例中,当在第二节点中获取到所述目标特征后,可以获知该目标特征是由目标节点中目标图像识别模型进行特征提取得到,而之前该目标节点已向第一节点提供了其对初始库(也可以理解为初始图像库)进行特征提取及全同态加密处理得到的目标特征库,故在第一节点处可以将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果。可见,在第一节点处仅仅只能得到一个加密的模糊结果(也即第一识别结果),无法基于第一识别结果得到最终的人脸识别结果,此时还需要进一步将第一识别结果再次发送至第二节点中的目标节点进行处理方可得到最终的识别结果。
其中,目标节点中的目标特征库是所述目标节点对初始库先进行特征提取再进行全同态加密得到。需要注意的是对初始库所提取特征进行全同态加密所使用到的全同态加密公钥,是目标节点中初始生成的全同态加密公钥经过至少一次加密(如对全同态加密公钥基于对称加密算法加密,更具体如通过高级加密标准加密算法对全同态加密公钥加密)得到第一公钥之后而第一公钥再被解密得到,即目标节点初始会生成一个全同态加密公钥,而这一全同态加密公钥又会在目标节点中被至少一次加密得到第一公钥。当目标节点中需要对初始库对应提取特征进行全同态加密时,先对第一公钥解密得到第二公钥(可以与后文中的第二私钥组成一对密钥对),第二公钥本质上就是全同态加密公钥,最终由第二公钥对初始库所提取特征进行全同态加密得到目标特征库。
之后所述第一节点向所述目标节点发送所述第一识别结果。当在第一节点中获取到所述第一识别结果后,需要发送所述第一识别结果至目标节点进行下一步处理,这是因为第一节点处缺少目标节点中目标私钥,也无法对所述第一识别结果进行解密处理,故也第一节点处只能获取到一个模糊的第一识别结果。
204、所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果,向所述第一节点发送所述第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引。
在本申请实施例中,当目标节点从所述第一节点接收到第一识别结果后,需要对其进行进一步解密才可得到明确的识别结果,即第二识别结果。而且,在所述第二识别结果中是能直观获取到置信度、目标对象在所述预设特征库中的索引。
一些实施方式中,所述根据目标私钥对所述第一识别结果解密之前,所述方法还包括:
获取初始库,对所述初始库进行全同态加密,得到目标特征库;
向所述第一节点发送所述目标特征库。
在本申请实施例中,原来是第一节点直接持有目标私钥,第一节点在得到目标节点提供的目标特征库后,就能基于目标私钥对目标特征库进行解密得到目标明文特征库,之后第一节点能基于目标明文特征库重新训练出接近于还原目标节点中所部署图像识别模型的模型参数,故降低了对目标节点中所部署的图像识别模型的模型参数保护程度。
现在在本申请实施例中则是不让第一节点持有目标私钥,目标私钥只是在目标节点中得到。目标节点中既可以基于第二公钥对初始库所提取特征进行全同态加密得到目标特征库,还可以对目标特征库基于第二私钥(即目标私钥)进行解密得到目标明文特征库,同时也能基于第二私钥(即目标私钥)对第一节点发送的第一识别结果进行解密得到第二识别结果。由于目标特征库对应的目标明文特征库只存在于目标节点中,不会被第一节点所获取,第一节点也就不能基于目标明文特征库重新训练出接近于还原目标节点中所部署图像识别模型的模型参数,故提高了对目标节点中所部署的图像识别模型的模型参数保护程度。
一些实施方式中,所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果之前,所述方法还包括:
所述目标节点获取第一私钥并对所述第一私钥解密,得到第二私钥;其中,所述第一私钥是对所述全同态加密私钥进行加密得到。
在本申请实施例中,所述目标节点在获取到目标私钥之前,需要先获取到目标节点中的第一私钥,这是因为目标节点及其他第二节点中为了确保全同态加密公钥及全同态加密私钥的密钥安全,还会在目标节点及其他第二节点中均会调用节点本地存储的加密算法(具体如对称加密算法加密,更具体如通过高级加密标准加密算法)对全同态加密公钥进行加密得到第一公钥,且对全同态加密公钥进行加密得到第一私钥;其中,全同态加密公钥及全同态加密私钥是一对密钥对,且两者共同组成全同态加密密钥。
之后当需要在所述目标节点对所述第一识别结果进行解密,若直接基于第一私钥是无法完成解密,需要在所述目标节点中调用与之前加密算法对应的解密算法对所述第一私钥进行解密得到第二私钥。此时,所得到的第二私钥与所述全同态加密私钥是相同的,若直接以第二私钥作为目标私钥,实质是将所述全同态加密私钥作为目标私钥,故在目标节点中得到了目标私钥后通过所述目标私钥是能对所述第一识别结果进行解密得到第二识别结果的。
当在目标节点中获取到了明文状态的第二识别结果后,需要及时发送至所述第一节点,以使所述第一节点得到与所述待识别图像对应的所述第二识别结果。
205、所述第一节点显示所述第二识别结果。
在本申请实施例中,所述第一节点从所述目标节点接收所述第二识别结果后,即可获取所述待识别图像的所述第二识别结果作为最终识别结果并在第一节点的本地显示。通过最终识别结果可以直接获取所述待识别图像的目标对象在所述预设特征库中的索引,而且还能获取所述待识别图像与目标对象的相似度,其中所述待识别图像与目标对象的相似度可以理解为置信度。
一些实施方式中,如图3a所示,作为第一节点和第二节点共同对第二节点中的图像识别组件进行模型评估的实施方式,在所述第一节点获取待识别图像并发送至所述至少一个第二节点中的目标节点之前,所述图像识别方法还包括:
301、所述第一节点获取初始图像库和第一测试集,所述初始图像库包括多个测试对象的至少一张测试图像,所述第一测试集包括目标测试对象的多张测试图像,所述目标测试对象为所述多个测试对象中的任意测试对象。
在本申请实施例中,由于至少第一节点是部署于权威机构的权威机构服务器,至少一个第二节点是部署于权威机构的算法服务器或算法设备,所述至少第一节点与所述至少一个第二节点既可以是集成式部署(如第二节点为第一节点的组成部分之一),所述至少第一节点与所述至少一个第二节点还可以是分离式部署(如所述第一节点和第二节点可以具体部署于同一内网中,但第二节点并不为第一节点的组成部分之一,而是与第一节点是分离的两个部分)。而且每一个第二节点中可以存储来自至少一个算法厂商的图像识别模型。当需对至少一个第二节点中的待评估的图像识别组件进行测试时,为了确保图像识别组件中图像识别模型的模型参数安全,即不能轻易的由第一节点获取到原始的图像识别模型,还需要先将该第二节点中的图像识别模型与用于生成全同态加密密钥的接口进行封装,以组成一个私密性较高的图像识别组件之后再与所述第一节点共同完成图像识别组件的评估。
在对第二节点中的待评估的图像识别组件开始测试时,是先在第一节点中获取初始图像库和第一测试集。之后执行302、所述第一节点发送所述初始图像库和所述第一测试集至所述目标节点;所述目标节点中部署待评估的图像识别组件,所述图像识别组件中封装目标图像识别模型、以及用于生成全同态加密密钥的接口。
所述第一节点发送所述初始图像库和所述第一测试集至所述目标节点之后,再由所述目标节点接收所述初始图像库和所述第一测试集。
在本申请实施例中,当在目标节点处获取到了所述初始图像库和所述第一测试集,则可将所述初始图像库和所述第一测试集均作为图像识别组件输入,从而继续执行后续的特征提取处理。
303、所述目标节点基于所述目标图像识别模型对所述初始图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到对应的目标特征库,以及基于所述目标图像识别模型对所述第一测试集进行特征提取,得到目标特征集。
在本申请实施例中,当目标节点接收到了第一节点所发送的所述初始图像库和所述第一测试集后,第二节点中部署的待评估的图像识别组件可以先调用其中的预设指定接口(如下文列举的third_party_initialize_homo_service接口),以触发生成生成超参数和全同态加密密钥。而且,还可继续基于该预设指定接口对所述全同态加密密钥进行加密得到第一密钥(第一密钥包括第一公钥和第一私钥,第一公钥是基于该预设指定接口对全同态加密公钥进行加密得到,第一私钥是基于该预设指定接口对全同态加密私钥进行加密得到),例如具体可通过对称加密算法(如高级加密标准加密算法等)对所述全同态加密密钥进行加密得到第一密钥。但是只要所述初始图像库和所述第一测试集输入至第二节点后,第二节点则需将第一密钥进行解密还原,得到第二密钥且第二密钥包括第二公钥和第二私钥。然后第二节点基于所述图像识别模型对所述初始图像库进行特征提取,调用所述接口中第二公钥对提取的特征进行全同态加密得到目标特征库,且由多个第二节点得到的目标特征库组成所述预设特征库。同时第二节点还基于所述图像识别模型对所述第一测试集进行特征提取,得到目标特征集。
可见,通过目标节点接收所述初始图像库和所述第一测试集后,在目标节点调用接口中第二公钥进行全同态加密,该第二公钥是无法被第一节点获取,能够避免因第一节点获取第二公钥对第一节点中所获取的预设特征库进行解密而得到明文特征库,确保了预设特征库的数据安全。
为了更清楚的了解图像识别组件,下面对其具体构成进行详细介绍。本申请中的图像识别组件可以理解为在厂商开发的传统图像识别模型中包装了全同态加密SDK(SDK全称是Software Development Kit,表示软件开发工具包),如图3b所示在图像识别组件的全同态加密SDK中,至少包装了如下接口:
A1)initialize_public接口,其用于生成全同态加密所需超参数和全同态加密密钥;而且在全同态加密密钥中包括全同态加密公钥和全同态加密私钥;
A2)homo_encrypt_public接口,其用于对输入至全同态加密SDK中的图像特征进行全同态加密,返回全同态加密后的图像特征;而且基于该homo_encrypt_public方法加密后的图像特征是未持有全同态加密私钥的一方都无法解密;
A3)get_topk_public接口,其用于将某一图像特征值与本地的数据库中所有的特征值进行比对,得到最优比对结果;
A4) load_library接口,其用于将经homo_encrypt_public方法全同态加密后的图像特征进行入库保存。
图像识别组件中除了包装了包括上述4个方法的全同态加密SDK,还包装了基于初始图像获取初始图像特征的图像识别模型(初始图像特征是未经过任何加密处理的图像特征),另外还包装了如下的三个接口,具体如下:
B1)third_party_initialize_homo_service接口,其可以调用全同态加密SDK中initialize_public接口生成的超参数和全同态加密密钥,而且还可以对全同态加密密钥进行第二次加密后得到第一密钥,返回第一密钥至图像识别组件以供其进一步使用;
B2)third_party_homo_encrypt接口,其可以先调用图像识别模型以获取其输出的初始图像特征,然后获取third_party_initialize_homo_service接口输出的第一密钥以对其进行解密得到第二密钥,获取第二密钥中的第二公钥(第二公钥即为全同态加密公钥),最后基于全同态加密公钥对初始图像特征进行全同态加密得到图像特征;
B3) third_party_getTopk接口,其可以先调用图像识别模型,在获取输入查询图像并输入至图形识别模型进行特征提取后对应输出的初始查询图像特征,然后获取third_party_initialize_homo_service接口输出的第一密钥以对其进行解密得到第二密钥,获取第二密钥中的第二私钥(第二私钥即为全同态加密私钥),最后将初始查询图像特征和全同态加密私钥作为参数调用get_topk_public接口以获取比对结果和分数;其中与查询图像对应的比对结果和分数可以最终发送至第一节点。
在完成了上述B1)-B3)三个接口的包装后,可以将包括有上述A1)-A4)、B1)-B3)以及图像识别模型(图像识别模型在图3b中未示出)八个接口的图像识别组件编译成一个动态链接库(third_party.so)。
若在第一节点中使用的是python端调用第二节点中的该动态链接库(third_party.so),则还需设置以下python端的接口:
C1)generate_fhe_keys接口,其用于调用third_party_initialize_homo_service接口;
C2)Get_fhe_feature接口,其用于调用third_party_homo_encrypt接口;
C3)Fhe_load_library接口,其用于调用load_library接口;
C4)Fhe_getTopk接口,其用于调用third_party_getTopk接口。
当完成了在动态链接库(third_party.so)中完成了以上四个python端的接口的包装后,最终到一个最新的图像识别组件。
当已知了图像识别组件中所包装的接口后,可知第二节点是先调用generate_fhe_keys接口,以触发其调用third_party_initialize_homo_service接口,从而进一步调用initialize_public接口。在initialize_public接口中初始生成了全同态加密所需超参数和全同态加密密钥,将超参数和全同态加密密钥返回至third_party_initialize_homo_service接口。third_party_initialize_homo_service接口对全同态加密密钥进行第二次加密后得到第一密钥,最后将第一密钥返回至generate_fhe_keys接口并保存。因未将第一密钥直接发送至第一节点进行存储,而是存储在generate_fhe_keys接口中,故不易对其进行破解,提高了全同态加密密钥的存放安全性。
而且,还可知第二节点是先调用third_party_homo_encrypt接口以对第一密钥进行解密得到第二密钥,例如之前是在third_party_initialize_homo_service接口中通过对称加密算法对所述全同态加密密钥进行加密得到第一密钥,此时可在 third_party_homo_encrypt接口对通过对称解密算法对所述第一密钥解密得到第二密钥,以将第二密钥作为所述全同态加密密钥。所得到的全同态加密公钥仍然是包括全同态加密公钥和全同态加密私钥,且所述全同态加密公钥和全同态加密私钥保存在third_party_homo_encrypt接口中以供本接口或其他接口调用。可见,由于只在initialize_public接口、homo_encrypt_public接口、third_party_initialize_homo_service接口、third_party_homo_encrypt接口及generate_fhe_keys接口中出现了全同态加密密钥,并未在第一节点的内存中出现全同态加密密钥,减少了明文密钥在内存中出现的次数,这使第三方通过读取第一节点内存的方式来进行攻击,拿到明文密钥的难度大大提升。
而且,还当已知了图像识别组件中所包装的接口后,可知第二节点是先调用图像识别模型以对初始库进行初次特征提取,得到初始图像特征库;之后将初始图像特征库输入至third_party_homo_encrypt接口;最后由third_party_homo_encrypt接口调用homo_encrypt_public接口并输入初始图像特征库及全同态加密公钥,在homo_encrypt_public接口中通过全同态加密公钥对初始图像特征库进行全同态加密得到目标特征库,所得到的目标特征库反馈至third_party_homo_encrypt接口。可见,第一目标特征库是在图像识别组件中的homo_encrypt_public接口最终获取,即整个同态加密过程是在图像识别组件中的接口中进行,其他节点如第一节点获取到目标特征库是密文特征,在没有全同态加密私钥的情况下是无法解密得到明文数据,提高了目标特征库的安全性。
而且当在第二节点中基于图像识别组件得到了目标特征库后,由homo_encrypt_public接口将目标特征库发送至了third_party_homo_encrypt接口。之后third_party_homo_encrypt接口调用load_library接口(load_library接口即为预设的入库接口),以将目标特征库存储至load_library接口指向的存储区域实现将所述目标特征库入库存储。可见,将所获取的目标特征库入库存储后,可以保存该图像识别组件的目标特征库以供后续重复使用,无需再次将初始库进行特征提取和全同态加密,提高了数据复用率。
304、所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果。
在本申请实施例中,当在目标节点所存储的图像识别组件中的其中一个指定接口获取到了所述目标特征集与所述目标特征库后,可在该指定接口中将所述目标特征集中的目标明文特征对应在目标特征库中匹配到与其具有最大特征相似度的目标筛选特征。目标明文特征对应的目标筛选特征作为该目标明文特征的比对结果(该比对结果在所述目标特征库中的索引也同时可以获取到),且目标明文特征与对应的目标筛选特征之间的特征相似度作为比对结果分数(一般用一个取值范围在0至1的正数取值来表示,也可以将比对结果分数换算成百分数表示)。所述目标特征集中的每一目标明文特征都对应获取到比对结果和比对结果分数后,则完成了确定所述目标特征集与所述目标特征库的特征匹配结果。之后基于每一目标明文特征对应的比对结果和比对结果分数,则可综合确定所述图像识别组件的模型评估结果。可见,由于是在第二件点的图像识别组件中的其中一个指定接口进行特征匹配,并未在第二件点以外的第一节点进行特征匹配,有效确保了特征匹配过程的数据安全性。
一些实施方式中,所述所述目标节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述目标特征库中各特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果之前,所述方法还包括:
所述第一节点从至少一个第二节点接收至少一个目标特征库以组成所述预设特征库,各所述目标特征库为对应的第二节点对初始特征库进行同态加密得到,所述目标特征库为所述预设特征库的子集;其中,各初始特征库为对应的第二节点对初始图像库基于图像识别模型进行特征提取得到。
在本申请实施例中,当在所述至少一个第二节点中获取了目标特征库后,因为第一节点是无法获取到所述至少一个第二节点所对应人脸识别组件中的全同态加密私钥,也就无法对第二节点中获取的目标特征库进行解密,故各第二节点中均获取了目标特征库后,可由所述第一节点从至少一个第二节点接收至少一个目标特征库以组成所述预设特征库。
其中,各所述目标特征库为对应的第二节点对初始特征库进行同态加密得到,所述目标特征库为所述预设特征库的子集;其中,各初始特征库为对应的第二节点对初始图像库基于图像识别模型进行特征提取得到。
一些实施方式中,所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果,包括:
所述目标节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述目标特征库中各特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果;
所述目标节点根据各目标明文特征的最大特征相似度的平均值确定所述目标图像识别模型的模型评估结果。
在本申请实施例中,当已知了图像识别组件中所包装的接口后,目标节点调用get_topk_public接口(即预设的图像特征比对接口)以进行均为明文特征组成的目标明文特征与均为密文特征组成的所述目标特征库中各目标筛选特征进行特征匹配。
此时以目标特征集中一个目标明文特征FF1为例来说明,在get_topk_public接口获取到目标明文特征FF1后,将其与所述预设特征库中各目标筛选特征计算特征相似度,具体可通过计算目标明文特征FF1与目标特征库中各目标筛选特征的欧氏距离或余弦相似度作为目标明文特征FF1与各目标筛选特征之间的特征相似度。之后将目标明文特征FF1与各目标筛选特征之间的特征相似度按特征相似度值降序排序,并获取排名第一位的最大特征相似度所对应的目标筛选特征作为目标明文特征FF1的最终目标筛选特征。此时以目标明文特征FF1的最终目标筛选特征为比对结果(该最终目标筛选特征在目标特征库中的索引也是可以获取到),并以上述最大特征相似度作为比对结果分数,最终组合得到目标明文特征FF1的特征匹配结果。依此类推,可参考获取目标明文特征FF1的特征匹配结果的过程,获取目标特征集中其他目标明文特征的特征匹配结果。
在已知了目标特征集中每一目标明文特征在目标特征库的特征匹配结果后,可以根据各特征匹配结果中比对结果分数的平均数作为所述图像识别组件的模型评估结果,也可以理解为以各目标明文特征的最大特征相似度的平均值确定所述图像识别组件的模型评估结果。
一些实施方式中,所述图像识别系统为人脸识别系统,所述图像识别模型为人脸识别模型;所述目标节点中部署待评估的人脸识别组件,所述人脸识别组件中封装人脸识别模型、以及用于生成全同态加密密钥的接口;上述步骤301-304则可以具体替换为:
所述第一节点获取第一人脸图像库和第一测试集,所述第一人脸图像库包括多个用户的至少一张人脸图像,所述第一测试集包括目标用户的多张人脸图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点向所述目标节点发送所述第一人脸图像库和所述第一测试集;
所述目标节点基于所述人脸识别模型对所述第一人脸图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一人脸特征库,以及基于所述人脸识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述目标节点根据所述目标特征集与所述第一人脸特征库的特征匹配结果,确定所述人脸识别模型的模型评估结果。
在本申请实施例中,与上述步骤301-304的不同之处在于,将具体应用场景描述为人脸识别场景,故将上述步骤301-304中的初始图像库具体替换为第一人脸图像库,将图像识别模型具体替换为人脸识别模型,具体的数据过程可完全参考上述步骤301-304。可见,所述图像识别系统为人脸识别系统,可以灵活应用于人脸识别场景。
一些实施方式中,所述图像识别模型为症状识别模型;所述目标节点中部署待评估的症状识别组件,所述症状识别组件中封装症状识别模型、以及用于生成全同态加密密钥的接口,上述步骤301-304则可以具体替换为:
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取第一医疗症状图像库和第一测试集,所述第一医疗症状图像库包括多个用户的至少一张医疗症状图像,所述第一测试集包括目标用户的多张医疗症状图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点发送所述第一医疗症状图像库和所述第一测试集至所述至少一个第二节点;
所述至少一个第二节点接收所述第一医疗症状图像库和所述第一测试集;
所述至少一个第二节点基于所述症状识别模型对所述第一医疗症状图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一医疗症状特征库,以及基于所述症状识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述至少一个第二节点根据所述目标特征集与所述第一医疗症状特征库的特征匹配结果,确定所述症状识别模型的模型评估结果。
在本申请实施例中,与上述步骤301-304的不同之处在于,将具体应用场景描述为辅助医疗症状识别场景,故将上述步骤301-304中的初始图像库具体替换为第一医疗症状图像库,将图像识别模型具体替换为症状识别模型,具体的数据过程可完全参考上述步骤301-304。可见,所述图像识别系统为医疗症状识别系统,可以灵活应用于医疗症状识别场景。
例如,辅助医疗症状识别场景也是类似与人脸识别场景,只是症状识别模型更专注于提取第一医疗症状图像的图像特征,如其中第一医疗症状图像为具有A症状的CT图像,则症状识别模型可以获取到该具有A症状的CT图像的第一医疗症状图像的图像特征。而且基于该医疗症状识别系统输出的识别结果也只是一个基于图像的识别值,并作为一个参考值提供给用户,并不将该识别结果作为诊断结果输出提供给用户。
请参照图2b,以下继续从第二节点的角度介绍本申请实施例所提供的另一种图像识别方法,应用于图像识别系统中的至少一个第二节点 ,所述图像识别系统还包括第一节点,所述图像识别系统中包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;本申请实施例包括:
401、从所述第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为所述至少一个所述第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
402、根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
403、向所述第一节点发送所述第二识别结果。
在本申请实施例中,与上述步骤201-205的不同之处在于,此时单独以第二节点作为执行主体描述技术方案。在第二节点处可以先获取所述第一节点发送的第一识别结果,且所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到。由于第一识别结果是一个模糊的识别结果,且第一节点处缺少第二节点中目标节点的目标私钥,也无法对所述第一识别结果进行解密处理,只能将其发送至第二节点进行处理。
当第二节点中的目标节点从所述第一节点接收到第一识别结果后,需要对其进行进一步解密才可得到明确的识别结果,即第二识别结果。而且,在所述第二识别结果中是能直观获取到置信度、目标对象在所述预设特征库中的索引。
可见,通过本方案,在智慧医疗、智慧安防、智慧城市、智慧教育等场景中,可以在第一节点将待识别图像发送至所述至少一个第二节点中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点。由于第一节点中没有目标私钥,在第一节点中无法对第一识别结果进行解密得到准确的明文比对结果,只能由第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果。而且第一节点也不能获取到第二节点中的目标私钥,确保了第二节点中目标私钥的数据安全性。
参阅图4a、图4b和图4c,图4a为本申请实施例中图像识别系统中第一节点的一种结构示意图;图4b为本申请实施例中图像识别系统中第二节点的一种结构示意图;图4b为本申请实施例中图像识别系统的一种结构示意图。如图4c所示的一种图像识别系统的结构示意图,其可应用于智慧医疗、智慧安防、智慧城市、智慧教育等场景。本申请实施例中的图像识别系统中的第一节点能够实现对应于上述图2a所对应的实施例中第一节点所执行的图像识别方法的步骤,图像识别系统中的第二节点能够实现对应于上述图2a或图2b所对应的实施例中第二节点所执行的图像识别方法的步骤。图像识别系统实现的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。如图4c所示所述图像识别系统1可包括至少一个第一节点10和至少一个第二节点20,如图4a所示第一节点10具体包括收第一发模块11和第一处理模块12,如图4b所示第二节点20具体包括收第二发模块21和第二处理模块22,所述第一收发模块11、第一处理模块12、第二发模块21和第二处理模块22功能实现可参考图2a所对应的实施例中所执行的操作,或所述第二发模块21和第二处理模块22功能实现可参考图2b所对应的实施例中所执行的操作,此处不作赘述。
一些实施方式中,所述图像识别系统1包括至少一个第一节点10和至少一个第二节点20,所述图像识别系统包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型,所述第一节点10包括第一收发模块11、第一处理模块12及第一输入输出模块13,所述第二节点20包括第二收发模块21及第二处理模块22;
所述第一收发模块11,用于获取待识别图像并发送至目标节点,所述目标节点为所述至少一个第二节点中的任意节点;
所述第二处理模块22,用于基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征;其中,所述目标图像识别模型为所述目标节点所部署的图像识别模型;
所述第一处理模块12,还用于将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果;
所述第二处理模块22,还用于所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果,向所述第一节点发送所述第二识别结果;
所述第一输入输出模块13,还用于输出显示所述第二识别结果。
一些实施方式中,所述图像识别系统1中包括至少一个第二节点20和第一节点10,所述图像识别系统1中包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点10的至少一个基于全同态加密的目标特征库,各所述第二节点20中部署图像识别模型;所述第二节点20包括第二收发模块21及第二处理模块22;
所述第二收发模块21,用于从所述第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为所述至少一个所述第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
所述第二处理模块22,用于根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
所述第二收发模块21,还用于向所述第一节点发送所述第二识别结果。
可见,通过本方案,在智慧医疗、智慧安防、智慧城市、智慧教育等场景中,可以在第一节点将待识别图像发送至所述至少一个第二节点中的目标节点并通过目标节点中部署的目标图像识别模型进行特征提取得到目标特征,之后第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对得到第一识别结果,最后第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果,且所述第二识别结果最终由目标节点发回至所述第一节点。由于第一节点中没有目标私钥,在第一节点中无法对第一识别结果进行解密得到准确的明文比对结果,只能由第一节点将所述第一识别结果发回至所述目标节点并根据目标私钥解密得到第二识别结果。而且第一节点也不能获取到第二节点中的目标私钥,确保了第二节点中目标私钥的数据安全性。
上面从模块化功能实体的角度对本申请实施例中的图像识别系统进行了描述,下面从硬件处理的角度分别对本申请实施例中的图像识别系统进行描述。
需要说明的是,在本申请实施例各实施例(包括图4a-图4c所示的各实施例)中所有的收发模块对应的实体设备可以为收发器,所有的处理模块对应的实体设备可以为处理器。当其中一种装置具有如图4a-图4c所示的结构时,处理器、收发器和存储器实现前述对应该装置的装置实施例提供的所述收发模块和所述处理模块相同或相似的功能,图5中的存储器存储处理器执行上述图像识别方法时需要调用的计算机程序。
图4a-图4c所示的系统可以具有如图5所示的结构,当图4a-图4c所示的系统具有如图5所示的结构时,图5中的处理器能够实现前述对应该装置的装置实施例提供的所述处理模块相同或相似的功能,图5中的收发器能够实现前述对应该装置的装置实施例提供的所述收发模块相同或相似的功能,图5中的存储器存储处理器执行上述图像识别方法时需要调用的计算机程序。在本申请实施例图4a-图4c所示的实施例中的所述收发模块所对应的实体设备可以为输入输出接口,所述处理模块对应的实体设备可以为处理器。
本申请实施例还提供了另一种终端设备,如图6所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(英文全称:Personal Digital Assistant,英文简称:PDA)、销售终端(英文全称:Point of Sales,英文简称:POS)、车载电脑等任意终端设备,以终端为手机为例:
图6示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图6,手机包括:射频(英文全称:Radio Frequency,英文简称:RF)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(英文全称:wirelessfidelity,英文简称:WiFi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图6对手机的各个构成部件进行具体的介绍:
RF电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,RF电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(英文全称:LowNoise Amplifier,英文简称:LNA)、双工器等。此外,RF电路610还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统 (英文全称:Global System of Mobile communication,英文简称:GSM)、通用分组无线服务(英文全称:General Packet Radio Service,英文简称:GPRS)、码分多址(英文全称:Code Division Multiple Access,英文简称:CDMA)、宽带码分多址(英文全称:Wideband Code Division Multiple Access, 英文简称:WCDMA)、长期演进 (英文全称:Long Term Evolution,英文简称:LTE)、电子邮件、短消息服务(英文全称:ShortMessaging Service,英文简称:SMS)等。
存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(英文全称:LiquidCrystal Display,英文简称:LCD)、有机发光二极管(英文全称:Organic Light-EmittingDiode, 英文简称:OLED)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等; 至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经RF电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。
Wi-Fi属于短距离无线传输技术,手机通过Wi-Fi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了W-iFi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略。
处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
手机还包括给各个部件供电的电源690(比如电池),电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该手机所包括的处理器680还具有控制执行以上由图2a或图2b所示的图像识别方法的流程图。
图7是本申请实施例提供的一种服务器结构示意图,该服务器720可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(英文全称:centralprocessing units,英文简称:CPU)722(例如,一个或一个以上处理器)和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在服务器720上执行存储介质730中的一系列指令操作。
服务器720还可以包括一个或一个以上电源726,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口758,和/或,一个或一个以上操作系统741,例如Windows Server,Mac OS X,Unix, Linux,FreeBSD等等。
上述实施例中由服务器所执行的步骤可以基于该图7所示的服务器720的结构。例如上述实施例中由图2a所示的第一节点和第二节点所执行的步骤可以基于该图7所示的服务器结构,或例如上述实施例中由图2b所示的第二节点所执行的步骤可以基于该图7所示的服务器结构。例如,所述处理器7202通过调用存储器732中的指令,执行以下操作:
通过输入输出接口758获取待识别图像并发送至目标节点,所述目标节点为所述至少一个第二节点中的任意节点;
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征;其中,所述目标图像识别模型为所述目标节点所部署的图像识别模型;
所述第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果;其中,所述目标特征库为所述目标节点对初始库进行全同态加密得到;
所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果,向所述第一节点发送所述第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
所述第一节点显示所述第二识别结果。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在申请实施例所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请实施例各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上对本申请实施例所提供的技术方案进行了详细介绍,本申请实施例中应用了具体个例对本申请实施例的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请实施例的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请实施例的限制。

Claims (11)

1.一种图像识别方法,应用于图像识别系统,所述图像识别系统包括至少一个第一节点和至少一个第二节点,其特征在于,所述图像识别系统包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;所述方法包括:
所述第一节点获取待识别图像并发送至目标节点,所述目标节点为所述至少一个第二节点中的任意节点;
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征;其中,所述目标图像识别模型为所述目标节点所部署的图像识别模型;
所述第一节点将所述目标特征与所述目标图像识别模型对应的目标特征库进行比对,得到第一识别结果,向所述目标节点发送所述第一识别结果;其中,所述目标特征库为所述目标节点对初始库进行全同态加密得到;
所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果,向所述第一节点发送所述第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
所述第一节点显示所述第二识别结果;
其中至少第一节点是部署于权威机构的权威机构服务器,至少一个第二节点是部署于权威机构的算法服务器或算法设备,所述至少第一节点与所述至少一个第二节点是集成式部署或分离式部署。
2.根据权利要求1所述的方法,其特征在于,所述目标节点根据目标私钥对所述第一识别结果进行解密得到第二识别结果之前,所述方法还包括:
所述目标节点获取第一私钥并对所述第一私钥解密,得到第二私钥;其中,所述第一私钥是对所述全同态加密私钥进行加密得到。
3.根据权利要求1所述的方法,其特征在于,所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取初始图像库和第一测试集,所述初始图像库包括多个测试对象的至少一张测试图像,所述第一测试集包括目标测试对象的多张测试图像,所述目标测试对象为所述多个测试对象中的任意测试对象;
所述第一节点发送所述初始图像库和所述第一测试集至所述目标节点;所述目标节点中部署待评估的图像识别组件,所述图像识别组件中封装目标图像识别模型、以及用于生成全同态加密密钥的接口;
所述目标节点基于所述目标图像识别模型对所述初始图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到对应的目标特征库,以及基于所述目标图像识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果。
4.根据权利要求3所述的方法,其特征在于,所述图像识别系统为医疗症状识别系统,所述图像识别模型为症状识别模型;所述目标节点中部署待评估的症状识别组件,所述症状识别组件中封装症状识别模型、以及用于生成全同态加密密钥的接口;
所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取第一医疗症状图像库和第一测试集,所述第一医疗症状图像库包括多个用户的至少一张医疗症状图像,所述第一测试集包括目标用户的多张医疗症状图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点发送所述第一医疗症状图像库和所述第一测试集至所述至少一个第二节点;
所述至少一个第二节点接收所述第一医疗症状图像库和所述第一测试集;
所述至少一个第二节点基于所述症状识别模型对所述第一医疗症状图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一医疗症状特征库,以及基于所述症状识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述至少一个第二节点根据所述目标特征集与所述第一医疗症状特征库的特征匹配结果,确定所述症状识别模型的模型评估结果。
5.根据权利要求3所述的方法,其特征在于,所述图像识别系统为人脸识别系统,所述图像识别模型为人脸识别模型;所述目标节点中部署待评估的人脸识别组件,所述人脸识别组件中封装人脸识别模型、以及用于生成全同态加密密钥的接口;所述目标节点基于目标图像识别模型对接收到的所述待识别图像进行特征提取,得到目标特征之前,所述方法还包括:
所述第一节点获取第一人脸图像库和第一测试集,所述第一人脸图像库包括多个用户的至少一张人脸图像,所述第一测试集包括目标用户的多张人脸图像,所述目标用户为所述多个用户中的任意用户;
所述第一节点向所述目标节点发送所述第一人脸图像库和所述第一测试集;
所述目标节点基于所述人脸识别模型对所述第一人脸图像库进行特征提取,调用所述接口对提取的特征进行全同态加密,得到第一人脸特征库,以及基于所述人脸识别模型对所述第一测试集进行特征提取,得到目标特征集;
所述目标节点根据所述目标特征集与所述第一人脸特征库的特征匹配结果,确定所述人脸识别模型的模型评估结果。
6.根据权利要求3所述的方法,其特征在于,所述目标节点根据所述目标特征集与所述目标特征库的特征匹配结果,确定所述图像识别模型的模型评估结果,包括:
所述目标节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述目标特征库中各特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果;
所述目标节点根据各目标明文特征的最大特征相似度的平均值确定所述目标图像识别模型的模型评估结果。
7.根据权利要求6所述的方法,其特征在于,所述目标节点获取所述接口中的特征比对接口,基于所述特征比对接口获取所述目标特征集中目标明文特征与所述目标特征库中各特征的最大特征相似度匹配结果,以确定目标明文特征的特征匹配结果之前,所述方法还包括:
所述第一节点从至少一个第二节点接收至少一个目标特征库以组成所述预设特征库,各所述目标特征库为对应的第二节点对初始特征库进行同态加密得到,所述目标特征库为所述预设特征库的子集;其中,各初始特征库为对应的第二节点对初始图像库基于图像识别模型进行特征提取得到。
8.一种图像识别方法,应用于图像识别系统中的至少一个第二节点,所述图像识别系统还包括第一节点,其特征在于,所述图像识别系统中包括基于全同态加密的预设特征库,所述预设特征库包括来自所述至少一个第二节点的至少一个基于全同态加密的目标特征库,各所述第二节点中部署图像识别模型;所述方法包括:
从所述第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为所述至少一个所述第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在所述预设特征库中的索引;
向所述第一节点发送所述第二识别结果;
其中所述第一节点是部署于权威机构的权威机构服务器,至少一个第二节点是部署于权威机构的算法服务器或算法设备,所述第一节点与所述至少一个第二节点是集成式部署或分离式部署。
9.一种图像识别系统,其特征在于,所述系统包括至少一个第一节点和至少一个第二节点,所述系统用于执行如权利要求1-7任一项所述的方法。
10.一种图像识别装置,其特征在于,所述图像识别装置包括第二收发模块和第二处理模块;
所述第二收发模块,用于从第一节点接收第一识别结果;其中,所述第一识别结果为所述第一节点将目标特征与目标图像识别模型对应的目标特征库进行比对得到;所述目标特征库为至少一个第二节点中的目标节点对初始库进行全同态加密得到;所述目标特征为所述目标节点基于内置的目标图像识别模型对待识别图像进行特征提取得到;
所述第二处理模块,用于根据目标私钥对所述第一识别结果解密,得到第二识别结果;其中,所述目标私钥基于全同态加密私钥进行加密得到,所述第二识别结果包括置信度、目标对象在预设特征库中的索引;
所述第二收发模块,还用于向所述第一节点发送所述第二识别结果。
11.一种计算机可读存储介质,其特征在于,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-7中任一项由第一节点和第二节点执行所述的方法,或者使得计算机执行如权利要求8中由第二节点执行所述的方法。
CN202210732513.6A 2022-06-27 2022-06-27 图像识别方法、装置、系统及存储介质 Active CN114821751B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210732513.6A CN114821751B (zh) 2022-06-27 2022-06-27 图像识别方法、装置、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210732513.6A CN114821751B (zh) 2022-06-27 2022-06-27 图像识别方法、装置、系统及存储介质

Publications (2)

Publication Number Publication Date
CN114821751A CN114821751A (zh) 2022-07-29
CN114821751B true CN114821751B (zh) 2022-09-27

Family

ID=82520252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210732513.6A Active CN114821751B (zh) 2022-06-27 2022-06-27 图像识别方法、装置、系统及存储介质

Country Status (1)

Country Link
CN (1) CN114821751B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115270163B (zh) * 2022-09-26 2023-01-24 北京瑞莱智慧科技有限公司 数据处理方法、相关装置及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9639740B2 (en) * 2007-12-31 2017-05-02 Applied Recognition Inc. Face detection and recognition
US11195057B2 (en) * 2014-03-18 2021-12-07 Z Advanced Computing, Inc. System and method for extremely efficient image and pattern recognition and artificial intelligence platform
CN108429719B (zh) * 2017-02-14 2020-12-01 华为技术有限公司 密钥保护方法及装置
CN110472504A (zh) * 2019-07-11 2019-11-19 华为技术有限公司 一种人脸识别的方法和装置
CN110503160B (zh) * 2019-08-28 2022-03-25 北京达佳互联信息技术有限公司 图像识别方法、装置、电子设备及存储介质
CN111401272B (zh) * 2020-03-19 2021-08-24 支付宝(杭州)信息技术有限公司 一种人脸特征提取方法、装置及设备
CN111738238B (zh) * 2020-08-14 2020-11-13 支付宝(杭州)信息技术有限公司 人脸识别方法和装置
CN112200133B (zh) * 2020-10-28 2022-05-17 支付宝(杭州)信息技术有限公司 保护隐私的人脸识别方法及装置
WO2022121635A1 (zh) * 2020-12-08 2022-06-16 腾讯科技(深圳)有限公司 基于人脸识别的信息处理方法、装置、存储介质及终端
CN113505260A (zh) * 2021-07-16 2021-10-15 腾讯科技(深圳)有限公司 人脸识别方法、装置、计算机可读介质及电子设备
CN113724137A (zh) * 2021-09-08 2021-11-30 深圳壹账通智能科技有限公司 基于图像切分的图像识别方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN114821751A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
US11057216B2 (en) Protection method and protection system of system partition key data and terminal
CN114694226B (zh) 一种人脸识别方法、系统及存储介质
CN114973351B (zh) 人脸识别方法、装置、设备及存储介质
CN107622117A (zh) 图像处理方法和装置、计算机设备、计算机可读存储介质
CN107679561A (zh) 图像处理方法和装置、系统、计算机设备
CN106778295B (zh) 文件存储、显示方法、装置及终端
CN107679563A (zh) 图像处理方法和装置、系统、计算机设备
CN115022098B (zh) 人工智能安全靶场内容推荐方法、装置及存储介质
CN114758388A (zh) 一种人脸识别方法、相关装置及存储介质
CN114821751B (zh) 图像识别方法、装置、系统及存储介质
CN115640567B (zh) Tee完整性认证方法、装置、系统及存储介质
CN116778306A (zh) 伪造对象检测方法、相关装置及存储介质
CN115376192B (zh) 用户异常行为确定方法、装置、计算机设备及存储介质
CN116758362A (zh) 图像处理方法、装置、计算机设备及存储介质
CN115270163B (zh) 数据处理方法、相关装置及存储介质
CN115546516A (zh) 人员聚档方法、装置、计算机设备及存储介质
CN115658348A (zh) 微服务调用方法、相关装置及存储介质
CN114973352A (zh) 人脸识别方法、装置、设备及存储介质
CN115061939A (zh) 数据集安全测试方法、装置及存储介质
CN114444338A (zh) Ai模型组合快速轻量级验证的方法、装置及存储介质
CN113922998A (zh) 一种漏洞风险评估方法、装置、电子设备及可读存储介质
CN115412726B (zh) 视频真伪检测方法、装置及存储介质
CN115565215B (zh) 一种人脸识别算法切换方法、装置及存储介质
CN115525554B (zh) 模型的自动化测试方法、系统及存储介质
CN115801308B (zh) 数据处理方法、相关装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant