指纹的特征提取与识别
摘要
随着社会的发展,计算机技术的进步,人们对身份认证技术提出了更高的要
求。传统的身份认证方法存在的种种弊端让人们将目光投向了生物特征识别这个
崭新的领域。而指纹识别技术凭借其独有的优势在众多生物特征识别技术中脱颖
而出,得到了广泛的关注和应用。现今,自动指纹识别技术已经广泛地应用于公
安、海关、银行、网络安全等需要进行身份识别和鉴定的领域。因此,进行指纹
识别技术方面的研究,具有较高的现实意义和理论意义。
本文综合运用图像处理和模式识别的技术,对自动指纹识别系统的若干问题
进行了探讨和研究,实现了指纹图像的预处理、特征提取和指纹匹配等算法,并
在指纹分割、指纹增强这两个方面进行了改进和创新。
关键词:指纹识别,指纹分割,指纹增强,特征点提取,指纹匹配
第1章绪论
1.1指纹识别系统的结构
本文主要是对指纹识别系统中图像处理方面的相关算法进行研究,本文的指纹识别
系统的基本框架如图1-1所示。
图1-1指纹识别系统的基本结构
1.1.1指纹的预处理
由于各种原因的影响,指纹取像设备所获得的原始图像是一幅含有较多噪声的灰度
图像,预处理的目的就是改善输入指纹图像的质量,增强脊和谷的对比度,将它变成一
幅清晰的点线图,以便于进行特征提取。本文预处理过程主要步骤如下:
图1-2指纹预处理的基本结构
指纹分割是把指纹的背景区域从图像中分离出去,减少对指纹图像进行处理时的计
算量;指纹增强的目的是对输入的噪音较多的灰度图像进行滤波,去除图像中的叉连、
断点及模糊不清的部分,得到一幅较清晰的灰度图像;二值化就是把灰度指纹图像变成
0-1取值的二值图像,这样就使图像的灰度层次由原来的256级(8-bits)降为2级
(1-bits),从而大大减少了需要存储和处理的数据量。由于指纹的特征仅包含在纹线的
形状结构中,所以为了提高处理速度和识别精度,应该在不破坏图像连通性的情况下去
掉多余的信息,也就是进行图像的细化。细化是指删除指纹纹线的边缘像素,使之只有
一个像素宽度。细化时应保持纹线的连接性、方向性以及特征点位置不变,还应保持纹
线的中心基本不变。
1.1.2特征提取
由于指纹通常是用按压的方式得到的,按压位置和方向的不同、手指的状况以及皮
肤的形变等都会导致指纹图像不理想。因此,采集到的指纹灰度图像不宜直接用来匹配,
有必要对其做进一步的处理,再提取出其特征来进行匹配。
1.1.3指纹图像的匹配
两枚指纹经常会具有相同的总体特征,但它们的局部特征却不可能完全相同。在只
考虑局部特征的情况下,英国学者认为,只要比对13个特征点重合,就
可以确认为这两枚指纹来自于同一个手指。这种利用指纹的局部特征来进行匹配的方
法,因为指纹的端点和分叉点较稳定,并且容易检测,因此在实际的指纹图像匹配过程
中获得了广泛的应用。而对特征点进行匹配,这就变成了点模式匹配的问题。
在一对一模式下,特征匹配是将实时在线提取的用户指纹数据同系统数据库中的数
据模板进行比较,对其判断是否属于同一指纹。在一对多模式下,由于用户的特征模板
未确定,还需进行数据库的查询比较。对于身份识别系统来说,由于需要在大量数据中
寻找匹配,因此速度将是一个值得考虑的因素。
第2章指纹图像预处理
由于各种原因的影响,指纹取像设备所获得的原始指纹图像是一幅含有较多噪声的
灰度图像,对指纹图像进行预处理的目的就是改善输入指纹图像的质量,增强脊和谷的
对比度,去除指纹的断裂和叉连,并将原始指纹图变成一幅清晰的点线图,以便于下一
步进行特征提取。本文的预处理过程主要包括指纹分割、指纹增强、二值化、细化四个
步骤,其流程图如图1-2所示。
2.1指纹图像的规格化
指纹规格化(FingerprintNormalization)是对指纹灰度图的灰度均值和方差做一
次调整操作,使不论什么设备采集到的指纹图像都可以有预期的均值和方差,从而屏蔽
不同采集设备的差异。指纹规格化并不会改变指纹的质量,它只是为指纹处理后续的操
作创造一个统一、良好的开端。
指纹规格化的算法:
如果指纹原图为S(i,j),N(i,j)为规格化后的指纹图,指纹图像的宽为w,高为h,
那么我们可以定义整个指纹图像的均值Mean(i,j)和方差Var(i,j)如下:
(2.1)
(2.2)
由此我们可以计算出N(i,j),其中的M0和Var0分别为我们所期望的均值和方差,
这两个值可以根据经验值来选取。
(2.3)
(2.4)
2.2指纹图像的分割
图像分割是从一幅图像中按一定规则将一些物体或区域加以分离,划分出我们感兴
趣的部分或区域。经过分割后的图像更容易进行进一步的分类、分析和识别处理。
其步骤如下:
1、把指纹图像分成WxW大小的块(一般为16X16);
2、对指纹的块求方差V
(2.12)
(2.13)
设定阈值T,若V>T,则该块作为前景留下,并把该块整块标示为一个存在矩阵A
中;若V
3、以为结构元素对二值矩阵A作闭运算,得到矩阵B;
4、以为结构元素对B作开运算,得到矩阵C,矩阵C为一个二值矩阵,矩阵元素为I
的,对应的该块就作为前景留下,矩阵元素为0的,对应的块就作为背景去除。
由于采集到的指纹图像不可避免的有污渍等,而有污渍的这些块,其方差也就会较
大,用阈值来分割时就会被错误的当成前景,而真正属于前景的有些块,由于采集的质
量等原因,却有可能被错误的当成背景予以去除,所以上述算法的第三步,在指纹块的
基础上,作闭运算,以去除指纹前景中被误当成背景的块,此时,再作开运算,就能很
好的去除被误当成前景的背景块,从而分割出我们需要的指纹前景区域。
2.3指纹增强
指纹增强在指纹识别中是非常重要的一个环节,指纹增强的效果直接影响到指纹特
征的提取、指纹匹配等各个环节。
我们可以对指纹的不同区域采用不同的滤波方法。对指纹变化比较缓慢的一般区
域可以选择一个平滑能力较强的低通滤波器来平滑,这样保证了对噪声干扰比较强的低
质量指纹也能够有效的平滑。
2.4指纹二值化
二值化的目的是把灰度指纹图像变成0-1取值的二值图。在数字图像处理中,二值
图占有非常重要的地位,特别是在实用的图像处理系统中,以二值图处理为核心构成的
系统是很多的。对图像进行二值化处理的好处是:在经过二值化处理后,再对图像作进
一步处理时,图像变成只与0和1有关了,不再涉及到像素的灰度值,使处理变得简单,
而且数据量也得到了很大的压缩量,这给存储和处理都带来了很大的方便,同时也提高
了系统的经济实用性。
图像的二值化的具体办法是:通过设定阈值(Threshold),把灰度图像变换成仅用两
个值来分别表示图像目标和图像背景的二值图,其中目标取值为1,背景取值为0。图
像二值化可根据下列的阈值(Threshold)处理来进行:
g(i,j)=1,当f(i,J)>threshold时(2.27)
g(i,j)=0,当f(i,J)threshold时(2.28)
块的大小不同,其二值化处理结果也不同,本文试验了4x4,8x8,16x16,32x32大
小的划分块的方案,发现采用16x16的取块大小的局部阈值二值化方法取得的效果最佳。
2.5细化
指纹图像二值化后,纹线仍具有一定的宽度,而指纹识别只需在指纹的点线结构上
提取特征点来匹配,故在二值化之后,细化就是必不可少的。指纹图像细化后可以得到
一个像素宽度的纹线,这样就可以简化并改善后续的指纹特征提取工作,并且进一步压
缩了数据量,有利于指纹数据的存储和提高指纹匹配的速度。
细化的目的是:删除指纹纹线的边缘像素,使之只有一个像素宽度。一个好的指纹
细化算法必须满足收敛性、连接性、拓扑性、保持性、细化性、中轴性、快速性的要求。
Matlab中有直接用来细化的函数,因此我们可以直接采用。
第3章指纹特征点的提取
3.1指纹特征概述
特征提取(featureextraction)就是对指纹图像提取表示其特征的信息。我们前面
所叙述的指纹图像预处理目的就是为指纹的特征提取和最终识别建立一个良好的基础,
以保证整个系统有较高的性能。
3.2细节特征提取算法
细节特征提取的方法分为两种:一种是从灰度图像中提取特征,另一种是从细化二
值图像中提取特征。直接从灰度图像中提取特征的算法一般是对灰度指纹纹线进行跟
踪,根据跟踪结果寻找特征的位置和判断特征的类型。这种方法省去了复杂的指纹图像
预处理过程,但是特征提取的算法却十分复杂,而且由于噪声等因素影响,特征信息(位
置、方向等)也不够准确。目前大多数系统采用第二种方法,从细化二值图像中提取特
征,该方法比较简单,在得到可靠的细化二值图像后,只需要一个3×3的模板就可以
将端点和分叉点提取出来。
特征点提取的好坏将直接影响匹配的结果。现实中,指纹输入时,由于汗渍、干燥、
按压力度不同等影响,得到的指纹图像大都含有断纹、褶皱、模糊、灰度不均匀等质量
问题,虽然经过预处理,图像质量会有所改观,但预处理算法对各个指纹的适应性和有
效性也会不同,并且会引入新的噪声,因此得到的细化二值图像往往含有大量的伪特征
点。伪特征点不仅会影响匹配的速度,严重的会影响整个识别的正确率。所以提取特征
点后要进行去伪处理,尽可能滤除伪特征点、保留真特征点。实践中发现,伪特征点的
数量一般占总特征数量的一半以上,所以去伪是必不可少的过程。去伪过程可以在两个
阶段进行:一是在特征提取之前对细化二值图像进行平滑、去除毛刺、连接断纹等操作,
然后提取特征作为真特征;另一种是在特征提取之后,根据特征之间的相互关系,尽可
能准确的识别伪特征点并滤除它们。前者直接对图像进行修补,操作比较复杂,容易引
入新的伪特征;后者对特征提取后的数据进行判断,识别比较麻烦,但是速度较快。
本文采用第二种方法,即从已提取的特征点中滤除伪特征,保留真特征。
3.3指纹图像的细化后处理
为便于算法描述,这里定义一个八邻域模型,如图2所示。即以当前点为中心,与紧邻
中心点的八个点组成一个3×3的模板,各邻点与中心点的位置关系组成八邻域模型,P
代表当前中心点,P0—P7分别代表中心点8个方向上的相邻点,黑点取值0,白点取值
1。
图2八领域模型
由于指纹特征提取是从细化指纹图中得到特征点,在特征提取之前,需把指纹细化
二值图像做进一步处理,使之真正达到一个像素的宽度,即在不破坏纹线连续性的前提
下,将锯齿直角转折处的点去掉。本文采用模板匹配法,标准模板如图3所示。细化后
处理主要算法描述:
if(P==0)
if(p2==0&pO==0)I(p2==0&p4:=0)I(p6==0&p4==0)I(pO==0&p6==0)P=1;
ElP=0;
end
end
3.3特征点的提取
端点和分叉点(如图3-1)是指纹细化图像的主要特征,本文采用这两种主要特征构造指
纹特征向量,它的提取方法是模板匹配法。模板匹配法有运算量小、速度快的优点。
在八邻域的所有状态中,满足端点特征条件的有8种,细节特征提取是指纹识别中相当
重要的一步,细节特征提取的质量直接影响到指纹匹配的准确性。
图3-1指纹细节点:端点和分叉点
e=p0+p1+p2+p3+p4+p5+p6+p7;
if(e==7|e==5)
t=t+1;
x(t)=i;y(t)=j;
type(i,j)=1;
eltype(i,j)=0;
end
end
end
3.4指纹特征的去伪
指纹特征去伪操作主要是将不符合指纹特征的特征滤除掉。为特征有以下特点:大
部分处于图像边缘,在图像内部的为特征点距离较近,两个或多个伪特征同时存在于较
小的区域内。本文根据这些特点提出了两种去伪方法:首先对于图像边缘的点,采用指
纹图像切割的方法,及对边缘点直接切除掉;然后利用距离阈值法去除距离较近的特征
点。
主要算法描述如下:
fori=1:t-1
forj=i+1:t
d=sqrt((x(i)-x(j))^2+(y(i)-y(j))^2);
if(d<2)type(i,j)=0;end
end
end
第4章指纹匹配
4.1指纹匹配概述
指纹匹配是通过对两枚指纹的比较来确定它们是否同源的过程,即两枚指纹是否来
源于同一个手指。传统的指纹匹配有两种方式:一是基于纹理信息的匹配模式,通过纹
理特征模型将图像匹配转化成模式识别的纹理匹配问题;二是基于点模式匹配,当前所
采用的指纹匹配算法大多采用点模式匹配的方法,这也是本文将要采用的方法。这种方
法利用指纹脊线的端点和分叉点来鉴定指纹。通过细节点表示为点模式,一个自动指纹
识别问题就转化为点模式的匹配问题。
但是同一个手指的两幅样本图像,由于按压时手指位置、方向和力度的不同,可能
造成指纹图像的平移、旋转和非线性形变。如何在这些情况下对指纹进行正确识别,是
匹配算法需要解决的核心问题。
本文采用的匹配算法为:对于提取到的特征点,和模板图像中的特征点进行比较,
取他们之间相差绝对值最小值的图像为匹配图像。
第5章实验结果及分析
本文采用的算法都是采用Matlab语言在matlab7.0的平台上实现的。
5.1指纹预处理的实验结果及分析
指纹预处理是指纹识别的一个重要环节,对指纹图像进行预处理的目的就是改善输
入指纹图像的质量,增强脊和谷的对比度,去除指纹的断裂和叉连;并将指纹图像变成
一幅清晰的点线图。指纹预处理的效果直接影响到指纹特征的提取和指纹的匹配。
本文提出的基于方差和数学形态学的指纹分割算法能很好的区分指纹的前景和背
景;在本文提出的基于区域的方向图后处理算法得到的指纹方向图的基础上,我们能够
得到很好的指纹增强效果,从图中可见,指纹的许多断点和叉连被去除了。在此基础上,
我们就能得到效果较好的指纹二值化图和细化图.
(a)(b)(c)(d)
(e)(f)(g)
图5-1指纹预处理
(a)指纹原图(b)阈值化后的图;(c)指纹分割;(d)规格化后的图;(e)指纹增强;(f)指纹二值化;(g)指纹细化;
5.2指纹特征提取实验结果及分析
经过预处理环节,指纹图像变成了一副点线图,我们便可以在这个点线图上提取匹
配需要的指纹特征点:端点和分叉点。由于伪特征点的存在,我们还必须对提取到的特
征点进行后处理,去除假的特征点。指纹特征提取效果如图5-2所示。从图中可知,经
过后处理后特征点还是有误差,可能是因为图像预处理时含有太多的噪声导致的。
图5-2指纹特征后处理
5.3指纹匹配实验结果及分析
随着匹配条件的严格(作为阈值的匹配的特征点数增多),误识率是越来越低,但拒
识率却越来越高;相对的,当匹配条件放松,拒识率是降低了,但误识率却升高了。
在自动指纹识别系统的不同应用场合中,对指纹识别性能要求是有很大的不同的,
在军事方面的应用中,因为涉及高度的保密性的问题,要求误识率要尽量低,这就要求
我们采用严格的匹配条件;而在一些日常的应用中,如指纹考勤机等,过高的拒识率就
会给用户的使用带来很大的不便,这时就要求我们采用相对宽松的匹配条件;所以,在
具体的指纹应用系统中,匹配特征点数阈值的选取是有较大的不同的。
参考文献
[1]王科俊.自动指纹识别系统的研究与设计[D].哈尔滨工程大学硕士研究生论文,2003.
[2]金升平,陈定方.指纹细节匹配的遗传算法仁[J].交通与计算机,2002,20(2):30-32.
[3]章毓晋.图像工程[M].北京:清华大学出版社,2000.
[4]韩伟红,黄子中,王志英.指纹自动识别系统中的预处理技术[J].计算机研究发展,1997,
34(12):914-920.
[5]黄贤武,苏鹏程,柏培权.基于方向滤波分割的指纹自动识别系统算法[J].中国图象图形学
报.2002,7(8):829-834.
[6]黄贤武,王加俊,仲兴荣.指纹识别的预处理组合算法[J].计算机应用.2002.
[7]赵荣椿,数字图像处理导论[M].西北工业大学出版社,1995.
[8]徐建华.图像处理与分析[M].北京:北京科学出版社,1992.
[9]冯星奎,李林艳,颜祖泉.一种新的指纹图象细化算法[J].中国图象图形学报,1999,
400:835-838.
本文发布于:2023-03-09 00:20:56,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1678292457188641.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:指纹识别.doc
本文 PDF 下载地址:指纹识别.pdf
留言与评论(共有 0 条评论) |