未来智讯 > 人脸语音识别论文 > 基于MATLAB的人脸识别研讨

基于MATLAB的人脸识别研讨

发布时间:2018-12-01 01:06:04 文章来源:未来智讯    
    基于MATLAB的人脸识别研讨作者: 蔡静 尹绍宏   【摘要】深入分析了主成分分析(Principal Component Analysis,PCA)方法的基本原理,PCA方法最显著的优点是能用低维特征向量来估计原始样本,基于此特点将它用来实现对人脸的识别。此外本文还深入分析了PCA中遇到的特征值选择和距离规则的采用问题。
  【关键词】MATLAB;数字图像处理;人脸识别
  1.引言
  人脸识别是当前计算机模式识别领域中的一个相当活跃的研讨课题,在平安检测、身份验证、军事、商业等领域具有广泛的应用前景。基于人脸识别的自动身份认证具有重要的理论意义和应用价值。然而通过人脸图像来进行识别仍然面临巨大的挑战,要使这一技能成为完全成熟的技能还有许多事务需要做。
  2.人脸识别的研讨内容
  人脸识别(Face Recognition)是指基于己知的人脸样本库,利用图像处理和模式识别技能从静态或动态场景中,识别或验证一个或多个人脸。从广义上讲,其研讨内容包括以下五个方面:
  (1)人脸检测(Face Detection):即从动态的场景或复杂的背景中检测出人脸的存在并且确定其位置,然后分离出来。这一任务主要受光照、噪声、头部倾斜度以及各种遮挡的影响。
  (2)人脸表征(Face Representation):也称为人脸特征提取,即选取某种表示方法来描述检测出的人脸与数据库中已知人脸。常常的表示方法包括几何特征(如欧氏距离、曲率、角度等)、代数特征(如矩阵特征矢量)、固定特征模板、特征脸、云纹图等。
  (3)人脸识别(Face Identification):即将待识别的人脸与数据库中已知人脸对照,得出相关信息。这一过程的核心是选择适当的人脸表征方法与匹配策略。
  (4)表情分析(Facial Expression Analysis):即对待识别人脸的表情进行分析,并对其加以归类。
  (5)生理分类(Physical Classificat-ion):即对待识别人脸的生理特征进行分析,得出其年龄、性别等相关信息,或者从几幅相关的图像推导出希望得到的人脸图像,如从父母图像推导出孩子的脸部图像、基于年龄增长的人脸图像估算等。
  相对来说,人脸的表情分析、生理分类是两个相当难的研讨方向,只是它在计算机图形学,尤其是计算机动画等领域有很广泛的应用前景,因此在近来几年得到了国内外很多从事计算机视觉(Computer Vision)的研讨人员的注意。本论文主要介绍狭义的静态人脸图像识别方法,研讨的重点是人脸特征提取与识别的关键技能,不涉及表情识别和生理分类方面。
  人脸识别系统常常主要由人脸检测与定位,人脸特征提取与识别两局部组成,在这两局部的基础上还包括图像预处理等步骤。其主要实现步骤如下:
  (1)图像预处理
  由于实际成像系统几多存在不完善的地方以及外界光照条件等因素的影响,在一定程度上增加了图像的噪声,使图像变得模糊,且对比度低、区域灰度不平衡。为了提高图像的质量,保证提取特征的有效性,进而提高识别系统的识别率,在提取特征之前,有必要对图像进行预处理操作,以改善图像质量,保证提取特征的有效性。
  (2)人脸的检测与定位
  从输入图像中找出人脸及人脸所在的位置,并将人脸从背景中分割出来,输出为分割好的人脸部分图像。
  (3)图像归一化
  图像归一化属于图像预处理的范畴。在对人脸图像进行特征提取和分类之前一般需要做几何归一化和灰度归一化。几何归一化是指根据人脸定位结果将图像中人脸变换到同一位置和同样大小,灰度归一化是指对图像进行光照补偿等处理,光照补偿可以一定程度的克服光照变化的影响而提高识别率[3,4]。
  (4)特征提取与识别
  对于归一化了的人脸图像进行面部的各特征提取,将原始人脸图像中的数据映射到特征空间,对人脸进行特征建模,建立的特征模型主要用于区分各人脸之间的差异性,为人脸识别分类打下基础。由于原始的人脸图像数据量是非常大的,为了有效的实现分类识别,就要对原始数据进行变换,得到最能反映分类性子的特征,如何提取稳定和有效的特征是识别系统成败的关键。人脸识别验证是整个自动人脸识别系统的最终一个步骤,根据面部特征的提取结果,将待检测人脸与人脸库中人脸数据进行对照,判断出待检验人脸的身份信息。
  一个完整的人脸自动识别系统如图1所示。
  对以上人脸识别系统进行分析能够看出,人脸识别研讨需要考虑以下几个主要方面:如何正确快速的检测并分割出人脸局部;在非约束环境下,如何选取一些必要的处理方法来提高系统的鲁棒性,寻找一种受人脸姿态变化和光照条件等因素影响较小的特征提取方法;如何有效的变化补偿、特征描述和正确的分类等等,以上方面均直接影响人脸识别的速度与正确度。
  3.人脸识别的具体过程
  在实验编程中,我们利用的是MATLAB
  7.0平台。MATLAB是由MathWorks公司推出的一套高本能的数值计算和可视化的数学软件。MATLAB编程运算与人进行科学计算的思绪和表达方式完全一致。不像学习其他高级语言如Basic、C那样难于掌握。MATLAB的基本元素是矩阵,所以其相当符合用来进行图像处理。MATLAB具有强大的数值计算和图示能力。具有相当丰富的工具箱(ToolBox)。在国内外高等院校中,已成为高等数学、数值分析、数字信号处理、自动抑制理论以及工程应用等课程的基本教学工具。
  3.1 将训练样本图像输入程序
  选取的训练样本图像为包含4个人的图像样本集,以验证本程序的通用性。图2为本实验要输入到识别程序中的局部人脸样本图像。
  3.2 程序对输入的图像进行预处理
  本程序对输入的图像进行的预处理包括有彩色图像到灰度图像的转换、图像的噪声消减、图像的尺寸归一化等。人脸识别需要将人脸图像样本尺寸归一化,即缩放变换到固定的尺寸。在本程序中,为方便图像矩阵的计算,提升计算速度,将图像统一缩放到120×120大小。图3为经过预处理后得到的灰度图像。   3.3 人脸图像训练阶段
  利用基于PCA+LDA算法的人脸识别算法进行人脸识别,该环节包括训练和识别两个环节,对人脸样本图像进行训练则会产生平均脸和特征脸。图5-4为训练样本集中各人脸图像的特征脸,图4为训练样本集的平均脸。
  3.4 人脸图像识别阶段
  将测试图像输入程序。若经过程序判断待测试图像为人脸图像库中的人脸图像,则显示识别结果。图5为测试例子和识别结果。
  4.人脸识别实验结果及分析
  由于受实验条件所限,未能利用该人脸识别系统采集大量不同的人脸实验样本,不过由大略人脸图像数据库来充分验证系统的本能。实验中,人脸库中有4个各自4幅图片,从中每人各随机选择3幅人脸图像作为训练样本,共同作为训练样本集。其余每人所剩下的1幅人脸图像作为测试样本集。所有照片对照充分的反映了同一个人的不同人脸图像因光照变化、面部细节变化等因素而产生的差异。摄像头获取的照片拍摄于不同的时间,且同样允许在一定范围内的光照、表情及面部角度的变化。该人脸识别系统选取基于PCA+LDA算法的人脸识别方法,具体实现步骤如前文所述。按照上述训练及测试样本的采用,在不同的人脸样本的情况下,利用该系统进行人脸识别,均获得了80%以上的识别率。
  从实验结果能够看出,即使所选取的训练及测试样本集中的图像样本均为具有一定姿态变化,在不同光照条件下获取的图像,但该人脸识别系统仍具有很好的识别效果。另外,该人脸识别系统选取优秀的人脸识别算法,降低了系统的运算量,因此具有较高的识别速度。这充分说明了运用PCA+LDA方法进行人脸识别的可行性。
  本文所设计的人脸识别系统实现了人脸识别主要模块的功能,但距离一个具有实时性的快速自动人脸识别系统还相差较远,在系统的构建方面还有许多事务要做。针对该系统现状,在今后的事务中,还要对其作进一步的完善。
  参考文献
  [1]王蕴红,朱勇,谭铁牛.基于虹膜识别的身份辨别[J].自动化学报,2002,28(11):l-10.
  [2]梁路宏.人脸检测与跟踪研讨[D].清华大学博士论文,2001.
  [3]程云鹏.矩阵论[M].西安:西北工业大学出版社,2003,2.
  作者简介:
  蔡静(1980—),女,天津工业大学2010硕士研讨生,主要研讨方向:计算机图像处理。
  尹绍宏,女,副教授,现供职于天津工业大学,主要研讨方向:计算机图像处理、数据挖掘。
转载请注明来源。原文地址:https://www.7428.cn/page/2018/1201/49626/
 与本篇相关的热门内容: