人脸识别门禁系统

2018-09-10 22:57梁观坡邹泽华陈正鑫叶盛杰,赖芃宇
现代信息科技 2018年2期
关键词:门禁系统人脸识别

梁观坡 邹泽华 陈正鑫 叶盛杰,赖芃宇

摘 要:人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术。具体来说,指通过电子仪器采集图像中的人脸,经过图像的检测和人脸的跟踪,对捕捉到的人脸进行识别的技术。随着图像处理与生物鉴别技术日新月异地进步,大量的安全系统采用了人脸识别技术。本文在研究人脸识别技术现状的基础上,结合实际生活中身份认证安全系统的需求,设计了基于OpenCV的人脸识别门禁系统。介绍了如何使用OpenCV进行人脸检测与识别、如何运用人脸识别控制门禁等,重点探讨了不同模型的人脸识别算法识别效果的好坏、光照变化及不同姿态对人脸识别结果的影响。

关键词:OpenCV;人脸识别;门禁系统

中图分类号:TP391.41 文献标识码:A 文章编号:2096-4706(2018)02-0038-03

Face Recognition Access Control System

LIANG Guanpo,ZOU Zehua,CHEN Zhengxin,YE Shengjie,LAI Pengyu

(Fuzhou University,Fuzhou 350108,China)

Absrtact:Face recognition is a kind of biometric recognition technology,which can extract feature information from human face,collect face in image by electronic instrument,detect and track face through image. With the rapid development of image processing and biometric identification technology,a large number of security systems use face recognition technology.On the basis of studying the current situation of face recognition technology according to the requirement of identity authentication security system in real life,a face recognition access control system based on OpenCV is designed. How to use OpenCV to detect and recognize face is introduced.How to control the entrance guard by face recognition is discussed in this paper,and the effects of different face recognition algorithms,illumination variation and different pose on face recognition are discussed.

Keywords:OpenCV;face recognition;access control system

0 引 言

传统的门锁只是单纯的机械装置,钥匙容易遗失和被复制,电磁卡锁也存在类似的问题。电子密码锁也存在密钥易泄露、被破解或遗忘的问题。基于以上原因,我们希望设计出一套安全便利的智能型门禁系统。现代计算机技术发展迅速,应用非常广泛,每個家庭拥有一台个人计算机、安装有监控系统已是平常事了,加上计算机视觉和图像处理功能日趋成熟,我们完全可以设计出一套以人脸识别作为身份验证基础的门禁系统。

1 绪论

1.1 研究背景与动机

随着信息时代的到来,信息安全愈显重要。与此同时,信息识别与检测显示出前所未有的重要性。人脸识别与检测需要用到大量图像处理的算法,而OpenCV是一种开源的跨平台计算机视觉库,具有图像处理的多种算法与计算机视觉领域的大量通用算法,并且有多种函数提供给人脸检测与识别使用。嵌入式系统是门禁系统的重要组成部分,有着功耗低、可靠性高、功能强大、效率高等优点,并且可根据需要灵活制定。

1.2 人脸识别原理

PCA人脸识别的基本原理是:

(1)训练阶段:使用PCA降维算法提取人脸样本的主要特征,构成特征脸空间。

(2)识别阶段:将测试人脸投影到特征脸空间,得到一组投影系数,采用距离函数,求取测试人脸的投影系数与各个样本人脸的投影系数的距离,距离最小的两张脸判定为同一个人。

1.3 基于LBP和直方图匹配的人脸识别

其过程分为两个阶段:

(1)训练阶段:提取训练图像的LBPH并保存。

(2)识别阶段:提取待检测图像的LBPH,遍历训练图像的LBPH,逐一匹配待检测图像的LBPH与训练图像的LBPH,找到与待检测图像的LBPH最相近的训练图像,将其对应的类别作为识别的类别输出。同时可设定一个阀值(threshold),当两者的LBPH匹配值超过或者低于阀值(取决于直方图匹配算法),即可判定待检测图像不在训练集之中,也就是陌生人。

1.4 基于OpenCV的人脸检测和眨眼检测

OpenCV提供了训练目标检测器的统一界面,这里我们训练一个人脸检测器,整个训练过程在计算机的E:\boost进行,训练所需的文档放在E:\boost目录下。

具体训练步骤如下:

(1)建立样本集:使用MIT人脸数据库作为正样本,该数据库由麻省理工大学媒体实验室创建,包含16位志愿者的2592张不同姿态、光照和大小的面部图像,大小为20×20;使用不包含人脸、包含各种场景的4382张图片作为负样本,大小为20×20。将上述正负样本分别放在pos档夹和neg档夹中。

(2)生成样本描述档后再生成正样本的vec档。

