基于TMS320VC5501和DSP_BIOS的指纹识别系统设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

收稿日期:2009-11-23
作者简介:刘慧英(1956 ),女,陕西西安人,教授,主要从事智能控制理论与智能交通系统的研究;李飞(1982 ),男,硕士研究生,研究方向为控制理论与控制工程。

基于T M S320VC5501和DSP /BI OS 的
指纹识别系统设计
刘慧英,李 飞,宁 飞,傅 磊
(西北工业大学自动化学院,陕西西安 710129)
摘要:针对目前嵌入式指纹识别系统设计的不足,提出了基于单DSP 处理器结构的指纹识别设计方案。

系统硬件采用TMS320VC5501作为处理核心,C MOS 图像传感器HV7131R 为图像采集器件,片上系统芯片CY8C21534设计的电容性触摸按键提供系统控制输入。

系统软件以嵌入式实时操作系统DSP /B I OS 为开发平台进行实时多任务设计,并对指纹识别算法进行了硬件平台优化和改进。

调试结果表明,该系统运行稳定可靠,匹配精度高,满足设计要求。

关键词:TM S320VC5501;图像采集;DSP/BI OS;指纹识别算法
中图分类号:TP39 文献标识码:A 文章编号:1000-8829(2010)07-0028-05
D esign of Fi ngerpri nt R ecognition Syste m B ased on
T M S 320VC 5501and DSP /BI O S
L I U H u i ying ,LI Fe,i N I N G Fe,i FU Lei
(Schoo l of A uto m a tion ,N orth w este rn Po lytechn i ca lU n i versity ,X i an 710129,Chi na)
Abst ract :A fi n gerpri n t recogn iti o n syste m is pr oposed based on sing le DSP pr ocessor str ucture because of de
si g n fla w s of the presen t e m bedded syste m.T M S320VC5501is used as the processor ,and HV7131R C MOS co lor i m age senso r is used as i m age acqu isiti o n ch i p .C ap sense touch keyboard is i n troduced for input contro l usi n g C Y8C21534SoC chip .The real ti m e mu lti task desi g n o f syste m soft w are is based on the e mbedded real ti m e operation syste m DSP /B I O S .The fi n ger pri n t recogniti o n algorithm is opti m ized and i m proved in the hard w are platfor m .The test resu lt sho w s t h at th is syste m r uns stable and the precisi o n o f m atch i n g m eets the re quire m en ts o f syste m .K ey w ords :TM S320VC5501;i m age acquisiti o n;DSP /B I O S ;fi n gerpri n t recogn iti o n algorithm 随着现代社会数字化、信息化和网络化进程的不断加快,人们之间的信息交流愈加频繁,对身份鉴别技术的要求也越来越高。

传统的身份识别(如钥匙、证件和密码等)存在容易丢失、磨损以及遗忘等缺点,因此人们把目光转向生物识别技术。

所谓生物识别技术是指利用人的生理特征或行为特征来进行个人身份的鉴定。

指纹的唯一性和终生不变性,使其成为当前生
物识别的主要研究对象[1]。

指纹识别技术具有很高的可行性和实用性,因而成为目前应用最广泛的个人身份认证技术之一。

指纹识别技术的应用系统可以分
为两大类,即联机(PC)识别系统和嵌入式识别系统。

嵌入式识别系统结构上相对独立,不需要连接计算机就可以独立完成其设计功能,具有速度快、体积小、接口多等优点,被应用到各种领域。

但是该系统存在两方面的问题:一是缺少操作系统,程序处于!裸跑∀状态,降低了系统运行的可靠性;二是更多地采用!DSP +FPGA ∀的处理器结构,增加了系统功耗与成本,从而限制了其应用的范围。

因此,开发基于操作系统的DSP 指纹识别系统具有很大的实际意义。

1 系统设计方案
本系统以T M S320VC5501(以下简称C5501)DSP 为核心处理器,它是T I 公司最新推出的高性能、低功耗16位定点DSP 芯片,器件上集成了多种先进的外设[2]。

电容式触摸键盘和LCD 构成的人机交互模块
控制整个系统的运行。

通过C MOS 图像传感器HV7131R 采集指纹图像,再经过DSP 提取特征信息与用户信息一起存放到Flash 存储器中,而SDRAM 则提供程序数据的暂时存放空间。

系统提供的UART 接口可以实现系统与其他设备的双向数据通信。

软件设计以嵌入式实时操作系统DSP /B I O S 为平台,使用其种类丰富的API 函数,采用C 语言和汇编语言混合编程的方式完成程序的编写。

指纹识别算法是对现有的先进算法进行改进,充分利用C55xx 专用汇编指令,使之在该系统平台上达到最优的图像处理效果。

