掌桥专利:专业的专利平台
掌桥专利
首页

基于局部排序算法加密的人脸识别方法及系统

文献发布时间:2023-06-19 11:45:49


基于局部排序算法加密的人脸识别方法及系统

技术领域

本发明涉及生物识别技术中的生物特征数据隐私保护领域,具体涉及一种基于局部排序算法加密的人脸识别方法及系统。

背景技术

随着社会的不断发展,生物特征识别技术逐渐广泛应用于生活中的各个领域。其中,人脸识别技术尤其受到人们的偏爱,这主要是因为人脸识别技术本质上是非侵入性的。比如,指纹识别需要用户将手指按在传感器上,虹膜识别需要用户与相机的距离非常近。而人脸识别只需要用户处于相机的视野之内即可,这使得人脸识别技术对于用户来说更加的友好。人脸识别系统通常由以下四个模块组成:人脸检测,人脸检测模块用于确定图像中人脸的位置,如果有人脸,就返回包含每张人脸的边界框的坐标;人脸对齐,人脸对齐的目标是使用一组位于图像中固定位置的参考点来缩放和裁剪人脸图像;人脸表征,在人脸表征阶段,人脸图像的像素值会被转换成为可判别的特征向量,即模板;人脸匹配,在人脸匹配模块中,两个模板会进行比较,从而得到一个相似度分数,该分数给出了两者属于同一个主题的可能性。

现在的人脸识别技术可以通过深度学习,数据训练等方式不断提高识别的准确率,也可以通过更优秀的摄像设备,提高采集到的脸部数据量来实现识别准确率的进一步提示。但是人脸识别得到的人脸特征向量,作为人脸的表示被存储,可以用于匹配人脸,如果存储信息一旦泄露,将严重威胁个人隐私,因此保护人脸识别数据具有重要意义。

发明内容

本发明的目的在于提供一种基于局部排序算法加密的人脸识别系统,以确保人脸数据在传输过程中的安全性。

本发明所采用的技术方案是:

提供一种基于局部排序算法加密的人脸识别方法,包括以下步骤:

在注册阶段,Web客户端采集待识别图像,通过人脸模型捕捉待识别图像中用户的人脸并生成人脸数据;采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据;将加密人脸数据发送到服务端;服务端在接收到Web客户端发送的加密人脸数据之后检验数据格式是否正确,如果正确则将用户的加密人脸数据和相关需要存储的数据绑定并保存,如果错误则返回注册失败的提示;

在识别阶段,将采集到的图像进行加密并发送到服务端,与服务器上保存的注册认证成功的加密数据进行匹配,判断用户是否是合法用户。

接上述技术方案,Web客户端采集待识别图像包括以下步骤:

(1)采集待识别视频流;

(2)将待识别视频流中的每一张图像确定为待识别图像。

接上述技术方案,人脸模型包括预先设置好的人脸检测模型、脸部地标检测模型及人脸识别模型;其中人脸识别模型根据人脸图像计算出具有128个值的特征矢量来描述人脸特征。

接上述技术方案,对用户的人脸数据采用局部排序算法加密具体包括:

(1)将人脸数据转换为对应的二进制串与应用程序特定的字符串按位执行异或运算;

(2)将运算的结果划分成块;

(3)将块划分成为组;

(4)将每个组中的块根据其十进制进行排序;

(5)将原始块转换成排序值进行存储。

接上述技术方案,具体将异或运算后的结果划分为n块,每一块包括b位,n*b=m,m为人脸特征二进制串的长度;转换得到长度为n的u序列,且u

将u=u

