人脸识别考勤技术研究

2014-07-09 02:31王晓亚
河北省科学院学报 2014年2期
关键词:考勤特征向量人脸

王晓亚,封 筠

(石家庄铁道大学 信息科学与技术学院,河北 石家庄 050043)

过去的考勤系统大多为打卡机,代打卡现象极为严重,随着社会的发展人脸考勤系统应运而生。生物特征,如面部特征、指纹等是人身体固有的部分,其不易发生明显变化,所以基于生物特征的识别被越来越广泛的应用到生活中的方方面面。公司智能化考勤就是生物特征识别的一方面重要应用。

目前我国的人脸识别考勤机已趋向于成熟,汉王、金典、中控等品牌的人脸考勤机在市面都可以买到,且价格从几百到几万不等,造成价格差距大的主要原因有准确率、识别速度、员工容量的大小、记录数据容量的大小、屏幕分辨率、硬件和摄像头等的不同。基于以上考虑,笔者给出一种人脸识别考勤系统设计方案。

1 人脸识别关键技术

人脸识别技术在20世纪60年代末开始被研究,Bledsoe等人根据人脸部的特征点比例、间距等为特征参数,建立了第一个半自动人脸识别系统,开启了人脸识别研究的先河。我国的人脸识别研究是在80年代开始慢慢发展起来的,主要研究集中在三类方法上:基于几何特征、基于特征和基于神经网络的识别。张俊等人提出通过对特征点信息的提取进行人脸识别,首先检测特征点,由区域点的投影曲线来决定,根据构造的位移、大小、旋转等不变的特征向量对人脸的进行描述。基于代数特征识别方法:彭辉、张长水等人对方法Eigenface做了提高,用类间散布矩阵做为新产生的矩阵,降低了维数,在识别率不变的前提下使运算量大大降低。基于神经网络的识别方法:张辉等人采用权值和去冗余正交结合,对称主元分析神经网络的方法,进行特征提取和识别[1]。

人脸识别是利用生物特征技术对图像或视频检测人脸,提取人脸的特征并进行判别的一种身份识别技术。本文提出一种人脸识别考勤系统的设计方案,此系统分为两个子系统,分别为人脸识别子系统和考勤管理子系统。人脸识别子系统首先使用opencv函数库从摄像头获取一段视频,从获取的视频中利用Adaboost算法检测人脸,对检测出的人脸图像进行几何校正、中值滤波、直方图均衡化、图像缩放等归一化处理,对处理好的人脸图像用梯度方向直方图(Histogram of Oriented Gradient,HOG)进行特征提取,主元分析方法(principal component analysis,PCA)与线性判别分析(Linear Discriminant analysis,LDA)相结合实现降维的过程,并根据所提取出的人脸特征向量与人脸数据库中的人脸特征向量利用最近邻方法进行比对,识别出结果。人脸识别子系统架构图如图1所示。

图1 人脸识别子系统框架图

1.1 人脸检测

人脸检测是在一副图像或视频中快速而准确的将人的脸部检测出来。人脸检测是人脸识别基础,直接影响着整个系统的性能,其主要方法有:基于先验知识的人脸检测方法、基于模板匹配的人脸检测方法和基于统计学习的人脸检测方法。

本系统采用的人脸检测方法是Adaboost算法,即自适应Boosting算法,它属于基于统计学习的人脸检测方法,是一种比较成熟且有效算法。Adaboost算法是一种分类器算法,它是把许多弱分类器叠加(boost)起来,组成一个强分类器,再把这些叠加得到的强分类器串联成分级分类器。系统检测的错误率和检测速度由串联的级数决定[2]。Adaboost算法的优点有:运用便捷,只需要对训练轮数进行设置;分级分类器的设计采用“先重后轻”的思想,大大的提高了算法的运算速度;关于弱分类器的先验知识不需要进行了解;在弱分类器的构成上,兼容多种方法,如最近邻分类器等;对分类器的性能要求不高,降低了算法的复杂度。

Adaboost算法的流程[2]:

(1)求积分图,利用Haar-like矩形特征计算;

(2)分类器学习:由m个容易构造且简单的弱分类器组合成一个复杂的非线性强分类器,强分类器的计算公式:

(3)将强分类器串联在一起形成分级分类器。

1.2 特征提取

特征提取是通过一系列方法得到能够代表人脸特征数据的过程,它是人脸识别过程的核心,直接决定着本次实验的成功与否。本设计采用HOG特征提取,主元分析方法PCA与线性判别分析LDA相结合降维的方法实现特征提取的过程。

1.2.1 HOG特征提取

HOG特征提取的基本思想是对图像的局部目标形状和特征能够用边缘或梯度方向密度分布来进行描绘。下面为HOG特征提取的过程[3]:

(1)对人脸图像进行预处理和标准化,使其成为大小为80×80的灰度图像;

(2)把块的大小设置为8×8,则细胞单元的大小为4×4,即把大小为80×80的人脸灰度图像划分为64个细胞单元;

(3)设置块的水平、竖直移动步长均为8,即各块之间无重叠;

(4)对人脸图像上的每个像素点按以下公式(1)和公式(2)计算梯度的方向和幅值,其中I(x,y)是图像在(x,y)点处的像素值,把梯度方向[0,180°]平均分成9份

(5)计算每个细胞单元内部像素点的梯度方向直方图,则可以得到一个9维的向量。由此可得到每个块的36维的向量,把每个块的向量依次串联起来,就可以得到人脸图像样本的特征向量;

由上述得到的特征向量维数为36维×100块=3600维,这么高的特征向量维数降低了人脸识别的效率,采用PCA+LDA的方法降维。

