专利名称:基于字典学习模型的人脸识别方法
技术领域:
本发明属于人脸识别技术领域,具体涉及一种基于字典学习模型的人脸识别方法。
背景技术:
基于过完备字典(overcomplete dictionary)的稀疏表达技术是计算机视觉、模式识别、和机器学习领域中的一大热门问题,已经在图像去噪和修补、人脸识别、图像分类、 视频异常行为检测等研究领域有过许多成功应用。在给定一个由K个基信号列向量{元f=1按列排列组成的过完备字典D e
为实数集,n为基信号列向量的维数,K为基信号列向量的个数)时,对于n维空间中的输入信号列向量,稀疏表达问题可以表示为min || x ||0 > s.t. \\ y — Dx ||2< 8 (s-1.表不 subject to,下同)其中,为得到的稀疏(列)向量,£为重建误差,是可以预设的阈值参数, |x Itl表示向量X的0范数即非零元素的个数,14表示向量V各元素的平方和,I I v| I2表
示向量V的I2范数(即欧氏空间中的向量长度)。除非特殊说明,本发明所述向量均为列向量。在稀疏表达的基础上,字典学习方法(如K-SVD算法[1])对于不同的输入信号集Y 学习适合于它的字典,在很多应用领域可以得到比使用预设字典更好的结果。对于分类问题,通过学习得到的字典的优势更加明显。对于人脸识别和图像分类问题,在某种程度上,稀疏表达可以被视为一个特征提取的过程对于每个输入信号,一对一地得到其对应的稀疏向量,将稀疏向量作为分类器的输入,就可以得到分类结果。从这种角度来看,在字典学习的同时如果适当考虑分类误差, 则计算得到的稀疏向量能拥有更强的判别能力,对于新来的未知测试数据会有更好的泛化 (generalization)能力。而特征提取结果的效果如何,与使用的字典D是否能够很好地表达输入信号集Y有很大的关系。这也是对于此类分类问题,使用基于输入信号集学习得到的字典比使用固定的预设字典能取得更好的效果,这在图像去噪、图像修复等应用中也有相似的体现。。如果字典D中的基信号dk线性张成的子空间维数与输入信号y所处的空间维数相差过大的话,使用这样的字典,即使它对于训练数据有很好的重建能力,对于新来的测试数据也很难有好的泛化性能。研究结果表明,字典中基信号的不相关程度对于提升稀疏表达重建精度与算法运算速度都有很大的帮助,,但现阶段的稀疏表达和字典学习模型大多只关注于字典作为一个整体的重建性能和判别性能,忽略了其中的基信号的不相关程度这一重要因素
发明内容
本发明的目的在于提出一种人脸识别方法,针对于人脸识别问题的字典学习模型,着重关注现在已有的字典学习方法所忽视的字典中基信号的不相关程度。在保持字典的重建性能和判别性能的前提下,得到不相关程度更高的字典,以提高人脸识别问题中的分类正确率。本发明提供的技术方案如下一种基于字典学习模型的人脸识别方法,包括如下步骤(流程参见图I):步骤I :将训练和测试的人脸图像映射至低维空间,得到训练信号集矩阵Y ;步骤2 :建立字典学习模型,包括不相关的字典学习模型IDL和无约束的不相关字典学习模型U-IDL ;所述两种字典学习模型中包括字典的相关度,所述字典的相关度用公
式coKD) =表示,其中I为单位矩阵,|A|丨表示矩阵A的F范数,即矩阵A中各元
素的平方和;步骤3 :将训练信号集矩阵Y输入到IDL及U-IDL模型中,然后对模型进行求解, 得到适应于该训练集的字典D、训练集的稀疏向量矩阵X、线性分类器W ;步骤4 :对属于测试样本的每幅人脸图片y,基于步骤3中得到的字典D利用稀疏表达算法得到其相应的稀疏向量X ;步骤5 :将稀疏向量X输入到步骤3中得到的线性分类器W中,计算W与X的乘积得到测试样本图片的类别标签列向量h( = Wx),列向量h中的第i个元素表示测试样本y 属于第i类的分类置信度,将人脸图片y判定属于置信度最高的一类。所述的人脸识别方法,其特征是,步骤I中,将所有样本随机等分为训练样本和测试样本两部分,并将每幅样本图片拉伸为列向量后进行归一化处理,化为长度为I的单位向量,再用PCAtt]将所有的样本降维到低维特征空间中。所述的人脸识别方法,其特征是,步骤2中,(A)在字典学习模型D-KSVDm中加入上述字典相关度指标,得到不相关的字典学习模型IDL如下rnin ||F - DXfF + l\Dr D -/|[, +r/\\H-WX ||J. +J3\\W ||J. (I)s.t. ||dk||2 = l k = I, . . . , K |xj I0^T i = I, . . . , N其中X为学习得到的稀疏列向量所组成的矩阵,W为学习得到的线性分类器矩阵, 入,n,P为人工设置的权重参数,可以根据实际问题进行调整,dk为D中的第k列基信号列向量,K为基信号列向量的个数,T为预设的稀疏系数阈值,表示稀疏向量Xi中非零元素的最大个数;I IxiI Io表示列向量范数(即非零元素的个数),I |dk| |2表示列向量 4的12范数(即欧氏空间中的向量长度);矩阵H的每一列为仅有一个非零元素的列向量
T,这里非零元素的位置对应训练样本的类别标签真实答案 (ground-truth);(B)由于在本发明的模型中加入了字典的相关度,它会引导字典中的基信号尽量正交,因此另一种选择是把上述IDL模型中关于基信号的单位范数约束舍去,得到无约束的不相关字典学习模型U-IDL如下min \\Y - DXfp + A \dt D - /|+ 7] \\H - WX \\2F +P\\W
s. t. I I Xi I 10 < T, i = I, , N (2)所述的人脸识别方法,其特征是,步骤3中所述对模型进行求解,指将K-SVD算法 [1]中得到的字典和稀疏向量矩阵作为D和X的初始值,在此基础上输入训练数据Y,然后对模型进行求解。所述的人脸识别方法,其特征是,步骤3中,求解不相关的字典学习模型IDL的方法为对于建立的模型采用循环迭代的方式进行求解,对于不相关字典学习模型中的三个变量D、X、W,在固定其中两个变量的前提下对剩余一个变量进行求解,并反复迭代,最终达到每次迭代的目标函数值都收敛,或者达到预设的最大迭代次数。所述的人脸识别方法,其特征是,步骤3中,求解无约束的不相关字典学习模型 U-IDL的方法与IDL模型的求解过程唯一不同之处在于在字典D的更新阶段,U-IDL模型没有I I dk| |2 = I此单位范数约束条件,因此通过对dk求导可直接得到其最优解。本发明的有益效果本发明对稀疏表达中的字典学习问题提出了新的模型和方法,可以应用于一般情况下的模式识别和图像分类问题;特别是针对人脸识别应用,本发明提出的字典学习方法,能达到较高的人脸识别准确度。
图I是本发明的流程图;其中,(a)训练过程,(b)测试过程。图2是Extended YaleB数据库中的人脸样本示意图;图3是-在Extended YaleB数据库上,本发明提出的不相关字典学习方法与其他字典学习方法所获得字典的不相关程度的对比结果图;图4是CAS-PEAL-R1人脸数据库中的人脸样本示意图。
具体实施例方式下面参照附图,对本发明的实施例进行具体描述。实施例一步骤I :将训练和测试的人脸图像映射至低维空间,得到训练信号集矩阵Y。输入样本为Extended Yale B数据库中的人脸样本图片,该数据库包含38个人在不同光照条件下的共计2414张图片,所有图片均经过标准化处理,大小为168X192像素, 如图2所示。将每个人的样本随机等分为训练样本和测试样本两部分,并将每幅样本图片拉伸为向量后进行归一化处理为单位向量,再用PCA[4]将所有的样本降至504维空间。步骤2 :建立字典学习模型,将Y输入到字典学习模型中,得到适应于该训练集的字典D、训练集的稀疏向量矩阵X、线性分类器W。在本实施例中学习到的字典包含570个基信号,稀疏系数阈值T= 16。(2. I)提出用下面的公式表示字典D的相关度概念cor(D)= DtD-I ^其中I为单位矩阵,|A|丨表示矩阵的F范数,即各元素的平方和。COT(D)度量的是字典D与正交矩阵之间的差异,如果cor (D)值为0,则字典D中列向量完全不相关;如果 cor (D)值非常大,则说明字典D中列向量具有很高的相关度。我们希望得到的字典D中的基信号dk是尽量正交的(即非常不相关),这样这些基信号就可以对空间中其他信号有很好的表达能力。(2. 2)建立字典学习模型(a)不相关的字典学习模型(IDL)将字典的相关度加入监督的字典学习模型D-KSVDm中,可以得到不相关的字典学习模型(IDL)如下rnin ||7 - DX\fF + l\DrD -/|[, +t]\\H-WX \\2F +P\\W\fFs.t. Il dk ||2 = 1 k=l,...,K|| Xi ||0<T i = I, , N其中X,W为学习得到的稀疏向量矩阵和线性分类器,入,n,@为模型中的参数, 可以根据实际问题调整。dk为D中的基信号列向量,K为基信号列向量的个数,T为预设的稀疏系数阈值,表示稀疏向量Xi中非零元素的个数。H的每一列为仅有一个非零元素的列向量Iii=
T,这里非零元素位置表示样本的类标签标准答案,如第j 个位置值为I,则表示此样本Xi属于第j类。(b)无约束的不相关字典学习模型(U-IDL)IDL模型中关于字典中基信号的约束I |dk| |2 = I在许多现有的字典学习模型中出现过,其目的在于避免求得的稀疏向量的范数过小。但这个约束也导致了字典学习模型的字典更新阶段需要求解一个有约束的优化问题,使得求解字典D的时间代价很大。由于在本发明的模型中加入了字典的相关度cor(D),它会引导字典中的基信号尽量正交,因此可以把IDL模型中关于基信号的单位长度约束舍去,得到无约束的不相关字典学习模型(U-IDL)如下 rnin ||7 - DX\fF + l\Dr D - /!:' +r/\\H-WX ||J. +J3\\W ||J.s. t. I I Xi I I o ^ T i = I, , N步骤3 :将步骤I中由人脸图片组成的输入信号集矩阵Y输入到IDL及U-IDL模型中,并以将Y输入K-SVDtl]中得到的字典和稀疏向量矩阵作为D和X的初始值,对模型进行求解。得到适应于该训练集的字典D、训练集的稀疏向量矩阵X、线性分类器W。A.求解不相关的字典学习模型(IDL)对于建立的模型采用循环迭代的方式进行求解。对于不相关字典学习模型中的三个变量D、X、W,在固定其他两个变量的前提下对另一个进行求解,并反复迭代这一过程,最终达到每次迭代的目标函数值都收敛,或者达到预设的最大迭代次数。(3. I)将输入信号集矩阵Y输入K-SVDtl]算法,得到初始化的字典Dtl及稀疏向量矩阵Xtlt5
(3. 2)重复下列a)、b)、c)三步直到满足上述两条迭代停止条件时,迭代停止
a)固定D、X,求解W。
当D、X固定时,关于W的目标函数为
权利要求
1.一种基于字典学习模型的人脸识别方法,包括如下步骤步骤I :将训练和测试的人脸图像映射至低维空间,得到训练信号集矩阵Y ;步骤2:建立字典学习模型,包括不相关的字典学习模型IDL和无约束的不相关字典学习模型U-IDL ;所述两种字典学习模型中包括字典的相关度,所述字典D的相关度用公式cor(D) = _/|表示,其中I为对角矩阵,|A|丨表示矩阵A的F范数,即矩阵A中各元素的平方和;步骤3 :将训练信号集矩阵Y输入到IDL及U-IDL模型中,然后对模型进行求解,得到适应于该训练集的字典D、训练集的稀疏向量矩阵X、线性分类器W ;步骤4 :对属于测试样本的每幅人脸图片y,基于步骤3中得到的字典D利用稀疏表达算法得到其相应的稀疏向量X ;步骤5 :将稀疏向量X输入到步骤3中得到的线性分类器W中,计算W与X的乘积得到测试样本图片的类别标签列向量h,列向量h中的第i个元素表示测试样本y属于第i类的分类置信度,将人脸图片y判定属于置信度最高的一类。
2.如权利要求I所述的人脸识别方法,其特征是,步骤I中,将所有样本随机等分为训练样本和测试样本两部分,并将每幅样本图片拉伸为列向量后进行归一化处理,化为长度为I的单位向量,再用PCA将所有的样本降维到低维特征空间中。
3.如权利要求I所述的人脸识别方法,其特征是,步骤2中,(A)在字典学习模型D-KSVD中加入所述字典相关度指标,得到不相关的字典学习模型 IDL如下mm |r - DXfF +4^1 D -/||' +I1WH-WXg +p || W g's. t. I I dk| I2 = I k = 1,...,K| I Xi I I0^T i = I, . . . , N其中X为学习得到的稀疏列向量所组成的矩阵,W为学习得到的线性分类器矩阵,入, n,^为人工设置的的权重参数,dk为D中的第k个基信号列向量,K为基信号列向量的个数,T为预设的稀疏系数阈值,表示稀疏向量Xi中非零元素的最大个数;I IxiI IC1表示列向量 Xi的0范数,I I dk| I2表示列向量dk的I2范数;矩阵H的每一列为仅有一个非零元素的列向量比=
T,这里非零元素的位置对应训练样本的类别标签真实答案;(B)把上述IDL模型中关于基信号的单位范数约束舍去,得到无约束的不相关字典学习模型U-IDL如下rnin ||7 - DX\fF + l\DrD -/|[, +t]\\H-WX \\2F +P\\W\fFs. t. I I Xi I I o ^ T i = I, , N
4.如权利要求3所述的人脸识别方法,其特征是,步骤3中所述对模型进行求解,指将 K-SVD算法中得到的字典和稀疏向量矩阵作为D和X的初始值,在此基础上输入训练数据 Y,然后对模型进行求解。
5.如权利要求4所述的人脸识别方法,其特征是,步骤3中,求解不相关的字典学习模型IDL的方法为对于建立的模型采用循环迭代的方式进行求解,对于不相关字典学习模型中的三个变量D、X、W,在固定其中两个变量的前提下对剩余一个变量进行求解,并反复迭代,最终达到每次迭代的目标函数值都收敛,或者达到预设的最大迭代次数。
6.如权利要求5所述的人脸识别方法,其特征是,步骤3中,求解无约束的不相关字典学习模型U-IDL的方法为=U-IDL模型与IDL模型的求解过程的唯一不同之处在于字典D的更新阶段,即U-IDL模型没有约束条件I I dk| |2 = 1,因此可通过对dk求导直接得到其最优解。
全文摘要
一种基于字典学习模型的人脸识别方法。将训练和测试的人脸图像映射至低维空间,得到训练信号集矩阵;建立字典学习模型,包括不相关的字典学习模型IDL和无约束的不相关字典学习模型U-IDL;将训练信号集矩阵输入到IDL及U-IDL模型中并对模型进行求解,可获得不相关字典和线性分类器;对属于测试样本的每幅图片,基于上一步中得到的字典利用稀疏表达算法得到其相应的稀疏向量;将稀疏向量输入至线性分类器中,得到测试样本图片的类别标签,以类别标签表示的结果作为人脸识别的结果。本发明对稀疏表达中的字典学习问题提出了新的模型和方法,可以应用于一般情况下的模式识别和图像分类问题;特别是针对人脸识别应用,本发明提出的字典学习方法,能达到较高的人脸识别准确度。
文档编号G06K9/00GK102609681SQ201210008299
公开日2012年7月25日 申请日期2012年1月12日 优先权日2012年1月12日
发明者刘诗, 林通, 査红彬 申请人:北京大学