1基于LBP的人脸识别算法研究一、应用背景随着社会的发展以及技术的进步,人们对快速、高效的自动身份验证的要求日益迫切,生物识别技术在科研领域得到了极大的重视和发展。在人与人的接触中,人脸所包含的视觉信息占据了重要地位,它无疑是区分人与人之间差异的最重要特征之一。相对于指纹、虹膜、掌纹、步态、笔迹、声纹等生物特征,利用人脸来识别具有不可比拟的优势:操作隐蔽,特别适用于安全、监控、和抓逃工作;非接触式采集,无侵犯性,容易接受;方便、快捷、强大的实时追踪能力;符合人类识别习惯,交互性强;应用摄像头即可完成图像采集,设备成本较低。人脸识别属于计算机科研领域的一项热门技术,它是一种基于生物特征的识别技术,利用计算机从图像或图像序列中检测出人脸,并判断其身份。人脸识别目前主要运用在如下三个方面:第一,刑侦破案方面。例如,公安部门获得案犯的照片之后,可以利用人脸识别技术在存储罪犯照片的数据库中找出最相像的人,即嫌疑犯。第二,证件验证方面。如身份证、驾驶执照以及其他很多证件上都有照片,现在这些证件多是人工验证的,如果应用人脸识别技术,这项任务就可以交给机器去完成,从而实现自动化智能管理。第三,人口控制方面。此应用范围很广,例如可以设在楼宇单位或者私人住宅入口的安全检查,也可以是计算机系统或者情报系统等的入口检查。世界上很多国家都在积极地开展对人脸识别技术的相关研究,不同的研究机构或研究人员按照不同的划分标准,对人脸识别的研究内容的分类不尽相同。在此处按其所研究得具体技术的范围可以大致将人脸识别分为如下四个方面的内容来进行阐述:(1)人脸检测,主要的方法有:基于轮廓(或肤色等)信息人脸检测方法,基于Adaboost算法人脸检测方法,基于支持向量机(SVM)人脸检测方法以及基于神经网络的人脸检测方法等;(2)人脸特征描述与提取即特征提取,主要方法:基于局部二值模式纹理特征提取方法,基于人脸几何特征的特征提取方法,还有基于主成分特征(PCA)特征提取方法,基于独立元特征的特征提取算法,如Gabor等,还有2D和3D形变模型方法等;(3)人脸特征降维,主要方法:线性降维方法如主成分分析PCA和LDA(LinearDiscriminateAnalysis)等发展到非线性降维方法如局部线性嵌入(LLE)、等距嵌入2(ISOMAP)、拉普拉斯特征映射(LE)、局部切空间调整(LTSA)、基于黎曼法坐标的快速流形学习(FMLBRNC)等;(4)人脸属性特征分类与人脸识别,主要的技术方法包括:最近邻和K近邻分类,线性判别方法(LDA),核线性判别方法(K-LDA),支持向量机方法(SVM),人工神经网络法(ANN),隐马尔可夫模型方法(HMM)等;人脸识别算法的选择深受人脸识别系统具体应用的环境的影响,同时不同的应用场景对人脸识别系统也有着不同的要求,因此不可能存在通用的人脸识别算法,而是需要综合所有的情况选择最适合的人脸识别算法。二、理论依据2.1基于几何特征的人脸识别方法基于几何特征的人脸识别方法是最早出现的人脸识别方法之一,主要是利用人脸的五官的形状以及器官间的几何位置的关系,如嘴巴、鼻子、眼睛等人脸器官的局部形状特征以及其几何位置关系特征进行识别。几何特征的人脸识别方法主要是采用人脸器官的结构的先验知识来提取以器官形状以及器官间的空间位置关系为基础的特征,构成人脸特征向量,此类方法的实质就是提取出的几何特征向量间的匹配。基于几何特征的人脸识别方法原理比较简单,只是用到人脸器官的形状特征和器官间几何特征,算法思想也容易理解,但是识别效果不理想同时鲁棒性也较差。原因有二:第一,只是简单的采用人脸器官的形状特征和器官间几何特征,人脸图像中保留的信息量过少,根本就不利于后期的人脸识别工作的展开;第二,由于人脸容易受环境因素的影响如光照、物体遮挡、姿态等,大部分情况下是很难进行五官特征的精确分割和提取工作。2.2基于统计特征的人脸识别方法由于人脸图像容易受到环境因素的影响如光照、障碍物遮挡、姿态变化和表情变化等,另外人脸图像中富含丰富的特征信息,如采用像基于几何特征的方法很难去准确的描述人脸图像信息。而近年来比较流行的基于统计特征的人脸识别方法,可以得到不错的识别效果。基于统计特征的人脸识别方法通常是采用某种映射方法将原图像空间中的像素点映射到另一个投影空间中去,而原空间向量称之为空间域向量,被映射到的投影子空间的那个向量被称之为变换域向量,此方法的目的也显而易见,便是寻找一种两个空间域变换的最优表示,可以把这个经过空间域变换后的优化的那个向量称之为特征图像,经过空间域的变换使得每类样本在变换后的分布更加具有规律可循,当然对于进行人脸识别也更加有利。基于统计特3征的人脸识别的方法具有代表性的有主成分分析方法(PCA)、独立分量分析(ICA)以及线性鉴别分析方法(LDA)。(1)主成分分析方法(PCA)主成分分析(简称PCA)是一种常用的基于变量协方差矩阵对信息进行处理、压缩和抽提的有效方法。我们从数学角度来进行定义解释PCA算法:假设给定N个点,12X=[,,,],eachDNixxxxR,然后将这些高维空间(D维)里的点被映射到低维空间(d维)后对应的点为12Y[,,,],eachDNiyyyyR,此处dD,此时从将向量从D维空间映射到d维空间。PCA算法核心思想是通过寻找一组最优的单位正交子空间,而用来表征此单位正交子空间的单位正交向量则称之为PCA的主成分,让原样本空间的向量通过主成分的线性组合转换到此正交空间中来,使得新的样本和原样本之间满足PCA模型定义的优化标准,比如最小化重构误差、距离保持和最大化方差保留等,而最常用的优化标准是最小化重构误差。PCA方法最大的优势就是可以将图像的特征进行降维,降维后进行识别,可以大大的加快人脸识别的速度。PCA方法的缺点也很明显,它要求人脸图像都是正面人脸,不这样的话,PCA算法的人脸识别效果就会大不如人意,这也是该算法的最大不足之处。(2)独立分量分析(ICA)独立主元分析法(IndependentComponentAnalysis,ICA)主要应用于信号分离技术中,采用ICA方法可以得到信号中的二阶和高阶的统计信息,而对于人脸图像来讲,许多重要局部纹理信息包含在高阶统计信息中,所以ICA被尝试着用来描述人脸图像中的高阶局部纹理信息。独立分量分析计算量比较大且计算复杂,因此该算法实时性不足;同时对于独立分量的选择,由于目前还没有一个较好的算法来对其进行选择,一般都是依据经验来选取,这也一定程度上限制了ICA算法在人脸识别领域的应用。(3)线性鉴别分析方法(LDA)基于线性鉴别分析的人脸识别方法的基本思想是寻找一个适当的Fisher函数,使得原样本空间在该Fisher函数的方向上的投影后的样本空间达到最优,即在投影后达到使得样本的类间离散度最大和类内离散度最小的目的。LDA方法的目标是通过在高维特征空间中去寻找最优的低维特征,所选择最优的低维4特征需满足样本类间离散度和样本类内离散度的比值达到最大。LDA算法应用于人脸识别领域时,仍然存在图像列向量维数过高的问题,这使得很难甚至是无法求解LDA的特征方程。2.3基于机器学习的人脸识别方法基于机器学习的人脸识别算法中,用于分类和识别的人脸的特征是通过机器学习算法从预先建立好的人脸样本特征库中学习而来,当然这些训练学习得到的人脸特征的分布规律和特征的判别函数会随着所选择的学习算法的不同会有所不同。下面将主要介绍基于人工神经网络的人脸识别学习算法和基于支持向量机的人脸识别学习算法。(1)基于人工神经网络的人脸识别学习算法人工神经网络(artificialneuralnetwork,ANN)的人脸识别方法首先将人脸灰度化处理得到人脸的灰度图,然后充分利用了神经网络在表现人脸图像中细微的形状信息方面的优势来描述人脸特征,同这样避免了一般人脸识别方法中需要采取复杂的特征提取工作。ANN方法很少用在人脸特征提取方面,同时如果样本的类别过大还会出现过拟合和过学习等问题。但是其在人脸图像中细微的形状信息方面的优势,使得ANN算法对于特征分类和识别方面有着自己得天独厚的优势。(2)基于支持向量机的人脸识别学习算法支持向量机(supportvectormachine,SVM)的人脸识别学习算法,是目前最热门的机器学习算法之一,基本的算法的思想是基于结构风险最小化原理寻找最优分类面,该分类面是能够将不同类的样本在样本空间分隔的超平面。SVM是由线性可分的两类分类问题的最优分类面发展而来,对于多类的分类问题,也可以转化为多个二类问题,它的基本思想可以用下图2-1的二维情况所示。图2-1最大间隔分类超平面5在二维线性空间中,线性判别函数的一般形式为:(x)wxbg,其中,最优分类线的方程的规范化形式为:wx+b=0。上图2-1中黑空心圆和白空心圆分别代表着不同的两类样本,L是用来划分两类样本的直线,称其为分类线,L1和L2分别为过黑白两类样本的同时离分类线L最近且平行与L的直线,L1和L2两直线间的距离称之为两类样本的分类间隔。而最大间隔分类线是,不但能正确分开不同类的样本,同时分类间隔达到最大值。由直线间的数学定理可证得:L1和L2之间的距离为:2w,即分类间隔为2w。SVM具有非常好的分类效果,但是如果直接使用SVM进行人脸识别,会遇到很大的计算困难,首先遇到的问题便是在训练SVM的时候,需要去求解二次规划的问题,该二次规划的问题的求解计算复杂度极高,就目前而言对于二次规划的求解并没有什么很好的方法;其次是当训练样本个数较大时,会得到的大量的支持向量,使分类器计算量过高。2.4基于局部模式的人脸识别方法在比较理想的外界环境中,上述所提出的倾向于整体的人脸图像识别算法可以达到不错的效果,但是真实的环境中,人脸图像需要受到环境的干扰,比如图像曝光问题、光照问题、人脸表情多变问题以及遮挡问题等,这些都严重的影响着人脸识别算法的识别准确率和识别效率。而人脸局部特征信息如人脸局部的纹理特征、人脸局部灰度特征、人脸局部轮廓特征等对光照、人脸表情变化以及遮挡具有着良好鲁棒性。LBP特征是描述一个局部区域的纹理特征非常好的方法,本质上来讲,LBP也是一种统计特征,所以稳定行好,通用性强。它能很好的描述一个局部区域的纹理特征,由于它采用的是统计的方式,所以,有一定的抗旋转能力,能承受一定的光照影响。该特征提取方法,有着良好的效果且它具有旋转不变性和灰度不变性等显著的优点,所以很适合用于人脸识别领域。基于LBP算法的人脸识别,可以非常好的对人脸的局部区域的纹理特征进行描述,但是对人脸的整体特征的描述力不足。三、人脸识别算法设计方案3.1算法总体设计此算法的核心是采用LBP算法对人脸区域对纹理特征进行提取然后进行特征分类识别,不过因为人脸区域有显著特征和非显著特征之分,比如人眼、鼻子、嘴唇和眉毛这四大区域所产生的特征占有着整个人脸图像中有利于人脸分类识别的特征的80%以上,但是这6四大区域在人脸图像中所占有的面积却不到50%,而LBP算法本身并无法做到对不同特征区域采用不同的LBP算子进行编码。算法首先对人脸区域进行分块,区分出重要特征区域和非重要特征区域然后采用不同模式的LBP算子进行特征提取的策略,最后对特征进行降维和分类识别。主要步骤为:第一步:人脸区域划分,从人脸图像中划分出重要区域矩形包括人眼、鼻子、嘴唇和眉毛四大区域矩形,其他的区域归为非重要区域;第二步:分类LBP特征提取,对重要区域采用对纹理信息描述力更强的LBP算子进行纹理特征提取,而对非重要区域采用对纹理信息描述力一般的LBP算子进行纹理特征提取;第三步:PCA特征降维,对上一步中提取的LBP纹理特征进行降维;第四步:SVM分类识别,对降维后的特征进行纹理分类。3.2算法实现3.2.1人脸区域划分主要是训练采用不同的正负样本库和Adaboost算法训练出人眼、鼻子、嘴唇和眉毛四个最优分类器,然后对输入的人脸图像就行检测,检测出对应的区域矩形,然后将这四类特征矩形的坐标输入到第二模块进行LBP特征提取。3.2