基于FPGA实现指纹识别系统及指纹采集接口

来源 :电子产品世界 | 被引量 : 0次 | 上传用户:yiteng89
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文以ASIC芯片为应用背景,提出了一种基于FPGA的指纹识别系统,及其采集接口的设计与实现方案,采用滑动式指纹传感器完成高质量的指纹采集工作。
  关键词:FPGA;指纹识别;滑动式指纹传感器
  
  引言
  
  早在十九世纪初科学家就发现了指纹的两个重要特征:唯一性和稳定性,这个研究成果使得指纹在犯罪鉴别中得以正式应用。20世纪60年代,随着计算机性能的提高和应用的增加,人们开始使用计算机来处理指纹,自动指纹识别系统(AFIS)在法律实施方面的研究与应用由此展开。而近几年,随着电子商务的发展和消费类电子的普及,越来越多的领域需要指纹识别系统。目前,基于DSP、ARM的独立式指纹识别系统已经成功应用于考勤、门禁、安检等领域。
  本文选用具有高集成度、低功耗、短开发周期等优点的FPGA(现场可编程门阵列)来设计实现自动指纹识别系统,下文将重点介绍系统软硬件结构以及指纹采集接口的设计方案。
  
  


  指纹识别系统的设计实现
  
  系统软件结构设计
  本文设计的自动指纹识别系统的软件算法采用BST FingerAPl 1.0版本,包括1:1比对(即验证)模式和l:N比对(即识别)模式,主要实现指纹的检测与采集、指纹图像的增强、特征点的提取与匹配几大功能,具体结构见图1。
  ·指纹检测与采集
  首先将指纹区与背景区分离。为了方便判别,在判别之前需要对图像进行平滑处理和边缘提取。将图像分为8×8的块,并计算每块内各点灰度值的标准差,若该值大于某一阈值(本算法中设置为8,共为256),则该块的所有点都为指纹数据,否则为背景数据。接着判断指纹数据块中指纹区面积占整个图像区域面积的比例,若该值大于给定的阈值,则进行指纹图像采集,否则重新检测并采样。
  ·指纹图像增强
  首先计算直角坐标系下8×8块指纹图像的方向,然后根据相邻图像块的方向,过滤掉脊线方向发生变化过大的图像块,并按脊线平滑变化的规律恢复脊线原有方向,再对图像数据进行Gabor滤波。
  ·指纹特征点提取
  本算法的特征点选择脊线的端点和交叉点。首先记录每个特征点的信息,包括类型、位置(直角坐标系)、方向以及在特征点集中的序号,然后去除掉由于噪声引起的大量伪特征点。此方法采用了一种基于脊线跟踪的直接从灰度级指纹图像提取细节特征点的新颖算法,这种算法不必经过二值化和细化过程,减少了程序运行时间。
  ·指纹特征点数据库
  


  将成功提取到的指纹图像特征点信息保存到数据库中,以供指纹识别认证时把这些数据库里的指纹信息与认证的指纹特征点信息进行对比,查找是否有与之匹配的指纹信息。
  ·Hough变换特征点匹配
  在指纹比对时,在直角坐标系中,通过基于特征点的Hough变换匹配算法识别出指纹的几何形状,使图像匹配可以不受指纹摆放的角度和位置平移的影响。接着计算现场指纹与数据库中指纹的相似度。若匹配的特征点占模板中所有特征点的30%,则判定两枚指纹匹配,否则进入极坐标的比较。
  ·极坐标变换,特征点匹配
  极坐标变化用以减小直角坐标系中的匹配误差。若在两个坐标系中所有匹配的特征点占模板中所有特征点的30%,则仍判定两枚指纹匹配,否则判为不匹配。
  
  系统硬件结构设计
  整个电路系统由指纹传感器、FPGA、PROM、SRAM和Flash构成,如图2所示。其中,SRAM的地址线和数据线分别与Flash的地址线和数据线共用。
  ·指纹传感器
  主要负责指纹检测与采集,是整个系统的首要任务。本系统选用富士通公司的MBF300滑动式电容指纹采集传感器。这款指纹传感器采用标准CMOS技术,含有8位A/D变换器,在2.8V-5V的宽电压范围内工作,能自动检测到是否有指纹到达传感器,并实现在线采集。与以往采用的面积式指纹传感器相比,它的最大优点是在保证指纹图像高分辨率(500dpi)的同时大大减小了传感器的尺寸(13.3×3.6mm2)。
  ·FPGA
  它是系统的核心控制器件。按照其功能,FPGA内部可分为指令控制模块、指纹传感器控制模块、Flash控制模块、SRAM控制模块和算法模块,见图3。本系统选用Xilinx公司SpartanIlI系列的XC3S400型FPGA芯片,封装形式为PQ208。这款芯片采用90nm工艺,最大容量40万门,工作频率高达200MHz,足以完成系统需要。
  ·PROM
  PROM主要负责向FPGA加载程序,因为FPGA内部的SRAM掉电时不能保存自身配置。本系统选用Xilinx公司用于SpartanlII系列的专用PROM芯片XCF02S。
  ·SRAM
  SRAM用于存储部分算法程序运行时的临时数据,包括图像数据、向量、特征值等,这是由于FPGA内部RAM容量不能满足程序运行需要而扩展的。本系统选用Cypress公司的芯片CY7C1021V33—12,其大小为64k×16bits。
  ·Flash
  Flash是一个指纹数据库,用来存储指纹特征点数据。它的容量决定了该指纹识别系统能够储存的指纹数据的数量。本系统选用A M D公司的芯片AM29LVl60,其大小为1M×16bits,能存储约256K枚指纹。
  
  指纹采集接口的设计与实现
  
  指纹传感器MBF300
  MBF300为富士通公司新推出的滑动式指纹传感器,它支持3种通信接口:8位微处理器总线接口、集成的USB全速接口和集成SPI接口。
  本文选用SPI接口,在选择了SPI模式后,MBF30O的其它两种模式将自动禁止。XC3$400通过读写MBF300内部的寄存器实现对它的控制,以完成指纹检测与采集、自动A/D转换、数据传输等任务。
  
  指纹采集接口硬件设计
  本系统中SPI接口主设备为FPGA芯片XC3S400,从设备为指纹传感器MBF200。由于FPGA没有特定管脚的要求,本文任意选用XC3S400的4个I/O口137—140,分别与指纹传感器MBF300的相应管脚连接,见图4所示。
  
  指纹采集接口软件设计
  接口时钟采用传感器内部的12MHz时钟,整个采集指纹图像流程依次为初始化XC3S400和MBF300、调整MBF300寄存器参数、读取指纹数据、存储指纹数据。
  ·初始化XC3S400和MBF300
  系统上电后首先对FPGA器件XC3S400进行初始化,即从PROM中读取配置数据(指纹识别算法和控制指令等)到内部的SRAM中,接 着初始化指纹传感器MBF300,其中部分VHDL源程序如下:
  ENTITY ini_mbf300 IS
  PORT(……
  PGC:INOUT STD_LOGIC_VECTOR(7 DOWNTO 0):
  DTR:INOUT STD_LOGIC_VECTOR(7DOWNT00);
  DCR:INOUT STD_LOGIC_VECTOR (7DOWNTO 0);
  THR:INOUT STD_LOGIC VECTORf7DOWNTO 0);
  CTRLB:INOUT STD_LOGIC VECTOR (7DOWNTO 0):
  ISR:INOUT STD_LOGIC_VECTOR(7DOWNTO 0):
  ICR:INOUT STD_LOGIC_VECTOR(7DOWNTO 0):
  ……);--定义需要初始化的MBF300寄存器;
  END ini_mbf300;
  ARCHITECTURE ini mbf300 OFini_mbf300 IS
  BEGIN
  PGC<=“00000110”;--初始设置图像增益为1.5;
  DTR<=“00111111”:
  DCR<=“00000001”:
  THR<=“00101100”;
  CTRLB<=“00000001”;--使能阵列,AD及时钟;
  ISR<=“00000011”; --清空中断;
  ICR<=“01011001”;--使能自动检测;…
  END lm_mbt300;……
  ·调整MBF300寄存器参数
  调整MBF300参数,也就是调整PGC、DTR、DCR三个寄存器的值来调整放电时间、放电电流速率和图像的放大增益,直到获得最佳质量的图像。经多次实验表明,当DTR=0x15,DCR--0x20,PC~=0x01时,指纹图像最为清晰。
  


  ·采集指纹图像数据
  XC3S400按照MBF300的SPI时序(见图5)要求,在MOSI信号线上发送一系列读写MBF300寄存器的指令,并由MBF300在MISO信号线上发送A/D转换后的指纹数据,直到一幅完整的256×32的指纹图像传输完毕。详细的工作流程见图5。
  ·存储指纹图像数据
  采集到的原始指纹图像保存到片外SRAM中,地址空间为0000 0000 0000 0000~FFFFFFFFFFFF FFFF。
  
  实验调试与结果
  所有模块在ISE7.1软件平台上用VHDL编程,并且尽量地应用软件工具提供的IP资源Synplify和XST进行逻辑综合和实现,并比较两种工具综合的结果,可以看出哪种综合实现,占用FPGA资源较少。综合实现之后,用Modelsim工具进行寄存器级和门级仿真。仿真完成之后,把功能代码通过JTAG数据口下载到对FPGA芯片配置的PROM,最后编写测试向量在FPGA芯片内测试,通过逻辑分析仪对中间数据和结果数据进行分析和测试。图6为MBF3OO寄存器设置为DTR=0x15,DCR=0x20,PGC=Ox01时采集到的指纹数据通过Matlab工具数据转化得到的指纹图像,它足以满足后续的指纹特征点提取、比对等要求。
  
  结语
  
  本文介绍了一个完整的、独立运行的基于FPGA的嵌入式指纹识别系统及其指纹采集接口的设计与实现方案。该系统能实现快速的指纹登录以及指纹比对,指纹比对所需的时间在0.5s以内,完全能满足用户的要求。
  参考文献:
  1.Huang Hong,Li Jian-wei,Lj Dong-liang,et aI,The design and realization of automatic fingerprintidentification system based On DSP.Electronic Design&Application,2005
  2.Zhou Ning-jie,Fu Yu~huo,Zhou Yu,HardwareDesign of a Fingerprint Recognition Platform Based 0nDSP,Computer Emulation,2005
  3.Huang Lin-bo,Du Kun-mei,Xie Jian-yang,etaI,Study and development of fingerprint rccognitionalgorithm based 0n ARM,Journal of Harbin University of Commerce(Natural Sciences Edition),2005
  4.Shen Xiao-feng,Li Xiao-bei,A portablefingerprint identification stem,Automatization tech—nology and application,2005
  5.MBF300 Solid State Fingerprint Sweep Sensor.Data Sheet[z]2002
  6.Spadan FPGA Family:Complete Data Sheet[z],2005
