基于中心点定位的指纹匹配算法研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于中心点定位的指纹匹配算法研究
叶雪军
1,2
(1.华中科技大学 湖北武汉 430074;2.湖北经济学院 湖北武汉 430074)
摘 要:指纹识别算法是自动指纹识别系统的核心技术,基于细节匹配的算法是广泛采用的算法,但是其识别率受到中心点定位精度的限制。借鉴基于滤波的指纹识别算法的中心点识别方法,解决基于细节匹配的指纹识别算法的中心点匹配问题。对实际指纹传感器采集的指纹测试的结果表明,该指纹识别算法的识别率得到提高,具有一定的实用性。
关键词:指纹识别;匹配算法;中心点定位;自动指纹识别系统
中图分类号:T P391141 文献标识码:A 文章编号:1004373X(2006)1109803
Research on Fingerprint Matching Algorithm Based on Location of the C ore
Y E Xuejun 1,2
(1.H uazhong U niv ersity o f Scie nce and T echnolo gy ,Wuhan,430074,Chi na;
2.H ubei University of Eco no mics,Wuhan,430074,Chi na)
Abstract :T he finger pr int mat ching algo rithm is one of the key techno log y o f automated finger pr int identificat ion system.T he minutiae based alg or ithm is w idely used,while the discrim inat ion mainly affected by the accur acy of the location o f fin -g erprint co re.T he filt er
based algo rithm is another frequently used algo rit hm,w hose location o f co re is more efficient.A
matching alg or ithm co mbine both alg or ithms ar e int roduced,w hich so lve the co re location problem o f the minutiae based a-l g or ithm.T he ex per iments pr ov e t hat the discriminat ion of the ident ificatio n algo rithm ,w hich is easy to realize is impro ved.
Keywords :finger pr int ident ificatio n;matching algo rithm;location of the core;aut omated f ing erpr int identif ication system
收稿日期:2005
1128
1 引 言
随着计算机技术的发展,自动指纹识别系统(A uto -mated Fingerprint Ident ification System,A FIS)得到了广
泛的重视和应用。作为一种生物特征识别技术,人的指纹具有惟一性和稳定性的特点。相比其他生物特征识别技术,指纹识别技术具有识别效率高,采集方便,成本低廉等优点。随着指纹传感器的价格不断降低,指纹技术已经逐渐走向民用市场,应用到很多嵌入式设备中。
在嵌入式设备加入指纹识别功能,其核心是嵌入式指纹识别算法。如何将好的指纹识别算法移植到嵌入式指纹识别系统上,并且不损失算法的各项性能,成为该类设备设计的核心问题。
笔者设计了一款嵌入式指纹识别系统。指纹识别算法部分大胆地将基于滤波的匹配方法中的手段应用于细节匹配法中,实现了一种基于中心点定位的指纹匹配算法。
2 指纹识别算法
指纹识别算法是自动指纹识别系统(AFIS)的核心技术,这方面的研究早在19世纪初就开始了,20世纪90年代末到现在,由于半导体指纹传感器的出现,使得指纹识别广泛地应用在个人电脑、个人数字助理、掌上电脑、手记、门禁系统、考勤系统、保险箱控制系统等很多领域,这对算法的性能也提出了更高的要求。通过比较和实践各种指纹识别技术,笔者总结出一套具有快速和较高识别率的指纹识别系统。
指纹识别算法主要分为2类:一类是基于细节特征点(M inutiae Based)的指纹识别算法;另一类是基于滤波(Filt er Based)的指纹识别算法,如图1
所示。
图1 两类指纹识别算法
基于细节特征点的指纹识别算法是在采集到指纹图像后,经过灰度滤波、二值化、二值滤波、细化、细化后的去噪等对图像进行预处理,然后提取特征点,也就是指纹特征向量的提取,最后进行特征匹配,将其和模板的特征点进行比对。
而基于滤波的指纹识别算法,主要是充分利用指纹图像纹理结构信息,抓住图像全局特征,体现细节特点。指纹图像的脊和谷具有局部平行性和特定的纹理频率,基于滤波器的算法利用G abor 滤波器,选择合适的参数,可以获取局部和全局特征,增强特定方向的信息,保留真正的脊和谷结构,降低其他方向上的强度。
笔者设计采用基于细节特征点的指纹识别算法,经证明指纹图像预处理部分是比较成功的,特征点求取也相当准确,但是还存在一个问题,由于匹配算法是利用网格以中心点为圆心进行旋转匹配的,所以匹配的结果很大程度依赖于中心点求的准确度。当对同一指纹2次取图并确
98
自动化技术叶雪军:基于中心点定位的指纹匹配算法研究
定的中心点位置不一样时,匹配就会失效。所以研究的重点就是如何使中心点定位更准确,实现指纹特征匹配的问题。下面重点讨论基于中心点定位的指纹特征匹配算法。
3指纹匹配算法
笔者设计的指纹特征匹配是指基于细节特征的特征匹配算法。
对于给定的两个指纹特征(待测特征和参考特征),指纹匹配的目的是判别二者是否由同一指纹所得。实际上也就是获得两副指纹的相似度,并根据测得的相似度给出一个门限以得出一个二值的匹配结论。
前人在特征匹配算法做了很多工作,Isenor D K.等人提出了图匹配方法,A ndrew K.Hrechak等人用结构匹配法。目前最常用的方法是用FBI提出的细节点坐标模型来做细节匹配。他利用脊线末梢(我们称为端点)与脊线分支点这两种关键点来鉴定指纹。通过将细节点表示为点模式,一个自动指纹认证问题可以转化为一个点模式匹配(细节匹配)问题。本文采用的就是这种指纹匹配方法。
点模式匹配问题是模式识别中的一个有名的难题,人们对一般的点模式匹配问题提出过很多的算法,像Sanjay Ra-nade等人的松弛算法,此方法要反复迭代,计算量大;hih hsu Chang等人的基于二维聚类的快速算法、Zsolt Mikl等人的三角匹配的算法、Xudong Jiang等人的基于局部和全局结构的匹配算法,这些算法可靠度适用性有待提高。
指纹匹配中的点模式匹配问题需要解决指纹图像的平移、旋转和缩放的问题。由于在验证型的指纹识别系统(如门禁系统)中,指纹采集设备是一致的,缩放的问题不是很严重,但平移和旋转是指纹匹配需要考虑的两个重要因素。此外,还需考虑指纹采集过程中的指纹特征点丢失和增加,特征提取过程中点坐标的误差等,也就是在匹配时要考虑特征匹配对在数量和位置上的容限问题。
要解决指纹的平移和旋转问题,如果不在预处理过程中就通过变换的方法将待测指纹和参考指纹通过H ough 转换等方法保持一致,就需要在指纹匹配的时候将这些因素考虑进去,通常的方法是寻找指纹的中心点,匹配以中心点为基础进行,求出特征点相对于中心的位置,再进行匹配。笔者采用后一种方法,在本算法中中心点定位就显得很重要。
4中心点的定位
中心点定义为指纹的脊曲线曲率最大的点,在基于点模式的匹配算法中,将中心点作为匹配的参考点具有一致性比较强的特点。
中心点定位算法可以在方向图中进行,如基于灰度梯度的算法,此种算法对于拱形指纹效果不佳;也有在细化图中跟踪得到中心点,跟踪算法比较复杂,且对指纹质量要求高,适用比较清晰的指纹图,如果指纹中心区噪声比较大甚至有的中心点已经丢失,在细化图上依赖比较严格的算法往往搜不到中心点,或搜到错误的点,从而使这种算法的可靠性降低,若有的指纹图噪音大,内层弧的顶点或最内层弧中的棒都缺失,中心点就无法搜寻。
研究表明,在特征提取比较成功的情况下,用我们采用的匹配算法,中心点的定位显得非常关键,直接影响到匹配的效果。经过多种算法的实践和测试,笔者采用了中心点定位算法,中心点定位的过程如图2所示。该算法将块方向信息和脊的细节特征结合起来确定中心点。相比其他定位方法,该算法对指纹图像质量要求不高,定位更准确。其中图2(c)
中最暗的点就代表了中心点。
图2中心点定位过程
该算法可简单描述如下:
(1)求取指纹图像的块方向/(i,j);
在预处理中采用的是基于块方向图灰度梯度算法,其中块方向图的算法的结果在这里继续得到使用。
(2)在邻域内将/(i,j)进行平滑(低通滤波),得到平滑后的块方向图/c(i,j)。
首先将/(i,j)表示为x方向和y方向的连续向量,也就是计算/(i,j)在x坐标方向和y坐标方向的分量。
5
x(i,j)=cos(2/(i,j))(1)
5
y(i,j)=sin(2/(i,j))(2)然后分别对5x和5y进行低通滤波:
5c
x(i,j)=E
w5/2
u=-w5/2
E w5/2
v=-w5/2
W(u,v)#5x(i-uw,j-vw)(3)
5c
y(i,j)=E
w5/2
u=-w5/2
E w5/2
v=-w5/2
W(u,v)#5y(i-uw,j-vw)(4)其中W(u,v)代表二维的低通滤波器,其大小为w5@w5,我们采用的是简单的5@5平均滤波器。
这样,平滑后的块方向图表示为:
O c(i,j)=1
2
t an-1
5c
y(i,j)
5c
x(i,j)
(5)
(3)计算O c(i,j)的sine分量E(i,j),结果如图2(c)所示,图中最黑的点就代表了所求的中心点。
E(i,j)=sin(/c(i,j))(6)简单的说,中心点定位算法包括块方向图确定(在预处理部分已经获得)、块方向图平滑、sine函数求取和极值求取几个方面。
块方向图平滑采用一个5@5的二维低通滤波模板(平均值滤波器)对块方向图的x轴分量和y轴分量分别进行平滑,将平滑后的结果再通过反tan函数重新合并为方向图,使原块方向图在整个图像区域均匀分布。
在平滑后的块方向图上对每一象素点求取sine函数,经过这一步处理的图像在中心点处有一个区别于其他点
99
《现代电子技术》2006年第11期总第226期测试#测量#自动化