2 硬件平台设计
系统硬件平台由以下几个部分组成:核心处理器
(C5501)、存储模块(SDRAM 和Flash)、指纹图像采集器、人机交互模块(键盘和LCD )、数据传输接口(UART 接口)和系统电源管理模块。

整个系统硬件结构如图1
所示。

图1 硬件平台设计图
首先,通过键盘控制发出指纹注册或识别的命令,
指纹传感器接到命令后并在有指纹按下的条件下开始采集指纹,然后通过主机接口以D MA 方式将指纹图像暂存到DSP 中,最后DSP 将经过预处理的指纹图像数据存到数据存储器SDRAM 中。

Flash 为操作系统程序、用户程序以及后续的指纹识别算法提供存储空间。

键盘除了用以发出注册或识别命令外,还可以进行系统复位等操作。

外扩的LCD 可以为键盘控制提供文字提示,并显示处理结果,提供良好的人机交互。

2.1 控制电路设计
系统按键采用Cypress 公司生产的可编程系统级SoC 芯片C Y8C21534设计的电容性触摸按键。

CY8C21534共有28个管脚,其中24个管脚除了可以配置为数字I/O 或模拟输入端口外,还可以通过其内
部模拟总线作为模拟多路输入[3]。

控制按键的软件设计是在PSoC Desi g ner5.0开发环境中进行的,硬件电路如图2所示。

配置16个管脚为触摸感应按键,用作系统控制;配置1个管脚为触摸感应导线,检测指纹采集器上有无手指;参考电压来自模拟调制器(ASE11)。

硬件设计中,反馈电阻R b 选择4.7k 电阻;外部调制电容C mod 选择0.01 F 电容;其他事项参考相关技术手册,这里不在赘述。

控制键盘用I 2
C 主机方式向C5501发送命令,DSP 进入软件中断选择执行的任务,LC
D 为每一步骤提供文字显示。

2.2 存储电路设计
T M S320VC5501的内部仅有32KB DARAM,需要通过外部存储器接口(E M I F )来扩展存储器。

本系统同时扩展了SDRAM 和F lash 。

其中,SDRAM 采用

图2 控制电路原理图
H yn i x 公司的HY57V 161610D ,用于用户程序与指纹数据的暂存。

针对图像算法在片内DARAM 上运行效率要远远高于外扩存储器的问题,将指纹采集器输出的图像大小设置为280&280,采集到的图像经过各行抽取变成大小为140&140图像,再把16位数据空间按高低位分开放置图像数据,整个图像数据就不到20KB ,并且指纹图像处理算法的程序也不超过8KB ,整个运行程序不超过30KB 。

图像处理过程中的程序和数据都可以在片内DARAM 上完成,缓解了E M I F 总线接口的压力并提高了系统的数据处理能力。

系统扩展F l a sh 主要有两个作用:一是用以存放程序代码,上电以后,F lash 中的程序代码被装入DSP 内部DARAM 中,系统开始正常工作;另一个作用是存放指纹处理程序处理完指纹后所获得的指纹特征以及一些相关的信息数据等。

本系统采用的Flash 芯片为SST39VF3201,存储容量为2M B 。

C5501仅有20根地址线,因此最多可以扩展到1M B 。

设计中将GPI O 7连接到Flash 的A22管脚,使用GPI O7扩展地址线来访问F lash 空间。

高地址空间存储指纹库,低地址空间存储系统程序,有效地利用了Flash 空间资源。

2.3 采集电路设计
系统采用M agnaChip Se m iconductor 公司的HV7131R 彩色C MOS 图像传感器采集指纹图像。

该款芯片具有很强的适应性,支持VGA 模式,有效像素为640&480,可通过编程设定成像窗口和帧传输速率。

芯片集成I 2
C 总线接口,10位A /
D 输出,但是通常仅用高8位传输像素点灰度值,最大帧速度为
30f/s ,最高工作频率为25MH z [4]。

C5501的8位主机接口H PI .HD [7∋0]配置为GPI O ,通过读写H GPI O DAT1寄存器来实现数据传输。

图像采集电路如图3
所示。

图3 图像采集电路图
图中,HV7131R 外接25MH z 时钟,A /D 转换输出的高8位DATA [9∋2]接H PI .HD [7∋0]作为数据输入,由于A /D 输出是10位,因此将低2位DATA [1∋0]悬空;帧同步信号(VSYNC )和行同步信号(H SYNC )作为信号源分别接到T I M 0和TI M 1管脚;通
过C5501片上集成的I 2
C 总线可以访问或修改传感器内部寄存器值,设置采集参数。

系统运行过程中,HV7131R 读取指纹数据,LC
D 接收写入数据。

所以,
LCD 采用并口方式连接,并行接口线的读写时序使用6800模式,同时与指纹采集器复用H PI .HD [7∋0]管脚。