1.2.2 PCA+LDA降维

PCA是通过一系列线性变换,得到最优的单位正交向量基,用其建立新的数据,使原数据和新数据的均方误差最小[4]。通过PCA降维后,样本的特征冗余大大降低,同时保留许多原始信息,并且模式样本相关性被消除了。具体步骤为[3]:

(1)计算每个训练样本的平均值,把每个训练样本和均值相减,构造差值矩阵,根据差值矩阵得到样本的协方差矩阵;

(2)计算前D个协方差矩阵的特征值和特征向量;

(3)将原图像投影到各个特征向量上,把这D个投影的大小组成的新向量即得到降维后的特征向量;

LDA是一种整体特征提取算法,该算法的目的是寻找一种方法使得在降维后特征子空间中类间距离最大并且类内距离最小,即把不同的类分开,相同的类聚紧密,其是一种非常有效的,适用于小样本的特征抽取方法。具体步骤为[5]:

(1)计算每个训练样本的平均值;

(2)计算类内均值;

(3)用所在类别的均值与训练样本特征向量相减,得到差值向量;

(4)计算类内离散度和类间离散度;

(5)最大化类间离散度并且最小化类内离散度;

由于LDA只能用于小样本的特征抽取,故必须先用PCA进行降维。用HOG特征提取到的特征向量与PCA得到的矩阵和LDA得到的矩阵相乘,即得到最终特征提取到的特征向量。

1.3 特征比对

特征比对是把特征提取得到的特征向量与人脸数据库中的图片的特征向量进行比对,最相近的即为识别出的人脸[5]。采用的特征比对方法是最近邻方法,它的判定的准则是最短欧几里得距离,具体步骤为:

(1)在分类器中输入待测样本;

(2)循环计算输入的待测样本与所有训练样本之间的欧式距离;

(3)找到与待测样本之间欧式距离最短的训练样本;

(4)判别训练样本所在的类,此类即为待测样本所属的类;

设样本有N个类别,每个类别有M个样本Xki,则共有M×N个样本。用公式(3)和(4)求得待测样本与每个训练样本之间的欧氏距离,并找出与待测样本距离最短的训练样本:

最近邻算法的主要优点有:算法思路简单、清晰,容易实现且比对速度快,分类正确率高、泛化性能好。

2 人脸识别考勤系统设计

人脸识别考勤系统分为两个子系统,考勤管理子系统和人脸识别子系统。人脸识别子系统利用Adaboost算法检测人脸,对检测出的人脸图像进行几何校正、中值滤波、直方图均衡化、图像缩放等一系列处理,处理好的人脸图像利用HOG+PCA+LDA相结合实现特征提取,根据所提取出的人脸特征向量与特征库中的人脸特征向量利用最近邻方法进行比对,得出识别结果。员工每天上下班通过人脸识别考勤子系统签到、签退,将得到的个人信息和签到、签退时间数据及时传到考勤数据库中,以便考勤管理子系统使用。

考勤管理子系统主要包括员工信息管理、考勤规则制定、考勤记录查询、考勤数据统计等功能。员工信息管理:普通用户和管理员,普通用户可更改自己密码、查询自己基本信息、假期及考勤记录,管理员可以添加录入新用户信息即初始化员工信息,包括对员工的工号、姓名、性别、出生年月、籍贯、入职日期、照片这些信息的录入;考勤规则制定:管理员根据国家法定日的安排及本公司的情况制定考勤规则,并把考勤规则发布,以便普通用户查询放假安排;考勤记录查询:用户可以登录、查询自己最近两个月的考勤情况;考勤数据统计:管理员按照按个人统计、按时段统计、按部门统计三种方式根据考勤数据库中的员工签到、签退数据统计分析,每个月末管理员对员工本月的出勤情况进行汇总统计并生成报表,系统功能框图如图2所示。

图2 系统功能框图

数据库的设计应使数据库表有足够小的数据冗余,用来保证数据库可以高效率的存储,系统的数据库表主要有员工基本信息表、员工考勤信息表、人脸样本信息表、用户权限表,下面表1为数据库表的设计:

本人脸识别考勤系统使用的工具:opencv函数库(Open Source Computer Vision Library),Microsoft Visual Studio 2008开发平台,MySQL后台数据库,Qt设计系统界面。

表1 数据库表

3 结束语

本文设计了一种应用于公司的人脸识别考勤方案。利用被广泛应用且技术较成熟的Adaboost算法进行人脸检测,采用HOG+PCA+LDA相融合的算法进行特征提取,其中HOG特征提取是对检测出的人脸图像梯度方向和大小统计信息的描述,PCA+LDA解决特征空间维数高的问题,将人脸图像高维特征用低维空间特征表示。

[1]李耀东.自动人脸识别技术综述[J].计算机科学,2002,29(12):1-11.

[2]孔凡芝.基于Adaboost和支持向量机的人脸识别系统研究[D].哈尔滨:哈尔滨工程大学,2013.

[3]慕春雷.基于HOG特征的人脸识别系统研究[D].成都:电子科技大学,2013.

[4]M.Turk and A.P.Pentland.Face Recognition Using Eigenfaces[C].IEEE Conference on Computer Vision and Pattern Recognition,Maui,Hawaii,1991,586-591.

[5]章毓晋.基于子空间的人脸识别[M].北京:清华大学出版社,2009.

猜你喜欢
考勤特征向量人脸
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
有特点的人脸
一起学画人脸
基于人脸识别技术的考勤应用研究
智能人脸识别考勤系统
浅谈电子考勤的优势及简介
三国漫——人脸解锁
一类特殊矩阵特征向量的求法
便携式指纹考勤信息管理系统设计