2 实现方法

系统架构及工作原理:本文专研设计的人脸识别门禁系统主要综合运用了图像识别技术和微机控制原理,其中图像识别用于身份鉴定,微机根据身份鉴定的结果控制门禁。人脸识别门禁系统框架如图1所示。

3 实验过程讨论及成果展示

3.1 人脸检测实验

人脸检测是人脸识别的基础,本实验的目的在于测试用OpenCv训练得到的haar级联分类器的人脸检测效果,测试图像来自百度图片,平均大小为318×193。

测试图像及实验结果图像,如图2所示。

分析与结论:总人脸数:13,测到脸数:11,误检数:0,漏检数:2,总耗时:130(ms),检测率:84.62%,误检率:0,漏检率:15.38%,平均耗时(ms/人):10。

从以上数据可以看出,实验表明该系统检测率较高,误检率、漏检率较低,对大小为318×193的图像检测速度较快,可以用于实时监测,因此我们可以得出:用OpenCV训练得到的haar级联分类器的人脸检测效果较好。至于误检率会远低于漏检率,甚至为0,这是由于每一个子窗口图像只有通过级联分类器的层层考验,才会被认定为人脸,即“宁缺毋滥”。

3.2 LBP特征提取实验

特征提取对人脸识别的效果有很大的影响,因此有必要进行深入的了解。虽然OpenCV没有提供单独实现LBP算子的函数,但从其提供的LBPH类中可以找到相关的代码,把这些代码从OpenCV中分离出来,稍加修改就可以应用于本小节的实验。

3.2.1 多种LBP算子的对比试验及相关参数作用的探究

本实验的目的在于比较不同类型的LBP算子的差异及相关参数的作用,测试图像使用大小为256×256的lena.jpg。

测试图像及实验结果图像,如图3所示。

分析与结论:

A.比较(c)图、(d)图可以看出,采样点越多,图像亮度越大,这是由于更多的采样点可以获得更大的LBP特征灰度值;

B.比较(a)图和(d)图可以看出两点,其一,等价模式LBP特征图像的亮度偏暗,这是由于等价模式的LBP特征像素值模式只有59种,取值范围不是0-255,而是1-13,其二,等价模式LBP特征图像的文理特征不变,因为半径不变;

C.把(b)图和(d)图比较可以看出,原始LBP算子不能满足图像不同纹理特性的需要,因为它只覆盖了固定范围的区域。

因此我们可以得出:相比于原始LBP,改进版本的LBP能满足图像不同纹理特性的需要,其中等价模式LBP使原始图像变暗,但不影响纹理特性,参数radius可以调整图像纹理,neighbors可以调整图像亮度。

4 结论与展望

由于时间仓促,本系统明显有很多需要改进的地方。例如以下几点:

(1)本系统的人脸识别方法较为传统,识别效果有一定局限性,时下深度学习如火如荼,可以尝试使用CNN进行人脸识别(Convolutional NeuralNetworks),进一步提高身份验证的准确性。

(2)串口通信使用USB连接,且是单向通讯,不利于实际应用。可考虑在门禁系统添加摄像头用于采集人脸图像,微机将人脸图像传送给计算机,计算机再将识别结果传送微机作为控制门禁的依据,采用蓝牙通信或者socket网络编程实现计算机与微机的无线双向通信,或者直接把人脸识别系统运行在树莓派(Raspberry Pi)上,这样就免去了通信过程。

参考文献:

[1] 朱兴统,习洋洋.基于C++和OpenCV的人脸识别系统的设计与实现 [J].自动化与仪器仪表,2014(8):127-128+131.

[2] 毛星云,冷雪飞,等编著.OpenCV3编程入门(第一版)[M].北京:电子工业出版社,2015.

[3] arduino 百度百科 [EB/OL].http://baike.baidu.com/item/Arduino,2017.

[4] OpenCV官方文档 [EB/OL].http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/user_guide/ug_traincascade.html,2017.

[5] Opencv目标检测之级联分类器训练与测试 [EB/OL].http://blog.csdn.net/u012507022/article/details/53981399,2017.

[6] opencv人脸识别--detectMultiScale函數 [EB/OL].http://blog.csdn.net/itismelzp/article/details/50379359,2017.

猜你喜欢
门禁系统人脸识别
人脸识别的“国标”来了
一个简易的校园智能门禁系统的设计
关于门禁系统在地铁综合监控系统中的运用分析
基于地铁BAS系统建设门禁系统的方案思路分析
中科视拓开放商业版本人脸识别算法
基于门禁系统在地铁综合监控系统中的实践分析
荣耀畅玩7C:人脸识别
“人脸识别”人工智能测谎仪研发成功