一种应用于手机的侧脸解锁方法与流程

文档序号:12135816阅读:791来源:国知局

本发明属于手机解锁技术领域,具体涉及一种应用于手机的侧脸解锁方法。



背景技术:

智能手机具有独立的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入,因此智能手机逐渐成为生活中比不可少的工具。

随着智能手机功能的强大,智能手机信息的保护也逐渐成为人们关注的焦点。目前收集的解锁均没有比较安全可靠的方法,一般都是输入数字密码或者图形即可解锁,这种解锁方式由于容易被他人偷窥到而导致手机信息的泄露。现有技术中出出现了面部正面识别解锁技术,然而面部正面识别技术存在使用不方便的特点,特别是当人们手里抱取有东西的时候。



技术实现要素:

本发明为了解决现有手机采用面部正面解锁而存在的使用不方便的问题,而提供一种应用于手机的侧脸解锁方法,具有使用方便的特点,提高了用户的体验感。

为解决上述技术问题,本发明所采用的技术方案是:

一种应用于手机的侧脸解锁方法,包括如下步骤:

1)、当需要对手机进行解锁时,接收用户解锁操作指令,控制自动开启手机摄像头,通过手机摄像头获取人体头部的侧脸图像;

2)、利用侧脸识别技术对侧脸图像进行侧脸识别,并识别出当前侧脸;

3)、将识别出的当前侧脸与手机中预先储存的基准侧脸进行对比认证,判断是否相同;

4)、当判断出当前侧脸与预先储存的基准侧脸匹配时手机中的控制单元控制屏幕解锁;当判断出当前侧脸与预先储存的基准侧脸不匹配时自动返回步骤1)。

上述步骤2)中的侧脸识别保护如下步骤:

A、读取侧脸图像,并获取侧脸图像中的关键像素点,所述关键像素点包括眼角像素点、鼻尖上的像素点、嘴角的像素点、下颚的像素点以及颧骨上的像素点;

B、对于步骤A中的关键像素点,利用SIFT方法进行特征描述,提取侧脸图像的特征并获得SIFT侧脸特征向量;

C、将步骤B中得到的特征向量映射到intra-personal子空间中;为了削弱噪声的影响,首先需要将步骤B中得到的特征向量利用PCA方法进行降维,形成特征脸;其协方差矩阵表达式如下:

C=Σi=1n(xi-m)(xi-m)T]]>

其中,n为侧脸样本数量,xi表示侧脸向量,m为n个侧脸向量的均值;由于协方差矩阵描述了向量之间的相关性,因此上述协方差矩阵的特征向量形成映射矩阵,根据映射矩阵对侧脸图像数据进行映射,即可形成特征脸;然后,为了保证同一个人不同的侧脸图像之间的类内不变性,将特征脸映射到intra-personal子空间中,其协方差矩阵表达式如下:

CS=Σ(i,j)∈S(xi-xj)(xi-xj)T]]>

其中,S表示同一个人的侧脸图像集合,xi和xj表示同一个人的侧脸图像集合中不同的两张侧脸图像的侧脸向量;∧={λ1,…,λk}和V=(v1,…,vk)分别表示上式协方差矩阵的前k个特征值和特征向量;同样地,前k个特征向量形成映射矩阵,将上述特征脸数据通过该映射矩阵进行映射,从而保证同一个人的侧脸图像之间的类内不变性;如果Cs是可逆的,那么,特征脸映射到intra-personal子空间用下式来表达:

LS=Vdiag(λ11/2,...,λk1/2)]]>

x~=LS-1x]]>

其中,V是由上述k个特征向量形成的映射矩阵,是由上述k个特征值所组成的对角矩阵,即最终形成的特征矩阵;

D、利用双线性相似度函数和马氏距离来计算侧脸特征向量之间的相似度得分值;

E、利用KELM分类器判断两张图片是否来自于同一个人;将步骤D中得到的相似度分值作为KELM分类器的输入,所得到的输出若为1,则表明侧脸图像与预先储存的基准侧脸来自于同一个人,若为0,则表明侧脸图像与预先储存的基准侧脸来自于不同的人。

上述步骤B中的利用SIFT方法进行特征描述,提取侧脸图像的特征并获得SIFT侧脸特征向量具体为:

