CN113642519A - 一种人脸识别系统和人脸识别方法 - Google Patents
一种人脸识别系统和人脸识别方法 Download PDFInfo
- Publication number
- CN113642519A CN113642519A CN202111014994.9A CN202111014994A CN113642519A CN 113642519 A CN113642519 A CN 113642519A CN 202111014994 A CN202111014994 A CN 202111014994A CN 113642519 A CN113642519 A CN 113642519A
- Authority
- CN
- China
- Prior art keywords
- face
- server
- image
- video data
- image data
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例公开一种人脸识别系统和人脸识别方法。在一具体实施方式中,该人脸识别系统包括采集设备、第一终端设备、第一服务器以及第二服务器;第一终端设备被配置为接收图像数据和/或视频数据并发送至第二服务器内;第二服务器被配置为接收图像数据和/或视频数据;对图像数据和/或视频数据进行人脸检测,得到人脸图像;对人脸图像进行识别,以得到人脸图像对应的人脸属性和第一人脸特征;根据第一人脸特征对人脸图像进行分类存储在人脸库内。该实施方式的人脸识别系统可实现实时对检测到的人脸图像进行分类并存储,以便于后期的数据统计和人脸查询,在准确度和实时性方面均可达到较高的水平,充分满足人脸布控分析的需求。
Description
技术领域
本发明涉及计算机技术领域。更具体地,涉及一种人脸识别系统和人脸识别方法。
背景技术
目前,在重大活动、重大节日、演唱会、车站等人流量密集区域,针对一些重点人员,可采用人脸识别布控的方式进行智能监控。
现有技术中的人脸识别布控技术,通常采用摄像头在布控区域采集人脸图像,进而利用网络传输的方式将人脸图像发送至系统后台进行识别比对,以此来准确识别布控的重点人员,实现较好的安全防范和监控效果。
然而,现有的布控系统对采集到的人脸图像,一般会发送至系统后台进行识别比对,在准确度和实时性等方面的表现较差,难以满足人脸识别布控的需求。
发明内容
本发明的目的在于提供一种人脸识别系统和人脸识别方法,以解决现有技术存在的问题中的至少一个。
为达到上述目的,本发明采用下述技术方案:
本发明第一方面提供一种人脸识别系统,包括采集设备、第一终端设备、第一服务器以及第二服务器;
第一终端设备,被配置为接收来自所述采集设备的图像数据和/或视频数据并发送至所述第二服务器内;
第二服务器,被配置为:
接收来自第一终端设备的图像数据和/或视频数据;
调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像;
调用所述第一服务器内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;
根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
可选地,所述第一服务器为包括用以存储已训练的模型的模型仓库的云服务器。
可选地,所述第一服务器被配置为:
接收已完成训练的模型并存储至模型仓库内;
将模型仓库内的已完成训练的模型导入至所述第二服务器内;
向所述第二服务器发送创建人脸识别请求,并接收来自第二服务器的人脸识别接口。
可选地,所述第二服务器为AI服务器。
可选地,所述第一终端设备,还用于获取所述采集设备发送的鉴权请求并解析所述鉴权请求以根据预设设备表对所述采集设备的物理编码信息进行鉴权,所述鉴权请求包括所述采集设备的物理编码信息,所述预设设备表包括预设采集设备编码;若鉴权成功,则向所述采集设备发送响应报文。
可选地,所述鉴权请求为基于字符串加密产生的密文数据,通过base64 编码方式对所述密文数据进行编码而成。
可选地,所述响应报文采用Json串格式;
所述响应报文包括用以添加状态请求的响应字段。
本发明第二方面提供一种人脸识别方法,包括:
第一终端设备获取来自采集设备的图像数据和/或视频数据并发送至第二服务器;
第二服务器接收来自第一终端设备的图像数据和/或视频数据;
第二服务器调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像;
第二服务器调用所述第一服务器内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;
第二服务器调用所述第一服务器内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
可选地,所述第二服务器调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像进一步包括:
在所述图像数据和/或视频数据中检测人脸区域;
对检测到的人脸区域进行人脸关键点识别,以确定出所述人脸区域的人脸关键点;
基于所述人脸关键点,确定所述人脸区域的人脸图像的质量是否合格。
可选地,所述在所述图像数据和/或视频数据中检测人脸区域进一步包括:
对当前帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框以及每个人脸位置框所对应的置信度;
移除具有低于预设置信度阈值的人脸位置框;
获取基于当前帧的图像数据和/或视频数据的人脸位置框预测得到的多个预测人脸位置框;
对下一帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框;
将多个基于下一帧的图像数据和/或视频数据检测的人脸位置框与多个所述预测人脸位置框进行匹配,更新下一帧的人脸位置框的位置。
可选地,所述在所述图像数据和/或视频数据中检测人脸区域还包括:
对应每一个人脸位置框创建及第一存储器;
将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第一存储器内;
基于第一存储器中多个人脸位置框及其位置信息,确定第一存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
确定多个所述交互比是否均大于预设阈值。
可选地,所述第二服务器调用所述第一服务器内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内进一步包括:
计算所述人脸图像的第一人脸特征与所述人脸库中的人脸图像的第一人脸特征之间的相似度;
基于相似度计算结果,确定所述人脸图像的第一人脸特征在所述人脸库中是否匹配成功;
若匹配成功,将所述人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在人脸库内匹配成功的人脸图像所对应的唯一识别码内;
若匹配不成功,对应所述人脸图像创建唯一识别码,并将所述人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在所述唯一识别码内;
展示所述人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/ 或视频数据。
可选地,所述展示所述人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/或视频数据进一步包括:
对应每一个人脸位置框创建第二存储器;
将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第二存储器内;
基于第一存储器中多个人脸位置框及其位置信息,确定第二存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
判断多个所述交互比是否均大于预设阈值。
可选地,所述方法还包括:
第二服务器接收来自第二终端设备的待识别图像;
第二服务器调用所述第一服务器内的已训练的模型对所述待识别图像进行识别,以得到所述待识别图像对应的人脸属性和第二人脸特征;
第二服务器调用所述第一服务器内的已训练的模型计算所述待识别图像的第二人脸特征与所述人脸库中的人脸图像的第一人脸特征之间的相似度;
基于相似度计算结果,确定所述待识别图像的第二人脸特征在所述人脸库中是否匹配成功;
若匹配成功,展示匹配成功的第一人脸特征所对应的唯一识别码、以及对应的人脸图像、人脸位置框以及对应的视频帧图像;
若匹配不成功,第二服务器对应所述待识别图像创建特定识别码,并将所述待识别图像及其第二人脸特征存储在所述特定识别码内;
将所述特定识别码内的待识别图像的第二人脸特征与后续接收的来自第一终端设备的包括图像数据和/或视频数据中的第一人脸特征进行比对。
本发明的有益效果如下:
针对现有技术存在的技术问题,本发明的实施例提供一种人脸识别系统和人脸识别方法。该实施例的人脸识别系统通过将检测到的人脸图像进行分类并存储在人脸库中,从而可通过自身的人脸库进行快速的人脸识别比对并分类,提升人脸识别的识别效率,同时还便于后期的数据统计和人脸查询,在准确度和实时性方面均可达到较高的水平,充分满足人脸布控分析的需求。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1示出本发明的一个实施例可以应用于其中的示例性系统架构图。
图2示出本发明的一个实施例中的人脸识别系统的结构示意图。
图3示出本发明的一个实施例的人脸识别系统的工作流程图。
图4示出本发明的一个实施例的人脸识别方法的流程图。
图5示出本发明的一个实施例的人脸识别方法的算法流程图。
图6示出本发明的一个实施例的人脸识别系统的应用场景图。
图7示出实现本发明实施例提供的服务器的计算机系统的结构示意图。
具体实施方式
为了更清楚地说明本发明,下面结合实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
需要说明的是,虽然术语“第一”、“第二”等可以在此用于描述各种部件、构件、元件、区域、层和/或部分,但是这些部件、构件、元件、区域、层和/或部分不应受到这些术语限制。而是,这些术语用于将一个部件、构件、元件、区域、层和/或部分与另一个相区分。因而,例如,下面讨论的第一部件、第一构件、第一元件、第一区域、第一层和/或第一部分可以被称为第二部件、第二构件、第二元件、第二区域、第二层和/或第二部分,而不背离本发明的教导。
图1示出可应用本发明的人脸识别方法和用于人脸识别的装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104、 106和服务器105、107。网络104、106用以在终端设备101、102、103和服务器105、107之间提供通信链路的介质。网络104、106可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104、107与服务器105、 107交互,以接收或发送消息等。例如,可通过设置在终端设备101、102、 103上的应用客户端或者网页访问的方式访问服务器105和服务器107。终端设备101、102、103上可以安装有各种通讯客户端应用,例如人脸识别应用、人脸布控应用、网页浏览器应用、带有人脸识别功能的购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件以及金融软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、 102、103为硬件时,可以是具有显示屏并且可自采集设备获取图像数据和/ 或视频数据的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105、107可以是提供各种服务的服务器,例如可为CPU、GPU、边缘计算设备、云服务器或AI服务器,服务器也可包括用于存储人脸图像、对应的第一人脸特征以及对应的唯一识别码的人脸库或者用于保存已训练完成的模型的模型仓库。
另外,服务器105、107也可以是对终端设备101、102、103上的人脸识别应用提供支持的后台服务器。后台服务器可以根据用户所提供的图像数据和/或视频数据,调用后台服务器中已完成训练的模型对图像数据和/或视频数据中的人脸图像进行识别,以得到人脸图像对应的人脸属性和第一人脸特征。后台服务器还可以根据识别得到的第一人脸特征对人脸图像进行分类存储至人脸库内。
需要说明的是,本发明实施例所提供的人脸识别方法一般由服务器107 执行,相应地,用于人脸识别的装置一般设置于服务器107中。
需要说明的是,服务器105、107可以是硬件,也可以是软件。当服务器 105、107为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器,或者为云服务器;当服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意合适数目的终端设备、网络和服务器。
为解决现有技术中的技术问题,本发明的一个实施例中提供一种人脸识别系统,如图2-3所示,该人脸识别系统400,包括采集设备401、第一终端设备402、第一服务器403以及第二服务器404;其中,采集设备401被配置为用于采集图像数据和/或视频数据;第一终端设备402被配置为接收来自所述采集设备401的图像数据和/或视频数据并发送至所述第二服务器404内;第二服务器404,被配置为接收来自第一终端设备的图像数据和/或视频数据;调用所述第一服务器403内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像;调用所述第一服务器403内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
该实施例的人脸识别方法通过将检测到的人脸图像进行分类并存储在人脸库中,从而可通过自身的人脸库进行快速的人脸识别比对并分类,提升人脸识别的识别效率,同时还便于后期的数据统计和人脸查询,在准确度和实时性方面均可达到较高的水平,充分满足人脸布控分析的需求。
在一种可能的实现方式中,所述第一服务器403为包括用以存储已训练的模型的模型仓库的云服务器。在一个具体示例中,第一服务器403包括但不限制于CPU、GPU、边缘计算设备。
在一个具体实施方式中,可通过以下步骤构建第一服务器403:
a、在云盘所提供的开放物理空间中创建虚拟设备(例如虚拟机),即通过通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,从而实现在虚拟设备中完成司机计算机设备中所能完成的工作,虚拟设备例如可为linux虚拟机。
b、在虚拟设备中创建用以存储已训练的模型的镜像仓库。其中,模型例如可为用以人脸位置框检测、人脸特征提取、人脸特征比对、人脸属性识别的基于CNN的深度神经网络模型。
在一种可能的实现方式中,第二服务器404为AI服务器。
在一个具体示例中,通过将人脸检测、人脸关键点检测、人脸位置框预测、人脸质量识别、人脸姿态识别、人脸遮挡识别、人脸模糊识别、人脸眼镜识别、人脸胡须识别、人脸年龄识别、人脸性别识别、人脸口罩识别、第一人脸特征识别、人脸属性识别以及后续的人脸特征比对等人脸算法功能点均分别独立封装成底层的工具包(SoftwareDevelopmentKit,SDK),以供第二服务器404的上层算法接口(Application ProgrammingInterface,API)调用,使得用户可通过功能点开关的形式任意组合形成需要的人脸识别算法功能,从而有效提高算法的性能以及人脸识别算法的布置效率。在另一个具体示例中,上述人脸算法功能点对应的模型均采用基于CNN的检测和识别模型,针对每一个人脸算法功能点,选择表现最优的深度神经网络模型进行预测,从而达到最优的精度。
在一种可能的实现方式中,第一服务器403被配置为接收已完成训练的模型并存储至模型仓库内;将模型仓库内的已完成训练的模型导入至所述第二服务器404内;向所述第二服务器404发送创建人脸识别请求,并接收来自第二服务器404的人脸识别接口。
在一个具体示例中,将已完成训练的模型在第一服务器403内部署,并使用该模型进行在线推理服务,其中,包括如下步骤:
1、准备模型文件并进行训练,其中,模型文件例如可为基于TensorFlow、Pytorch、Caffe等主流深度学习框架。
在一个具体示例中,基于模型的作用不同,可采用不同的损失函数进行训练,例如用以人脸识别的模型,损失函数例如可为二元损失函数 (pairwiseloss)、三元损失函数(triplet loss)或者四元损失函数(quadruplet loss) 等损失函数,从而实现模型一次性人脸识别。
2、将模型文件上传至第一服务器403内指定规范的模型仓库内;
3、将第一服务器403内的模型文件导入至第二服务器404内,例如导入至第二服务器404内的人脸识别服务模型空间内。
在一个具体示例中,将第一服务器403内的模型文件通过网盘挂载的方式输出至第二服务器404内,从而降低数据在云服务器上的处理难度,保证模型文件在第一服务器403和第二服务器404之间快速传输,实现第二服务器404实时调用第一服务器403内的模型进行人脸识别。在另一个具体示例中,在一个具体示例中,人脸识别服务模型空间内的模型可以对应于CPU的 openVINO优化加速以及TensorRT优化加速,形成不同版本的模型文件,以用于不同的人脸识别场景。
4、第一服务器403向第二服务器404发送创建人脸识别的请求,例如通过http请求方式向第二服务器404发送请求,该人脸识别请求例如可为创建 CPU/GPU的模型推理服务。第二服务器404接收该创建人脸识别的请求,并向第一服务器403反馈人脸识别接口,例如可为人脸识别API,即表示模型的人脸识别服务状态为“可用”。
5、通过第二服务器404反馈给第一服务器403的人脸识别API,第二服务器404可调用第一服务器403内的多个完成训练的模型,通过任意组合的方式形成需要的人脸识别算法进行人脸识别。
该实现方式通过设置第一服务器403和第二服务器404,其中,第一服务器403用于存储完成训练的多个不同功能的模型,第二服务器404通过人脸识别API,从而通过HTTPgRPC或Rgb/yuv/nv12等方式调用第一服务器403 中的已完成训练的模型以实现弹性推理服务,通过将深度神经网络模型推理和算法业务实现解耦,相比较传统的深度神经网络算法部署模型的强相关性,该实现方式具有易用性、高可用性、易管理型、健康管理等优点,从而使得用户无需考虑基础架构,仅需关注模型和推理服务,同时自带高可用保障和容错机制,可一键完成深度神经网络的升级,支持CPU/GPU可扩展、分布式负载均衡的保障,可有效提高AI的部署效率,降低AI的部署门槛。
在一种可能的实现方式中,第一终端设备402,还用于获取采集设备401 发送的鉴权请求并解析鉴权请求以根据预设设备表对采集设备401的物理编码信息进行鉴权,鉴权请求包括采集设备401的物理编码信息,预设设备表包括预设采集设备编码;若鉴权成功,则向采集设备401发送响应报文。
在一个具体示例中,第一终端设备402获取至少一个采集设备401发送的鉴权请求,解析鉴权请求以根据预设设备表对采集设备401的物理编码信息进行鉴权;在采集设备401的物理编码信息与预设采集设备编码相匹配的情况下,确定采集设备401鉴权通过,向采集设备401发送响应报文。
在采集设备401的物理编码信息与预设设备表中的全部的预设采集设备编码均不匹配且预设设备表中的预设采集设备编码的总数量未达到阈值的情况下,响应于添加设备表的操作,将采集设备401的物理编码信息加入预设设备表并确定该采集设备401鉴权通过。
在采集设备的物理编码信息与预设设备表中的全部的预设采集设备编码均不匹配且预设设备表中的预设采集设备编码的总数量达到阈值的情况下,确定采集设备401鉴权失败。
该实现方式通过接收并解析采集设备401发送的鉴权请求,根据预设设备表对采集设备401进行鉴权,可保证采集设备401与第一终端设备402通信的安全性和可靠性,同时保护人脸识别系统的关键模块(如人脸库中的人脸图像和人脸特征)。
在一个具体示例中,采集设备401的物理编码信息可以为采集设备401 的硬件专属号码、国际移动设备识别码、媒体存取控制位址等用于标识出采集设备401的设备特征或者独特性的标识。采集设备401可以为智能手机、平板电脑、个人计算机、柜员机、出入口闸机、摄像头等设备。
在一个具体实施例中,预设设备表中的预设采集设备编码可以根据采集设备的物理编码信息设定,需要说明的是,预设设备表中包括的预设采集设备编码的个数可以为固定,也可以为不固定的。在一个具体示例中,预设设备表中包括的预设采集设备编码的个数固定,即,预设设备表中只能添加预设数量的预设采集设备编码,预设数量可根据人脸识别的应用场景、第一终端设备的性能以及用户需求等参数设定。例如可设定预设设备表中的预设采集设备编码的个数为100个、200个、300个或500个等,从而保持预设采集设备编码个数的相对稳定,维护第一终端设备的安全性和稳定性。
在一个具体实施例中,第一终端设备在获取多个采集设备发送的鉴权请求的情况下,采用分布式并发鉴权,例如200个采集设备同时向第一终端设备发送鉴权请求,第一终端设备可同时接收鉴权请求并处理,对应地,并发模式下的第一终端设备对于多个通过鉴权的采集设备的数据处理请求均可同时响应,从而提高采集设备鉴权的效率,缩短等待鉴权结果的时间,优化用户的体验。
在一种可能的实现方式中,鉴权请求为基于字符串加密产生的密文数据,通过base64编码方式对密文数据进行编码而成。
在一个具体示例中,采集设备401向第一终端设备402发送鉴权请求的数据,需要经过字符串加密编码和base64转化传输,从而进一步保证采集设备401和第一终端设备402之间的通信安全。
在一种可能的实现方式中,响应报文采用Json串格式,响应报文包括用以添加状态请求的响应字段。
在一个具体示例中,响应报文可采用JavaScript对象简谱(JavaScript ObjectNotation,JSON)的形式发送。在Json串中,可灵活添加状态请求的响应字段,从而调用不同的数据,适应设备鉴权的多场合应用,具体应用方式不作限定。例如,可添加请求调用表示人物性别的数据的指令,调用表示人物性别的数据进行服务推荐等操作。该实现方式使得第一终端设备402鉴权兼顾到更多的应用场景,扩大第一终端设备402鉴权的应用场合。
在一种可能的实现方式中,鉴权请求通过Http Post请求的方式发送。
在一个具体实施方式中,由于Http Post不会被缓存或被保存在采集设备 401的日志中,使用Http Post发送认证请求,可有效限制接入采集设备401 的个数,能够保证第一终端设备402和采集设备401之间的通信安全。而且,由于Http Post能够发送较大的数据量和较多的数据类型,因此,通过Http Post 请求的方式发送认证请求,不仅能够保证第一终端设备402和采集设备401 之间的通信安全,还能够传输更大的数据、兼顾更多的使用场景。
继续参考图4-6,图4-6示出本发明的一个实施例的人脸识别方法,该人脸识别方法例如可适用于人脸布控、寻人等场景,该人脸识别方法包括以下步骤:
S201、第一终端设备获取来自采集设备的图像数据和/或视频数据并发送至第二服务器404;
S202、第二服务器404接收来自第一终端设备的图像数据和/或视频数据;
在该实施例中,第二服务器404可以从本地或者远程网络的方式直接来自第一终端设备的图像数据和/或视频数据,也可以通过第一服务器403进行接收。该采集设备例如可为摄像头,该图像数据和/或视频数据例如可为摄像头所拍摄的图像或视频。第一终端设备可从多个采集设备中进行选择获取单个或多个采集设备的图像数据和/或视频数据。第二服务器404可远程调取第一终端设备获取得到的图像数据和/或视频数据。
S203、第二服务器404调用所述第一服务器403内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像。在一个具体示例中,该人脸图像包括有人脸位置框、位置信息以及类别。
在一种可能的实现方式中,步骤S203第二服务器404调用所述第一服务器403内的已训练的模型对图像数据和/或视频数据进行人脸检测,得到人脸图像还进一步包括:
S2031、在图像数据和/或视频数据中检测人脸区域;
在一种可能的实现方式中,步骤S2031在图像数据和/或视频数据中检测人脸区域进一步包括:
S20311、对当前帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框以及每个人脸位置框所对应的置信度。
在一个具体的实施方式中,第二服务器404可提前设置多个不同预设尺寸的滑动窗口和步长,在当前帧的图像数据和/或视频数据进行从左到右,从上到下地滑动,从而得到多个局部图像帧,将得到的多个局部图像帧分别输入到已完成训练的深度神经网络中进行预测,从而获得多个局部图像帧中的多个人脸位置框以及对应的置信度。
在一个具体的实施方式中,在当前帧的图像数据和/或视频数据进行人脸检测之前,第二服务器404先对当前帧的图像数据和/或视频数据进行预处理,例如将当前帧的图像数据和/或视频数据分为一定尺寸的正方向方格,随后将预处理后的图像数据和/或视频数据直接放入已完成训练的深度神经网络中进行预测,即在多个方块中同时进行单次卷积实现,直接在输出层输出多个人脸位置框及其对应的置信度。在单次卷积过程中,存在许多共享计算步骤,在预测过程中,很多步骤是共享的,从而使得预测速度非常快,可实现实时识别。该实施方式仅需一次卷积即可实现多个人脸位置框的输出,有效提高对人脸位置框的搜索效率,无需反复尝试,也不需要考虑人脸位置框的长宽比,适用于实时性要求较高的情况。
S20312、移除具有低于预设置信度阈值的人脸位置框;
在一个具体的实施方式中,第二服务器404可通过将检测得到的人脸位置框的置信度阈值逐渐提高,例如可将置信度从0.7逐渐提高至0.9,例如将置信度小于0.7的人脸位置框移除后,再将置信度小于0.8的人脸位置框移除,最后将置信度小于0.9的人脸位置框移除,直至人脸角度检测的召回率达到较高的水平(例如大于0.99)。
在一个具体的实施方式中,第二服务器404针对每个人脸位置框,先将低于预设置信度阈值(如0.7)的人脸位置框移除,对余下的人脸位置框进行循环操作,选择最大置信度所对应的人脸位置框输出,移除与该人脸位置框的交互比(IoU,Interstction OverUnion)大于预设阈值(如0.5)的人脸位置框,循环操作,直至所有的人脸位置框均进行过输出或者移除。
S20313、获取基于当前帧的图像数据和/或视频数据的人脸位置框预测得到的多个预测人脸位置框;
在一个具体的实施方式中,第二服务器404调用第一服务器403内的轻量、快速的模型(例如Faster–R-CNN)进行人脸位置框跟踪预测。其中,对应每个不同的人脸位置框预测得到对应的预测人脸位置框。在一个具体示例中,可通过线性速度模型以及卡尔曼滤波的结合从而对人脸位置框进行预测。
S20314、对下一帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框;
在一个具体示例中,第二服务器404例如可采用上述实施例中的提前设置多个不同预设尺寸的滑动窗口和步长进行滑动的方式获取下一帧的图像数据和/或视频数据的多个人脸位置框;在另一个具体示例中,第二服务器404 也可通过上述实施例中的将当前帧的图像数据和/或视频数据分为相同尺寸的正方形网格并直接放入已完成训练的深度神经网络中进行预测的方式获取多个人脸位置框。
S20315、将多个基于下一帧的图像数据和/或视频数据检测的人脸位置框与多个预测人脸位置框进行匹配,更新下一帧的人脸位置框的位置。
在一种具体的实施方式中,第二服务器404采用匈牙利指派算法进行下一帧的人脸位置框与预测人脸位置框的匹配,从而更新下一帧人脸位置框的位置。其中,匈牙利指派算法中的cost矩阵为预测的人脸位置框与下一帧人脸位置框之间的交互比(IoU),即交互比作为匈牙利指派算法的权重。
该实施方式相比于现有技术中的二阶段匹配的技术方案,仅通过一阶段方法即可实现匹配,同时还可实现在线实时跟踪人脸位置框,保证人脸位置框的检测精度和检测速度,同时通过设置交互比作为算法的权重,可有效解决人脸位置框的短视被遮挡的问题。
在一种可能的实现方式中,步骤S2031在图像数据和/或视频数据中检测人脸区域还包括:
S20316、对应每一个人脸位置框创建第一存储器;
S20317、将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第一存储器内;
S20318、基于第一存储器中多个人脸位置框及其位置信息,确定第一存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
S20319、确定多个交互比是否均大于预设阈值。
在一个具体实施例中,第二服务器404对应每个人脸位置框创建对应的第一存储器,第一存储器用于存储连续多帧的人脸位置框及其位置信息,即对连续多帧的图像数据和/或视频数据进行人脸检测的同时,将检测得到的对应的人脸位置框及其位置信息存储在同一个第一存储器内,当存储至一定量的人脸位置框(例如3帧、5帧),计算相邻帧的人脸位置框之间的交互比,例如计算第一帧与第二帧的人脸位置框之间的交互比、第二帧与第三帧的人脸位置框之间的交互比、第三帧与第四帧的人脸位置框之间的交互比、第四帧与第五帧的人脸位置框之间的交互比,并将多个交互比分别与预设阈值进行比较,若多个交互比均大于预设阈值,即相邻帧的人脸位置框的重叠程度满足预设要求,则表明对该人脸位置框的跟踪检测准确,则去除第一存储器;若多个交互比小于预设阈值,则去除第一存储器,并对应最新的一帧的人脸位置框创建新的第一存储器,并重复上述操作。
该实施方式对人脸位置框进行持续跟踪和检测,可有效保证对人脸位置框的持续有效跟踪,防止出现人脸位置框跟丢的情况,进一步提高人脸位置框的检测效率、检测性能和检测准确性,使得对同一个人脸位置框检测的召回率(recall)和检测精度(precision)之间达到优异的平衡。另外,通过设置第一存储器存储不同帧的人脸位置框,从而无需重复识别连续多帧的人脸位置框以进行交互比计算,从而实现实时检测和实时修正。
S2032、对检测到的人脸区域进行人脸关键点识别,以确定出人脸区域的人脸关键点;
在一个具体实施例中,第二服务器404例如可对检测到的人脸区域进行人脸关键点识别,人脸关键点例如可为两个眼睛的中心、左右侧嘴角和鼻尖等。在一个具体示例中,可通过深度神经网络模型输出上述人脸关键点的(x, y)坐标实现对人脸关键点的识别。
S2033、基于人脸关键点,确定人脸区域的人脸图像的质量是否合格。
在一个具体实施例中,第二服务器404基于提取得到的人脸关键点(两个眼睛的中心、左右侧嘴角和鼻尖),采用反射变换算法进行人脸对齐,规范化到正脸,以计算得到标准的正脸的人脸图像。随后判断得到的标准的正脸的人脸图像的质量是否合格,若满足质量阈值,则对人脸图像进行识别以提取人脸属性和第一人脸特征。
在一种可能的实现方式中,在步骤S2033基于人脸关键点,确定人脸区域的人脸图像的质量是否合格后,还进一步包括:
S2034、对人脸区域的人脸图像进行姿态检测、遮挡识别以及模糊识别。
在一个具体实施例中,第二服务器404通过对应的深度神经网络模型对人脸区域的人脸图像进行姿态检测、遮挡识别以及模糊识别,从而保证人脸图像中的人脸清晰、无遮挡,保证后续提取得到的人脸属性和第一人脸特征的准确性。
S204、第二服务器404调用所述第一服务器403内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;
在一个具体实施例中,第二服务器404可通过基于CNN(Convolutional NeuralNetworks,卷积神经网络)对人脸图像进行识别,以得到人脸图像对应的人脸属性。在一个具体示例中,人脸属性作为人脸结构化信息,例如可包括是否佩戴眼镜、是否有胡须、年龄、性别等属性。同时,第二服务器404 将提取得到的人脸属性进行可视化展示。
在一个具体实施例中,第二服务器404通过基于CNN模型,根据人脸关键点(两个眼睛的中心、左右侧嘴角和鼻尖)计算得到的标准正脸的人脸图像,提取该人脸图像中的512维数据作为第一人脸特征。
S205、第二服务器404调用所述第一服务器403内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
在一种可能的实现方式中,步骤S205所述第二服务器404调用所述第一服务器403内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内进一步包括:
S2051、计算人脸图像的第一人脸特征与人脸库中的人脸图像的第一人脸特征之间的相似度;
S2052、基于相似度计算结果,确定人脸图像的第一人脸特征在人脸库中是否匹配成功;若匹配成功,将人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在人脸库内匹配成功的人脸图像所对应的唯一识别码内;若匹配不成功,对应人脸图像创建唯一识别码,并将人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在唯一识别码内。
在一个具体的实施方式中,第二服务器404预先采用二元损失函数(pairwiseloss)、三元损失函数(triplet loss)或者四元损失函数(quadruplet loss) 等损失函数来训练用于人脸特征比对的模型,并将人脸图像的第一人脸特征和人脸库中的候选的人脸图像的第一人脸特征输入至完成训练的模型中,从而输出两者的差异值,即相似度计算结果。
若两者的差异值足够小,即可认定人脸图像与人脸库中的候选的人脸图像匹配成功,则将该自图像数据和/或视频数据提取得到的人脸图像及其第一人脸特征,对应的人脸位置框和对应的图像数据和/或视频数据统一存储在匹配成功的人脸图像对应的唯一识别码内以扩充该唯一识别码下对应的人脸图像,若两者的差异值较大,则认定人脸图像与人脸库中的候选的人脸图像匹配不成功,当人脸图像与人脸库中的人脸图像均匹配不成功,第二服务器404 在人脸库中对应该人脸图像登记对应的唯一识别码,并将该自图像数据和/或视频数据提取得到的人脸图像及其第一人脸特征,对应的人脸位置框和对应的图像数据和/或视频数据统一存储在新创建的唯一识别码内,从而作为人脸数据库便于后期的人脸查询或者轨迹查询。
S2053、展示人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/或视频数据。
在一个具体的实施方式中,第二服务器404将人脸位置框及其位置信息以及对应的唯一识别码发送至第三终端设备内进行存储,以供后续的大数据存储、统计、查询或报警,随后第三终端设备将人脸位置框及其位置信息以及对应的唯一识别码发送至可视化显示设备中进行显示,同时,第二服务器 404将对应的图像数据和/或视频数据传输至第四终端设备中进行存储并编码,第四终端设备将对应的图像数据和/或视频数据传输中可视化显示设备中显示。
在一种可能的实现方式中,步骤S2053展示人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/或视频数据还进一步包括:
S20531、对应每一个人脸位置框创建第二存储器;
S20532、将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第二存储器内;
S20533、基于第二存储器中多个人脸位置框及其位置信息,确定第二存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
S20534、判断多个交互比是否均大于预设阈值。
在一个具体实施例中,第二服务器404对应每一个可视化显示的人脸位置框创建对应的第二存储器,第二存储器用于存储该人脸位置框在接下来连续多帧的位置信息,即第二服务器404在对接下来连续多帧的图像数据和/或视频数据进行人脸检测的同时,将检测得到的对应的人脸位置框及其位置信息存储在同一个第二存储器内,当存储至一定量的人脸位置框(例如3帧、5 帧),计算相邻帧的人脸位置框之间的交互比,例如计算第一帧与第二帧的人脸位置框之间的交互比、第二帧与第三帧的人脸位置框之间的交互比、第三帧与第四帧的人脸位置框之间的交互比、第四帧与第五帧的人脸位置框之间的交互比,并将多个交互比分别与预设阈值进行比较,若多个交互比均大于预设阈值,即相邻帧的人脸位置框的重叠程度满足预设要求,则表明对该人脸位置框的跟踪检测准确,未出现漏跟踪的情况,则去除第二存储器;若多个交互比小于预设阈值,则去除第一存储器,并对应最新的一帧的人脸位置框创建新的第二存储器,并重复上述操作。
该实施方式对人脸位置框进行持续跟踪和检测,可有效保证对人脸位置框的持续有效跟踪,防止出现人脸位置框漏跟踪的情况,进一步提高人脸位置框的检测效率、检测性能和检测准确性,使得对同一个人脸位置框检测的召回率(recall)和检测精度(precision)之间达到优异的平衡。另外,通过设置第二存储器存储不同帧的人脸位置框,从而无需重复识别连续多帧的人脸位置框以进行交互比计算,从而实现实时检测和实时修正。
在一种可能的实现方式中,该方法还包括:
S206、第二服务器404接收来自第二终端设备的待识别图像;
S207、第二服务器404调用所述第一服务器403内的已训练的模型对所述待识别图像进行识别,以得到所述待识别图像对应的人脸属性和第二人脸特征;
在一个具体实施例中,第二服务器404可通过基于CNN(Convolutional NeuralNetworks,卷积神经网络)对待识别图像进行识别,以得到待识别图像对应的人脸属性。在一个具体示例中,人脸属性作为人脸结构化信息,例如可包括是否佩戴眼镜、是否有胡须、年龄、性别等属性。同时,第二服务器 404将提取得到的人脸属性进行可视化展示。
在一个具体实施例中,第二服务器404通过基于CNN模型,提取该待识别图像中的512维数据作为第二人脸特征。
S208、第二服务器404调用所述第一服务器403内的已训练的模型计算待识别图像的第二人脸特征与人脸库中的人脸图像的第一人脸特征之间的相似度;
S209、基于相似度计算结果,确定待识别图像的第二人脸特征在人脸库中是否匹配成功;若匹配成功,展示匹配成功的第一人脸特征所对应的唯一识别码、以及对应的人脸图像、人脸位置框以及对应的视频帧图像;若匹配不成功,对应待识别图像创建特定识别码,并将待识别图像及其第二人脸特征存储在特定识别码内;
在一个具体的实施方式中,第二服务器404可如上述实施例所述,预先采用二元损失函数(pairwiseloss)、三元损失函数(triplet loss)或者四元损失函数(quadrupletloss)等损失函数来训练用于人脸特征比对的模型,并将待识别图像的第二人脸特征和人脸库中的候选的人脸图像的第一人脸特征输入至完成训练的模型中,从而输出两者的差异值,即相似度计算结果。
若两者的差异值足够小,即可认定待识别图像与人脸库中的候选的人脸图像匹配成功,则将匹配成功的第一人脸特征对应的唯一识别码下的所有人脸图像、对应的图像数据和/或视频数据及人脸位置框按照一定顺序展示。
若两者的差异值较大,则认定人脸图像与人脸库中的候选的人脸图像匹配不成功,当人脸图像与人脸库中的人脸图像均匹配不成功,第二服务器404 在人脸库中对应该人脸图像登记对应的特定识别码,并将该自待识别图像提取得到的人脸图像及其第二人脸特征,对应的人脸位置框和对应的待识别图像统一存储在新创建的特定识别码内,便于与后期获取的人脸图像及其第一人脸特征进行比对。
S210、将特定识别码内的待识别图像的第二人脸特征与后续接收的来自第一终端设备的包括图像数据和/或视频数据中的第一人脸特征进行比对。
在一个具体实施方式中,在寻人的应用场景中,第二服务器404通过接收该人员的待识别图像,并将待识别图像的第二人脸特征和人脸库中的候选的人脸图像的第一人脸特征进行比对。
若若比对后的置信度大于预设的置信度阈值(例如0.9),则可视为比对成功,则输出识别成功的唯一识别码,并将人脸库中对应该人员的所有人脸图像、对应的图像数据和/或视频数据及人脸位置框按照图像数据和/或视频数据的获取时间进行排序展示,便于了解该人员的行动轨迹,有利于快速寻找到人员。
若比对不成功,即目前的人脸库中并未检索到该人员,第二服务器404 在人脸库中对应该待识别图像进行人脸登记,创建特定识别码,并将该自待识别图像提取得到的人脸图像及其第二人脸特征,对应的人脸位置框和对应的待识别图像统一存储在新创建的特定识别码内。待第二服务器404后续接收到来自第一终端设备的图像数据和/或视频数据并检测出人脸图像和第一人脸特征后,将后续识别的人脸图像和第一人脸特征逐个与特定识别码内的待识别图像及其第二人脸特征进行比对。
该实施方式通过将待识别图像及其第二人脸特征存储在人脸库中,并与后续识别出来的人脸图像和第一人脸特征逐个比对,相比于现有的多次采用1 比N人脸认证的技术方案,该实施节省多次识别待识别图像的过程,仅需对待识别图像进行一次识别,大大节省待识别图像识别的时间,有效提高人脸识别的效率和速度。
在一种可能的实现方式中,该方法还包括:
S206、第二服务器404采集身份证件的图像以及持该身份证件的人的待识别图像;
S207、第二服务器404调用第一服务器403内的完成训练的模型从采集的身份证件的图像获取身份证件上的第三人脸特征;
S208、第二服务器404调用第一服务器403内的完成训练的模型对待识别图像进行识别,以得到待识别图像对应的人脸属性和第二人脸特征
S209、第二服务器404调用第一服务器403内的完成训练的模型计算待识别图像的第二人脸特征与身份证件上的第三人脸特征之间的相似度;
S210、基于相似度计算结果,对持有该身份证件的持证人进行身份认证。
参见图6,图6是根据本发明的一个实施例的人脸识别方法的应用场景的一个示意图。在如图6所示的应用场景中,采集设备501采集图像数据和/或视频数据,并向第一终端设备502发送鉴权请求,第一终端设备502对该采集设备传输的图像数据和/或视频数据进行编码并确认其鉴权请求,鉴权成功后,采集设备501将采集图像数据和/或视频数据发送至第一终端设备502,第一终端设备502启动AI云推理服务,并运行人脸识别接口,从而通过HTTP gRPC或Rgb/yuv/nv12等方式访问云端AI推理服务器503,云端AI推理服务器503调用完成训练的模型进行人脸识别,以提取对应的人脸图像及其人脸属性和第一人脸特征,将人脸属性输出至可视化显示设备505中进行显示,并根据第一人脸特征对人脸图像进行分类存储在云端AI推理服务器503的人脸库。随后将对应的人脸位置框及其位置信息以及对应的唯一识别码发送至第三终端设备504内进行存储,以供后续的大数据存储、统计、查询或报警,之后,第三终端设备504将人脸位置框及其位置信息以及对应的唯一识别码发送至可视化显示设备505中进行显示,同时,将对应的图像数据和/或视频数据传输至第四终端设备506中进行存储并编码,第四终端设备506将对应的图像数据和/或视频数据传输中可视化显示设备505中显示。
另外,在如图6所示的应用场景中,第二终端设备507采集待识别图像,并向第一终端设备502发送鉴权请求,第一终端设备502对该第二终端设备 507传输的待识别图像进行编码并确认其鉴权请求,鉴权成功后,第一终端设备502将获取的待识别图像发送至云端AI推理服务器503(包括第一服务器和第二服务器),云端AI推理服务器503调用完成训练的模型进行人脸识别,以提取对应的人脸图像及其人脸属性和第二人脸特征,将人脸属性输出至可视化显示设备505中进行显示,将该第二人脸特征与人脸库中的候选的人脸图像的第一人脸特征进行比对,若匹配成功,则将匹配成功的第一人脸特征所对应的唯一识别码、以及对应的人脸图像、人脸位置框以及对应的视频帧图像输出至可视化显示设备505中进行显示。第二终端设备507例如可为智能手机、平板电脑、个人计算机、柜员机、出入口闸机、摄像头等设备。
该实现方式通过搭建高效的弹性云推理服务以及设计人脸识别算法流程以进行人脸检测、特征计算和特征比对,从而有效对多个采集设备进行分布式鉴权,无论是公有部署或私有部署,人脸识别系统最终均可在准确度和实时性方面实现较高的水平,满足人脸布控分析需求。
如图7所示,适于用来实现上述实施例提供的人脸识别系统中的第二服务器的计算机设备,包括中央处理模块(CPU),其可以根据存储在只读存储器(ROM)中的程序或者从存储部分加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有计算机系统操作所需的各种程序和数据。CPU、ROM以及RAM通过总线被此相连。输入/输入(I/O)接口也连接至总线。
以下部件连接至I/O接口:包括键盘、鼠标等的输入部分;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。
特别地,根据本实施例,上文流程图描述的过程可以被实现为计算机软件程序。例如,本实施例包括一种计算机程序产品,其包括有形地包含在计算机可读介质上的计算机程序,上述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。
附图中的流程图和示意图,图示了本实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或示意图中的每个方框可以代表一个模块、程序段或代码的一部分,上述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,示意图和/或流程图中的每个方框、以及示意和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于本领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (14)
1.一种人脸识别系统,其特征在于,包括:
采集设备、第一终端设备、第一服务器以及第二服务器;
第一终端设备,被配置为接收来自所述采集设备的图像数据和/或视频数据并发送至所述第二服务器内;
第二服务器,被配置为:
接收来自第一终端设备的图像数据和/或视频数据;
调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像;
调用所述第一服务器内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;
根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
2.根据权利要求1所述的系统,其特征在于,所述第一服务器为包括用以存储已训练的模型的模型仓库的云服务器。
3.根据权利要求2所述的系统,其特征在于,
所述第一服务器被配置为:
接收已完成训练的模型并存储至模型仓库内;
将模型仓库内的已完成训练的模型导入至所述第二服务器内;
向所述第二服务器发送创建人脸识别请求,并接收来自第二服务器的人脸识别接口。
4.根据权利要求1所述的系统,其特征在于,所述第二服务器为AI服务器。
5.根据权利要求1所述的系统,其特征在于,
所述第一终端设备,还用于获取所述采集设备发送的鉴权请求并解析所述鉴权请求以根据预设设备表对所述采集设备的物理编码信息进行鉴权,所述鉴权请求包括所述采集设备的物理编码信息,所述预设设备表包括预设采集设备编码;若鉴权成功,则向所述采集设备发送响应报文。
6.根据权利要求1所述的系统,其特征在于,
所述鉴权请求为基于字符串加密产生的密文数据,通过base64编码方式对所述密文数据进行编码而成。
7.根据权利要求1所述的系统,其特征在于,
所述响应报文采用Json串格式;
所述响应报文包括用以添加状态请求的响应字段。
8.一种人脸识别方法,其特征在于,包括:
第一终端设备获取来自采集设备的图像数据和/或视频数据并发送至第二服务器;
第二服务器接收来自第一终端设备的图像数据和/或视频数据;
第二服务器调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像;
第二服务器调用所述第一服务器内的已训练的模型对人脸图像进行识别,以得到所述人脸图像对应的人脸属性和第一人脸特征;
第二服务器调用所述第一服务器内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内,人脸库包括人脸图像及其第一人脸特征以及对应的唯一识别码。
9.根据权利要求8所述的方法,其特征在于,所述第二服务器调用所述第一服务器内的已训练的模型对所述图像数据和/或视频数据进行人脸检测,得到人脸图像进一步包括:
在所述图像数据和/或视频数据中检测人脸区域;
对检测到的人脸区域进行人脸关键点识别,以确定出所述人脸区域的人脸关键点;
基于所述人脸关键点,确定所述人脸区域的人脸图像的质量是否合格。
10.根据权利要求9所述的方法,其特征在于,所述在所述图像数据和/或视频数据中检测人脸区域进一步包括:
对当前帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框以及每个人脸位置框所对应的置信度;
移除具有低于预设置信度阈值的人脸位置框;
获取基于当前帧的图像数据和/或视频数据的人脸位置框预测得到的多个预测人脸位置框;
对下一帧的图像数据和/或视频数据进行人脸检测,获得多个人脸位置框;
将多个基于下一帧的图像数据和/或视频数据检测的人脸位置框与多个所述预测人脸位置框进行匹配,更新下一帧的人脸位置框的位置。
11.根据权利要求10所述的方法,其特征在于,所述在所述图像数据和/或视频数据中检测人脸区域还包括:
对应每一个人脸位置框创建及第一存储器;
将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第一存储器内;
基于第一存储器中多个人脸位置框及其位置信息,确定第一存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
确定多个所述交互比是否均大于预设阈值。
12.根据权利要求10所述的方法,其特征在于,所述第二服务器调用所述第一服务器内的已训练的模型,根据第一人脸特征对人脸图像进行分类存储在人脸库内进一步包括:
计算所述人脸图像的第一人脸特征与所述人脸库中的人脸图像的第一人脸特征之间的相似度;
基于相似度计算结果,确定所述人脸图像的第一人脸特征在所述人脸库中是否匹配成功;
若匹配成功,将所述人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在人脸库内匹配成功的人脸图像所对应的唯一识别码内;
若匹配不成功,对应所述人脸图像创建唯一识别码,并将所述人脸图像及其第一人脸特征、对应的人脸位置框以及对应的图像数据和/或视频数据存储在所述唯一识别码内;
展示所述人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/或视频数据。
13.根据权利要求12所述的方法,其特征在于,所述展示所述人脸图像的人脸位置框及其唯一识别码以及对应的图像数据和/或视频数据进一步包括:
对应每一个人脸位置框创建第二存储器;
将后续的连续多帧的图像数据和/或视频数据中的对应的人脸位置框及其位置信息存储至第二存储器内;
基于第二存储器中多个人脸位置框及其位置信息,确定第二存储器中相邻帧图像数据和/或视频数据中的人脸位置框之间的交互比;
判断多个所述交互比是否均大于预设阈值。
14.根据权利要求10所述的方法,其特征在于,所述方法还包括:
第二服务器接收来自第二终端设备的待识别图像;
第二服务器调用所述第一服务器内的已训练的模型对所述待识别图像进行识别,以得到所述待识别图像对应的人脸属性和第二人脸特征;
第二服务器调用所述第一服务器内的已训练的模型计算所述待识别图像的第二人脸特征与所述人脸库中的人脸图像的第一人脸特征之间的相似度;
基于相似度计算结果,确定所述待识别图像的第二人脸特征在所述人脸库中是否匹配成功;
若匹配成功,展示匹配成功的第一人脸特征所对应的唯一识别码、以及对应的人脸图像、人脸位置框以及对应的视频帧图像;
若匹配不成功,第二服务器对应所述待识别图像创建特定识别码,并将所述待识别图像及其第二人脸特征存储在所述特定识别码内;
将所述特定识别码内的待识别图像的第二人脸特征与后续接收的来自第一终端设备的包括图像数据和/或视频数据中的第一人脸特征进行比对。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111014994.9A CN113642519A (zh) | 2021-08-31 | 2021-08-31 | 一种人脸识别系统和人脸识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111014994.9A CN113642519A (zh) | 2021-08-31 | 2021-08-31 | 一种人脸识别系统和人脸识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113642519A true CN113642519A (zh) | 2021-11-12 |
Family
ID=78424647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111014994.9A Pending CN113642519A (zh) | 2021-08-31 | 2021-08-31 | 一种人脸识别系统和人脸识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113642519A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113989903A (zh) * | 2021-11-15 | 2022-01-28 | 北京百度网讯科技有限公司 | 人脸活体检测方法、装置、电子设备及存储介质 |
CN115050073A (zh) * | 2022-06-20 | 2022-09-13 | 咪咕文化科技有限公司 | 视频人物搜索方法、装置及计算机设备 |
CN115147894A (zh) * | 2022-06-08 | 2022-10-04 | 深圳绿米联创科技有限公司 | 图像处理方法、装置、电子设备及介质 |
-
2021
- 2021-08-31 CN CN202111014994.9A patent/CN113642519A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113989903A (zh) * | 2021-11-15 | 2022-01-28 | 北京百度网讯科技有限公司 | 人脸活体检测方法、装置、电子设备及存储介质 |
CN113989903B (zh) * | 2021-11-15 | 2023-08-29 | 北京百度网讯科技有限公司 | 人脸活体检测方法、装置、电子设备及存储介质 |
CN115147894A (zh) * | 2022-06-08 | 2022-10-04 | 深圳绿米联创科技有限公司 | 图像处理方法、装置、电子设备及介质 |
CN115050073A (zh) * | 2022-06-20 | 2022-09-13 | 咪咕文化科技有限公司 | 视频人物搜索方法、装置及计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111461089B (zh) | 一种人脸检测的方法、人脸检测模型的训练方法及装置 | |
US11727053B2 (en) | Entity recognition from an image | |
Li et al. | Unobservable re-authentication for smartphones. | |
CN113642519A (zh) | 一种人脸识别系统和人脸识别方法 | |
CN109993150B (zh) | 用于识别年龄的方法和装置 | |
US20160224837A1 (en) | Method And System For Facial And Object Recognition Using Metadata Heuristic Search | |
CN108491720B (zh) | 一种应用识别方法、系统以及相关设备 | |
CN110457699B (zh) | 一种停用词挖掘方法、装置、电子设备及存储介质 | |
CN110442742A9 (zh) | 检索图像的方法及装置、处理器、电子设备及存储介质 | |
CN109977839A (zh) | 信息处理方法和装置 | |
US10565432B2 (en) | Establishing personal identity based on multiple sub-optimal images | |
KR20220076398A (ko) | Ar장치를 위한 객체 인식 처리 장치 및 방법 | |
CN112101304B (zh) | 数据处理方法、装置、存储介质及设备 | |
CN114550053A (zh) | 一种交通事故定责方法、装置、计算机设备及存储介质 | |
CN109902681B (zh) | 用户群体关系确定方法、装置、设备及存储介质 | |
WO2022142903A1 (zh) | 身份识别方法、装置、电子设备及相关产品 | |
JP2021520015A (ja) | 画像処理方法、装置、端末機器、サーバおよびシステム | |
CN110852193A (zh) | 一种人脸识别的方法和装置 | |
CN110008926B (zh) | 用于识别年龄的方法和装置 | |
CN113128526B (zh) | 图像识别方法、装置、电子设备和计算机可读存储介质 | |
CN110619253B (zh) | 身份识别的方法和装置 | |
CN113595886A (zh) | 即时通讯消息的处理方法、装置、电子设备及存储介质 | |
CN113190701A (zh) | 图像检索方法、装置、设备、存储介质以及计算机程序产品 | |
CN114500900A (zh) | 丢失对象的寻找方法及装置 | |
KR20150101846A (ko) | 스케치를 기반으로 하는 영상 분류 서비스 시스템, 사용자 장치, 서비스 제공 장치, 그 서비스 방법 및 컴퓨터 프로그램이 기록된 기록매체 |
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 |