基于稀疏表达和神经网络的人脸识别方法与流程

文档序号:20513911发布日期:2020-04-24 18:51阅读:136来源:国知局
基于稀疏表达和神经网络的人脸识别方法与流程

本发明涉及一种人脸识别技术领域,是一种基于稀疏表达和神经网络的人脸识别方法。



背景技术:

人脸特征提取是人脸识别关键步骤,目前多使用pca、2dpca和lda等算法进行人脸特征提取,其中运用pca算法进行降维,再通过lda算法进行人脸特征提取,pca算法能使用较少的数据维度,并保证在降维后最大化保持的数据内在信息,但是对数据的区分作用不大,反而会使得数据点揉杂在一起,造成无法区分,而lda算法是为了使降维后的数据点尽可能地容易被区分,两种算法的结合起到了相互补充的作用,非常有效的提取了人脸特征,但该提取方式是直接从灰度空间提取人脸数据,使得提取的人脸数据中含有大量的噪声和冗余信息,导致降低了识别率,并延长了识别时间。



技术实现要素:

本发明提供了一种基于稀疏表达和神经网络的人脸识别方法,克服了上述现有技术之不足,其能有效解决人脸识别方法中存在的所提取的人脸数据中含有大量的噪声和冗余信息,导致识别率降低的问题。

本发明的技术方案是通过以下措施来实现的:一种基于稀疏表达和神经网络的人脸识别方法,包括以下步骤:

根据多组人脸灰度图像,建立训练样本集和待识别图片集;

通过ksvd算法对训练样本进行计算,获得稀疏域表达的训练样本和更新后的过完备字典;

对稀疏域表达的训练样本进行降维,获得降维后的训练样本;

使用训练样本通过机器学习训练得出的识别模型;

将待识别图片输入到识别模型中进行人脸识别。

下面是对上述发明技术方案的进一步优化或/和改进:

上述通过ksvd算法对训练样本进行计算,获得稀疏域表达的训练样本和训练后的过完备字典,包括:

设定y为训练样本集,y=[y1,y2lyilyn],y为训练样本在灰度空间中的向量表示,即训练样本在灰度空间中的向量表示,n为训练样本个数,x为训练样本稀疏域中的向量表示;

根据下式通过过完备字典d将y转换为x:

x=d-1y

其中d为过完备字典,d∈rm×n,x∈rn×l,n>m;y为训练样本在灰度空间中的向量表示;

根据x获得新训练样本集x,x=[x1,x2lxilxn],n为训练样本个数;通过x循环迭代更新过完备字典d,获得更新后的过完备字典d。

上述通过lda算法对稀疏域表达的训练样本进行降维,获得降维后的训练样本,包括:

设定将稀疏域表达的训练样本从n维向量降维至d维向量;

构造类间的散步矩阵和类内的散步矩阵;

计算矩阵中最大的d个特征值和对应的d个特征向量,构造一个转换矩阵wopt;

使用转换矩阵wopt将稀疏域表达的训练样本映射到新的特征子空间上,获得降维后的训练样本。

上述将待识别图片输入到识别模型中进行人脸识别,需将待识别图片进行处理,处理包括:

使用更新后的过完备字典通过ksvd算法对待识别图片进行计算,获得稀疏域表达的待识别图片;

对稀疏域表达的待识别图片进行降维,获得降维后的待识别图片;

将降维后的待识别图片输入到识别模型中进行人脸识别。

上述根据多组人脸灰度图像,建立训练样本集和待识别图片集,包括:

获取多组人脸灰度图像,其中一组对应于一个人,每组人脸灰度图像包括一个人的n张人脸灰度图像,每张人脸灰度图像均被采样成固定像素的灰度图像;

将多组人脸灰度图像内每组人脸灰度图像中的n-1张人脸灰度图像设定为训练样本,形成训练样本集,每组人脸灰度图像中剩余的一张人脸灰度图像设定为待识别图片,形成待识别图片集。

上述每张人脸灰度图像均被采样成37×30的灰度图像。

上述机器学习通过rbf人工神经网络模型实现。

本发明提供了一种新的人脸识别方法,即将稀疏编码作为表达人脸图像的数据源,并对其降维以提取特征,最终输入识别模型进行识别,能有效去除人脸图像特征对象(即训练样本(灰度人脸图像))中的噪声和冗余信息,提高人脸识别率及人脸识别速度。

附图说明

附图1为本发明的流程图。

