本方法涉及人脸识别
技术领域:
,具体设计一种基于亲和力度最近邻分类算法的人脸识别身份认证方法。
背景技术:
:人脸识别是利用计算机技术,通过人脸图像的特征来确认身份。用人脸作为生物特征来识别身份具有一些独特优势:具体非接触性,在被测者不知情的前提下完成识别,人脸识别成为近年来生物特征识别领域的热点之一。从国内外研究成果来看,人脸识别的难点主要集中在人脸检测、人脸表征和人脸识别速度和精度等方面。一、人脸检测方面,人脸检测是一项重大的难题,它利用的是面部的共同特征,从目前的研究成果来看,其大致可分为基本特征,肤色特征,统计特征,变换域特征等。但基于变换域特征和肤色特征的人脸检测方法对采集人脸图像的背景较为敏感,统计特征和基本特征的人脸检测方法对年龄,光照,姿势等的变化敏感。二、人脸表征方面,人脸表征是用来提取捕捉的脸部图像中的特征点,至今人脸表征主要包括基于代数特征或统计学习的表征和基于知识的表征这两种提取方法。人脸表征可能会因为捕获的人脸图像受到采集角度或配戴眼镜等因素的影响,导致基于知识的表示方法的特征点掩盖甚至丢失。三、人脸识别速度和精度方面,普遍的识别系统采用固定和不变的算法模型,导致识别精度很难达到预期的效果。技术实现要素:本发明的目的是为了克服上述的技术缺点和不足,提供了一种基于亲和力度最近邻分类算法的人脸识别身份认证方法。本发明技术方案:基于亲和力度最近邻分类算法的人脸识别身份认证方法,该方法包括以下步骤:第1步、采用haar分类器对人脸进行检测,使用摄像头实时采集当前检测目标的人脸原始图像序列,并把人脸的haar特征值归一化,得到haar特征值归一化的图像序列;第2步、对图像进行直方图均衡处理,即是对图像的像素值进行重新分配,也是对采集到的人脸图像的非线性拉伸;第3步、采用主成分分析(pca)算法对人脸图像进行特征提取,数据预处理即是对数据进行降维,降维后得到的少数综合变量表示多数的综合变量,一般主成分的数据为少数综合变量,最终组成检测目标的特征值;第4步、根据第3步得到的人脸图像特征值,使用提出的亲和力函数来计算样本之间的距离,之后再使用最近邻算法的实现步骤进行处理;第5步、根据分类结果输出识别结果。步骤1中对图像进行haar特征值归一化,为了校正人脸的比例、旋转和光照等方面的变化,常采用haar特征值归一化手段,也可称为haar特征值标准化,具体步骤如下:第1.1步、计算检测窗口中图像的灰度值和灰度值平方和:sum=∑i(x,y)和sqsum=∑i2(x,y),其中用i(x,y)表示位置(x,y)处的像素值;第1.2步、计算灰度值和灰度值平方的平均值:和第1.3步、计算归一化因子:第1.4步、归一化特征值:之后使用归一化特征值与阈值对比。步骤2所述的直方图均衡由以下步骤组成:第2.1步、用一个数组p来统计直方图,记录p[i];第2.2步、i的取值从1开始,令s[i]=s[i-1]+p[i];第2.3步、计算出的新s的索引值用新的数组l记,即令l[i]=s[i]*(256-1);第2.4步、取原始像素值作为数组l的索引值,之后依次循环每个像素,取该索引所对应的l数组值作为直方图均衡后的像素值。步骤3中采用主成分分析(pca)算法对人脸图像进行特征提取,特征提取在机器学习和模式识别领域发挥着重要作用,因为它有助于解决“维数灾难”的问题并减轻计算负担。其具体实现步骤如下:第3.1步、建立一个二维数组,用于存放人脸图像进行预处理之后的数据;第3.2步、将获取的样本进行矩阵归一化;第3.3步、通过svd计算协方差矩阵的特征值和对应的特征向量;第3.4步、把协方差矩阵的特征向量对应的特征值进行升序排列,再将选取的前m个特征值所对应的特征向量,它们即为人脸数据降维所对应的关系;第3.5步、将检测目标的人脸数据经过预处理后形成的数据矩阵乘以第3.4步中计算出的对应关系,最终组成检测目标的特征值。步骤4中所述亲和力函数来计算样本之间的距离以及最近邻分类算法,在实现最近邻分类过程中,把提出的亲和力函数代替欧式距离来计算样本之间的距离,具体由以下步骤组成:第4.1步、取x1~xk作为xt的初始近邻,其中xn:为n个训练样本在空间中的坐标,k:为近邻数;第4.2步、计算与测试样本xt间的亲和力距离d(xt,xi),i=1,2,...,k。通过以下方式提出d维测试点xt和任何d维训练点xi之间的亲和力:为了计算一个测试点xt之间和训练样本xi(i=1,2,...,n)的距离,考虑所有相应的属性间隙;第4.3步、按d(xt,xi)升序排列,取最近样本距离d=min{d(xt,xj)|j=1,2,...,k};第4.4步、得到k个有大小顺序的数据,再进行计算前k个样本xi,i=1,2,...,k所属类别的概率;第4.5步、选出最大概率即为样本xt的类。步骤5中,将采集的原来图像作为训练样本,检测人的图像作为测试样本,根据上一步所述进行分类,计算人物相似概率,将最高概率人物作为最终得识别结果。本发明的优点和有益效果:本发明提出了亲和力函数,该函数的益处是不只是计算样本之间的传统距离,也考虑了训练样本空间分布的影响。并把该函数代替最近邻函数中计算样本之间距离的欧式算法,这使得分类的正确率得到提高,同时也使得整体的识别精度有了显著提升。附图说明图1是本发明人脸识别实施总体流程;图2是本发明的数据走向图;图3是图像进行直方图预处理后的信息图;图4是识别系统的流水线图。具体实施方式下面结合附图和实例对本发明进行详细的描述。一种基于亲和力度最近邻分类算法的人脸识别身份认证方法,对10个人的人脸进行训练与识别,对每人采集20张图像帧;如图1所示,具体实施方案包括以下内容及步骤:第1步、采用haar分类器对人脸进行检测,使用摄像头实时采集当前检测目标的人脸原始图像序列,把人脸的haar特征值归一化,得到haar特征值归一化的图像序列,并把实时采集到的原始图像保存在特定文件夹中。每个人脸都对应着一个独一无二的faceid号,该属性也是人脸数据库的主键,把人脸图像进行相关处理的数据都存入到一个.yml文件中,最终身份识别是通过分类的结果与数据库中的faceid进行匹配来实现的,该发明的数据走向如图2所示。第2步、该步骤为了使后期的特征提取和分类识别更准确地实现,把haar特征归一化后的图像进行直方图均衡,调整图像的灰度,如图3所示,其中左图为变换曲线,右图为调整后图像的灰度数据柱状统计图。经过直方图均衡调整之后的图像的对比度明显上升。第3步、采用主成分分析(pca)算法对人脸图像进行特征提取。特征提取最大作用在于它有助于解决“维度灾难”的问题并减轻计算负担,换另一说法就是对数据进行降维。第3.1步、读入由第二步处理后的图像作为样本,建立一个矩阵p用来储存样本,其中每一列对应一个样本,同时把样本归一到同一个尺寸(64*64)。这里以faceid为stu_20152451的人脸图像为例,对采集到的20张图像帧进行训练,此时矩阵p是一个4096×20的矩阵。存储人脸数据矩阵p的数据部分信息如表3.1所示。表3.1人脸样本部分数据信息第3.2步、计算平均脸。把20个样本对应的每一行数据求均值,将结果存入建立的mean_p矩阵中,此时mean_p的大小为4096×1,再用reshape()进行处理将该矩阵转换成大小为64×64的矩阵,最后把这些平均脸的数据存入到矩阵mean_face中。平均脸的部分数据信息如表3.2所示。表3.2平均脸部分数据信息第3.3步、样本归一化。使每一维特征的期望值为0,由于不同维度的取值范围差异很大,为方便处理,使其取值在同一个范围。建立矩阵a存储样本归一化后的数据,利用第3.1步和第3.2步计算出的人脸数据矩阵p与对人脸数据求均值的数据信息矩阵mean_p计算出归一化数据矩阵a。样本归一化数据矩阵a的部分数据信息如表3.3所示。表3.3样本归一化部分数据信息第3.4步、计算协方差矩阵、特征值及特征向量。利用第3.3步计算归一化数据矩阵a计算出协方差矩阵l,再利用协方差矩阵计算出特征值及特征向量,并对特征值进行降序排序,取能量值占所有特征值99%的前k的特征向量,并把取的特征值对应的特征向量存到矩阵l_eig_vec中。第3.5步、对样本进行降维。使用第3.3步计算出的归一化数据矩阵和第3.4步计算出的特征向量矩阵l_eig_vec来计算出特征脸,并把特征脸的矩阵转换到低维空间,从而对样本进行降维。降维后的部分数据信息如表3.4所示。表3.4降维后的部分人脸特征数据第4步、把提出的亲和力函数替换最近邻分类算法中用来计算样本之间距离的欧式算法,在计算样本之间的距离时不仅考虑了测试样本和所有训练样本之间的传统距离,也考虑了相关训练样本的空间分布问题。第4.1步、根据第3步降维后的特征脸矩阵,该矩阵每一维为一个特征脸,并对测试样本进行与训练样本一致的处理,再利用提出的亲和力函数计算检测样本与相关训练点的之间的距离后,把所有距离进行升序排序,选择距离最小的k个数,即选择最近的k个相似样本,当把k的值设为5,并输入一个测试样本后,输出的k个最近邻居为:stu_20152451,stu_20152451,,stu_20152419,stu_20152450,stu_20152451,stu_20152451,根据出现的概率可知该测试样本属于第stu_20152451类。第4.2步、根据选择最高出现概率的类别,得到测试样本所属的类别后,通过与数据库中的人脸类别进行匹配可知对应的身份,整体的识别流程如图4所示。第5步、输出识别结果。本发明提供的方法使用essex(埃塞克斯)大学计算机与电子工程学院的人脸识别数据集中的face94部分。每个人采集20张图片,图片分辨率都为180*200。face94包含了153个人物的彩色人脸图像,其中女性40人,男性113人,共计3060张人脸图像,图片背景均为绿色,数据集中人脸图像存在位置、光照、表情的变化,其中有部分人物有眼镜或者胡须。以及根据在实际环境下所拍摄的图像组建成的数据库,并多次进行实验以及反复的测试。首先设置不同的k值进行测试,实验数据采用了essex大学人脸识别数据集,算法优化前后的测试结果如表1所示:表1算法优化前后的分类准确率对比k的值最近邻分类的准确率(%)基于亲和力函数最近邻分类的准确率(%)k=29395k=49597k=69394k=89295k=109396k=129194k=149295由上表可知最佳的k值为4,所以最终把k默认设置为4,同时本发明也对人员测试结果进行对比,具体对比情况如表2所示:表2人脸识别测试结果比对人员最近邻识别率亲和力度最近邻识别率1号0%0%2号0%0%3号0%0%4号0%0%5号0%0%6号0%0%7号0%0%8号95%97%9号6%0%10号0%0%以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、同等替换、改进等,均应包含在本发明的权利要求范围之内。当前第1页12