物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  交通  >  正文

嵌入式人脸识别门禁系统设计与实现

作者:朱冰 ,朱敏
来源:RFID世界网
日期:2011-11-14 14:40:11
摘要:本文设计并实现了一套基于人脸识别的嵌入式门禁系统。该系统采用$302440A芯片和Ubuntu操作系统平台,通过对图像的采集和处理,实现系统的多功能控制。核心部分是对人脸进行自动检测识别,进门禁控制,提高了家居的安全性。

    引言

    信息技术的迅猛发展给生活带来便利的同时,也给安全防范系统提出来越来越高的要求。传统的门锁、防盗门、监控报警系统等总是存在着携带不便、易遗失损坏、密码易被破解等问题。于是,运用生物特征识别技术的智能门禁系统就应运而生。其中,人脸识别作为生物特征识别技术中最为直观的一种识别方法,具有友好、隐蔽、简便、准确、经济及扩展性良好等其他识别技术不可比拟的优势。基于ARM技术的嵌入式系统以应用为中心,软硬件可裁剪,符合应用系统对功能、可靠性、成本、体积、功耗严格要求, 对节约成本、提高稳定性有极大地作用。

    1 开发方案与设计

    1.1总体结构设计

    根据嵌入式技术与人脸识别技术的特点及其在门禁系统的应用构思,本系统确定了嵌入式人脸识别门禁系统的人脸识别子系统的设计及实现,进行图像采集、嵌入式处理和识别响应三部分来研究。首先,通过摄像头采集图像信息;其次,从CPU处理速度、技术指标以及软件支持工具等方面进行选型,采用三星公司的基于ARM920T内核的$3C2440A芯片。开发方案中操作系统采用目前最新、最稳定的自由软件嵌入式Linux操作系统Ubuntu。前端的ARM板实现这两项功能。最后,将人脸图片传入后台数据库进行人脸识别,并反馈识别响应信息。人脸识别的核心部分,如从数据图片的检索、识别等均在后台完成。其开发方案的总体结构设计图如图1所示。 

    1.2 内核及操作系统选择
    $3C2440A采用ARM920T内核,集成如下片上功能:
    1)1.2V内核,1.8V/2.5V/3.3V储存器,3.3V扩展I/O,16KB~令Cache(I—Cache)/16KB数据Cache (D—Cache)
    2)外部储存控制器(SDRAM控制盒片选逻辑)
    3)集成LCD专用DMA的LCD控制器(支持最大4K色STN和256K色TFT)
    4) 4路拥有外部请求引脚的DMA控制器
    5)IIC总线接口(多主支持)
    6) IIS音频编解码器接口
    7)AC、97编解码器接口
    8)1.0版SD主接口,兼容2.1l版MMC接口
    9)2路USB主机控制/1路USB期间控制(ver1.1)
    10)4路PWM定时器/1路内部定时器/看门狗定时器
    11) 8路10位ADC和触摸屏接口
    12)摄像头接口(支持最大4096x4096的输入,2048x2048缩放输入)作为一个基于GNU/Linux的平台,Ubuntu在Debian基础之上, 旨在创建一个可以为桌面和服务器提供一个最新且一贯的Linux系统。它囊括了大量从Debian发行版精挑细选的软件包, 同时保留了Debian强大的软件包管理系统,以便简易的安装或彻底的删除程序。注重安全性和实用性。本系统采用版本号为Ubuntu 8.10。它具有虚拟化、完整的Java堆栈、增强的邮件服务器能力、改进的RAID支持、Uncomplicated Firewall防火墙更加简单、捆绑Landscape客户端等优势。

    1.3软件流程设计

    ARM内核和Ubuntu系统的选择为系统功能的实现提供了基础,系统软件则完成系统功能的控制。系统软件的设计流程如下,首先摄像头进行监控,如果门前有移动物体,进行拍照,并依据图像的亮度, 判断是否需要调节光线,图像处理后进行自动人脸检测识别, 如果不是没有找到匹配图像,程序返回到摄像头监控状态, 如果找到,开启楼门; 如果没有移动物体,继续监控。若是来访者, 则可以通过系统的其他方式,提出访问申请,如果房中有人则由房内人员控制打开大门;如果无人应答,系统提示房中无人, 同时采集来人照片,通过邮件自动发送功能, 向指定邮箱发送邮件,并记下来访记录。

    2 人脸识别模块设计及实现

    本系统最关键的实现技术就是通过进行人脸识别, 完成门禁控制。首先从静态图片或动态图像中找到人脸, 然后确定各特征点的位置并进行特征提取,最后将人脸与数据库中所有的人脸进行比对,并按照fisherface决策规则对该人脸进行判别分类。

    根据输入图像的性质,人脸检测识别方法分为静止图像的静态方法和图像序列的跟踪帧方法两大类。根据嵌入式门禁系统硬件性能等自身特点对人脸识别技术的要求,采用了第一大类的方法,从图像序列中选择几帧质量较好的图像,然后用静止图像的人脸识别方法进行匹配。静态方法简单、快捷、性价比高。

    2.1图像采集及预处理

    通过USB接口的摄像头采集过数据后,采用最基本的图像增强手段对图像进行处理。图像增强就是用一系列手段对取得的图像灰度作修正,或者对噪声作过滤,使得图像灰度与实际景物的灰度尽可能地匹配。不能损坏图像的轮廓及边缘等重要信息,并使得图像更清晰,视觉效果更好。为了减少光线、角度等因素的影响,采用中值滤波和直方图均衡化方法。

    2.2人脸检测定位

    人脸检测是指对于任意一幅给定的静态图像或视频序列图像,采用一定的策略和方法对其进行搜索以确定其中是否含有人脸, 如果有则返回人脸的位置、大小和姿态。从图像序列中, 自动、准确和快速地检测人脸区域是实现系统功能的一项关键任务。

    目前,人脸检测有两大类方法:一类是基于知识的人脸检测方法,一类是基于统计学习的人脸检测方法。统计学习的方法是目前人脸检测的主流方法,通过大量的人脸和非人脸样本进行训练,得到人脸图像和非人脸图像之间一些细微的差异。对于门禁系统而言,人脸检测目标区域背景相对比较简单,人脸数量和大小可以控制,大大降低了人脸检测的难度。首先, 对人脸特征搜索定位;其次,对人脸区域几何归一化处理,再次,对检测到的人脸进行特征提取。

    2.3人脸识别设计与实现

    人脸识别是一种高维数、小样本数据的识别问题。对于该类问题,其难点在于训练样本的数量很少,而以训练样本的协方差矩阵作为模式协方差矩阵的估计时,会产生以下两方面问题, 一个是会造成较大的偏差,另一个是会使类内协方差矩阵奇异。

    为了解决类内协方差矩阵奇异使得该矩阵不可逆的问题, 国内外专家们提出了许多经典算法。本系统采用.基于结构化fisherface的人脸识别方法。它应用了PCA与LDA的人脸识别过程,先由PCA对高维数据进行降维处理,获得原样本的最优特征表示,并使样本的类内协方差矩阵非奇异,然后作线性判别分析。在采用线性鉴别分析之前,通过事先给定的线性变换来达到降低图像向量的维数,从而消除了类内协方差矩阵的奇异性。在很大程度上解决了外部光照干扰、面部表情变化等因素的影响,优点是在人脸图像有光照和表情变化的情况下, 比特征脸方法的鲁棒性强。在本系统中的人员信息采用SQlite数据库技术统一管理。在人脸识别的过程中需要从人员数据库中提取相应卡号和人脸特征数据。人员数据库中存放人员的基本信息、人脸照片和人脸特征数据。其中人脸特征数据是进行人脸识别的依据,而人脸照片只是作为显示识别结果之用,并不参与识别过程。

    3 系统功能测试

    人脸识别功能利用国际上常用的ORL的人脸数据库进行测试。ORL数据库包括40个人每人的10幅共400幅图像,具有不同的光照、表情和视点。从其中选择8人进行训练,进行识别测试。统计结果如表1所示。 

    实验证明该算法是一种稳定高效的算法,可以实现人脸识别技术进行门禁控制的功能。

    4 结束语

    嵌入式人脸识别门禁系统因其非接触式的数据采集、隐蔽性好、方便快捷、便于事后追踪及可交互性强等优势,在当前科研及实际工程应用中成为最热门的研究主题之一。本系统就是作为鹤壁市科技局科研课题而开发实现的。基于ARM技术的嵌入式人脸识别门禁系统的实用性和应用前景非常广阔。