附图2为本发明通过ksvd算法对训练样本进行计算的流程图。

附图3为本发明对稀疏域表达的训练样本进行降维的流程图。

附图4为本发明将待识别图片输入到识别模型中进行人脸识别的流程图。

附图5为本发明建立训练样本集和待识别图片集的流程图。

具体实施方式

本发明不受下述实施例的限制,可根据本发明的技术方案与实际情况来确定具体的实施方式。

下面结合实施例及附图对本发明作进一步描述:

实施例1:如附图1所示,该基于稀疏表达和神经网络的人脸识别方法,包括以下步骤:

s1,根据多组人脸灰度图像,建立训练样本集和待识别图片集;

s2,通过ksvd算法对训练样本进行计算,获得稀疏域表达的训练样本和更新后的过完备字典;

s3,对稀疏域表达的训练样本进行降维,获得降维后的训练样本;

s4,使用训练样本通过机器学习训练得出的识别模型;

s5,将待识别图片输入到识别模型中进行人脸识别。

通过上述步骤,将训练样本集中的训练样本(灰度人脸图像)通过ksvd算法进行稀疏编码,使之转换成稀疏域表达的训练样本,从而将训练样本中的噪声和冗余信息被去除,有利于分类的信息的保留;并且将稀疏域表达的训练样本进行降维,进一步减少训练样本中的噪声,同时通过降维提取特征,加快识别模型的识别训练。

因此本发明提供了一种新的人脸识别方法,即将稀疏编码作为表达人脸图像的数据源,并对其降维以提取特征,最终输入识别模型进行识别,能有效去除人脸图像特征对象(即训练样本(灰度人脸图像))中的噪声和冗余信息,提高人脸识别率及人脸识别速度。

下面是对上述发明技术方案的进一步优化或/和改进:

如附图1、2所示,所述s2中通过ksvd算法对训练样本进行计算,获得稀疏域表达的训练样本和训练后的过完备字典,包括:

s21,设定y为训练样本集,y=[y1,y2lyilyn],y为训练样本在灰度空间中的向量表示,即训练样本在灰度空间中的向量表示,n为训练样本个数,x为训练样本稀疏域中的向量表示;

s22,根据下式通过过完备字典d将y转换为x:

x=d-1y

其中d为过完备字典,d∈rm×n,x∈rn×l,n>m;y为训练样本在灰度空间中的向量表示;

s23,根据x获得新训练样本集x,x=[x1,x2lxilxn],n为训练样本个数;通过x循环迭代更新过完备字典d,获得更新后的过完备字典d。

上述“稀疏”是指当图像数据从灰度域变换到稀疏域后,样本的编码数值许多都为0,在稀疏域中的编码和在灰度空间域的编码都是对人脸图像的表达,区别是他们的基不同,在不同的基下的编码都有着自身的特点,若对图像进行稀疏编码,许多噪声和冗余信息被去除,更有利于分类的信息的保留。因此本发明使用ksvd算法对训练样本进行计算,获得稀疏域表达的训练样本和训练后的过完备字典。

上述s22中根据下式通过过完备字典d将y转换为x时,若由于受噪声的干扰,不能得到准确的x,则通过下式计算x:

x≈d-1y,s.t||x-d-1y||2≤ξ

其中d为过完备字典,d∈rm×n,x∈rn×l,n>m;y为训练样本在灰度空间中的向量表示;x为训练样本稀疏域中的向量表示;ξ为设定参数,具体设定值根据实际情况进行设定。

在上式中采用2范数(欧氏距离)计算距离。但由于n>m,所以上式为欠定方程组,故需要一个目标函数从x的无数多组解中搜寻稀疏解,即:

min||x||1s.t||x-d-1y||2≤ξ

为获得理想的稀疏编码,本发明选择ksvd[13,14]自适应字典学习算法去获得稀疏编码。

上述s23中在当前词典的基础上通过新新训练样本集x中x循环迭代来更新字典原子。使得通过迭代得出的d∈rm×n和系数x∈rn×l满足:

其中i=1,2,…n;t0是一个给定的足够小的数。

如附图1、3所示,所述s3中通过lda算法对稀疏域表达的训练样本进行降维,获得降维后的训练样本,包括:

s31,设定将稀疏域表达的训练样本从n维向量降维至d维向量;

s32,构造类间的散步矩阵和类内的散步矩阵;

s33,计算矩阵中最大的d个特征值和对应的d个特征向量,构造一个转换矩阵wopt;

