基于DSP的嵌入式指纹识别系统概述
本文作者:admin
点击:
2007-02-01 00:00
前言:
指纹是当今应用最广泛的生物特征,指纹识别在人的身份鉴定中有重要的意义。基于DSP的嵌入式指纹识别系统具有极高的安全性和易用性。高性能价格比的DSP已逐渐应用于指纹识别技术中,并且发挥着越来越重要的作用。人们习惯上将这种在以DSP为核心的平台上运行固化指纹处理程序的指纹识别系统称为基于DSP的嵌入式指纹识别系统。
指纹识别系统性能的提高的关键是芯片性能的改进和算法性能的优化,通常我们把基于DSP的嵌入式指纹识别系统分成硬件和算法两个方面来研究,硬件部分分为采集、图象处理及识别和输出等3个模块,算法分为读取指纹图像、提取特征、保存数据和特征比对等4个部分。
硬件部分
● 图像采集模块
图像采集模块是系统中极其重要的组成部分,高质量的指纹图像可以在很大程度上降低指纹识别算法的复杂度,提高系统整体性能。指纹图象的采集设备多种多样,其优缺点也大不相同,通常将这些取象设备分成3类:光学、半导体传感器和超声波传感器。
光学录入技术是最成熟也是最古老的指纹录入技术.主要依据是光的全反射原理(FTIR)。光线照到压有指纹的玻璃表面,反射光线由电荷耦合器件(简称CCD: Charge Coupled Device)去获得,反射光形成指纹图象。在过去几年中.这种设备已经变得越来越小.价格也越来越便宜了。
半导体传感器的采样原理是多样的.目前主要有电容、电阻、温度及压力传感器等。电容式固体传感器是目前最常用的半导体传感器,它的采样平面由许许多多微小电容组成。当手指皮肤接触传感器表面时,纹理凸起处连接的电容容值比凹陷处连接的电容值大,依靠这种电容值的不同形成指纹的图像。这种基于芯片的传感器,它的面积一般只有一枚邮票那么大,使用者直接将手指放在硅芯片的表面来完成指纹图像的录入。
超声波传感器目前被认为是采样效果最好的指纹读取设备,它主要依靠反射波的强弱形成指纹纹理图像。当超声波源发出的超声波通过传感器表面到达手指表面时.会被反射回去。接收设备获取了其反射信号,测量它的范围,得到脊的深度,形成指纹图象。不象光学扫描,积累在皮肤上的脏物和油脂对超声波获得的图像影响比较微弱,所以这样的图像是实际脊地形(凹凸)的真实反映。如表1所示:
由于半导体指纹采集设备CMOS器件具有成本低、分辨率高、可靠性好的优点,虽然当手指汗液多或干裂时成像质量可能变差,但在图像识别过程中,采用基于GABOR的图象增强算法,可以克服由此造成的影响,因此,该类设备在嵌入式指纹识别系统中得到广泛的应用。
● 图像处理及识别模块
该部分是以DSP处理器为核心并结合存储器、控制器等硬件设备构成的嵌入式系统。图像处理及识别模块的结构关系到系统的性能的总体水平.为了构建高效的数据处理流程、提高系统的并行程度和资源利用率,通常采用FPGA+DSP、CPLD+DSP等体系结构。采用CPLD+DSP结构(如图1所示),CPLD作为接口和逻辑控制器件,进行地址译码及其它外围电路的控制,DSP进行指纹核心算法的处理。FPGA+DSP的体系结构中,FPGA作为扩展总线接口外,还可以分担部分数据处理任务,指纹数据处理时,经常会遇到一些繁琐的加减运算和比逻辑运算,通常这部分都是由FPGA代为处理的。通常将SRAM、SDRAM、FLASH 直接连到DSP上供其使用:FLASH 用于存放程序和一些固定的表格数据;SDRAM作为DSP的系统内存,用于系统程序的运行;SRAM是高速的数据存储区,用于存放程序运行是产生的临时变量。系统中最繁重的运算任务交给DSP处理,而图像采集部分则要尽可能少的占用DSP时间。另外,利用图像采集的间隙,或是图像采集的同时,由DSP以外的硬件完成一部分简单而繁琐的运算,可以分担DSP的处理任务,提高处理的并行度,满足对实时性的要求。
DSP芯片一般具有如下主要特点:
① 内部采用哈佛结构,程序和数据空间分开,可以同时取指令和取操作数;
② 芯片采用多总线结构,在1个机器周期内可多次访问程序空间和数据空间;
③ 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;
④ 具有低开销或无开销循环及跳转的硬件支持;
⑤ 快速的中断处理和硬件I/0支持;
⑥ 具有在单周期内操作的多个硬件地址产生器;
⑦ 可以并行执行多个操作;
⑧ 支持多级流水操作,使取指、译码和执行等操作可以重叠执行。
目前生产DSP芯片厂商主要有,美国德州仪器TI(Texas Instruments)公司、美国ADI (Analog Device Inc.)公司、美国Motorola公司、杰尔公司、NEC、SIEMENS等,TI公司的TMS320系列DSP芯片具有价格低廉、简单易用、功能强大等特点,是目前最有影响、最为成功的DSP系列处理器。
● 输出模块
作为嵌入式指纹识别系统,系统识别的结果可以通过扬声器、LCD等设备以音频和视频的形式输出。也可以将系统作为终端使用,即通过FPGA或其它硬件设备扩展出以太网接口,作为需要通过网络传送指纹库数据的大型指纹识别系统终端。
软件部分
指纹识别算法及在算法基础上设计的软件也是衡量指纹识别系统性能的关键。目前对指纹识别算法的衡量标准有两个:错误接受率(FAR)、错误拒绝率(FRR)。这两个指标是相互影响的但又应该同时实现的,为了降低这两个指标,多年来许多科研人员做了大量的工作。在算法软件程序的编写问题上,有时开发者只注重开发方便快捷而忽略了程序运行的实时性和系统资源的有效利用,笔者曾经做过实验,在TMS320C6713 DSP平台上运行用MATLAB语言编写的转化成汇编语言的程序,要比运行直接用DSP汇编语言编写的程序多用1.2到1.8倍的时间。另外,还应考虑程序所占用的空间,因为嵌入式的系统资源比PC少的多。因此要达到具体的实时应用,必须重视算法程序的编写及优化。
图2是一个常见的指纹识别算法流程,即先经过图象分割、滤波增强、二值化、细化这几个指纹图像预处理后,然后进行特征提取和特征匹配,最后输出结果。
结语
目前,嵌入式指纹识别系统所用的DSP芯片价格低廉,其外围采集、存储、控制设备易集成、低功耗,计算速度可以调节,很好的满足用户的要求。这使指纹识别产品能真正做到物美而价廉,在国内已有部分指纹识别的产品上市并逐渐进入安防类产品的市场,受到越来越多的人们的青睐。
展望未来,随着指纹算法精度的提高和芯片技术的进步以及成本的不断降低,基于DSP的嵌入式指纹识别系统在需要身份鉴定的各个领域必将得到广泛的应用。