每个组中的块根据其十进制值进行排序,对于i=1…g,计算{u

以十进制值为依据对u

将原始块转换后的排序值r

接上述技术方案,识别阶段的匹配过程具体为:

通过计算识别阶段的人脸加密数据与注册阶段的人脸加密数据之间的距离,判断是否超出事先设定的阈值,如果没有超出则匹配成功,否则匹配不成功,进行下一个注册阶段的人脸加密数据的匹配操作,当所有注册的人脸加密数据都没有匹配成功则返回匹配失败的信息。

本发明还提供一种基于局部排序算法加密的人脸识别系统,包括:

Web客户端,包括图像采集模块、人脸数据获取模块和加密模块;其中图像采集模块用于在注册阶段,采集待识别图像;人脸数据获取模块,用于通过人脸模型捕捉待识别图像中用户的人脸并生成人脸数据;加密模块,用于采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据,并将加密人脸数据发送到服务端;

服务端,包括格式校验模块和匹配模块;其中格式校验模块用于在注册阶段,在接收到Web客户端发送的加密人脸数据之后检验数据格式是否正确,如果正确则将用户的加密人脸数据和相关需要存储的数据绑定并保存,如果错误则返回注册失败的提示;

匹配模块,用于在识别阶段,将用户加密图像与服务器上保存的注册认证成功的用户加密数据进行匹配,判断用户是否是合法用户。

接上述技术方案,图像采集模块集成或者连接在电子设备上,包括手机摄像头、笔记本自带的摄像头或者外接的摄像头。

接上述技术方案,加密模块具体用于:

(1)将人脸数据转换为对应的二进制串与应用程序特定的字符串按位执行异或运算;

(2)将运算的结果划分成块;

(3)将块划分成为组;

(4)将每个组中的块根据其十进制进行排序;

(5)将原始块转换成排序值进行存储。

本发明还提供一种存储介质,其可被处理器执行,其内存储有计算机程序,该计算机程序执行上述技术方案所述的基于局部排序算法加密的人脸识别方法。

本发明产生的有益效果是:本发明无论在注册阶段还是识别阶段,均采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据,由于在传输过程中没有展现人脸数据的原始信息,并在存储结构和信息核对中没有将加密的信息转换为原始信息的过程,所以可以很好地保护用户隐私,满足“不可逆性、可撤销性和不可连接性”这三大网络基本安全性要求。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明实施例在注册阶段时的客户人脸数据加密存储流程图;

图2是本发明实施例在识别阶段时的客户人脸数据加密识别流程图;

图3是本发明实施例对用户的人脸数据采用局部排序算法加密的数据处理示意图;

图4是本发明实施例基于局部排序算法加密的人脸识别系统结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明实施例基于局部排序算法加密的人脸识别方法,主要包括以下步骤:

如图1所示,在注册阶段:

S11、Web客户端采集待识别图像;

S12、通过人脸模型捕捉待识别图像中用户的人脸并生成人脸数据;

S13、采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据;

S14、将加密人脸数据发送到服务端;

S15、服务端在接收到Web客户端发送的加密人脸数据之后检验数据格式是否正确;

S16、如果检验数据格式正确则将用户的加密人脸数据和相关需要存储的数据绑定并保存;

S17、如果检验数据格式错误则返回注册失败的提示。

在识别阶段:

S21、Web客户端采集待识别图像;

S22、通过人脸模型捕捉待识别图像中用户的人脸并生成人脸数据;

S23、将采集到的图像采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据;

S24、将加密人脸数据发送到服务端;

S25、将加密人脸数据与服务器上保存的注册认证成功的人脸加密数据进行匹配;

S26、判断匹配是否成功;

S27、若匹配成功,则判断用户是合法用户;

S28、若匹配不成功,则判断用户是非法用户。

进一步地,Web客户端采集待识别图像包括以下步骤:

(1)采集待识别视频流;

(2)将待识别视频流中的每一张图像确定为待识别图像。

其中,人脸模型包括预先设置好的人脸检测模型、脸部地标检测模型及人脸识别模型;其中人脸识别模型根据人脸图像计算出具有128个值的特征矢量来描述人脸特征。

本发明一个较佳实施例中,对用户的人脸数据采用局部排序算法加密具体包括:

(1)将人脸数据转换为对应的二进制串与应用程序特定的字符串按位执行异或运算;

(2)将运算的结果划分成块;

(3)将块划分成为组;

(4)将每个组中的块根据其十进制进行排序;

(5)将原始块转换成排序值进行存储。

如图3所示,具体将异或运算后的结果划分为n块,每一块包括b位,n*b=m,m为人脸特征二进制串的长度;转换得到长度为n的u序列,且u

将u=u

每个组中的块根据其十进制值进行排序,对于i=1…g,计算{u

以十进制值为依据对u

将原始块转换后的排序值r

识别阶段的匹配过程具体为:

通过计算识别阶段的人脸加密数据与注册阶段的人脸加密数据之间的距离,判断是否超出事先设定的阈值,如果没有超出则匹配成功,否则匹配不成功,进行下一个注册阶段的人脸加密数据的匹配操作,当所有注册的人脸加密数据都没有匹配成功则返回匹配失败的信息。

如图4所示,本发明实施例基于局部排序算法加密的人脸识别系统,包括Web客户端和服务端。

Web客户端包括图像采集模块、人脸数据获取模块和加密模块;其中图像采集模块用于在注册阶段,采集待识别图像;人脸数据获取模块,用于通过人脸模型捕捉待识别图像中用户的人脸并生成人脸数据;加密模块,用于采用局部排序算法对用户的人脸数据加密,并删除原始人脸数据,并将加密人脸数据发送到服务端;

服务端包括格式校验模块和匹配模块;其中格式校验模块用于在注册阶段,在接收到Web客户端发送的加密人脸数据之后检验数据格式是否正确,如果正确则将用户的加密人脸数据和相关需要存储的数据绑定并保存,如果错误则返回注册失败的提示;

匹配模块,用于在识别阶段,将用户加密图像与服务器上保存的注册认证成功的用户加密数据进行匹配,判断用户是否是合法用户。

图像采集模块可集成或者连接在电子设备上,包括手机摄像头、笔记本自带的摄像头或者外接的摄像头等。

本发明实施例的存储介质,其可被处理器执行,其内存储有计算机程序,该计算机程序上述实施例的基于局部排序算法加密的人脸识别方法。

本发明的另一实施例中,基于局部排序算法加密的人脸识别系统,具体实现以下步骤:

在注册阶段,Web前端调取图像采集模块采集待识别图像,通过调取图像采集装置采集待识别视频流,可以在电子设备的Web前端使用HTML5技术,调用API中的getUserMedia()方法来获取媒体流对象,并将视频流绘制在页面当中。

将每次从视频流提取的一帧图像进行人脸数据获取的操作。首先导入人脸检测模型。对于人脸检测,这里基于MobileNetV1实现SSD目标检测算法(Single Shot MultiBoxDetector),神经网络将计算图像中每个张脸的位置,并将边界框与每张脸的概率一起返回。这里人脸检测模型已经对WIDERFACE数据集进行了训练。

导入68点面部地标检测模型,此模型采用了深度可分离卷积以及密集连接块的想法,模型已对标有68个面部地标点的±35k张面部图像的数据集进行了训练。

导入人脸识别模型,对于人脸识别,实现ResNet-34等体系结构,用于从任何给定的人脸图像中计算人脸描述符(具有128个值的特征矢量),人脸描述符用于描述人脸特征。通过导入的模型对采集到的待识别图像捕获到用户的人脸并生成人脸数据。

将获取到的人脸特征值传入加密模块进行加密。

本发明在数据处理过程中具体包括以下步骤:

首先将传入的人脸数据转换为对应的二进制串。

然后将人脸数据与应用程序特定的字符串按位进行异或运算

对于任意m位的人脸数据x和同样m位的特定字符串p进行异或运算,得到字符串t;

将执行的结果划分为块

将字符串划分成为n块,每一块包括b位,可以知道n*b=m,m为原人脸数据的长度;转换得到长度为n的u序列,且u

将块划分为组。

将u=u

每个组中的块根据其十进制值进行排序。

对于i=1...g,计算{u

以他们的十进制值为依据对u

将原始块转换后的排序值r

这样就得到了一个排序的序列r

将加密之后的人脸数据发送到服务端。服务端在接收到客户端发送的加密人脸数据之后检验数据格式是否正确,如果正确则将用户的人脸数据和相关需要存储的数据绑定并保存,如果错误则返回注册失败的提示。

在识别阶段,通过相同的方式将采集到的图像进行人脸数据的获取并将人脸数据进行加密,将加密之后的人脸数据发送给服务端。通过调用匹配模块中的方法来匹配待识别加密数据和注册认证的加密数据,以此来判断用户是否是合法用户。

在匹配模块中,通过计算两个人脸模板之间的距离来判断两个模板之间的相似度,两个模板r=r

计算得到待识别加密数据和注册认证的加密数据之间的距离之后,判断这两个模板之间的距离是否超过设定的阈值。如果没有超过,则这个注册认证的加密数据和待识别加密数据之间匹配成功,则为合法用户,将该加密数据所绑定的用户数据返回给Web客户端进行后续操作,否则即匹配失败则进行待识别加密数据与下一个注册认证的加密数据的匹配操作。

本发明实施案例提供了一种基于局部排序算法加密的人脸识别系统的实现方法。该系统具体包括客户端和服务端,其中客户端包括图像采集模块、人脸数据获取模块以及加密模块用于获取待识别图像,生成人脸数据,将人脸数据进行加密并将加密的人脸数据发送给服务器存储。服务端中包含有匹配模块,计算两个人脸模板之间的距离来判断两个模板之间的相似度,并进行匹配,以此来判断是否是合法用户。

由于本发明在注册阶段使用局部排序的方式进行加密,而且不同的应用当中所指定的字符串是不同的,这使得此系统满足不可连接性。在保存人脸数据的时候,发送给服务端保存的是加密之后的人脸数据而不是实时的人脸数据,这样就保证了实时的人脸数据的安全。而且通过计算待识别加密人脸模板和注册认证的人脸模板之间的距离来进行相似度的计算,保证了人脸识别认证的性能。所以,本发明在保证了人脸数据安全性的同时还获得良好的识别性能。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

相关技术
  • 基于局部排序算法加密的人脸识别方法及系统
  • 一种基于神经网络的智能云平台人脸识别并局部加密方法
技术分类

06120113046811