这种连接方式不仅可以节约核心处理器片上管脚资源,而且编程紧凑,易于移植。

3 软件设计
软件设计是在嵌入式实时操作系统DSP /B I O S 下采用C 语言与汇编语言混合编程,兼顾二者的优点,使程序既有较好的可读性和可移植性,又具有较高的效率。

DSP /B I O S 是TI 公司DSP 集成开发工具CCS 中集成的嵌入式实时多任务操作系统,它提供友好的图形分配界面来进行DSP 的软、硬件控制,开发者可以动态地进行操作系统对象设计,也可以很直观地在图形分配界面中直接进行任务的分配,大大简化了程序
设计步骤[5]。

设计DSP /B I O S 实时嵌入式操作系统的多个任务时,首先根据系统功能分解任务,创建中断和任务线程,并划分各个线程的优先级;其次选择任务之间的通信和同步方式,设计软件流程,并编程实现。

3.1 任务分解
根据软件功能需求,将系统分为指纹注册、指纹匹配、密码注册、密码匹配和结果显示5个主要任务。

使用DSP /B I O S 配置工具进行创建线程:静态创建一个硬件中断,用户按照提示信息,通过键盘输入任务命令来实现对系统的控制;创建一个软件中断函数Key _i n terrupt()来响应键盘的硬件中断,触发各个功能任务;创建5个任务线程:TSK _fi n ger _enro l,l TSK _fi n ger _m atch ,TSK _password _enrol,l TSK _password _m atch 和TSK _disp lay 。

其中,键盘硬件中断优先级最高,软件中断优先级次之,指纹注册和匹配、密码注册和匹配的优先级相同,结果显示任务优先级介于软件中断和其他功能任务之间。

3.2 任务间的调度
对于新创建硬件中断、软件中断、任务等线程对象,使用DSP /B I O S 配置工具声明其f u nction 属性,并将线程对象绑定到相应功能函数上,采用消息邮箱和
信号量,实现线程间的通信和同步[6]。

因为硬件电路外部晶振频率为20MH z ,所以设置外部时钟频率为20MH z ,倍频系数为10,使得DSP 内部时钟达到200MH z 。

在DSP /B I O S 启动前调用初始化函数Syste m Init (),初始化用户程序软件流程如图4所示。

DSP 上电启动后,系统隐式运行B I O S_i n it()进行DSP /B I O S 初始化操作,然后调用函数Syste m I n it()实现用户初始化操作,分配系统资源,配置系统外设。

待Syste m I n it()函数返回后,系统隐式运行B I O S_start()使能全局中断,启动定时器,打开线程调度。

当产生键
盘硬件中断时,中断响应函数获取全局变量Key_val ue ,并触发软件中断;软件中断经过分析,通过信号量与4种功能任务进行通信和同步;4种功能任务运行的结果经过邮箱传递到结果显示任务,并在LCD 上显
示。

图4 系统软件流程图
4 指纹识别算法
指纹识别算法对系统性能起着决定性的作用,是整个系统的核心。

综合考虑系统硬件平台特征,选择先进算法加以优化,提高指纹图像匹配的准确性。

指纹识别主要包括图像预处理、特征提取和指纹匹配3部分。

预处理又可分为图像分割、归一化、图像增强、
二值化和细化等[1]。

系统采用了一种基于特征融合的分割算法,对指纹梯度、方向一致性进行了两次分割。

该算法的优点是能够精确地对不同类型的指纹图像进行分割,分割效果比较理想。

图像归一化是对指纹图像进行统一处理,将源图像的对比度和灰度调整到一个固定的级别上,为后续处理提供一个统一的基础。

因为后续方向图的计算、背景分离和频率提取都可以在互不重叠的小区域内单独进行,所以采用了分块规一化的方法:将图像分为14&14大小的子区域,再对子图像进行规一化,保证
了各个小区域内均值和方差的一致性。

该系统采用了基于非线性扩散滤波的指纹图像增强新算法。

该算法利用指纹图像的结构张量构造扩散
张量,使得滤波沿着指纹脊线方向扩散[7]。

该算法属迭代算法,比Gabo r 滤波算法能量聚集慢,可以有效地连接断裂脊线,而不会改变指纹脊线的连续性和奇异性。

经测试,该算法能提高细节点提取的性能,增强指纹匹配的效率。

图像二值化的关键是选取一个合适的阈值,经过实测,本系统选择阈值T o =180。

图像细化处理是为了减少需要处理的信息量,便于提取指纹特征。

算法中采用了最近邻点方式来抽取纹线骨架,既消除了短枝和断线等噪声,又能满足指纹细化的保持性、连接性、中轴性和快速性要求。

细化后的图像就会呈现出特征信息,研究表明,中断点和分支点这两类特征点就可以描述指纹的唯一性。