取每个关键像素点领域内的一些像素点,计算每个像素点的梯度模值和方向;定义某个像素点的坐标为P(x,y):

m(x,y)=(P(x+1,y)-P(x-1,y))2+(P(x,y+1)-P(x,y-1))2]]>

θ(x,y)=tan-1((P(x,y+1)-P(x,y-1))/(P(x+1,y)-P(x-1,y)))

其中,m(x,y)为该像素点的梯度模值,θ(x,y)为该像素点的梯度方向;

根据上式的计算结果,利用直方图统计领域内像素点的梯度方向;为减少突变影响,需要用高斯函数对直方图进行平滑;那么,直方图的峰值代表了关键像素点领域像素点的梯度主方向,也即关键像素点的方向;

为了保持旋转不变性,将坐标轴旋转为关键像素点的方向,然后以关键点为中心,取16×16大小的领域窗口,在每4×4大小的格子中计算8个梯度方向的直方图,最终形成4×4×8=128维的SIFT人脸特征向量。

上述步骤4中利用双线性相似度函数和马氏距离来计算两个人脸特征向量之间的相似度得分值,其表达式如下:

f(M,G)(x~i,x~j)=SG(x~i,x~j)-dM(x~i,x~j)]]>

SG(x~i,x~j)=xiTGxj]]>

dM(x~i,x~j)=(xi-xj)TM(xi-xj)]]>

其中,表示和特征矩阵之间的双线性相似度函数,表示和特征矩阵之间的马氏距离;G和M均为k×k大小的矩阵,需要训练合适的M和G来尽量保证类内不变性的同时保证类间的最大可辨别性;因此,将intra-personal子空间相似度量学习的表达式定义成如下形式:

minM,G∈SdΣt∈Pξt+γ2(||M-I||F2+||G-I||F2)]]>

s.t.yij[f(M,G)(x~i,x~j)]≥1-ξij]]>

ξt≥0,∀t=(i,j)∈P=S∪D]]>

其中,S和D分别表示相似人脸对(即同一个人的两张人脸图片)和不相似人脸对(即不同人的两张人脸图片)的标签;||·||F是矩阵的F范数,即矩阵元素绝对值的平方和再开方;其作用类似于向量的2范数,因此,表达式在保证类内不变性的同时有效地防止过拟合现象;ξt是经验判别的损失函数,最小化该参数可以增强类间的可辨别性;由此可见,ξt保证了类间的最大可辨别性,而保证了类内不变性,而正数γ用来协调这两个表达式所带来的影响;对于上述表达式中的不等式,当一对人脸图片来自于同一个人时,yij=1,而ξij的值较小,于是的值会尽可能大;而当一对人脸图片来自于不同的人时,yij=-1,而ξij的值较小,于是的值会尽可能小;因此,当值较大时,则表明侧脸图像与预先储存的基准侧脸来自于同一人,反之,则表明表明侧脸图像与预先储存的基准侧脸来自于不同的人。

上述步骤E中的KELM分类器的输出函数如下:

fL(xi)=K(xi,x1)...K(xi,xn)T(IC+K)-1Y]]>

Y=[y1;...;yn]∈Rn×c

其中,C是一个回归系数。

上述步骤1)中,通过手机摄像头获取人体头部的侧脸图像的时候,手机摄像头在获取人体头部的侧脸图像的时候根据环境光进行关照补偿。

与现有技术相比,本发明具有以下有益效果:

本发明采用侧脸进行识别和解锁具有使用方便的特点,提高了用户的体验感。同时本发明具有识别度高的特点。

具体实施方式

下面结合实施例对本发明作进一步的描述,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域的普通技术人员在没有做出创造性劳动前提下所获得的其他所用实施例,都属于本发明的保护范围。

本发明的应用于手机的侧脸解锁方法,包括如下步骤:

1)、当需要对手机进行解锁时,接收用户解锁操作指令,控制自动开启手机摄像头,通过手机摄像头获取人体头部的侧脸图像;

2)、利用侧脸识别技术对侧脸图像进行侧脸识别,并识别出当前侧脸;

3)、将识别出的当前侧脸与手机中预先储存的基准侧脸进行对比认证,判断是否相同;其中预先储存的基准侧脸包括不同角度、不同光强度下的基准侧脸;

