340 likes | 649 Views
基于 Log Gabor 变换与 BP 神经网络的人脸识别. 学生: XXX 导师: XXX. 答辩内容安排. 1. 研究背景及意义 2. 人脸检测 3. 人脸预处理 4. 人脸识别 5. 实验 6. 总结. 1. 研究背景及意义. 21 世纪以来,科学技术有了极大的发展,随着互联网的兴起,人们的可以足不出户在网络上展开各种交易,但是人们对身份认证的安全性也显得越来越担忧。 传统的身份认证方法,例如磁卡、用户名密码、钥匙等方式,已经不能满足人们的需要,一种新的生物特征识别的方法引起了人们的注意 …….
E N D
基于Log Gabor变换与BP神经网络的人脸识别 学生:XXX 导师:XXX
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
1.研究背景及意义 • 21世纪以来,科学技术有了极大的发展,随着互联网的兴起,人们的可以足不出户在网络上展开各种交易,但是人们对身份认证的安全性也显得越来越担忧。 • 传统的身份认证方法,例如磁卡、用户名密码、钥匙等方式,已经不能满足人们的需要,一种新的生物特征识别的方法引起了人们的注意……
生物特征识别系统能够通过人的生理特征或行为特征进行身份自动识别。生物特征识别系统能够通过人的生理特征或行为特征进行身份自动识别。
相对传统身份认证手段,生物特征识别技术的优点:相对传统身份认证手段,生物特征识别技术的优点: (1) 方便快捷。生物特征随身携带,不用担心遗失 ; (2) 可靠性高。生物识别系统不存冒名顶替现象,能够保证所有的身份认证行为都是本人真实意愿在执行,具有很高的精确度和很高的可靠性; (3)具有唯一性。生物特征不容易伪造,特别是活体检测技术的兴起,更加保证了的生物特征的唯一性,人与生物特征真正做到一一对应 。
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
2. 人脸检测 • 人脸检测是人脸识别系统的重要组成部分,人脸检测就是要在人脸图像中确定出来人脸的大小和位置,从而去除图像的无效区域,有利于后续的识别。人脸检测算法分为三个类别 : • 基于模板匹配的算法 ; • 基于知识的算法 ; • 基于学习的算法 ; • 本文采用的基于Haar角点特征的人脸检测算法
2.1 基于模板匹配的算法 • 这类算法首先要确立一个人脸模板,下图所示,模板中包含了人脸的部分或全部结构信息,然后将此模板与输入的图像进行匹配操作,将人脸模板不断在图像中搜寻可能的人脸区域,进行度量计算,以度量值最小的作为候选人脸区域,然后用矩形标志出来。
可变形的模板算法是一种改进的模板算法,这种算法定位非常精准,能够将人脸上很多器官也精确的定位出来。它的思想是,对人脸上的嘴巴、鼻子和眼睛赋予合适的参数值,用一些简单的曲线进行描绘出来 ,如下图所示。眼睛可以用两条抛物线和一个圆进行描绘,嘴巴可以用连个抛物线进行描绘,这些简单几何曲线的参数可以很容易的获取。与此同时,该算法还定义了一些能量函数,这些能量函数与图像中的边缘信息、峰值和谷值信息相关联。 眼睛模板和嘴巴模板
2.2 基于知识的算法 • 基于知识的算法是一种非常直接的算法,所谓的知识,即是人脸的先验信息,我们知道,尽管人脸非常复杂,但是这些复杂组成部分有非常严格的约束性,即人脸的器官在空间分布上有一定的约束。人脸,从上到下,拥有三庭五眼,对人脸进行正面拍照的时候,人脸是椭圆形的,并且左右对称,面部皮肤平坦,有严格按照规则分布的器官,最上面是眉毛,随后是眼睛,随后是鼻子,随后是嘴巴,最后是下巴。其中,这些器官的颜色比较暗,而皮肤的颜色比较亮,这些都是基于人脸的知识,可以利用这些知识来对人脸进行定位。
基于知识的算法分为三类: • 基于人脸器官分布检测人脸 :人脸的器官虽然复杂,但是分布却很规律,可用积分投影的算法和五官分布的先验知识相互结合的方式进行定位 ; • 基于人脸图像空间分布的人脸检测:所有的人脸都有独特而又相似的空间分布,这种空间分布又称为图像不变性。同时,人脸的亮度分布也有一定的规律性,所以不管图像背景如何复杂,人脸部分的灰度分布是不变化的。相关文献利用图像的彩色空间信息对人脸中的嘴巴、眼睛等器官进行定位,这种定位和一般的颜色坐标是不同的,他们将图像转换到YIQ坐标系和HSV坐标系,进行定位; • 基于马赛克的算法检测人脸:马赛克就是将图像进行不同分辨率的变换,这样图像就有从低到高几种不同层次的分辨率,首先在低分辨率上定位出候选的人脸区域,然后在高分辨率上对人脸进行更精确的定位,如下图所示:
2.3 基于学习的算法 • 基于学习的算法主要有两种算法:一种是特征脸算法,另一种是人工神经网络算法; • 特征脸方法将人脸图像看做一个比较大的矩阵,然后对其进行特征提取,与数据库中的模板进行比对,达到定位人脸的效果; • 神经网络具有超强的记忆力,在后面将会详细叙述。
2.4 基于Haar角点特征的人脸检测 • 在可能包含有人脸的图像上用大小为10*10 的模板从左到右从上到下进行扫描,并将模板区域内的图像与训练好的分类器进行对比,如果对比结果在阈值范围内,就标记该区域是人脸区域,否则继续扫描,当扫描完毕后,将模板长和宽都增大3个像素点继续进行扫描,直到模板大小跟图像大小相当停止。一般情况下,为了提高效率,事先将图像进行缩放到适合的尺寸。 • 实验用OpenCV实现,它提供了相关的函数,人脸定位结果如下图所示
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
3 人脸预处理 • 3.1 Gabor 滤波器 • Gabor滤波器是利用高斯函数对正弦信号或者余弦信号进行调制而构建的,在复数域上,2D Gabor滤波器的表达式为:
3.2 Log Gabor 滤波器对人脸进行变换 • Log Gabor 滤波器能在频域上更真实的反应图像的频率响应,在二维尺度上,Log Gabor滤波器的形式为:
我们对归一化后的人脸进行Log Gabor变换,角度取8个方向,尺度取4个尺度,得到的结果为:
3.3 小波变换降维 • 由于经过Log Gabor变换后,人脸的维度显著增加,为了减少计算量,采用小波变换降维,结果如右图:
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
4 人脸识别 • 人脸识别采用了BP神经网络。 • 人工神经网络是一个非常复杂的非线性的系统,它是由很多非常简单的处理单元组成的,是一个自适应的、自组织的系统。当代人工神经网络的研究取得了很大的进步和发展,在很多领域得到应用,特别在计算机科学、信息处理、人工智能、自动化控制、机器人以及模式识别等领域,发挥着很大的左右。目前,神经网络的理论在进一步的发展,随着空间科学、网络和电信领域、天气预报、控制优化以及模式识别等长足的发展,神经网络的应用也将开辟新的局面。
4.1 神经网络基本结构 生物神经元 人工神经元模型
人工神经网络是由大量的人工神经元有序的连接而成,根据结构和学习算法的不同,可以将人工神经网络分为:感知机、RBF网络、多层映射BP网络、Boltzmann机、Hopfiled模型等 。 • 其中,BP神经网络结构简单,学习速率快,能够进行非线性拟合,理论完善,有很多其它类型网络无法比拟的优点,因此,在模式识别领域得到了很广泛的应用。
4.2 BP神经网络原理 • BP神经网络由输入层、隐藏层和输出层组成,其中隐藏层有一层或多层,本文中讨论隐藏层只有一层的情况。BP神经网络的结构如图:
class BPNN { public: double* in_units; //输入层数据 double* hidden_units; //隐层数据 double* out_units; //输出层数据 int in_n; //输入层节点数 int hidden_n; //隐层节点数 int out_n; //输出层节点数 double** ih_weights; //输入层-隐层修正权值 double** ho_weights; //隐层-输出层修正权值 double** ih_deltaweights; //输入层-隐层权值修正量 double** ho_deltaweights; //隐层-输出层权值修正量 double* hidden_delta; //隐层误差梯度 double* out_delta; //输出层误差梯度 double* t; //期望输出向量(又称教师信号) }; • 4.4 BP算法的流程及主要代码实现
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
5 实验 • 本文的实验是在ORL人脸库上进行的,ORL人脸库是剑桥大学的ORL实验室拍摄的,一共有400张人脸,人脸改变的角度不超过20%,分别采集自40个人每人10张,该人脸库在国际上非常通用。ORL人脸库样本如下:
ORL人脸库中,每人拥有10张人脸,每次取人脸的1到9张作为训练集,训练好神经网络,余下的人脸作为测试集。我们对比了添加Log Gabor变换与不添加Log Gabor变换的识别效果,结果如下图所示:
答辩内容安排 • 1.研究背景及意义 • 2.人脸检测 • 3.人脸预处理 • 4.人脸识别 • 5.实验 • 6.总结
6. 总结 • 本文的主要工作包括: • 1. 本文阅读了大量的文献,对人脸识别的研究现状和研究方法有了比较全面的的认识。 • 2. 本文对人脸定位做了很详细的研究,人脸定位是人脸识别系统中非常重要的一个环节,只有定位好人脸区域,才能获得比较高的识别率。本文在对现有的算法进行概述后,提出了一种利用Haar角点特征的人脸定位算法,然后结合OpenCV进行人脸定位,实验结果证明,该算法能够精确的定位人脸。 • 3. 本文对人脸预处理进行了详细的研究,提出了利用Log Gabor滤波器将人脸从空域变换到频域,然后利用小波分析的算法进行降维处理,将人脸归一化到合适的维度,有利于后续的识别阶段的数据处理。 • 4. 在人脸识别阶段,本文提出了利用BP神经网络(BPNN)来进行人脸识别,我们详细的叙述了神经网络的原理和BP神经网络的算法步骤,然后编码实现该算法,在ORL人脸库上的实验表明,该算法能够取得满意的识别率,在结合Log Gabor 变换与BP神经网络时,能达到96%的识别率。