指纹图像自动识别系统预处理算法的设计和实现 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

指纹图像自动识别系统预处理算法的设计和实现

来源:中国一卡通网  作者:中国一卡通收录  发布时间:2012-03-22 09:32:42  字体:[ ]

关键字:指纹识别  管理  身份认证  

摘   要:现在的计算机应用中,包括许多非常机密的文件保护,大都使用“用户ID+密码”的方法来进行用户的身份认证和访问控制。但是,如果一旦密码忘记,或被别人窃取,计算机系统以及文件的安全问题就受到了威胁。随着科技的进步,指纹识别技术已经开始慢慢进入计算机世界中。目前许多公司和研究机构都在指纹识别技术领域取得了很大突破性进展,推出许多指纹识别与传统IT技术完美结合的应用产品,这些产品已经被越来越多的用户所认可。指纹识别技术多用于对安全性要求比较高的商务领域,而在商务移动办公领域颇具建树的富士通、三星及IBM等国际知名品牌都拥有技术与应用较为成熟的指纹识别系统。


  作为在图像空间简单的高频增强滤波有:

  g(i,j)=f(i,j)-f(i,j)=5f(i,j)-[f(i+1,j)+f(i-1,j)+f(i,f+1)+f(i,j-1)]

  这里f(i,j)表示输入图像f(i,j)的二次微分的数字拉普接斯算子,被公平义为:

  f(i,f)=f(I+1,f)+f(i-1,j)+f(i,j+1)+f(i,j-1)-4f(i,j) (8)

  由于模糊的图像是感光过程中的扩散现象所致,因此,它必然满足线形扩散议程:

  аf(x,y,t)/аt=kf(x,y,t)=k(аf/аx2+аf/аy2) (9)

  其中f(x,y,t)是时间与空间的函数,k是扩散系数;f是f的拉普拉斯算子。如令t=0,且忽略其展开的泰勒级数的高次项,则输出函数:

  g(x,y)=f(x,y,t)-τkf(x,y,t) (10)

  其中τ为扩散时间间隔的长度。选取不同的τk值,可得到不同的拉普拉斯算子的没加权系数。经过多次实验知,7×7方阵的加权系数p为:

  p=8f(x,y)-f(x-3,y)-f(x-2,y+2)-f(x,y+3)-f(x,y-3)-f(x+2,y+2)-f(x+3,y)-f(x+2,y-2)-f(x-2,y-2) (11)

  时能更好地反映出泰勒级数展开时函数的连续性,用于指纹图像的锐化处理是适宜的。图4是锐化后的指纹图像。

  2 二值化处理

  二值图像是指整幅图像画面内仅黑(灰度值为0)白(灰度值为1)二值的图像,在它们上面不呈现出灰度的变化。在数字图像处理中,二值图像占有非常重要的地位。这是因为在实用的图像处理系统中,要求处理的速度高、成本低,信息量大的浓淡图像处理花销太大,不是上策。而且二值化后的图像能够用几何学中的概念进行分析和特征描述,比起灰度图像来说方便得多。因而二值图像处理目前已成为图像处理中的一个独立的、重要分支而获得广泛的应用。对于指纹的识别来说,有有的信息得包含有脊线和谷线的二值描述中。因而必须根据原始的灰度图像来确定图像上的每一点应属于客体区域还是背景区域,从而产生对应的二值图像。它不仅可以大大减少储存量,而且对使得后面的判别过程少受干扰,大大简化其后的处理方法。二值化后的图像是以后处理的基础,它的算法对后面的处理有直接的影响。一个好的算法可以得到一个高质量的二值图像。反之,如果该阶段引入噪声,就会直接降低图像质量,影响识别精度。

  位于(x,y)处的像素f(x,y)阈值V(x,y)是由以(x,y)为中心的指纹图像窗口(2m+1)×(2m+1)中诸点的灰度值来确定的。即: 

  当(2m+1)×(2m+1)窗口落在两种不同区域将会引起误判:

  (1)当窗口较多地在谷线区时,将会使得一部分乃至大部分的像素点被判为脊线;

  (2)当窗口较多地落在脊线区时,将会使得一部分乃至大部分的像素点被判为谷线。

  借助于参数β和固定阈值可以解决这个问题。

  令ε为一个通过试验获得的正整数,即ε>0,故有: 


  其中Vt,为参考阈值。

  令二值化后的图像为g(x,y),则: 


  以上过程可用流程图5来表示。

  3 修饰处理

  指纹图像经过二值化后,由于量化等原因,纹线边缘凹凸不齐,受锐化的影响,画面出现离散点,为使图像整洁,边缘圆滑,需要进行修饰处理。

  用适宜的模板可去除纹沟中的离散黑点和填补纹线中的空缺白点。如令3×3模板中待处理的像素为x,其邻域ai∈白(i=1,2,…,8),则x=白;ai∈黑(i=2,4,6,8),则x=黑。 


  修饰处理包括去除孤立点及填补空白点等操作它们各自的模板表征如下: 


  4 细化处理

  由于我们所关心的不是纹线的粗细,而是纹线的有无。因此,在破坏图像连通性的情况下必须去掉多余的信息。在二值图像处理领域,细化是很重要的一个处理环节。如干涉条纹图像,由于条纹粗、宽二边缘弥散,不细化成线状就没有办法去精确地取数计算它。另一方面,一个连接成分如果能用线状结构去值图像的细化问题成为图像处理的一大热门,有不少人纹脊线的轮廓和有关的端点和交叉点。但是,二值化后的脊线有一定的宽度,这种表征它的特性,无论在图像识别还是在数据压缩方面都有重要意义。所以二宽度会给后面的识别增添很多麻烦。因而应先将指纹脊线的宽度采用逐渐剥离的方法,使得脊线成为只有一个象素宽的细线,这将非常有利于下一步的分析,这个过程叫细化。其目的是用一组细线来刻画一个连接成分,这不仅能达到压缩数据量的目的,而且易于对连接成分的特征提取。因而,这一操作过程必然需要删除某些象素。 


  利用两种类型的模板进行细化处理的算法如下: 


  图6即为通过算法(19)处理后得到的三种不同类型的指纹。

  指纹图像细化后,还可以根据指纹得到一般处理规律。进行后加工处理,如去掉无效的纹线搭桥及连接豁口等。还可以采用人机交互方式,对残缺指纹进行人工修补。

  本文给出了一套完整的指纹图像预处理算法,并在实验中获得了比较满意的结果。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