数字视频图像处理汇报论文_数字图像处理专业论文
数字视频图像处理汇报论文由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数字图像处理专业论文”。
基于OpenCV的LBP人脸识别算法
季秋峰1
(1.南京师范大学,物理科学与技术学院)
摘要[1]:目前,生物特征识别技术主要利用人体自身具有的特征,包括生理特征和行为特征来进行来对人的身份进行认证和识别,而生理特征(指纹、虹膜以及人脸)普遍被使用。在对人的身份的识别过程中,生物特征技术将信息技术与人的生理特征进行有效的结合,已经慢慢取代传统的身份认证方法。相较于指纹和虹膜,人脸识别是一种非接触性的识别技术,通过整体面部特征识别,具有更高的自然性、可接受性以及唯一性。并且人脸是最普遍的交流模式,在人与人的交往中具有十分重要的意义,使其成为生物特征识别技术的热点研究领域。目前主要的基于人脸进行识别的算法包括:基于 PCA 的人脸识别算法、基于 Fisher线性判别的人脸识别算法以及基于 LBP 特征的人脸识别算法,这些算法在识别率、计算时间、数据存储量以及可扩展性方面各有优劣。本文主要介绍了OpenCV,PCA算法,Fisher线性判别算法,LBP特征算法,并对LBP算法进行了编程实现。关键词:人脸识别,OpenCV,PCA 算法,Fisher 线性判别、LBP 特征
Abstract:Currently, the main use of biometric technology with the body's own characteristics, including physical characteristics and behavioral characteristics to come on identity authentication and identification, and physiological characteristics(fingerprint, iris and face)is commonly used.In recognition of the identity of the proce, the biometric technology IT and physiological characteristics of an effective combination of people, has been slowly replacing traditional authentication methods.Compared to fingerprint and iris recognition is a non-contact identification technology, through the whole facial feature recognition, has a higher natural, acceptable and uniquene.And the human face is the most common mode of communication, is of great significance in the interaction between people, and it has become a hot research field of biometric identification technology.At present, the identification algorithm based on human face include : PCA-based face recognition algorithm, face recognition algorithm based on Fisher 's linear discriminate and face recognition algorithm based on LBP features of these algorithms in the recognition rate, computational time, data storage capacity and scalability advantages and disadvantages.In this paper, OpenCV, PCA algorithm, Fisher linear discriminant algorithm, characteristics of LBP algorithm are mainly introduced, and and programming of LBP algorithm implementation.Keywords: Face recognition, OpenCV, PCA, Fisher linear discriminate, LBP features 引言世纪 60 年代末,人们对人脸识别技术开展了广泛的研究,之后的短短几十年,这一技术取得了巨大的进展[1]。人脸识别技术的重要性众所周知,它的突出贡献不只是表现在生物特征识别领域中,更对其他学科带来了促进的作用。
生物特征识别(Biometrics)是一种有效的身份验证技术,它主要利用人本身具有的生理特征来识别人的身份,这种特征往往能够唯一标识公民的特征,因此具有唯一性;不容易被别人盗取,因此具有安全性;是人身体固有的,所以兼具便携性。生理特征是指人类固有的唯一的且不会轻易改变的特征,例如指纹、掌纹、虹膜、人脸以及 DNA等等。一般情况下,这些特征不会被轻易的盗取以及伪造,并且每个人的生理特征都不相同,具有很高的可靠性。因此,人们对通过生物特征进行身份验证的方法寄予很大的期望,希望通过这种方式能够满足从个人到社会以及国家的安全需求。OpenCV简介[1][2][3]
2.1 什么是OpenCV
OpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的Python, Java and MATLAB/OCTAVE(版本2.5)的接口。这些语言的API接口函数可以通过在线文档获得。如今也提供对于C#,Ch, Ruby的支持。
所有新的开发和算法都是用C++接口。一个使用CUDA的GPU接口也于2010年9月开始实现。
2.2 OpenCV特点
1)整个函数库是开源的,基于 C/C++语言的,主要应用于图像处理领域。
2)使用时可移植,并且十分便利友好。
3)函数库中的所有代码均经过优化,在进行图像处理时均能实时进行。
4)由于该函数库主要用于图像处理,因此对于图像和视频均能快速载入并且加入了图像采集和保存的基本功能。
5)具有两种 API 接口:低级和高级。
6)在使用过程中,为了提高程序的性能,OpenCV 中加入了面向 Intel IPP 的高效多媒体函数接口,能够优化程序本身的 Intel CPU 代码。
2.3 OpenCV的应用
1)图像中物体分析
2)安全和入侵检测系统
3)自动监视和安全系统
4)医学图像去噪
5)产品质量检测系统
6)摄像机标定
7)无人飞行器/汽车/水下机器人 人脸识别算法
3.1 PCA算法(主成分分析算法)[1][4][5]
PCA 技术是将人脸的特征空间进行降维的技术,是一种最优正交变换,在构造新的人脸特征空间的过程中,需要在原来的人脸中求的一组正交的向量,而新的人脸特征空间是由这组正交向量中重要的部分组成的。这些重要部分组成了特征脸,因其保留了人脸的形状,因此能够表征人脸的基本信息。具体的人脸识别步骤如下所示: 将人脸数据库输入到算法中K-L变换得到相应的产生矩阵对图像的本征值和本征向量进行计算对待识别样本进行分类将训练集合和测试集合映射到特征空间中对特征值排序,特征向量与其一致,大的特征值表示轮廓,小的表示细节
主成分分析是一种基于特征脸的方法,找到使数据中最大方差的特征线性组合。这是一个表现数据的强大方法,但它没有考虑类别信息,并且在扔掉主元时,同时许多有鉴别的信息都被扔掉。假设你数据库中的变化主要是光照变化,那么PCA此时几乎失效了。
3.2 基于Fisher线性判别的人脸识别方法[1][5][6]
线性鉴别分析在降维的同时考虑类别信息,为了找到一种特征组合方式,达到最大的类间离散度和最小的类内离散度。这个想法很简单:在低维表示下,相同的类应该紧紧的聚在一起,而不同的类别尽量距离越远。
线性判别分析(Linear Discriminant Analysis)是统计模式识别的基本方法之一。应用统计方法解决人脸识别问题时,经常碰到的问题之一就是“维数灾难”的问题。在低维空间里解析上或计算上可行的办法,在高维空间里可能变得毫无实际意义。因此,降低维数有时就成为处理实际问题的关键并发展了许多压缩特征空间维数的方法。
Fisher最佳鉴别向量方法的基本思想是将原来高维的模式样本投影到最佳鉴别向量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。因此它是一种有效的模式分析技术。这种方法的关键是如何求解最佳鉴别向量。
3.2.1 Fisher鉴别向量
多维空间进行分类有一种比较简单的方法,即将空间中的所有数据映射到一维向量中,也就是映射到一条直线上。这条直线贯穿在整个空间中,如果选择不当,可能会造成一些样本距离过小而重叠在一起,因此要选择一条能够使得映射在这条直线上的数据最大程度的区分开,这就是Fisher方法要解决的问题的核心。
Fisher鉴别向量使类间离散度与总类内离散度之比达到最大,这样就把高维模式样本(Cn维问题)转化为一维模式样本(一维问题),并在一维空间(直线)上保持最优的鉴别能力,也就是说Fishe:鉴别向量能将高维模式以最优的可分性指标变换成一维模式。找到训练数据投影后的向量和待识别图像投影后的向量最近的那个
3.2.2 最优鉴别平面
最优鉴别平面是由两条向量构成的,这两条向量即最优鉴别向量。最优鉴别平面是将人脸的高维空间投影到一个平面上,这个平面需要将所有的样本进行最大程度上的分类,因此它的选择十分重要,而如何选择最优的鉴别平面,又是由鉴别向量决定的。这两条向量是相互正交的。
两条最优鉴别向量和原点构成了最优鉴别平面,将高维空间的数据投影到最优鉴别平面上,这个平面能够将样本进行有效的分类,并且突出高维空间所有样本的类别可分性。
3.3 基于LBP+SVM(局部二值模式直方图)特征的人脸识别方法研究[1][5][7]
人脸识别的一个关键步骤就是人脸的特征提取,图像的特征提取结果直接影响后续识别的准确率。目前的特征提取主要面对光照、成像结果以及姿态等等方面的挑战,针对这一系列的问题,有学者提出了基于局部模式的特征提取方法,因其相对于基于全局模式的特征提取方法有更好的鲁棒性。
局部二值模式(Local Binary Pattern, LBP)是一种有效的纹理描述算子,它具有旋转不变性和灰度不变性等显著的优点。能够在图像的局部的层级通过对图像纹理特征的描绘达到描述图像的目的,从整理上来看,它不需要很长的计算时间,也不需要多余的参数计算,而且在描绘的过程中能够精确到很微小的细节方面的特征,从而提取出对于识别更加有利的特征,在图像的检索、识别以及分析方面有很突出的贡献。
3.3.1 LBP算子简介
这种算子的计算是在一个3x3的正方形上展开的,将正方形的中心点作为基点,在附近的区域内找到所有的像素值与其进行对比,将这些对比结果进行量化。接下来就需要将这些量化结果进行处理,即根据不同的位置将这些值进行加权,并进行相加,最后得到的值就是中心点的局部二值模式对应的值。显然这个3x3的正方形是不足以满足需要的,在之后的研究中,它被扩展到了更大范围的邻域中。
如图所示,参数(P, R)代表着对图像的描述精度,主要针对图像的局部细节。P代表中心点附近的像素个数,这个值的大小对细节的描述精度起到了至关重要的作用;R代表的半径的大小能够对圆的大小进行度量,它能影响某一部分细节的分辨率。图中选择了不同的P和R值,若想得到的图像有较高的分辨率,就需要提高P值,但是这样就会提高计算复杂度。
3.3.2 LBP算子的计算过程
如图所示,(a)中是一个3x3矩阵,中间的像素值32代表中心点灰度值,而其余的8个像素点的灰度值分别为12, 40, 108, 89, 27, 67, 13, 5, 12;(b)图对应矩阵上的值是由(a)中该矩阵的灰度值与中心点灰度值比较得来的,若该点的灰度值大于中心点的灰度值,(b)中相应位置就填写为1,否则填写问0;(c)中代表矩阵中相应位置的权值;将(b)与(c)矩阵中对应位置相乘并加和最终得到LBP算子值。
3.3.3 SVM算法[8][9][10][11]
支持向量机是一种基于分类边界的方法。其基本原理是(以二维数据为例):如果训练数据分布在二维平面上的点,它们按照其分类聚集在不同的区域。基于分类边界的分类算法的目标是,通过训练,找到这些分类之间的边界(直线的――称为线性划分,曲线的――称为非线性划分)。对于多维数据(如N维),可以将它们视为N维空间中的点,而分类边界就是N维空间中的面,称为超面(超面比N维空间少一维)。线性分类器使用超平面类型的边界,非线性分类器使用超曲面。
支持向量机是基于线性划分的。但是可以想象,并非所有数据都可以线性划分。如二维空间中的两个类别的点可能需要一条曲线来划分它们的边界。支持向量机的原理是将低维空间中的点映射到高维空间中,使它们成为线性可分的。再使用线性划分的原理来判断分类边界。在高维空间中,它是一种线性划分,而在原有的数据空间中,它是一种非线性划分。
3.3.4 基于LBP的人脸识别
算法流程图
参考文献
[1].基于OpenCV的人脸识别算法实验平台研究与实现_孙志
[2].http://baike.baidu.com/link?url=7lP-gMZIbAJGW67o5VIhBUkNIyKyg6yIhLcvRXEP6lQuRZxV3S8Y9WgdTbg0ApdUmL8uD5RPQ7Hi5YTmH5fG4K [3].http://wenku.baidu.com/link?url=IaUGbA_mE9Dbhdxz85LlqsJsT3cm1LuOUfMCVgrJoyGwfyVI0PdU2gv1QMPPAJQb6k8ZM-oyYxeGr8chciZdyTd72pNeryMnXqn6G8a9eM_ [4].Paul Viola, Michael Jones, Rapid Object Detection using a Boosted Cascade of SimpleFeatures,2001 [5].http://blog.csdn.net/guoming0000/article/details/8022197 [6].基于Fisher判别的人脸识别技术研究_洪玥 [7].基于LBP的人脸识别研究_黄非非
[8].http://baike.baidu.com/link?url=10KJqoHbEoYOa8uvsoj22mhF0LR5HD7gvm906eIaev-JkHnADdg5G_dhjqMs8CWnPbvlrZTfWYF6KKAyRPQKqK [9].http://wenku.baidu.com/link?url=o0CPVzuBDLJMt0_7Qph1T7TtdFOzu7O-apIpvaWbIYMz8ZWqBneGqI8LGtLdqpuKnaHhMxC0JhidqQUEo-fS0alyuamsAVJdvobUkHk0yHq [10].http://wenku.baidu.com/link?url=8rhhaoVshWCsSwlHovZuytqNAPLNtUJLCA89RRKoTAglU1GF0Gs-nvDKlbEqinLiGNyUaKrWE1rPG7SNRS8goGTKf0RcZYzEkQmM12edDcG [11].基于SVM的人脸识别技术研究_李丽