4)、当判断出当前侧脸与预先储存的基准侧脸匹配时手机中的控制单元控制屏幕解锁;当判断出当前侧脸与预先储存的基准侧脸不匹配时自动返回步骤1)。

上述步骤2)中的侧脸识别保护如下步骤:

A、读取侧脸图像,并获取侧脸图像中的关键像素点,所述关键像素点包括眼角像素点、鼻尖上的像素点、嘴角的像素点、下颚的像素点以及颧骨上的像素点;

作为本发明一种选择的方式,该步骤中所用的深度卷积网络级联包括三层;第一层利用深度卷积网络对五个关键像素点进行准确定位,其他两层利用卷积网络对第一层的定位结果进行再次确认;为了保证定位的准确性,每层中各个深度卷积网络的定位结果被融合在一起取平均作为最终的定位结果;深层卷积网络包含四个卷积层、池化层和两个全连接层,起始层获取人脸图片的全局上下文信息,由于卷积网络是对五个关键像素点同时进行预测,所以各个关键像素点间的相对位置在卷积网络训练的同时也被进行了编码,进而削弱了表情变化、光照变化以及其他环境因素造成的影响;

以每个关键像素点为中心,取14×14的邻域窗口大小,计算该窗口中每个像素点的梯度模值和方向;然后统计梯度方向的直方图;为了减少突变的影响,用参数σ为1.5×14的高斯函数对直方图进行平滑处理;最后以每个关键像素点邻域像素的梯度方向分布特性来确定每个关键像素点的方向;

确定了关键像素点的方向后,将坐标轴旋转为关键像素点的方向,以确保旋转不变性;然后以关键像素点为中心取16×16的邻域窗口大小,然后在每4×4大小的小块上计算8个方向的梯度直方图,最终,每个特征向量形成4×4×8=128维的描述子;由于本发明中每张人脸图片的关键像素点数为5个,因此,每张人脸图片的特征向量为5×128=640维,这不仅大大降低了特征维数,而且削弱了表情变化、光照变化以及其他环境因素等造成的影响,增强了人脸特征的鲁棒性;

B、对于步骤A中的关键像素点,利用SIFT方法进行特征描述,提取侧脸图像的特征并获得SIFT侧脸特征向量;

C、将步骤B中得到的特征向量映射到intra-personal子空间中;为了削弱噪声的影响,首先需要将步骤B中得到的特征向量利用PCA方法进行降维,形成特征脸;其协方差矩阵表达式如下:

C=Σi=1n(xi-m)(xi-m)T]]>

其中,n为侧脸样本数量,xi表示侧脸向量,m为n个侧脸向量的均值;由于协方差矩阵描述了向量之间的相关性,因此上述协方差矩阵的特征向量形成映射矩阵,根据映射矩阵对侧脸图像数据进行映射,即可形成特征脸;然后,为了保证同一个人不同的侧脸图像之间的类内不变性,将特征脸映射到intra-personal子空间中,其协方差矩阵表达式如下:

CS=Σ(i,j)∈S(xi-xj)(xi-xj)T]]>

其中,S表示同一个人的侧脸图像集合,xi和xj表示同一个人的侧脸图像集合中不同的两张侧脸图像的侧脸向量;∧={λ1,…,λk}和V=(v1,…,vk)分别表示上式协方差矩阵的前k个特征值和特征向量;同样地,前k个特征向量形成映射矩阵,将上述特征脸数据通过该映射矩阵进行映射,从而保证同一个人的侧脸图像之间的类内不变性;如果Cs是可逆的,那么,特征脸映射到intra-personal子空间用下式来表达:

LS=Vdiag(λ11/2,...,λk1/2)]]>

x~=LS-1x]]>

其中,V是由上述k个特征向量形成的映射矩阵,是由上述k个特征值所组成的对角矩阵,即最终形成的特征矩阵;

D、利用双线性相似度函数和马氏距离来计算侧脸特征向量之间的相似度得分值;

E、利用KELM分类器判断两张图片是否来自于同一个人;将步骤D中得到的相似度分值作为KELM分类器的输入,所得到的输出若为1,则表明侧脸图像与预先储存的基准侧脸来自于同一个人,若为0,则表明侧脸图像与预先储存的基准侧脸来自于不同的人。

