基于FPS200传感器和DSP的指纹识别系统
指纹以其唯一性、稳定性及非遗失性而成为个人身份识别的有效手段。计算机图像处理和模式识别技术的发展使指纹自动识别技术更加成熟。指纹识别技术主要是通过分析指纹的局部特征,从中抽取详尽的特征点,从而可靠地确认个人身份。目前的多数指纹识别系统是将指纹图像采集到计算机中,然后利用计算机进行识别。但该方法不但占用了主机系统的资源,同时也限制了指纹图像处理的速度。而本文介绍的基于DSP的指纹识别系统不但可脱机工作,也可通过接口进行二次开发,并可快捷地整合到其它系统中。该系统采用TI公司生产的DSP芯片TMS320VC5416(以下简称:C5416)作为核心处理器,同时选择Veridicom公司的固态指纹传感器件FPS200。
1 指纹识别原理
1.1 指纹识别系统的组成
指纹识别是用取像设备读取指纹图像,并通过识别软件提取指纹图像中的特征数据,然后根据匹配算法得到的结果来鉴别指纹所有人的身份,这种生物特征识别技术主要涉及指纹图像采集、图像预处理、特征提取、特征匹配等过程。识别时,可由计算机对预存的模板与当前获得的特征数据进行比较,以计算出它们的相似程度,从而得到两幅指纹图像的匹配结果。指纹自动识别系统(AFIS)的简单流程如图1所示。
1.2 指纹采集的操作原理
FPS200指纹传感器由256×300个电容传感阵列组成,其分辨率高达500 dpi,工作电压范围为3.3~5 V,传感器内部有8位ADC,并具有两组采样保持电路。FPS200的结构框图如图2所示。
FPS200是一种基于电容充放电原理的触摸式CMOS传感器,其外面是绝缘表面,传感器阵列的每一点都是一个金属电极,手指则充当电容器的另一极,而两者之间的传感面形成电容两极之间的介电层。由于指纹的脊和谷相对于另一极之间的距离不同,导致硅表面电容阵列的各个电容值不同,这样,电容阵列值就描述了一幅指纹图像。FPS200的每一列都有两组采样保持电路。纹采集按行实现,选定一行,对该行所有电容充电,并用采样保持电路保存电压值;然后放电,再用另一组采样保持电路保存剩余电压值。两组电压值通过内置的8位模数转换器,便可以获得具有灰度等级的指纹图像。
2 系统硬件设计
本指纹识别系统中的特征匹配和数据库模块可在主机上通过软件实现,指纹采集、图像的预处理以及特征提取部分则可由DSP+CPLD完成。系统的硬件结构如图3所示。
该指纹自动识别系统由DSP、CPLD、FPS200指纹传感器、SRAM、FLASH和USB接口等硬件组成。图3中的CPLD可作为系统中的接口和逻辑控制器件,控制着整个系统的逻辑,同时负责协调取指器、DSP和USB三部分之间的工作;FPS200指纹传感器负责现场采集用户的指纹,CPLD则可将指纹图像存储到SRAM中,并在采集完一幅图像后通知DSP数据已准备好。进行数据处理时,由DSP将SRAM中的数据分块取到其内部的128 KB RAM中,以进行指纹图像预处理及特征提取,再由DSP将指纹模板经USB接口上传给PC,然后与指纹库中的特征指纹进行匹配,最后显示匹配结果。
2.1 系统存储空间的分配
指纹图像的数据量大(FPS200采集的指纹图像为256×300象素),因此,运行指纹识别算法和存储特征模板均需大量存储空问。本系统对存储资源进行了合理的分配管理。系统外部存储器包括256 KB的FLASH和256 KB的SRAM。程序代码放在FLASH中;算法运行过程中的临时指纹图像数据则存放于片外SRAM,最后的指纹特征模板则存储于FLASHEEPROM中。
TMS320VC5416有23根地址线可以用来对程序空间进行寻址,并可直接对8 MB空间进行寻址,本系统只需512 KB的寻址空间,所以只需使用其中19根地址线。设计时可利用高位地址A19来区分FLASH和SRAM,可将DSP地址线中低15位直接与FLASH中的A0~A14相连,地址高3位通过CPLD来控制寻址。为了对存储器进行统一的逻辑控制,本系统由CPLD并完成片选、中断、复位、读写使能等功能
2.2 CPLD电路的设计
CPLD作为接口和逻辑控制器件,其内部集成有地址发生器和与DSP的握手控制电路,可用于完成整个系统的片选、中断、通用I/O的配置等功能,同时可将指纹图像直接存储到SRAM中,并在采集完一幅图像后通知DSP数据已准备好。本设计中的CPLD选用美国Altera公司的MAX3000系列EPM3128ATC100-10。
2.3 键盘与LCD电路的设计
LCD模块采用FM12864I作为指纹图形和处理结果显示的用户界面。FM12864I是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成,可完成图形显示,也可以显示8×4个(16×16点阵)汉字。本设计为
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)