采用基于8连通域判断法的特征点提取方法,在细化后的二值图像上,对细化图像的任意点P 计算其交叉数和8连通纹线点数,然后遍历细化图像中的每一个像素点,就能得到特征点。

图像匹配采用的是点模式匹配算法,该方法能有效地解决匹配中特征点数
量和位置都不尽相同的问题[8]。

指纹识别的处理图像如图5所示。

可以看出,整个过程很好地保持了原图像的特性。

(a) 原始图像 (b) 图像增强
(c) 图像细化 (d) 特征提取
图5 指纹识别的处理图像
5 调试及结果
按照上述的硬件平台和软件流程,设计了基于DSP 和DSP /BI OS 的指纹识别系统。

通过对系统进行联机调试后发现,系统设计过程中需要注意以下几点:
(C5501系统供电包括1.26V 核电压和3.3V
I/O 电压,二者需分开供电。

核电压要比I /O 电压先加载,或至少要同时加载;
)指纹识别算法中,如果采用指针地址直接访问数据空间获取像素值,可以使得程序执行效率提高近1/3;
∗尽量采用C55xx 汇编指令和DSP 强大的流水线处理能力来提高程序的速度;用户程序的模块化,可以提高系统调试的效率,增加代码的可移植性。

系统原理样机平台如图6所示,以HV7131R 采集到的指纹图像作为测试样本,对同一枚指纹分别测试100次来评价FRR (错误拒绝率)与FAR (错误接受率)。

结果显示:FRR 为3.5%,FAR 为0%,匹配结果
令人满意。

图6 系统原理样机图
6 结束语
基于TM S320VC5501和C MOS 图像传感器
HV7131R 设计的嵌入式指纹识别系统采用的是单DSP 处理器结构,与传统的!DSP+FPGA ∀结构相比,具有功耗低、成本小、设计结构灵活等优点;应用DSP /B I O S 嵌入式实时操作系统管理用户程序,提高了系统运行的可靠性和实时性,满足设计要求。

参考文献:
[1] 韦艳波,张海南,上官卫华.基于SP I 协议的新型嵌入式指纹采集系统设计[J].测控技术,2008,27(12).
[2] TM S320VC5501F i xed P o i nt D i g ita l Signa l P ro cessor D ata
M anua l[Z].T ex as Instru m ents ,2008.
[3] PSoC
m i xed si gnal array fi nal data sheet[Z ].Cypress Se m iconductor Co rp ,2007.[4] C M OS I m age Sensor HV 7131R (V e rsion1.7)[Z ].M agna Chip Se m iconduc t o r L td ,2004.[5] 美国德州仪器.T I D SP /B I O S 用户手册与驱动开发[M ].
王军宁,等译.北京:清华大学出版社,2007.
[6] 刘鑫茂,胡磊力,蔡猛.D SP /B I OS 实时操作系统在控制系
统中的应用研究[J].测控技术,2009,28(21).
[7] 程建刚,田捷,何余良,等.基于非线性扩散滤波的指纹增强算法[J].自动化学报,2004,30(6).
[8] 曾英,王国才,李涛.一种新的点模式指纹匹配算法的研
究与实现[J].计算机测量与控制,2007,15(7).
+
(上接第15页
)
图6 直升机飞行时的平显视图
4 结束语
本系统运用虚拟现实技术,通过三维建模软件M u lti g en Creator 和仿真开发软件V ega 对直升机座舱仪表显示及视景进行实时仿真,实现了对各种飞行姿态的实时仿真模拟、座舱仪表对当前飞行状态的实时显示两项功能,具有良好的逼真性和沉浸感。

该系统应用于实际直升机控制系统的半实物仿真中,取得了很好的效果。

参考文献:
[1] 田野,童大鹏.GL St udio 与V egaP ri m e 在船舶机舱虚拟仿
真系统中的应用[J].船海工程,2008,8(4).[2] 龚卓蓉.可选模块的使用与开发[M ].北京:国防工业出版社,2003.
[3] 王乘,周均清,李利军.C reato r 可视化仿真建模技术[M ].
武汉:华中科技大学出版社,2005.
[4] 吴晓君,王昌金.基于C rea t o r /V ega 的战场飞行视景系统
的实时仿真[J].系统仿真学报,2005,9(9).[5] V o ra J ,N a ir S ,G ra m opadhy A K,et a.l U si ng v irtual rea li ty
techno logy f o r a i rcraft v i sua l inspection traini ng :presence and co m parison st udies[J].A pp lied Ergono m ics ,2002,33(6):559-570.
[6] 王乘,李利军,周均清,等.V ega 实时三维视景仿真技术[M ].武汉:华中科技大学出版社,2005.
+。

相关文档
最新文档