基于PCA人脸识别算法的智能考勤系统的研究
2019-11-12蔡婷婷钱鹏江
蔡婷婷 钱鹏江
摘要:近几年一些新颖学习算法的运用,使得计算机的人脸识别效率接近甚至赶超人类肉眼辨别物质的能力。但是这些新颖的学习算法都是以大数据分析为基础的,在有限运算能力的嵌入式平台上并不适用。鉴于现有嵌入式中央处理器较为薄弱的计算能力,该课题讨论的智能考勤系统并没有采用新式的智能学习算法,只是在经典的主成分分析(Principal Component Analysis, PCA)算法的基础上加以完善,提出了基于全局与局部特征加权的人脸识别算法。
关键词:人脸识别;智能考勤;PCA;嵌入式系统
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2019)25-0191-02
1 主成分分析简介
主成分分析是所有特征提取方法中比较著名的。Kirby和Sirovich两位学者率先提出把Karhunen-Loeve(K-L)变换运用在人脸分析领域,而且给出主成分的概念,用于描述和替换人脸图像,Turk和Pentland则在前人的基础上给出“特征脸”的定义,所以这个方法还被叫作“特征脸法”。主成分分析法的关键作用是把维度较高的空间向量映射到低维向量空间,换而言之就是通过减小向量空间维度达到剔除数据关联性的意义。
2 基于全局与局部特征加权的人脸识别算法
2.1 局部特征PCA人脸识别算法
大部分人脸识别算法还是基于人脸图像的全局特征,很大程度上是鉴于很难精确找准人脸的局部特征以及是否能成功获取这两方面的考虑。然而局部特征相对于全局特征而言,更具代表性,可以提高人脸识别的正确率。假若待检测个体的局部特征更为显著,那么它在人脸识别中所占的比重就更高所以,本文提出获取人脸的局部特征并形成对应的集合。在主成分分析的基础上,建立局部特征子空间,加上全[3]局和局部特征组成的权重系统,完成对人脸图像的识别[4]。
(1) 获得局部特征
局部特征的获得对于本文提出人脸识别算法的正确率很关键,所以本文采用代码开源的opencv库以实现对人脸局部特征如眼睛、鼻子、嘴巴的获取。
(2) Haar-like型特征算法
Haar-like型特征算法并不是指的某一種算法,而是一类算法的统称,比如Viola-Jones算法、眼睛特征识别算法、鼻子检测算法等[5]。
2.2 融合全局和局部特征的人脸识别
按照上文的流程,已经成功获得人脸图像的全局和局部特征的子空间,然后根据最近邻法则求得的欧式距离进行识别。根据现有文献以及实验仿真,独立的基于全局特征的人脸识别或者基于局部特征的人脸识别均无法提高正确率,效果不佳。而且,假如某个人的嘴型特征显著,但采用全局特征对图像加以识别会造成较低的信任度造成错误识别现象的发生。因此,本文提出兼顾全局和局部特征的人脸识别算法,即分开算出全局特征的离散度[Sta]与局部特征的平均离散度[Stii=1,2,3,4],这里提到的离散度表示全局和每个局部特征集合的权重,最后得到综合信任度。
3 人脸识别流程
首先采用摄像头获取每个员工的人脸图像,平均每个员工取五张,建立每个员工的初始学习集合。把学习集合的协方差矩阵看作生成矩阵,求解生成矩阵的特征值及对应的特征向量,然后按照进献度进行降维操作,算出且生成相应的人脸特征子空间。把待检测的图像和平均脸的差值脸映射至人脸特征子空间,得到待检测图像在人脸特征子空间的位置。根据位置坐标,采用最近邻法则运算得到待检测图像和每张预处理过的图像之间的欧氏距离并以此作为识别依据。人脸识别的流程图具体步骤由以下四步完成。
(1) 采用摄像头获得人脸图像并建立相应的数据库,构建原始学习集合。
(2) 把协方差矩阵[C]看作生成矩阵,算出相应的特征值及特征向量,挑选最高进献度的特征向量建立特征子空间,即人脸特征子空间[Wj]。
(3) 根据式(5)对检测图像预处理,得到它在人脸特征子空间[Wj]上的映射向量。
(4) 根据欧氏距离公式计算待检测图像跟每张人脸的距离,然后判断它归属的类别。
4 实验仿真结果
为了检验提出算法的性能,确保系统集成选比较具有代表性的且适合仿真实验的ORL库、Yale库和AR库进行测试验证。其中ORL库是英国剑桥大学Olivetti实验室研究建立的,有40个人脸对象,而每个对象有10张,总共400张人脸灰度图像[7],而图像的尺寸是112×92且背景都是黑色。Yale库中的人脸对象略多于ORL库,总共有15个对象,每个对象11张,涵盖不同光照强度、表情各异和遮盖角度不同的正脸图像[8]。AR库出自西班牙计算机视觉中心,整个库中有116人,共计3288张图像,是实验三个库中样本最多的一个库。而且图像获取的流程十分严格,影响图像的关键因素,如摄像头的参数、与人脸的距离和光照强度都经过调节。ORL人脸库和Yale人脸库的局部样本如图2所示。
第一种情景是对ORL库中的样本进行人脸识别测试。设置系统学习的人脸图像数目在[2,8]内递增,提出算法、全局PCA算法和局部PCA算法的识别率。
第二种情景是对Yale库中的样本进行人脸识别测试。设置系统学习的人脸图像数目在[2,8]内递增,提出算法、全局PCA算法和局部PCA算法的识别率。
5 结束语
本文在阐述常用PCA人脸识别算法的基础上,鉴于考勤系统的现实需求,设计改进了一种兼顾全局特征和局部特征的人脸识别算法,设置分别在ORL库、Yale库和AR库上进行检验,提出算法与已有算法相比,人脸识别正确率更高,为后期系统集成测试打下了基础,同时对提出算法的便捷性进行简单介绍。
参考文献:
[1] Wang D, Li D, Lin Y. A new method of face recognition with data field and PCA[C]//GrC. 2013: 320-325.
[2] Miziolek W, Sawicki D. Face recognition: PCA or ICA [J]. Przeglad Elektrotechniczny, 2012, 88(7 A): 286-288.
[3] 陆轶秋.基于人脸识别的智能门禁系统设计与实现[D].江苏科技大学,2018.
[4] 池立盈.移动平台上的人脸识别系统研究[D].浙江大学,2018.
【通联编辑:代影】