论文部分内容阅读
由于人体指纹具有唯一性、稳定性、便于采集等优点,指纹识别技术已经成为生物识别技术领域应用最广泛的技术。但是传统的基于PC的指纹自动识别系统通常体积大、算法比较复杂,不能满足人们对其实时性和便携性的要求,限制了其应用开发和普及。而且在现有的指纹识别系统中仍然存在误识、拒识问题,指纹图像预处理与指纹匹配算法仍然是目前图像处理与模式识别中比较有挑战的问题。本文利用FPGA来实现指纹自动识别系统。由于现有的FPGA芯片的单片逻辑门数已达到上百万门,完全能实现指纹识别系统,而FPGA的单片价格却不断下降,利用FPGA来实现指纹自动识别系统,市场上是可接受的。本文利用了Altera的SOPC的设计思想,采用NiosⅡ嵌入式处理器和FPGA硬件模块实现指纹识别系统的主要算法。由于指纹预处理时数据量大,对处理速度的要求高,但运算结构相对比较简单,因此算法利用FPGA进行硬件实现。而对于指纹识别系统中算法相对比较复杂,但数据量相对较小的信息处理层如特征点匹配等,则利用软核NiosⅡ进行处理。利用FPGA硬件实现指纹预处理算法,必需对现有的算法进行改进,以保证性能的同时,节省资源。本文对指纹图像预处理中计算纹线方向环节,引入CORDIC来计算三角函数。由于指纹图像的Gabor滤波增强算法比较复杂,本文将其正交分解成两个一维高斯滤波器的组合,将其中一维制成模板,最后通过旋转的方式来得到另一维。对于预处理中的其他环节,在已有的算法基础上,利用FPGA进行了实现,实验结果表明,在保证系统可靠性的基础上,提高了系统的执行速度。对于指纹匹配算法,本文在传统的点模式匹配的基础上,引入新的评价方法,并结合可变限界盒思想对指纹进行匹配。实验结果表明,利用本文提出的系统架构方案有效可行。基于FPGA的指纹自动识别系统顺利完成了各个功能,而在速度、扩展性等方面则具有独特的优势。本文为进一步的研究指纹识别系统打下基础。