精品基于DSP的指纹生物特征识别系统的设计毕业论文说明书Word格式文档下载.docx
《精品基于DSP的指纹生物特征识别系统的设计毕业论文说明书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《精品基于DSP的指纹生物特征识别系统的设计毕业论文说明书Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
对系统的组成原理、指纹采集和指纹图像处理力法进行了分析;
结合FPS200和TMS320VC5402芯片的特性,对系统硬件核心和图像采集电路做了详细介绍,并给出系统硬件设计方案、软件设计流程;
实验结果表明.系统指纹采集效率高,识别速度快,识别结果准确可靠;
该系统性能稳定.实用性强,应用范围广泛。
关键词:
TMS320VC5402;
DSP;
指纹识别;
FPS200
1、任务提出与方案论证
1.1任务提出
指纹作为人体的重要特征,具有长期不变性和唯一性已经成为生物识别领域的重要手段。
通过指纹特征来鉴别人的身份的技术正在得到越来越广泛的应用。
随着指纹检测技术和指纹识别算法的不断改进,指纹识别技术还将在越来越多的部门得到更广泛的应用。
在指纹检测与处理过程中有一个非常重要的问题,就是依赖计算机来处理指纹特征还是依赖于嵌入式平台。
应该来说计算机速度快,用来进行指纹识别当然不会存在速度问题,但是指纹识别技术正进入一些离线型设备中,如指纹门禁系统含指纹信息的身份证等由于多方面的原因,这些设备不适合利用PC机进行在线处理,这样就需要采用嵌入式系统使用嵌入式平台进行指纹检测与识别,实际上包含两个问题:
(1)研制能进行指纹处理的开发板它应该成本低,运行速度快,使用方便和独立运行等;
(2)研究一整套能使用在该开发板的指纹识别算法传统算法复杂并且运算量比较大,所以需要一整套算法简单运算速度快的基于嵌入式应用的指纹识别算法。
1.2方案论证
本文就是说明基于嵌入式应用的指纹开发板,它具有指纹检测与处理功能,能够离线使用美国Veridicom公司开发了用于指纹检测与处理的开发板MatchBoard,该开发板使用NECμProc82282364位ASIC单片机系统扩展了1M的SDRAM存储器和8M的Flash存储器,日本BMF公司也推出了一款类似的开发板。
这些开发板的共同的特点就是处理器主频都非常高,都外扩了大量的程序存储器和数据存储器,成本都非常高难于进入嵌入式应用设备中。
本文所述的是基于研制一款低成本的用于指纹检测与处理的模块板,在该板上使用TI公司低成本的DSP处理器VC5402板上分别扩展了512kB的程序存储器和数据存储器,开发板提供了一个异步串口与计算机进行通信。
板上提供了2个JTAG接口,一个为10芯的JTAG接口用于对CPLD芯片进行编程,另一个为14芯的JTAG接口用于对DSP芯片进行调试该开发板外接+5V的电压用户可以直接使用也可以进行二次开发。
2、总体设计
2.1指纹识别系统原理
指纹识别系统的组成原理。
如图1-1所示。
图中的学习模块负责采集用户指纹数据,对指纹图像进行预处理,提取这些指纹的特征,作为将来的比对模板存人数据库。
而识别模块则负责采集和处理指纹图像,在提取特征后与数据库中的指纹模板进行比对,然后判断是否匹配.得出结论。
整个系统的核心就是图像处理、特征提取以及指纹比对。
图2-1
2.2指纹采集与指纹图像处理方法
目前指纹图像的获取主要有四种方法:
一种是光学采集器;
压电式传感器;
一种是用半导体传感器;
一种是超声波指纹扫描仪。
光学采集器采集指纹是通过把手指沾上油墨后按在白纸上,然后用摄像机把图像转换为电信号。
光学采集受外界干扰小、采集精度较高,但是数据量较大,因此处理时问较长。
而对于半导体传感器来说,手指的温度、湿度对其测量结果有影响,但是数据量不大,处理比较方便。
随着半导体技术的发展,半导体传感器的成本低、体积小、方便集成等优点逐步体现,它已逐步代替光学采集器。
取像设备
光学取像设备
半导体指纹传感器
超声波扫描
体积
大
小,比手指略大
中
耐用性
非常耐用
好
一般
成像能力
对汗多脏的手指成像模糊
手指上有汗渍污垢不能成像
非常好
功耗
高
低
成本
很高
指纹鉴定过程的第一个阶段是指纹图像的采集阶段,也就是指纹模板的录A阶段。
为了初步确定图像预处理方法,我们必须首先了解指纹传感器获得的图像的尺寸和质量。
根据不同的指纹传感器,我们设计不同的方案进行图像采集,并将从各个图中提出特征点储存到数据库中,来产生“活模板”,为后面的指纹鉴定做准备。
指纹图像处理是整个指纹识别过程的核心。
常见的指纹图像处理包括滤波增强、二值化、细化、提取特征点四个步骤。
在采集指纹图像的过程中,受各种因素的影响,采集的图像会不同程度的受到各种噪声的干扰,从而影响了采集图像的质量。
所以实际的指纹图像:
第一步通过一个滤波增强来改善图像的质量,恢复脊线原来的结构。
特征提取算法的性能和其它指纹识别技术的好坏取决于输入指纹图像质量的好坏。
本系统采用一种用Gabor滤波与方向滤波结合对图像进行增强的方法该方法结合Gabor滤波器善下分离粘连脊线和方向滤波器善于连接断裂接线的特点,能够对低质量的指纹图像进行有效的增强。
完成图像增强后.
第二步是对图像进行二值化处理。
二值化是指把灰度指纹图像根据所选取的值化为0~1取值的二值目像。
第三步,对纹路进行细化,细化能够减少大量的多余信息.细化后的指纹图像中的每条纹线都足用单像素来表示点线,更加突出了指纹特征。
第四步则是纹路特征点的提取,在特征提取阶段,选择脊线端点和分歧点作为特征点,记录每-特征点的类别、位置和方向信息,从而得到特征点(特征模板)。
经过以上几个步骤,系统便完成对指纹图像的处理过程,得到最终模板。
依据上述指纹识别预处理算法,通过CCS2.2的模拟功能,实现了指纹识别预处理的DSP处理,达到了DSP处理指纹图像的应用目的。
图2-2
3、详细设计
3.1硬件设计
系统硬件电路主要包括:
DSP芯片,TMS320VC5402传感器FPS200、FLASH、SROM以及显示框图如图3-1所示
图3-1
系统的核心处理单元是TI公司推出的高性能数字信号处理器TMS20VC5402片,具有精度高、灵活性太、可靠性高、时分复用等特点。
其采用程序空间与数据空间完全独立的哈佛总线结构.指令的执行采用流水线结构,内部有一到多个处理内核,带有片上硬件乘法器,指令执行速度最快为几十纳秒,处理能力为100MIPS。
片内有8条总线、片上存储器和片上外围电路等硬件,并且有高度专业化的指令系统.MSC5402直接数据寻址空间为64kB,程序空间寻址能力可达1MB,但是通过程序空间来扩展数据空间将影响系统处理速度。
但是MTS320VC5402在实际使用过程中,程序和数据的一次连续处理一般都不会超过64KB,所以把核心的程序常驻TMS320VC5402内16kB空间,一般控制在l~2kB,再留7~8kB的空间调用所需的程序,程序在片内的执行速度要比片外的快许多,通过来回到程序,就能实现程序的全速运行。
数据空间可以通过CPLD片选来进行扩展。
由于DSP外部最多支持扩展32k数据空间.但是我们实际扩展了512k的SRAM,因此SRAM的A17地址线由DSP通过CPLD中的逻辑电路来控制,由此来选择使用SRAM的高地址段256k存储空间或者地址段256k存储空间,这样既符合DSP的外扩空间要求,又使系统增加了更多的数据存储空间。
CPI是由一种被IEEE认定的标准硬件描述语言VHDL(VHDL主要用于描述数字系统的结构、行为、功能和接口)实现的。
在系统终端我们选用LCM液晶显示模块,直接显示需要的指纹图像和数据结果。
要显示的图像或数据先由DSP存人缓冲器,再由LCM读取,这样可以避免了由于DSP和LCM读写速度不匹配而发生错误。
由于该模块板必须具有完全独立运行指纹图像检测、特征提取、特征提取和特征模板存储等程序,综合各个方面因素因此采用了TI公司的DSP处理器TMS320VC5402。
该芯片的主要特征有最高频率100MHz,性价比极高,它含4k16bits片内ROM16k16bits、片内DARAM6个DMA通道、2个McBSP、2个Timer,外部程序空间可扩展到1M16bits,可工作在3种低功耗方式(IDLE1IDLE2IDLE3)。
本设计中为该处理器分别扩展了512k16bits的Flash和SRAM各1片,使用Altera公司的CPLD芯片MAX7128为Flash和SRAM等产生部分控制信号,为DSP扩展一个与PC机通信的异步串口指纹检测芯片采用Veridicom公司的FPS200指纹检测芯片整个模块板的系统。
图像采集电路是整个系统中极其重要的部分,高质量指纹图像的采集大大的降低了在鉴定指纹时的误识率和拒识率,提高整个系统的性能。
系统采用的是美国Veridicom公司的FPS200固态指纹感器作为图像采集电路的核心器件。
芯片适用于更复杂的指纹和更恶劣的气候条件。
它采用标准COMS工艺制造,获取图像为256×
300像素,分辨率为5。
OPJ。
提供二三种接口方式:
标准8位微处理器总线、集成高速USB接口、串行外设接口SPI。
图像传输速度分别为30帧s、13帧s、10赖s.
FPS200芯片由256列和300行电容阵列组成,芯片内设计有两个采样保持电路用于指纹图像的采集。
通过测量每个传指感单元在每次充电后的电压值和放电后的电压值的差来获得每路。
系个传感单元的电容值。
每次捕捉每行图像后,在该内的每个传感单元内就有待数字化的电容值。
因此通过改变放电电流大小和放电时间就可以改变FPS200的灵敏度。
整个图像采集流程网如网3-2所示。
图3-2
3.1.1DSP处理器与FPS200指纹检测芯片相连
指纹检测芯片采用了Veridicom公司的电容式指纹传感器FPS200,该芯片提供了3种可供选择的接口分别为USBSPI和并行接口使用了SPI接口与DSP的McBSP1互联DSP处理器的McBSP接口为高速全双工多通道缓存串行
接口每个McBSP接口包含6个管脚引线分别为BCLKX(传送参考时钟)BDX(传送数据)BFSX(传送帧同步信号)BCLKR(接收参考时钟)BDR(接收数据)和BFSR(接收帧同步信号)在与FPS200的SPI接口互联时DSP处理器采用主方式FPS的SPI采用从方式连接如图3-3所示
图3-3
3.1.2DSP存储空间扩展
由于DSP本身所带的数据存储器只有16kB的DARAM程序存储器,也只有4kB的ROM。
我们所采集的一幅原始指纹图像就有75kB,再加上指纹处理所需的数据空间以及运行和存储程序所需的程序空间,芯片上所带空间无法符合使用要求,必须扩展数据存储器和程序存储器。
在该模块板上扩展了512k16bits的Flash芯片用于存储指纹处理程序和指纹特征,模板此外还扩展了512k16bits的SRAM芯片用于运行指纹处理程序提供保存采集到的指纹图像以及程序运行过程中所需的临时数据所需空间。
Flash与SRAM的D[0..1]以及A[0..14]总线直接与DSP的Data[0..15]以及Add[0..14]相连,另外的WEOECE和A[15..17]等信号线的控制信号将通过CPLD产生相应的译码信号,CPLD所产生的译码逻辑将在后面加以说明。
由于DSP的数据寻址空间只有6416bits,在对数据空间操作时DSP的地址线A16-A19将处理高阻状态,因此无法直接对512k16bits的数据空间进行操作将128k16bits的SRAM划分给数据空间,将剩下的384k16bits的SRAM和全部512k16bits的Flash划分给程序存储空间。
DSP在对数据空间操作时当标志位OVLY为1时,系统把低32kB的寻址空间映射到片内DARAM和ROM中,外部扩展的数据空间若地址在0000h~7FFFh范围内的则无法操作,再把外扩的128k16bits的数据空间分成4页分时影射到8000h~ffffh的地址空间中,即高32kB的数据空间如图3-4所示。
最终数据空间的寻址范围为0000h~ffffh,其中高32k的空间可通过页面切换共4个页面总共有144kB的数据,空间外部程序间共有896kB,寻址空间为00000h~dffffh。
图3-4
3.1.3扩展串行通信口
DSP所提供的McBSP的接口为高速全双工的串口,与PC机所提供的异步串口操作方式不同,无法直接相连,我们通过一个CH375来实现操作方式的转换。
该芯片已包含了2个RS322电平转换器,这样就不再需要MAX7128进行电平转换,利用DSP的McBSP0端口与MAX7128互联DSP的发送时钟信号(BCLKX0)作为MAX7128的串行时钟输入,发送帧同步脉冲信号(BFSX0)作为MAX3111的片选信号(CS)。
BDX0与DIN连接作为发送数据线,BDR0与DOUT连接作为接收数据线,MAX7128的TX与T1IN连接,RX与R1OUT连接以便利用其片内的转换器实现UART到RS-232电平的转换,MAX7128的中断信号(IRQ)与DSP的外部中断相连连线如图3-6所示
图3-5
3.1.4其他电路设计
除以上功能模块外,再就如下几点作简要说明:
整个模块板采用+5V,单一电源供电经电源调整模块TPS767D318输出+3.3V与1.8V电压。
模块板中所有芯片均采用3.3V电压。
DSP的核心电压采用1.8V,板中通过IO口HD0和HD1扩展了两个功能按钮,两个均采用低电平触发方式,两个按钮连线通过或门功能产生一个中断信号。
连接DSP的INT2管脚使用中断方法对该两个按钮进行编程。
模块板中提供了一个10芯JTAG接口用于对CPLD芯片进行编程,板中还提供了一个14芯的JTAG接口用以对DSP进行调试。
模块板中使用3组调线分别连到DSP的CLKMD1CLKMD2和CLKMD3管脚用于设置DSP的倍频的倍数。
其电路图分别如下所示
电源电路:
晶振电路:
JATG电路:
TMS320VC5402:
3.2.软件设计
识别过程及软件实现;
逻辑功能实现;
CPLD译码电路功能实现
我们通过MAX7128CPLD芯片实现对存储器芯片和键盘按钮进行控制,键盘按键按钮信号通过一个与运算产生中断信号,Flash及SRAM的读信号通过DSP的MSTRB与RW信号进行或运算得到Flash及SRAM的写信号,通过DSP的RW信号的非运算后再与MSTRB进行或运算得到在选中程序存储器时片选信号,Flash和SRAM芯片的片选信号由A19产生。
Flash以及SRAM的地址线A[15..17]直接由DSP的地址线Addr[15..17]控制,但是要禁止用户访问程序空间的高128kB的空间,即发e0000h-fffffh的地址空间。
在用户选中数据存储空间时在用户访问高32kB的数据空间时,通过分时换页方式提供给用户,这时系统通过DSP中HD5以及HD6产生换页信号,通过Altera公司的QuartusII系统利用CPLD的JTAG接口对MAX7128进行编程以下是采用AHDL硬件描述语言对CPLD逻辑功能的说明
begin
%产生键盘中断信号%
DSP_INT2=KEY1andKEY2;
%产生Flash和SRAM的读信号%
FLASH_SRAM_OE=
DSP_MSTRBor(notDSP_RW);
%产生Flash和SRAM的写信号%
FLASH_SRAM_WE=
DSP_MSTRBorDSP_RW;
if(notDSP_DS)andDSP_A15then
%产生SRAM的片选信号%
SRAM_CE=DSP_DS;
%产生SRAM的选页信号%
SRAM_A15=DSP_HD5;
SRAM_A16=DSP_HD6;
SRAM_A17=notDSP_DS;
SRAM_A18=notDSP_DS;
endif;
ifnotDSP_PSthen
SRAM_CE=notDSP_A19;
%产生FLASH的片选信号%
FLASH_CE=DSP_A19;
%产生Flash的地址信号%
FLASH_A15=DSP_A15;
FLASH_A16=DSP_A16;
FLASH_A17=DSP_A17;
FLASH_A18=DSP_A18;
%产生SRAM的地址信号%
SRAM_A15=DSP_A15;
SRAM_A16=DSP_A16;
SRAM_A17=DSP_A17;
SRAM_A18=DSP_A18;
%禁止访问SRAM的高128KB的地址空间%
ifDSP_A17andDSP_A18and
(notDSP_PS)then
SRAM_CE=notDSP_PS;
end;
为兼容不同的应用系统VC5402共提供了5种不同的引导方法
(1)主机接口HPI自举引导方式需执行的程序代码,通过HPI由外部主处理器加载至片内存储器中
(2)8位并行EEPROM自举引导方式
(3)8位或16位并行自举引导方式自举引导程序通过外部并行接口总线读取存放于数据存储空间中的,自举表自举表的内容包括欲加载的各段代码,各代码段长度,各代码段存放的目标地址程序入口地址以及其他配置信息.
(4)8位或16位标准串行自举引导方式
(5)8位或16位IO口自举引导方式我们采用了第3种引导方式,即16位并行自举引导模块中将DSP设置为微控制器工作方式(即将MPMC引脚置高).这样DSP复位后程序就从外部Flash的FF80H地址开始运行在FF80H处有一条跳转到Init程序的指令,这样便开始运行用户自己编写的Init程序.我们所编写Init程序主要完成程序搬运和模块板初始化过程程序搬运过程就是将存放在Flash中.用户程序搬运到利用SRAM所扩展的程序空间初始化过程就是完成对整个模块板的硬件初始化,最后在初始化结束后从用户程序的起始处开始执行,等待用户的中断操作或指纹检测中断或串口通信中断或小键盘中断。
系统主要程序流程图如图3-6所示。
系统上电时,TMS320Vc5402通过总线操作对FPS200进行设置,然后进入指纹图像采集阶段。
在该阶段TMS320VC5402处于空闲状态,CPLD占用数据总线,将数据直接存储到图像RAM中。
采集完一帧指纹图像后由CPLD通知DSP进入数据处理阶段。
在该阶段TMS320VC5402先将图像RAM中的数据分块户ROM中,然后对图像进行预处理.特征点提取等运算。
最后通过USB将结果输出给上位机。
上位机调出指纹数据库,并将提取的结果与采集的指纹数据进行比对,判断采集的指纹是否与库中指纹匹配,最后给出结论。
图3-6
总结与致谢
本次设计DSP课程设计实验采用FPS200指纹检测芯片采集指纹图像,使用DSPTMS320VC5402高速芯片处理指纹的数字图像,提取指纹特征进行指纹特征匹配等工作。
该模块由于存储空间过小需要进行扩展,因此进行了扩SRAM芯片扩展,通过CPLD芯片产生存储器的控制信号,开发板上还通过CH375扩展了一个USB接口与计算机进行通信,通过CPLD的USB接口实现对CPLD的进行编程,还可通过DSP的该接口对DSP进行调试,使用USB接口与PC机进行通信速度较JTAG接口很快,可以较好的实现串口通信,但同时存在一些不足还需要进一步的改进。
通过本次课程设计,使我加深了对DSP芯片的的掌握和理解,巩固了我在DSP课程中所学的基本理论知识和实验技能,使我对有了更深入的了解,进一步激发了我对所学专业学习的兴趣;
提高了我的在硬件功能方面设计的能力。
在设计的过程和设计说明书的撰写过程中,高焕兵老师给予了我热心的帮助和大力的支持,给我提了诸多的宝贵意见,拓宽了我的思路。
在此我向老师致以崇高的敬意和衷心的感谢!
参考文献
[1]汪安民.DSP嵌入式系统开发典型案例[M].北京:
人民邮电出版社,2007.
[2]张卫宁.TMS320C2000系列DSPs原理与应用[M].北京:
国防工业出版社,2004.
[3]MarkI.Montrose著.刘元安等译.电磁兼容和印刷电路板-理论、设计和布线[M].北京:
人民邮电出版社[M],2002.
[4]关华等.TechniquesandApplicationsofDSPChips,济南:
济南出版社,2006.
[5]李方慧,王飞,何佩琨.TMS320C6000系列DSPs原理与应用[M].北京:
电子工业出版社.
[6]李哲英.DSP基础理论与应用技术[M].北京:
北京航空航天大学出版社.
[7]关华.DSP原理与应用实验指导书.山东建筑大学.
[8]关华.DigitalSpeechProcessing[M].济南:
黄河出版社.
[9]毛玉蓉,翁惠辉.一种基于单片微机的步进电机控制系统[J].电气传动,2003.
[10]谢宝昌,电机的DSP控制技术及其应用.[M].北京:
北京航空航天大学出版社,2005.
附录