上述步骤B中的利用SIFT方法进行特征描述,提取侧脸图像的特征并获得SIFT侧脸特征向量具体为:

取每个关键像素点领域内的一些像素点,计算每个像素点的梯度模值和方向;定义某个像素点的坐标为P(x,y):

m(x,y)=(P(x+1,y)-P(x-1,y))2+(P(x,y+1)-P(x,y-1))2]]>

θ(x,y)=tan-1((P(x,y+1)-P(x,y-1))/(P(x+1,y)-P(x-1,y)))

其中,m(x,y)为该像素点的梯度模值,θ(x,y)为该像素点的梯度方向;

根据上式的计算结果,利用直方图统计领域内像素点的梯度方向;为减少突变影响,需要用高斯函数对直方图进行平滑;那么,直方图的峰值代表了关键像素点领域像素点的梯度主方向,也即关键像素点的方向;

为了保持旋转不变性,将坐标轴旋转为关键像素点的方向,然后以关键点为中心,取16×16大小的领域窗口,在每4×4大小的格子中计算8个梯度方向的直方图,最终形成4×4×8=128维的SIFT人脸特征向量。

上述步骤4中利用双线性相似度函数和马氏距离来计算两个人脸特征向量之间的相似度得分值,其表达式如下:

f(M,G)(x~i,x~j)=SG(x~i,x~j)-dM(x~i,x~j)]]>

SG(x~i,x~j)=xiTGxj]]>

dM(x~i,x~j)=(xi-xj)TM(xi-xj)]]>

其中,表示和特征矩阵之间的双线性相似度函数,表示和特征矩阵之间的马氏距离;G和M均为k×k大小的矩阵,需要训练合适的M和G来尽量保证类内不变性的同时保证类间的最大可辨别性;因此,将intra-personal子空间相似度量学习的表达式定义成如下形式:

minM,G∈SdΣt∈Pξt+γ2(||M-I||F2+||G-I||F2)]]>

s.t.yij[f(M,G)(x~i,x~j)]≥1-ξij]]>

ξt≥0,∀t=(i,j)∈P=S∪D]]>

其中,S和D分别表示相似人脸对(即同一个人的两张人脸图片)和不相似人脸对(即不同人的两张人脸图片)的标签;||·||F是矩阵的F范数,即矩阵元素绝对值的平方和再开方;其作用类似于向量的2范数,因此,表达式在保证类内不变性的同时有效地防止过拟合现象;ξt是经验判别的损失函数,最小化该参数可以增强类间的可辨别性;由此可见,ξt保证了类间的最大可辨别性,而保证了类内不变性,而正数γ用来协调这两个表达式所带来的影响;对于上述表达式中的不等式,当一对人脸图片来自于同一个人时,yij=1,而ξij的值较小,于是的值会尽可能大;而当一对人脸图片来自于不同的人时,yij=-1,而ξij的值较小,于是的值会尽可能小;因此,当值较大时,则表明侧脸图像与预先储存的基准侧脸来自于同一人,反之,则表明表明侧脸图像与预先储存的基准侧脸来自于不同的人。

上述步骤E中的KELM分类器的输出函数如下:

ELM是只包含一个隐含层和一个输出层的神经网络;其最显著的特点是,它的隐含层参数不需要进行调试,而是随机设定的,具有较强的泛化能力;假设ELM的隐含层包含L个节点,则其输出函数如下:

fL(x)=Σi=1Lβih(ωi,bi,x)=h(x)β=y]]>

其中,x∈Rd,y∈RC,β表示隐含层的L个节点与输出层之间的权重,h(x)表示L个节点与输入x之间的关系,它是一个非线性的激励函数(如sigmoid函数),实际上,它的作用是将d维数据映射到L维数据空间中,wi表示隐含层第i个节点与输入层的连接权重,bi表示隐含层第i个节点的偏差;

在ELM的基础上,又提出了一种基于核函数的ELM方法,即KELM方法;该方法是用核函数来隐藏ELM原有的激励函数H,从而更好地提高了算法的泛化能力;对于某一样本xi,其输出函数表达式如下:

fL(xi)=K(xi,x1)...K(xi,xn)T(IC+K)-1Y]]>

Y=[y1;...;yn]∈Rn×c

其中,C是一个回归系数。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1