其他文献
摘要:本文介绍了TD-SCDMA信令测试仪中基于PowerPC网络处理器的ATM数据采集卡的实现方案,主要分析了ATM数据采集软件的各个模块,详细说明了数据采集卡的数据处理流程。实际使用表明,本文提出的数据采集卡已经成功的对ATM不同适配层的信元进行了正确的接收重组和组装发送,具有很大的实用价值。  关键词:TD-SCDMA;网络测试仪;ATM数据采集卡;数据处理流程      引 言    我国
期刊
为了扩展Power Architecture技术在嵌入式系统市场中的使用,飞思卡尔半导体日前宣布,通过与专业公司IPextreme签署半导体知识产权(IP)协议,许可其e200内核产品的使用。这一合作意义在于,片上系统器件(soC)和特定应用的半导体产品(ASSP)的设计人员将可以在其产品中使用飞思卡尔的e200内核系列产品。  对此,In-Stat的《微处理器报告》高级分析师Tom R.Hait
期刊
随着基于Linux的嵌入式系统得到日益广泛的应用,人们不禁要问,类似Linux这样的免费开放源代码操作系统的真正成本到底是多少?其实,最主要的成本是在劳动力上。要将Linux内核移植到定制嵌入式处理系统,您必须对产品所需要的内核功能、这些功能对其他内核服务的依赖程度以及您的工程团队的技能都有深入的了解。更重要的是,要了解可以借助哪些新技术来使这些任务自动化,以达到节省成本的目标。      开放源
期刊
摘要:本文介绍了一种精确设计EMI滤波器的方法。为了得到合适的滤波器插入损耗,滤波器设计中不但要考虑电路的干扰特性还要考虑电路的输入阻抗特性。  关键词:EMI滤波器;插入损耗;干扰特性;阻抗特性  随着电子技术的发展,电磁兼容性问题成为电路设计工程师极为关注和棘手的问题。根据多年的工程经验,大家普遍认为电磁兼容性标准中最重要的也是最难解决的两个项目就是传导发射和辐射发射。为了满足传导发射限制的要
期刊
摘要:本文采用LatticeXP系列FPGA结合IP解决DDR RAM的读写控制。并且在硬件上面进行了实际测试。  关键词:嵌入式系统;DDRRAM;FPGA;IP;LattcieXP    前言    随着高速处理器的不断发展,嵌入式系统应用的领域越来越广泛,数字信号处理的规模也越来越大,系统中RAM规模不断增加,比如视频监控、图像数据采集等领域,图像处理的实时性对RAM带宽的要求不断增加,传统
期刊
摘要:新型有机发光显示技术拥有诸多优势,而成为平板显示领域的研究热点。目前,大尺寸、彩色化、白光光源和柔性显示等已成为有机发光显示器技术发展的主流方向。  关键词:OLED;有机材料;平板显示器;柔性显示 引言    伴随着有机发光材料和器件技术的不断成熟,有机发光二极管(OLED)显示器逐步进入各个显示领域。1997年,Pioneer公司首次推出了单色OLED车载音响,使得有机显示屏首次进入商业
期刊
2006年日本索尼公司遭遇的“电池门”事件让众多的笔记本电脑用户心有余悸,人们不得不重新审视二次电池(锂、镍电池)的安全问题,因为二次电池的应用已经遍布我们的日常生活——手机,笔记本电脑,MP3,PMP.…消费类电子产品的蓬勃发展对电路保护提出了更高的要求,因为数字IC对于电流和电压更加敏感。所有的便携式电子产品都是在直流电压下工作,因而都离不开AC/DC电源转换器,大多数的电路损坏都是由于AC/
期刊
摘要:本文在分析了IGBT驱动条件的基础上介绍了几种常见的IGBT驱动电路,设计了一种基于光耦HCPL-316J的IGBT驱动电路。实验证明该电路具有良好的驱动及保护能力。  关键词:驱动电路;IGBT保护;HCPL-316J    引言    绝缘门极双极型晶体管(Isolated Gate Bi—polar Transistor简称IGBT)是复合了功率场效应管和电力晶体管的优点而产生的一种新
期刊
据市场研究公司iSuppli称,与传统的季节性模式相反,2007年上半年全球大尺寸TFTLCD面板的销售预计将比2006年下半年增长。
期刊
北京时间2007年1月12日,第40届国际消费电子展(CES)在喧闹四天后落下帷幕。虽然时值CES 40年盛典,参展厂商和参观人数规模空前,但不少媒体的报道都透露出失望的情绪。纷纷指出与历届大展相比,本届CES明显创新匮乏,缺少亮点,有的也是重拾以往的牙慧。也许是CES作为消费电子行业的风向标的形象已经深入人心,高期望之后难免有失望。也许是在充满激情的技术创新后,还需要时间消化创新,平复激情。CE
期刊