基于三重人脸识别身份验证的门禁管理系统设计
2016-03-17刘晓敏王浩宇杨海群
孙 伟,刘晓敏,王浩宇,杨海群
(中国矿业大学 信息与电气工程学院,江苏 徐州 221008)
基于三重人脸识别身份验证的门禁管理系统设计
孙伟,刘晓敏,王浩宇,杨海群
(中国矿业大学 信息与电气工程学院,江苏 徐州221008)
摘要:针对目前门禁管理系统存在的身份验证模式较单一、安全级别较低等问题,并且为满足高保密性、高安全性场合的需求,设计了一种基于移动Android终端、嵌入式现场终端以及上位机系统的三重身份验证的安全门禁管理系统,并且利用人脸识别技术的独特性进行控制;简单介绍了系统的软件和硬件开发平台、系统整体的网络拓扑结构,给出了系统的整体实现与运行框架,并且详细设计了基于移动Android端、嵌入式端以及后台服务器端的3个子系统的软件部分,包括流程图设计及各个软件界面设计;进行多次模拟试验,最终给出整个系统的部分运行效果图;结果表明,该系统能够进行三重身份识别验证,准确度较高,运行稳定,能够很好得满足特殊场合的需要,具有良好的实用前景和推广价值。
关键词:门禁系统;安卓终端;嵌入式终端;上位机;人脸识别
0引言
随着计算机网络技术的发展成熟,信息安全越来越受到人们的重视,出现了各种身份识别方法[1]。其中,人脸特征识别具有非接触性、稳定性、独特性等优点而脱颖而出[2]。近年来,智能手机功能不断强大,基于此的识别技术成为又一研究热点,尤其是在一些人流量比较大、安全级别要求较高的地方。因此本文把人脸识别与嵌入式、手机、平板等相融合,设计出一套高安全级别的门禁管理系统。
1开发平台介绍
1.1硬件平台
1)服务器:联想Y470型笔记本,CPU为core i5、四核、4GB内存,Win7操作系统。本文的系统软件开发以及功能仿真均在此服务器上完成。
2)智能移动终端:小米M3型号手机,配置为:CPU为高通骁龙Snapdragon APQ8064 Pro、四核、CPU频率为1.7 GHz,2 GB内存,前后摄像头,前置1 300万像素,后置200万像素,Android4.1操作系统。本文的Android平台实际应用测试在此手机上完成。
3)嵌入式终端三星S3C2410X处理器采用32bits的RISC ARM920T核、单独的16K指令和数据cache、内存管理单元MMU以支持WinCE、 Linux、 EPOC等操作系统,采用新型总线结构AMBA(Advanced Microcontroller Bus Architecture),运行频率可达203 MHz,272FBGA封装,低功耗高性能设计,适合用于中高档手持终端等应用。
1.2软件平台
1)Matlab 2010a版本,Matlab具有很强的数据分析、矩阵计算、系统建模等功能,适合算法仿真与实验,能够实现计算与结果的输出。
2)Eclipse4.2开发环境,JAVA语言环境选择JDK8.0开发。Eclipse是基于JAVA的可扩展大型的开发平台,它支持Java、C/C++、PHP等多种语言。
3)Android SDK(开发工具包)与ADT插件,开发工具包包括开发软件工具包、Android模拟器等,下载后无需安装,放到指定位置即可,但用Eclipse进行APP开发时,必须为Eclipse安装ADT,以建立与sdk的连接。
4)OpenCV-2.4.6-android-sdk-r2库文件。OpenCV是一个跨平台计算机视觉库,提供Android系统应用端的接口[3]。选用此库文件以支持Android手机端一些图像处理操作。
5)Microsoft Visual C++ 6.0,具有强大的可视化软件开发工具,包括程序向导AppWizard、编辑器、调试器等。
2系统整体设计
整个门禁管理系统主要由3部分组成,包括移动终端、嵌入式终端、后台服务器终端。
系统网络拓扑如图1所示。
图1 系统网络拓扑图
手机端的工作是开发Android手机APP,主要功能是根据银行门禁权限的分配,在其权限者手机上安装APP软件[4]。软件的主要布局包括密码登录、密码修改、初始数据采集训练、采集图像、图像识别、数据上传等,主要用于验证手机使用者是否是手机持有者;嵌入式终端是常见固定于门禁旁的数据采集、控制设备,主要用于请求进入门禁的图像采集,以及控制门禁的开关;后台服务器终端存放于控制室,用于对移动终端和嵌入式终端上传的照片进行匹配识别,进而与数据库中已分配权限人员进行匹配,若匹配成功,则发送信号到嵌入式设备打开门禁,否则报警,通知相关安保人员[5]。
3系统软件设计
门禁管理系统的总体运行框架如图2所示。
图2 系统的总体运行框架
3.1移动端软件设计
Android手机端的主要工作在于APP软件的开发,运行流程如图3所示。启动软件,若是初次使用,需注册用户名和密码,密码和用户名存储使用SharedPreferences方式。注册后登录进入,功能菜单选择包括初次进入图像采集、摄像头选取、密码修改、版本更新等。初次进入图像采集,需采集多张人脸图像进行训练,使用的算法为肤色分割算法和Sift算法;摄像头选取主要是检测手机摄像头个数,摄像头调用有多种方式,包括采用MediaStore、Camera框架以及Opencv中的JavaVameraView类进行操作[6],如果是前后摄像头则可进行选择使用;密码修改需要输入原有密码然后重设新密码,即通过操作修改SharedPreferences中的存储值实现;版本更新主要是检测AndroidManifest.xml中的版本号,与从服务器获取的最新版本号进行对比,为后期功能添加做准备。手机端APP主要界面如图4所示。
图3 手机APP运行流程图
图4 APP实现结果图
图4(a)是首次登录软件,需要进行用户名和密码注册,由程序进行保存,联网后上传服务器数据库。图4(b)是登录界面,输入用户名密码登录,为防止非手机持有者使用手机登录,这里选择不记住账户名和密码。登录成功后进入功能菜单选择页面如图4(c),功能包括首次进入时图像采集与训练、训练成功后识别采集、密码修改、版本更新等。选择图像采集按钮会进入图4(d)所示界面,进行照片拍摄,左边按钮用于单张拍摄,中间按钮用于多张连拍,每隔2 s采集一次,右边按钮开始训练,若训练成功,之后进入将不再显示此功能项,如图4(e)所示,图片存放于Android手机APP所使用的SQLite数据库中。之后进入界面图4(f),中间部分显示拍摄的照片,选择左边按钮可进行拍摄,选择右边按钮可进入识别界面如图4(g)所示,左边显示采集图像,右边显示模版图像,在下方显示匹配结果及姓名。若选择修改密码按钮则进入图4(h)界面,需要对原有密码验证后才能修改。若选择版本更新则提示是否有新版本可替换。
3.2嵌入式端软件设计
主要流程如图5所示,打开软件后,首先选择验证方式。本系统提供两种验证方式,RFID射频卡验证和密码验证,主要考虑到进入者没有携带或者忘记密码的情况。验证通过后,进行图像采集、系统拍照,并通过网络上传到后台服务器中[7]。
图5 嵌入式端软件流程图
3.3后台服务器软件设计
选用VC6.0软件,用C++进行编写,软件流程如图6所示。
图6 后台服务器软件流程图
管理人员打开软件输入用户名和密码,登录到手机图片和嵌入式端采集图像匹配识别界面[8]。设置触发程序,当有图片上传时,触发程序开始检测,当检测到手机端和嵌入式端都有图片时开始进行识别匹配,若只检测到一张图片,超过60 s后,程序自动开始下一循环,则本次请求无效。若两张图片识别结果不一致,保存到访问失败日志,若识别一致,则上传图像与数据库人脸匹配,这里的图像选用手机端上传的图片,若与数据库中某个人员相匹配,则发送信号到嵌入式端,打开门禁,并在界面上显示姓名职位,若没有与之匹配的人员信息,则保存到访问失败日志[9]。
界面设计包括登录界面、手机端上传图片与嵌入式端上传图片匹配识别界面以及手机端上传图片与数据库人脸匹配界面等。
4实验测试结果
为验证系统所采用算法和所设计的各个程序的可靠性,本文对多个移动设备安装了APP,在实验室环境下进行现场情况模拟,并且选取了36组实验数据,对各个子系统的性能分别进行全面测试。其中,除两组由于实验室光照条件等因素的影响未得以正确识别外,其余测试结果均为良好,正确识别率高达94.4%。实际中,系统应用场景比较固定,因此光照等因素对系统性能的影响将会大大减小。图7是该系统部分测试效果图。
5结束语
文章首先针对硬件部分进行设计,包括手机端、嵌入式端图像采集模块以及后台服务器端;其次针对各子系统进行软件
图7 系统运行效果图
设计,包括手机端APP的编译,嵌入式系统移植、图像采集程序及上传模块,服务器人脸识别系统的搭建编译等。经多次测试结果表明,该门禁系统识别率高,运行稳定,具有良好的应用前景。
参考文献:
[1] 卢艳,黄云龙.一种语音门禁系统的硬件设计与实现[J].计算机测量与控制,2009,17(6):1201-1204.
[2] 土科俊,姚向辉.人脸图像监测与识别方法综述[J].自动化技术与应用,2004,23(12):5-9.
[3] 公衍宇,郭琦,于超.Android系统下OPenCV的人脸识别模块的设计[J].电子设计工程,2012,20(1):52-54.
[4] 郭松,李凤新,付炜.手机业务测试平台上屏幕图像识别软件的设计与实现[J].电子技术,2009,36(7):98-100.
[5] 周勇,张嘉林,王桂珍,等.Android平台下人脸识别系统的研究与实现[J].南京工程学院学报,2013,11(1):53-57.
[6] Schmid C,Mohr R, Bauckhage C. Evaluation of internet point detectors[J]. Int.Journal of Computer Vision,2000,37(2):151-172.
[7] 刘建斌,易灵芝,王根平.基于以太网互连接口的新型门禁系统[J].计算机测量与控制,2011,19(3):688-690.
[8] 姜波,李瑞,何培重.基于VC++的门禁管理系统设计[J].中国仪器仪表,2012,20(3):63-67.
[9] 徐勇.基于ARM门禁系统的设计与实现[J].通信技术,2010,43(10):117-119.
Design of Access Control Management System Based on Three Times of Face Recognition Authentication
Sun Wei,Liu Xiaomin,Wang Haoyu,Yang Haiqun
(School of Information and Electrical Engineering, China University of Mine and Technology, Xuzhou221008, China)
Abstract:Against the problems that the current ways of authentication is single and its poor safety performance, and in order to meet the demands of high-security situations, designed an access control management system of three times of authentication based on Android mobile terminals, the embedded terminal and PC system, using unique face recognition for control at the same time. Described the hardware and software development platform of the system, and also described the network topologies and the overall design and implementation of the system. The overall framework of implementation and operation of the system is given then, and the three software portions of Android mobile terminals, the embedded terminal and back-end server software portion are designed in detail, including flow charts and various software interfaces at the same time. After many times of simulation experiments, part of the system running effect diagrams are given in the last. Experiment results show that this system is capable of triple identity verification and has a high recognition rate and runs steadily. It can meet the needs of special occasions well, which means a good practicality and promotional value in the future.
Keywords:access control system; Android terminals; embedded terminals; PC; face recognition
文章编号:1671-4598(2016)02-0225-03
DOI:10.16526/j.cnki.11-4762/tp.2016.02.062
中图分类号:TP273
文献标识码:A
作者简介:孙伟(1963-),男,江苏徐州人,教授,博士生导师,主要从事复杂过程控制方向的研究
收稿日期:2015-08-18;修回日期:2015-08-25。