s34,使用转换矩阵wopt将稀疏域表达的训练样本映射到新的特征子空间上,获得降维后的训练样本。

上述s32中构造类间的散步矩阵和类内的散步矩阵,包括:

将稀疏域表达的训练样本集x=[x1,x2lxilxn],其中每个xi是一个类别的训练样本,每个类别的训练样本中共有qi张人脸图像;

计算各类训练样本均值mi和总均值m0:

利用各类训练样本均值mi和总均值m0计算类间散射矩阵sb和类内散射矩阵sw:

若因为距离较大的类别主导了特征向量的方向,造成类间散布矩阵sb突出了类间距离较大的类别,忽视了类间距离较小的类别及大量重叠,则通过下式重新定义样本类间散布矩阵sb:

其中,(mi-mo)t*(mi-mo)表示mi到mo欧氏距离的平方,距离越小对sb贡献越大,反之越小,即将各类别映射在单位球上,使得远离球心的类的中心拉的更接近球心,而将可能有重叠的类的中心拉开的更远离球心。

上述s33中通过fisher线性判别准则确定转换矩阵w,转换矩阵wopt如下所示:

其中,wopt=[w1w2…wm]是sb*sw-1的特征向量对应的前m个最大特征值。

如附图1、4所示,所述s5中将待识别图片输入到识别模型中进行人脸识别,包括:

s51,使用更新后的过完备字典通过ksvd算法对待识别图片进行计算,获得稀疏域表达的待识别图片;

s52,对稀疏域表达的待识别图片进行降维,获得降维后的待识别图片;

s53,将降维后的待识别图片输入到识别模型中进行人脸识别。

上述s51和s52的计算过程与s2和s3的步骤相同,不再赘述。

如附图1、5所示,所述s1中根据多组人脸灰度图像,建立训练样本集和待识别图片集,包括:

s11,获取多组人脸灰度图像,其中一组对应于一个人,每组人脸灰度图像包括一个人的n张人脸灰度图像,每张人脸灰度图像均被采样成固定像素的灰度图像;

s12,将多组人脸灰度图像内每组人脸灰度图像中的n-1张人脸灰度图像设定为训练样本,形成训练样本集,每组人脸灰度图像中剩余的一张人脸灰度图像设定为待识别图片,形成待识别图片集。

上述s11中每组人脸灰度图像包括一个人在各种姿势捕捉、不同的面部表情和照明条件下获取的n张人脸图像,并将每张人脸图像均进行标准化及剪裁成100×80的人脸灰度图像,之后采样成固定像素的灰度图像,其中每张人脸灰度图像均被采样成37×30的灰度图像。

如附图1所示,所述s4中机器学习通过rbf人工神经网络模型实现。

上述将训练样本集分为第一训练样本集和第二训练样本集,将第一训练样本中训练样本中一个人在各种姿势捕捉、不同的面部表情和照明条件下获取所有张人脸图像作为输入向量,将预测人脸识别结果作为输出向量,对rbf人工神经网络模型进行网络训练,将第二训练样本集中训练样本中一个人在各种姿势捕捉、不同的面部表情和照明条件下获取所有张人脸图像作为输入向量,将预测人脸识别结果作为输出向量,对rbf人工神经网络模型进行网络测试,从而对rbf人工神经网络模型进行训练,获得识别模型。

rbf人工神经网络已被广泛地用于函数逼近和模式识别,神经元的局部调节功能使得该算法具有优秀的逼近性质和非常快的学习速度。

rbf人工神经网络可以被描述为一个映射:vr→vs。设p∈vr为输入向量且ci∈vr(1≤i≤u)为输入向量的原型。每个rbf单元的输出为:

vi(p)=vi(||p-ci||)i=1,2......u

其中‖·‖表示输入空间的欧氏距离。

通常高斯函数具有可分解的优点,所以在所有可能的径向基函数中是优先选择,故:

其中,σi是第i个径向基单元的宽度。

一个rbf人工神经网络的第j个输出yi(p)为:

其中,w(j,i)是第i个感受野到第j个输出的权重。

在发明中权值w(j,i),隐含层ci和高斯核函数σi的模型参数都按照混合学习算法结合线性最小二乘法(lls)进行梯度调整。

以上技术特征构成了本发明的最佳实施例,其具有较强的适应性和最佳实施效果,可根据实际需要增减非必要的技术特征,来满足不同情况的需求。

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