神经网络在人脸识别中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

神经网络在人脸识别中的应用

1.引言

早在上世纪60年代末, 人脸识别即引起了研究者的强烈兴趣.但早期的人脸识别一般都需要人的某些先验知识, 无法摆脱人的干预。进入上世纪9O年代, 由于高速度、高性能计算机的出现,人脸识别的方法有了重大突破, 进入了真正的机器自动识别阶段, 人脸识别研究得到了前所未有的重视。人脸识别方法有很多种: (1)特征脸方法。这种方法起源于图像描述技术,采用特征脸识别方法有良好的稳定性、位移不变性、特征向量与图像的高度成比例变化以及转置不变性。不足之处是受表情变化、光照角度强度变化和视角变化等严重影响, 鲁棒性较差。(2)隐马尔可夫模型方法(HiddenMarkovMode1)是用于描述信号统计特征的一组统计模型。HMM的基本理论是由Baum和Welch等人在20世纪6O年代末70年代初建立, 在语音识别中应用较多。

(3)弹性图匹配方法。弹性图匹配方法是一种基于动态连接结构的方法。它将人脸用格状的稀疏图表示。

(4)神经网络方法。人工神经网络是由多个神经元按照一定的排列顺序构成的, 是一个非线性动力学系统, 其特色在于信息的分布式存储和并行协同处理。虽然单个神经元的结构极其简单, 功能有限, 但由大量冲经元所构成的网络系统却能够实现复杂丰富的功能。神经网络系统除了具有集体运算的能力和自适应的学习能力外, 还有根强的容错性和鲁棒性.善于联想、综合和推广。神经网络模型各种各样。它们是从不同的角度对生物神经系统不同层次的描述和模拟。有代表性的网络模型有感知器、多层映射BP网络、RBF网络等。目前, 在人工神经网络的实际应用中,绝大部分的神经网络模型都是采用BP网络及其变化形式, 它也是前向网络的核心部分, 是人工神经网络最精华的部分。2BP神经网络的人脸识别BP神经网络用于人脸识别一般应先对输入图像实行图像预处理,然后进行特征提取,接下来就是BP网络训练,最后用训练好的网络进行识别,获得识别结果。

2.基于特征脸和BP 神经网络的人脸识别方法

2.1特征脸分析

这种方法是根据图像的统计特征进行正交变换( K-L 变换) [3] , 以去除样本间的相关性, 然后根据特征值的大小选择特征向量( 主分量) , 由于这些特征向量的图像类似人脸, 所以称为特征脸[4, 5] 。下面就这种方法作简要介绍。X∈RN 为表示一幅图像的随机向量, 这里N是图像的大小, X 由图像的行或列连接而成的向量。假设有p 个人, 每个人有r1 ( 1≤i≤P) 个人脸样本图像, 样本集为{ Xji } , Xji表示第j个人的第i个样本。那么每个人样本均值向量为mi ( 1≤ i≤p) ; 总体样本均值向量为m; 类间散布矩阵为

Sb 是N×N的大矩阵, 一般由奇异值分解定理[ 8] 得到其特征向量矩阵U 及样本集的特征系数向量矩阵C。其中

U 的秩总是小于p 的, 它的每一列就是一特征脸( 向量) ,一般有p - 1个。每一张人脸都可以投影到这p - 1个特征脸张成的子空间中, 得到一个特征系数向量, C 就是样本在子空间中投影得到的系数, 每一列ci 就代表mi 在特征脸空间投影的特征系数向量, 它有p - 1 行, 即投影得到的p - 1 特征系数。如图1是本文实验一张人脸的具体展开, 第一项为平均脸, 其他是按特征值大小排序的特征脸, 常称为主元。

在最近邻识别中, 将输入的人脸图像连接成一维向量, 向特征脸张成的子空间投影, 然后在子空间中, 如果与ci 的距离最近, 就判别为第i 类。

2.2神经网络实现分类器

基于BP算法的前向多层神经网络以其算法、概念及基本理论都很简单, 但有很强的学习能力, 已经在实际问题中有了大量成功的应用[ 10] , 简称其为BP 神经网络。本文用最小均方误差小于0.0001的学习, 这样神经网络学习的实质就是进行后验概率估计; 分类时实质就是采用最大后验概率分类方法[10, 12] 。下面简要对它们的关系作推导。

神经网络实现的映射F: Rd →RM, 这样期望最小均方误差E[ y - F( x) ] 2 最小, 这里F( x) = E( y/x) , y 是期望的输出yj =( 0, ⋯,0, 1, 0, ⋯, 0) T, 如果x∈( 第j 类) 。F( x) = E( y/x) , 这样对给定第j 类的输入x, 对应的输出为

Fj( x) = E[ yj /x] = 1 ×P( ( yj = 1) /x) + 0 ×P( ( y = 0) /x) =P( ( yj = 1 ) /x) = P( ωj /x)

本文中, 神经网络的输入是特征脸分析得到的39 个特征,输出是40 个人的每个人的后验概率。训练时, 如果是第j 个人, 让输出的向量的第j 元素为1, 其他全为0。换句话说, 让第j 类的概率为1。分类识别时, 取最大的输出作为结果, 即最大后验概率作为输出。

3.实验及结果分析

本文的实验是在ORL 人脸数据库上进行的, 有40 人, 每人有10 张人脸样本。实验中, 每人随机选择五张图片作为样本集, 剩下的作为测试集, 然后交叉实验, 让第一次的测试集作为样本集, 第一次的样本集用来测试。

特征脸识别用最近邻判别方法, 为了较客观的反映它的识别率, 选择了四种常用的相似性度量方式[ 9] 。对于识别率本文采取人脸识别中常用的累积识别率的办法。由于神经网络结构的不同, 会带来识别率较大的差别; 并且由于网络权值初始化的随机性, 每一次的结果不会完全一样。所以统计了几种不同隐层神经元数目的平均识别率。在实验中, 发现多于三层的网络结构无益于识别率的提高, 所以采用常见的三层结构,39个输入层, 40个输出层。而隐层的数目不能少于20个, 当少于20个时, 识别率将会变得很差; 当多于100个时, 识别率增加不明显, 有时反而会下降。

从表1, 表2 可以看到, 在最近邻识别的几种方法中, 马氏距离取得了较好的效果。BP网络的隐层神经元数目在一个较大的范围内, 都取得了令人满意的识别率, 比最近邻的识别率要好。当隐层神经元数目是样本的一半左右时, 取得了更高的识别率。在交叉实验的比较中, 发现第二组的识别率明显好于第一组, 这是因为人脸识别问题可以看作回归问题, 而回归问题中, 样本显得特别重要, 样本只是一定程度上反映问题的真实模型, 好的样本能较好地逼近真实模型。在实际问题中, 当样本没有选择余地时, 就会出现偏差和方差两难问题[ 10 ~12] 。

相关文档
最新文档