MATLAB人脸识别系统

题目:MATLAB人脸识别系统

算法流程:    

本系统运用PCA算法来实现人脸特征提取,然后通过计算欧式距离来判别待识别测试人脸,本个系统框架图如下:

图:  人脸识别系统框架图

整个系统的流程是这样的,首先通过图像采集建立人脸库,这个人脸库里的人脸图像必须是格式及像素统一的,然后针对库里的人脸进行人脸训练,利用PCA进行人脸特征提取,获取特征矩阵向量组,将测试人脸投缘到特征子空间中,运用欧氏距离,在人脸库里查找相应的人脸图像,并输出。

   

  • 算法介绍

 基于PCA算法的人脸特征提取

2.1PCA的基本原理

     PCA中文全称主成分分析 法(Principal Component Analysis)[6]。掌握事物间主要区别的,运用统计学的分析方法,它可以是复杂的问题得到简化,找到物质之间的本质区别,用事物的主要影响因素来解决问题。计算主成分的主要目的是用来降维,也就把将高维空间数据降到低维空间中去。这种线性变化经常被用到数据的压缩和分析中。它就是以K-L变换为基础,运用它的正交变换可以降低数据的运算量。

    在这个系统中,库内人脸读入后被变成为灰度数值图像,把这些数值矩阵按行或者按列排练构成一个原始图像空间,运用K-L变换有效的提取人脸图像的特征,这是为下面的小空间模式匹配奠定基础,这个原始图像空间是维数较高的矩阵,通过K-L变换后获得一组新的正交基。分析比较人脸训练样本中的一些统计特征,保留主要的特征向量,减少向量矩阵的维数,获得了维数较小的人脸空间。在参与训练的人脸样本中,一种是不一样人脸组成的总体散分布矩阵,另一种是同个人脸的不同表情的平均图片或者说是类间散布矩阵。第一种的运用对人脸图像的背景光线的要求很高,后者可以很好的避免光线带来的的干扰,且有减少计算量的作用。选择的正交基的原则是取大去小,所谓的大、小就是特征值的的大小,特征值的数值反应一个人脸的基本特征轮廓,在主要成分分析中就是以它主要能量特征值对应的向量来做基底,用这个方法可以很好的进行人脸重构,重构的人脸必须是参与算法的人脸图像,否则实现重建的效果较差。 

    通过降维后,就可以获得特征空间,将待识别人脸图像进行旋转变换,可以有效的降低维数[9]。也就是用特征空间的向量的线性代数运算来表示。这样就可以把人脸识别这个过程转换成m维空间坐标系数分类问题,至于如何分类可以采用简单的距离进行判断。

2.2 基于PCA的特征提取

    PCA人脸识别特征提取有几个过程:人脸图像获取和处理;构造人脸库并且训练形成特征子空间;提取特征值和特征向量。下面对整个PCA提取特征过程中的步骤做一个详细的描述。

  1. 人脸图像获取和处理,构造人脸库

通过拍照的方式,在背景设定的环境下,拍取人脸图像,然后对人脸样本采取前期的处理,其中包括人脸图像格式的变换,是否需要灰度处理等等。这些都要根据算法需求来对图像进行前期的预处理。PCA算法运用的统计学原理中的K-L变换的原理,对图像背景要求一致,而对光线的要求也一般,前期只要保证图像像素和格式一致就可以。最后保存图像,建立人脸库。

2.训练人脸库

人脸图像获取后,要放进人脸库,把人脸库统一配置后,选取每个人若干图片参与训练,变成训练矩阵。假定格式统一的人脸图像的像素为n*m,采取变换转化为一维矩阵,然后按行相连构成N=m*n维数的的矢量,每个人脸图像都可以视为N维空间中的一点,运用K-L变换可以将这个图像转换到底维的空间当中去,这样描述更加具体。

3.计算人脸图像的生成矩阵

采用训练后的人脸图像构成样本集,产生协方差矩阵可以用以下几种方法求出来(三种等价):

                   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值