2022年指纹预处理系统 .pdf
基于 DSP CCS 2.2 实现指纹识别预处理系统摘要:介绍了采用TI 公司的高速DSP芯片 TMS320VC5402 的指纹识别系统的预处理算法和编程实现。算法实现采用的DSP集成开发环境(IDE)为 CCS 2.2。通过采用极值滤波、平滑滤波、拉普拉斯锐化、二值化等对指纹图像进行预处理,取得了良好的试验结果。关键词:指纹识别DSP TMS320VC5402 CCS 2.2 利用生物认证技术取代传统的使用钥匙、身份证、密码等方法进行个人身份鉴定,可广泛应用于银行、 机场、公安等领域的出入管理。将信息技术与生物技术相结合的生物认证技术是本世纪最有发展潜力的技术之一,而指纹识别技术则是其中非常有前景的一种。数字信号处理器(DSP) 是指以数值计算的方法对数字信号进行处理的芯片。它具有处理速度快、灵活、精确、抗干扰能力强、体积小、使用方便等优点。DSP应用于指纹识别已经成为一个新的科技领域和独立的学科体系,当前已形成了有潜力的产业和市场。本文选定 100MHz DSP TMS320VC5402作为指纹信号的处理器,利用其流水线编码的操作特点 ,并结合指纹识别技术,实现基于DSP CCS2.2 的指纹识别预处理系统。CCS 2.2(Code Composer Studio)是一种针对标准TMS320 调试接口的集成开发环境(IDE),由 TI 公司于1999年推出。指纹识别的处理流程如图1 所示。图 1 指纹识别流程图指纹处理过程可分为三个阶段: (1) 获取原始指纹图像,进行预处理 ; (2) 提取指纹特征点; (3) 指纹识别分析判断。在上述三个阶段中,指纹图像的预处理阶段尤为重要,该阶段对图像处理的好坏直接关系到后面两个阶段工作的开展。本文结合TMS320VC5402 的特点 ,重点研究指纹识别的预处理算法及其DSP 实现问题 ,其中包括指纹的极值滤波、平滑滤波、拉普拉斯锐化、迭代二值化和该算法在DSP开发平台CCS2.2的 C5000上的仿真实现。 这一问题的解决,可为未来指纹识别系统的脱机应用提供很有价值的参考。1 指纹识别预处理算法指纹识别预处理的目的是使指纹图像更清晰,边缘更明显 ,以便提取指纹的特征点进行识别。本文采取极值滤波和改进的平滑滤波进行噪声消除,使图像不失真 ;采取拉普拉斯锐化对指纹进行纹线增强,突出边缘信息 ,为自适应阀值的迭代二值化提供方便。1.1 极值滤波解梅、马争 1认为极值滤波器的设计是基于这样一种理念:在指纹图像的采集过程中,指纹图像所受到的冲击性噪声表现为一些斑点或亮点。在一般情况下,可以认为绝大数冲击性噪声是被真实的灰度值所包围。同时噪声污染的像素要远远小于真实灰度值的像素。因此在噪声的消除过程中,无需对大多数没有被噪声污染的像素进行改变处理,只需对那些被污染的像素进行“真实值”代替处理,而这些值的确定可通过图像像素邻域的相关性来确定。设有一待处理器像素为s0,其周围 8 邻域像素排列为取邻域相关像素的均值为Ai,i1,2,.8,并以四个像素为一组处理单元,则改进的极值滤波1 算法可表述如下: 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 3 页 - - - - - - - - - 如果 A0max(Ai),i1,2,.8,则如果 A0min(Ai), i 1,2,.8, 则s1=s2=s4=s0=min(A1,A2,A4) s2=s3=s5=s0=min(A2,A3,A5) s4=s6=s7=s0=min(A4,A6,A7)(3) s5=s7=s8=s0=min(A5,A7,A8) 如果 min(Ai)Aimax(Ai),i1,2,.8,则将像素原值输出,不作处理。实验结果表明,该方法能得到与中值滤波类似的效果,达到了初步去除噪声的目的。1.2 平滑滤波经过上面的极值滤波处理之后,图像传输过程中所形成的大多数冲击性噪声均被除去,但指纹图像中还存在着随机噪声,需进一步对图像进行平滑处理。本文采取两次平滑滤波,一次是在极值滤波之后,一次是在锐化滤波之后。改进的平滑卷积核为系数取 1/15 而非原来的1 /17 的原因在于提高图像的对比度;而卷积核中心像素加权系数取为 5 是为了突出该点像素。实验结果表明,该改进是可行的,有利于突出中心像素并有效去除随机噪声。1.3 锐化滤波对于由于积分运算所造成的模糊图像,有必要对其模糊进行校正,进而增强指纹图像的边界。具体做法为增强指纹脊线与谷的对比度。这种增强指纹图像的高频成分,使其边缘清晰的方法称为锐化。因此,锐化的目的在于使经过平均或积分运算后变得模糊的图像的边缘和轮廓变得清晰 ,并使细节清晰2。在本文中 ,锐化卷积核采用拉普拉斯算子3: 通过该卷积核对图像进行卷积预算,能实现高通滤波,进而得到锐化后的指纹脊线。14 迭代阀值二值化指纹图像经过极值滤波、平滑滤波、拉普拉斯锐化滤波、平滑滤波后,大多数噪声都已被消除 ,这就为特征点提取提供了基础。为了提取特征点,需对指纹图像进行分割。本文采取迭代阀值的方法对指纹图像进行阀值分割。在图像处理中,反复地用一种运算直至条件满足而得到输出图像的方法称为迭代。迭代阀值方法如下: 设定初始灰度阀值T(如令 T127),把指纹图像的灰度值分为两组R1和 R2。计算两组的平均灰度值u1 和 u2。重新设定新的灰度阀值T。新的 T 定义为 :T(u1+u2)/2。依据新的T对指纹图像进行阀值分割。这种方法是以自适应的阀值对指纹图像进行二值化处理。实验结果表明,该方法比设定固定阀值进行处理更有普遍意义,且行之有效。2 指纹图像在CCS 2.2上的输入与输出在设计中 ,采用 DSP集成开发环境CCS2.2对指纹识别算法进行模拟验证。用指纹成像系统采集一幅 *bmp 格式指纹图像,如 finger.bmp 指纹图像。 在该指纹图像的数据上面添加一个COFF文件的文件头。以文件名finger.out 保存。 *.out 文件为 TI 的公共目标文件。利用CCS中的 File-Load Data 可以将finger.out 的指纹图像放到DSP 的相应内存中去,本次设计中将finger.out 存放于 DSP的数据存储空间。利用CCS中的 Image 菜单 ,通过设置相关选项可以观察处理前的图像与处理后的图像。3 实际指纹图像预处理效果依据上述指纹识别预处理算法,通过 CCS2.2的模拟功能 ,实现了指纹识别预处理的DSP处名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 3 页 - - - - - - - - - 理,达到了 DSP处理指纹图像的应用目的。结果如图2 所示。图 2 实际指纹预处理结果本文针对 TMS320VC5402 DSP的快速、高效的特点,采取了 DSP集成开发环境CCS2.2对指纹图像进行预处理。 在指纹的预处理中,由于 DSP具有 10ns 指令周期 ,使采用改进的极值滤波和改进的卷积核平滑滤波对指纹图像进行一次、二次平滑实时处理成为可能。实验结果表明,该方法能有效地处理指纹图像的冲击性噪声和随机噪声。而迭代二值化的运算充分利用了 DSP 五级流水线操作,达到了利用DSP对指纹图像进行预处理的应用目的。参考文献1 解 梅, 马 争.基于脊向指纹滤波算法J.电子学报 ,2004;32(1):57 2 Visual C+实现二值图像处理. /20030731/1718121_2.shtml 3 尹 勇,欧光军 ,关荣锋 .DSP 集成开发环境CCS 开发指南 M. 北京 :北京航空航天大学出版社,2003;197 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 3 页 - - - - - - - - -