吴成枫,赵振华
门禁系统,又称出入管理控制系统,是一种管理人员进出的数字化管理系统。常见的门禁系统有:密码门禁系统,非接触 IC卡(感应式 IC 卡)门禁系统,指纹虹膜掌型生物识别门禁系统等。密码门禁系统由于其本身的安全性弱和便捷性差已经面临淘汰,非接触IC卡门禁系统则有着成本高、读写设备麻烦、易受电磁干扰等缺点,生物识别门禁逐渐成为门禁系统研究的热点。
20世纪80年代以来,随着光学扫描、个人电脑等技术的发展,指纹采集工具这一难题得到解决、指纹识别理论逐渐成熟、数字化采集设备的广泛应用,指纹识别技术得以广泛应用于当今生活领域中。随着计算机相关技术的发展,特别是ARM嵌入式技术近年来在服务业、通信业、消费电子、公众服务业、工业等行业得到了广泛应用,基于ARM的指纹识别技术逐渐成为目前最实用、最广泛的生物识别技术。指纹识别技术已经在金融、医疗、公安、门禁系统等领域得到了广泛的应用。基于ARM嵌入式技术的智能门禁系统成为当前建筑智能化研究的热点。
指纹识别是从指纹数据库中查找与给定指纹相同的指纹数据,从而达到辨别身份的目的。指纹识别系统是指纹识别技术的核心内容。指纹识别系统由指纹图像采集、指纹图像预处理、指纹特征提取、指纹特征匹配、特征数据库等几部分组成。指纹识别系统从指纹数据库中查找与采集指纹是否匹配的指纹数据,从而达到指纹辨别的目的。指纹识别系统大体上可分为两个内容:指纹注册和指纹比对。指纹注册主要包括指纹采集、指纹图像预处理、特征点提取和特征值存储。指纹比对的前3步操作与指纹注册完全相同,在特征点提取后,生成的指纹特征值将与存储在指纹特征数据库的特征值作特征匹配,最后输出匹配结果。指纹识别系统结构,如图1所示:
图1 指纹识别系统框图
本设计以S3C2440为控制核心,S3C2440是SAMSUNG公司推出的一款16/32位的精简指令集(RISC)微处理器,该处理器采用 ARM920T内核,主频达到 400MHz,支持THUMB和ARM指令集。S3C2440的低功耗、丰富的外设接口和全静态设计到特点特别适合对于低成本和对功耗有较高的应用场合。利用性能强劲的 ARM9内核实现对指纹采集模块、电源管理模块、数据存储及传输模块和电锁的管理与控制,指纹识别模块与 S3C2440及其外围电路进行通讯,通过 S3C2440完成对系统指纹识别模块的控制,从而实现指纹的采集、比对、存储、上位机软件完成对系统参数的设置、数据指纹的导入、指纹数据可以自如添加、删除。整个系统硬件模块结构,如图2所示:
图2 系统硬件模块结构示意图
数据存储模块主要包括64MB的SDRAM和64 MB的FLASH(片外存储器)。SDRAM用来存放采集到的指纹图象数据和程序运行时的临时数据。64MB的Flash则用于存放系统应用程序和特征数据库,系统可通过外接SD卡或硬盘可实现大容量存储。
本系统指纹采集模块采用富士通公司的 MBF200指纹传感器芯片,MBF200属于电容式指纹传感器,具有半导体芯片同样的体积小、功耗低的特点,能够深入真皮层,捕获到更多真实的数据,从而获得相当精确的指纹图像,与光学指纹采集器相比,MBF200不需要较大面积的采集头。MBF200提高了指纹识别效率,有效避免识别错误。该芯片的分辩率高达500dpi(dots per inch),并带有8bit数据接口,可以采集300×256大小的指纹数字图像。MBF200芯片提供有3种接口(SPI、USB和MCU)方式,本系统采用MCU方式,其内置的标准 8位微处理器总线使其性能大大加强。MBF200的工作流程分为3部分,其内部结构,如图3所示:
图3 MBF200内部结构图
首先是初始化参数的设置,主要是启动内部ADC并对特殊功能寄存器CTRLB的第0和第2位置位,以确定ADC后的地址是否自动增加,同时设置芯片的时钟源从而获得等待时间后使能传感器;其次是调整DTR、DCR、PGC等寄存器的参数;最后就是获取指纹图像数据。
MBF200的传感器阵列由256列×300行的传感器单元组成。每一列有两个采样保持电路,每次捕获一行指纹图像数据。行捕获分为两个阶段,第一阶段,将电容板的被选行充电到3.3V或5V,在充电的同时,一个内部信号使能一个采样保持电路以采样被选行的电容单元电压;第二阶段是传感器板放电阶段,放电快慢由放电电流寄存器决定。放电阶段结束后,可由一个内部信号使能另一个采样保持电路去采样电容单元的最后电压,充电电压与放电电压之差就是所要测量的有用传感信号电压。行捕获结束之后,接着对该信号进行数字化,从而完成一次采样。
本系统软件部分用C语言编写,在ARM Developer Suite v1.2的Code Warrior IDE环境下编写、调试。该门禁系统的软件设计大体上可分为两个部分:(1)基于三星S3C2440的门禁软件设计,实现对电锁的智能控制;(2)基于数字图像处理技术的指纹算法处理。上位机软件设计流程,如图4所示:
图4 门禁控制流程
指纹算法处理是指纹特征识别的重要内容。指纹识别算法流程主要包括背景分割、方向图计算及方向滤波、二值化、细化、特征提取和特征匹配等。采集的指纹图像容易受到各种因素的影响而使图像质量变差,比如手指按压的方向和力度、皮肤的干湿程度、传感器的特征差异等。因此,指纹识别算法首先要对指纹图象进行处理,以把有用的前景信息和背景区分开。本系统算法采用方差法进行图像分割。然后采用基于块方向图计算的方向滤波。接着利用动态阀值法进行二值化处理,以把指纹灰度图像转化为仅用0、1表示的二值图像。对二值化后的二值图像进行细化可得到骨架图象。接下来的特征提取阶段是用模板匹配的方法获取细节特征点(端点、分叉点)的位置、方向和类型信息。最后和特征匹配则采用基于细节特征点匹配的算法。指纹识别总体算法实现流程,如图5所示:
图5 指纹识别总体算法实现流程
本系统为独立型门禁系统,接两个指纹识别模块,实现出入门指纹识别两次身份验证。本门禁系统适用于门数不多的场合,成本预算很低,即使不懂计算机专业知识的装修人员也能方便安装。该系统同时也具备良好的拓展性,能够和计算机进行通讯,通过计算机上的门禁管理软件可实现使用权限的设置、分析查询门禁出入记录等功能。电脑不开,系统也可以脱机正常运行,可便捷扩展为联网型门禁系统。
本文对基于指纹识别技术的智能门禁系统作简单研究,并给出了相应的应用设计。利用最新的嵌入式技术构建的智能门禁系统具有成本低、性能高的特点,有着良好的应用前景。
[1]陈国金,王家校.基于 ARM9的指纹识别门禁系统[J]. 电气工程,2009.26(9) :46—50.
[2]柴恒.自动指纹识别系统研究及其嵌入式实现.[D]哈尔滨工程大学.2009.
[3]董立羽.现代生物特征识别技术发展综述[J].电脑与信息技术,2007,10(5):11—13.
[4]伍更新.自动指纹识别若干关键算法的研究[D].中南大学.2007.5.29.
[5]SAMSUNG Electronic . S3C2440AL User’s Manual.2003.31—35.