基于matlab的人脸识别技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于matlab 的人脸识别技术
论文
摘要:随着计算机技术的飞速发展,人脸识别技术逐渐发展壮大起来,并应用到众多领域。 人脸识别是指在人脸检测的基础上针对输入的人脸图像,通过特征提取与特征匹配,找出与人脸库中匹配的人脸图像,从而达到识别效果。当前主要采取的人脸识别方法有:基于几何特征的方法 ,基于模板的方法和基于模型的方法。 这些方法较适合于人脸信息的验证,即待识别者是否为预先指定的对象。不足之处在于,需要建立一个拥有庞大人脸信息的训练样本库,因此就降低了输出结果的时效性和准确性。在应用领域中存在局限性,不适于具有庞大人脸样本训练库的身份鉴别领域。鉴于种种不足,本文提出了一种基于可变人脸库的快速人脸识别方法,使人脸识别技术适用于更多的行业。网络信息化时代的一大特征就是身份的数字化和隐性化,如何准确鉴定一个人的身份,保护信息安全是当今信息化时代必须解决的一个关键社会问题。正在悄然兴起的人脸识别技术正好可以解决这一问题。
关键词:模式识别,K-L 变换,人脸识别,图像处理,matlab,图像增强,边缘检测,图像预处理,灰度直方图,特征提取
1.1识别系统构成
自动人脸识别系统具有如图所示的一半框架并完成相应功能的任务。
(1)人脸图像的获取:一般来说,图像的获取都是通过摄像头摄取,氮摄取的图像可以是真人,也可以是人脸的图片或者为了相对简单,可以不考虑通过摄像头来摄取头像,而是直接给定要识别的图像。
(2)人脸的检测:人脸检测的任务是判断静态图像中是否存在人脸。若存在人脸,给出其在图像中的坐标位置,人脸区域大小等信息。而人脸跟踪需要进一步输出所检测到的人脸位置,大小等状态随时间的连续变化情况。
(3)特征提取通过人脸特征点的检测与标定可以确定人脸图像中显著特征点的位置(如眼睛,眉毛,鼻子,嘴巴等器官),同时还可以得到这些器官及其面部轮廓的形状信息的描述。
1.人脸特征提取的算法:K-L 变换是图像压缩中的一种最优正交变换,通过它可以把人脸样本从高维空间表示转换到低维空间表示,且由低维空恢复的人脸样本和原人脸样本具有最小的均方误差,从而可用人脸样本在低维空间的变换系数作为对人脸特征的描述。其中主元分析法(PCA )就是基于K-L 变换的一种比较流行的算法,它是统计学中分析数据的一种有效的方法,其目的是在数据间中找到一组向量以尽可能地解释数据的方差,将数据从原来的R 维空间将维投影到M 维空间(R>>M)并保存数据的主要信息,从而使数据更易于处理.按照K-L 变换识别算法流程.从人脸样本中提取面部特征.是人脸识别中重要步骤.其实质是一个从高维图像空间到低维数字空间的转换过程,可表示为:Y=T{x}
式中:x 表示原始数据,Y 表示为特征信息,T 表示映射
人脸样本特征提取算法如下:首先计算该库中所有样本的平均值(平均脸): ∑==p i n f P f 1
1 式中;P 表示照片数.f 表示每张照片的线性表示然后构建协方差矩阵:
T
T i p
i i A A f f P C ⨯==∑=)'('11
式中:f f f i -='表示每张照片与样本平均值的差。A 表示差值形成的矩阵
接着,进行特征的提取:由于此协方差矩阵进行求解特征值和特征向量比较困难的,因此采用奇异值分解的方法得到特征矩阵。
i T i f U Y '=
式中:U表示的是采用奇异值分解特征向量提取方法。
2.基于协同模式的人脸样本分类:将人脸样本进行分类,采用上文所述方法获取原始图像的非线性最优表示,以消除图像冗余信息的干扰。在获得人脸样本图像的特征值后,运用协同模式识别的方式进行人脸样本的分类。
(1)基于人脸图像对比的身份识别:即人脸识别问题。通过将输入人脸图像于人脸数据库中所有已知原型人脸图像计算相似度并对其排序来给出输入人脸的身份信息。这些包括两类识别问题:一类是闭集,即假定输入的人脸一定是人脸库中得某个个体;另一个是开集识别,即首先要对输入人脸是否在已知人脸库中做出判断,如果是,则给出其身份。
(2)基于人脸图像对比的身份验证:即人脸确认问题。系统在输入人脸图像的同时输入一个用户宣称的该人脸的身份信息,系统要对该输入人脸图像的身份于宣称的身份是否相符作出判断。
1.2实现过程:人脸库的建立
(1)照片预处理
预处理的主要作用有两方面:第一,消除噪音;第二,归一尺度。为了提高识别速度,应该尽量减少入库照片的冗余信息。因此库中的照片中涵盖的信息主要为人脸五官信息,其他与人脸特征提取与比对不相关的信息都视为背景信息,需要剔除经过尺度归一化处理及灰度均衡化处理,样本照片存储为像素大小112*92的灰度图像
(2)人脸样本分类
通常的人脸识别方法是将人脸库视为一个整体进行训练,得出整个人脸库的特征值,之后再进行人脸识别。把一个常规的人脸库看成是若干个相对较小的人脸库的集合。进行人脸识别时,按照需求查找相应的子库,这样降低了参加训练的样本基数,从而达到了在不降低识别准确性的前提下,降低了人脸识别耗时的效果。
(3)数据库的建立
数据库起到了辅助的作用,是人脸识别算法与人脸库连接的一个桥梁。当识别待测样本时候,首先需要把待测样本进行人脸分类,在确定了该样本属于哪个聚类之后,从数据库中查找与之对应的人脸子库,进而进行人脸识别工作。该数据库中存储了人脸库中的每个照片的数据信息,包括:姓名,照片编号,协同模式分类:存储该样本的物理地址等信息
2.1基于matlab图像处理的基本操作
读取和显示图像可以通过imread()和imshow()来实现;图像的输出用imwrite()函数就可以很方便的把图像输出到硬盘上;另外还可以用imcrp(),imrisize(),imrotate()等来实现图像的裁剪,缩放和旋转。
2.2 图像处理功能的Matlab实现实例
可以通过图像处理工具箱的有关函数对一人脸的彩色图像进行处理