基于SPCE061A的指纹识别系统
1 引言
指纹是指手指末端正面皮肤上凸凹不平产生的纹路。尽管指纹只是人体皮肤的一小部分,但是,它蕴涵大量的信息。这些皮肤的纹路在图案、断点和交叉点上是各不相同的,在信息处理中将它们称作“特征”,依靠特征的唯一性,就可以把用户同他的指纹对应起来,通过比较输入的指纹特征和预先保存的合法指纹特征,就可以验证用户的真实身份。
以前的各种指纹识别系统属于光学识别系统,由于光不能穿透皮肤表层,所以只能够扫描手指皮肤的表面,或者扫描到死性皮肤层,但不能深入真皮层。在这种情况下,手指表面的干净程度,直接影响到识别的效果。如果,用户手指上粘了较多的灰尘,可能就会出现识别出错的情况。并且,如果人们按照手指,做一个指纹手模,也可能通过识别系统,对于用户而言,使用起来不是很安全和稳定。
本系统采用了凌阳SPCE061A单片机作为控制核心,SPCE061A不仅仅是具有单片机的控制功能,它还是一款运算能力很强的DSP芯片;对于指纹的采集,本系统采用了富士通公司的新型指纹传感器MBF300,这种电容传感器发出的电子信号可以穿过手指的表面和死性皮肤层,达到手指皮肤的真皮层,直接读取指纹图案,从而大大提高了该系统的安全性。
2 系统设计
SPCE061A的指纹识别系统总体设计方案如图1所示。
图1 指纹识别系统总体设计方案
本系统采用凌阳公司的SPCE061A单片机,它是将控制功能、数据处理功能以及数字信号处理(DSP)功能集于一身的一种新型单片机。它的CPU 采用凌阳最新推出的16位微处理芯片,工作频率可达到40MHz。它的指令系统提供了16位乘法运算指令和内积运算指令,可以对指纹模板进行高速的DSP 处理。它的内部采用总线结构,减少了各个功能部件之间的连线,提高了可靠性和抗干扰能力。它的结构采用模块化,易于系统的扩展。它的中断处理能力较强,适用于各种实时控制领域。它的地址线达到22根,可以扩展4M空间的程序和数据存储器,适合指纹识别系统对存储器容量较大的要求。它的低功耗和低电压工作模式也使它特别适合于电池供电的指纹识别系统。
MBF300是富士通开发出的一种微型指纹传感器,系统利用MBF300将采样指纹模板输入到单片机中进行比较分析。它是利用手指在传感器表面滑动进行指纹的采样,所以被称为扫描型传感器。
键盘和LCD都是I/O设备。键盘可以让用户修改信息和输入ID号,增强该系统的安全性;LCD采用CHIPS65545,用于显示界面信息,为防电磁干扰和信号衰减,LCD连接线必须作一些特殊处理。
3 MBF300传感器的基本原理及特点
电容式传感器可以将物体、图形、文字等具有二维的图象转换成电信号。MBF300属于电容式传感器。它由一个2维金属电极阵列构成。一端为固定极板,而人的手指皮肤则作为活动极板。当手指置于感应器上时,一个微细的信号从驱动环耦合到手指真皮表层上,并随着指纹的纹脊和纹谷的变化而变化。感应器侦测这种细微变化,对感应信号放大,经模数转换后,从而最终形成精确的指纹图象。
3.1 MBF300传感器的基本原理
MBF300电容式传感器的基本原理如图2所示。
图2 MBF300传感器的基本原理图
S是固定极板,H为活动极板,即用户的手指指纹。当活动极板因被测参数的改变而引起移动时,两极板间的距离d发生变化,从而改变了两极板之间的电容量。设两极板相互覆盖的有效面积为A(M2),两极板间的距离为d(M),板极间介质的介电常数为ε(F·m-1),在忽略板极边缘影响的条件下,其静态电容量C(F)为:
3.2
MBF300传感器的特点
MBF300表面保护膜异常坚硬,使得该传感器经久耐用。它的工作电压为2.8V~5V,所以可以利用电池进行供电。它具有256*32像素感应矩阵,使得指纹的特征采样数据更精确。它的总线接口分别支持USB1.1、增强型8位微处理器接口和SPI串行接口。SPCE061A利用USB接口芯片PDIUSBD12和MBF300指纹传感器进行通信。
4软件设计
4.1指纹识别算法
人类的指纹由紧密相邻的凹凸纹路构成,根据公式3-2,通过对每个像素点上利用标准参考放电电流,便可检测到指纹的纹路状况,具体算法分为四部分。
4.1.1指纹识别预处理算法。指纹识别预处理的目的是使指纹图像更清晰,边缘更明显,以便提取指纹的特征点进行识别。本文采取极值滤波和改进的平滑滤波进行噪声消除,使图像不失真;采取拉普拉斯锐化对指纹进行纹线增强,突出边缘信息,为背景分离算法提供方便。
4.1.2背景分离。采用迭代阀值的方法对指纹图像进行阀值分割。在图像处理中,反复地用一种运算直至条件满足而得到输出图像的方法称为迭代。迭代阀值方法如下:
①设定初始灰度阈
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)