1 引言
模式识别问题的第一个步骤就是特征抽取,线性鉴别分析(LDA)、主成分分析(PCA)和独立成分分析(ICA)都是典型的基于子空间的代数特征抽取方法。其中,LDA是从高维特征空间里提取最具有鉴别能力的低维特征,它的基本思想是选取使Fisher准则函数达到极值的矢量作为最佳鉴别矢量集,使原始样本在矢量集上投影后达到最大的类间离散度和最小的类内离散度。PCA方法用于人脸识别主要是在二阶统计量基础上进行分析的,通过它可以提取出样本中不具相关性的主要成分,它将包含人脸的图像区域看作一组随机向量,通过PCA获得一组正交基,其主要优点用较少数量的特征对样本进行描述,降低特征空间的维数,同时又能保留所需要的识别信息。
ICA是基于信号的高阶统计特性的分析方法,经ICA分解出各信号分量是相互独立的,它的基本思想是用基函数来表示一个随机变量集合,它的成分是基于统计独立的或尽可能的独立。相比于图像的几何特征抽取方法,人脸的代数特征更容易得到,但对图像的标准化的要求会较高,因此最终特征分类的好坏与后面分类器选择都有着紧密的关系。本文分别用PCA、ICA、LDA方法对图像先进行特征提取,再采用支持向量机(SVM)作为人脸识别的基本方法进行分类性能的比较。
2 图像的特征提取
我们在对图像样本构造分类器之前,第一步要对样本进行特征抽取。以此为依据,在计算机人脸识别中,将通过大量图像数据处理后那些获得的特征定义称为低层次特征,又称代数特征;把线、面、模式等描述特征定义为高层次特征。基于统计的方法是现代人脸识别中非常经典常见的,通过利用统计策略直接从整个训练图像集合提取统计特征是我们本人的研究基础。我们先对三种基本的特征抽取方法做简要介绍。
2.1 PCA特征提取
PCA基本思想是将原来的回归自变量变换到另一组变量,即所谓的“主成分”,然后选择其中一部分重要成分作为自变量(此时丢弃了一部分不重要的自变量),最后利用最小二乘方法对选取主成分后的模型参数进行估计。利用PCA算法进行人脸识别,对训练影像进行标准化处理:X=(X-X)/ ,式中, X为训练样本影像集,大小为N×P , N为样本(人脸影像), P为影像的大小, X为训练样本集的平均影像, D为方差。训练样本集的主成分可以通过下式计算得到: UT(XXT)U=∧,式中, ∧为特征值组成的对角阵, U为特征值相对应的特征向量组成的正交阵。
特征值为λi(i=1,2,...,N),λ1≥λ2...≥λN,特征向量为Ui(i=1,2,...,N),则:
∧=λ1
.
.
.
λN , U=[U1,...,UN] (1)
选择m(m< Weig=UmX (2)
则训练样本影像集X在特征脸子空间上的投影为:
PPCA=WeigXT (3)
因此,前m个主轴所决定的子空间能最大可能的还原原始数据。引入主成分的目的是为了降低维数,m到底取多大合适呢?可以通过贡献率或者累计贡献率来确定:
R=λj / λi 或 R=λj / λi (4)
选择m使R∈ [85% , 95%]。
综上所述,PCA实质上就是KL变换的网络递推实现。
2.2 ICA特征提取
ICA的基本思想是用基函数来表示一个随机变量集合,其成分是基于统计独立的,或者尽可能的独立。假设n个观测变量x1,x2,...,xn为随机变量,类似的有随机向量S,为其n个独立元素s1,s2,...,sn的线性组合,独立元素之间相互基于统计独立且具有零均值。定义一个观测向量X=(x1,x2,...,xn ),则S和X之间的关系可表示为:X=AS,这里A是未知m×n的满秩矩阵,称之为混合矩阵或者特征矩阵。A的列向量表示特征,si表示X的第i特征的幅值。如果独立分量S有单位方差,我们将可以得到数值上唯一的一组独立分量,不同组独立分量之间只有符号上的差异。为了将独立成分分析应用于人脸图像,假设l幅m×n的人脸图像由l个统计独立的源图像经过线性叠混后得到的,即:
X=AS (5)
将每幅人脸图像按行展开成一维行向量xi ,l幅人脸图像可构成人脸矩阵:
X=[x1,x2,...,xl ]T, X∈Rl x ( m ×n ) (6)
则S∈Rl x ( m ×n )是源图像集构成的矩阵,每一行向量都代表一幅源图像。A∈R m ×n 为叠混阵,本人的目标是找到恢复阵W,使输出矩阵U=[u1,u2,...,ul]T的行向量ui∈R m ×n 是独立源图像的重现,即:
U=W·X=W·A·S=S (7)
从而得到U以后,以行向量为特征向量来构造特征空间,将每一幅等待识别的标准人脸图像投影到这个空间中去,即用这组独立基图像的线性组合表示。设xi是待识别的图像,有:
xi=a1u1 + a2u2 +...+alul (8)
式中u1,u2 ,...,ul为l个独立基;(a1,a2 ,...,al)就是这幅人脸在特征空间中的投影系数,可以通过下式求得:
[a1,a2 ,...,al]=xiUT (9)
有了投影系数,即代表了该图像在特征空间中的位置,就可以在特征空间中设计适当的分类器实现分类识别。
2.3 LDA特征提取
LDA的目的是从高维特征空间里提取出最具有鉴别能力的低维特征,这些特征能将同一个类别的所有样本聚集在一起,而不同类别的样本尽量分开,也就是说它选择使样本类间离散度和样本类内离散度的比值达到最大的特征。样本类间离散度矩阵和类内离散度矩阵定义为:
Sb=Ni(mi-m) (mi-m)T= ?b?bT (10)
Sw=(xk-mi) (xk-mi)T= ?W?WT (11)
我们希望投影后,在低维空间里不同类别的样本尽可能分得开些,并希望每个类别内部样本尽量密集,这样样本类间离散度越大越好,而样本类内离散度越小越好。所以如果Sw是非奇异矩阵,最优的投影方向WOPT就是使得样本类间离散度矩阵和样本类内离散度矩阵的行列式比值最大的那些正交特征向量。因此Fisher准则函数定义为:
WOPT =arg (12)
通过线性代数理论知道,WOPT 就是满足如下等式的解:
SbWi = λi
SwWi (i=1,2,...,m) (13)
从而就是对应于矩阵Sw-l Sb较大的特征值λi的特征向量。我们可以注意到该矩阵最多只有C-1个非零特征值,C是类别数目。
这三种图像的特征抽取方法都属于代数特征的范畴,思想是都任何图像都可以近似的用特征图像的线性组合来表示。而相比于几何特征,人脸的代数特征容易得到,但对图像的标准化和规一化的要求较高,也即代数特征是对纯人脸抽取特征的,因此特征选取的好坏与分类器有着密切的关系。
3 实验结果与分析
分别用PCA、ICA、LDA方法对图像先进行特征提取,再采用支持向量机(SVM)分类。最后采用YALE人脸库进行分类实验。YALE库共有15类人脸,每类11幅图像,其存储类型为BMP格式,为了降低实验消耗,本人先将图像中的脸像切割出来,统一归一化为40×50的标准图像。部分人脸样本如图1所示。
如下通过实验对KNN和SVM分类算法在不同特征空间中进行性能分析。采用LDA方法进行特征提取时,每幅图像由分辨率40×50的矩阵投影至1×50的特征向量。而采用ICA和PCA进行特征提取时考虑原始图像分辨率太大,减少运算量对图像进行小波分解,将分辨率压缩至40×50。取YALE人脸库中每类人脸的前5副样本作为训练样本集,将剩余的样本来作为测试样本集,ICA和PCA取各类人脸图像的训练样本均值作为训练集进行训练,因此训练完毕后,每幅图像转换为1×50的特征向量。当三种特征提取方法全部实验完成后,再分别在各自的特征空间中用SVM分类器进行分类。实验结果如表1所示。
通过比较不同的特征提取方法可以看出,在YALE人脸库上,采用ICA 对40×50的图像进行特征抽取同时选择Erbf作为核函数时,SVM就能够取得最高的识别率。
5 结束语
本文先采用主成分分析(PCA)、独立成分分析(ICA)以及线性鉴别分析(LDA)方法对图像进行特征抽取,再采用支持向量机进行人脸图像的分类。实验结果表明,代数特征抽取算法是一种解决小样本问题的有效方法,而如何充分利用代数理论来进一步增强有效鉴别特征的质量,这是我们将来后续的研究方向。
参考文献
, Applied Soft Computing 2009, 10 (1): 208-214.
, Pattern Recognition 2003, 36(2): 563╞566.
, IEEE Transactions on Pattern Analysis and Machine Intelligence 2005, 27(2):230╞244.
, IEEE Transaction on Neural Networks 2002, 13 (6):1450-1464.
[5] TSUJINISHI D, SHIGEO A. Fuzzy least squares support vector machines for multiclass problems[J], Neural Networks 2003,16 (5): 785-792.
[6] Yale database, Available from: .
作者简介:
邓丽萍(1980-),女,福建沙县人,讲师;主要研究方向和关注领域:计算机应用。