指纹识别系统设计_第1页
指纹识别系统设计_第2页
指纹识别系统设计_第3页
指纹识别系统设计_第4页
指纹识别系统设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要指纹识别是一种主要应用于安防领域的成熟生物技术,由于人体指纹的稳定性及唯一性,指纹识别技术在社会上得到了广泛的应用。本文提出了以matlab为测试平台的指纹识别算法。首先完成了指纹图像的分割,并加入直方图均衡,增强图像的对比度。然后确定了指纹图像预处理中的细化和二值化算法,并对仿真结果进行详细分析,解决了实际应用中由于指纹图像粗糙导致无法识别的问题。在指纹特征提取阶段,通过对指纹分叉点和终结点的比对,有效地确定特征点的位置。最后的特征匹配阶段,通过三步骤:指纹长度匹配,相对距离匹配和特征点匹配成功实现指纹图像的识别。通过多次实验和最后的仿真结果证明了本次设计的可靠性。另外本次设计采用的是matlab2014a编程,版本更新,匹配时间表明,该指纹识别算法运行速度理想。关键词:指纹识别,预处理,特征提取,特征匹配-i-iiAbstractFingerprintrecognitionisbiologicaltechnologymainlyappliedinthefieldofsecurity.Itmakesuseofhumansfingerprintstabilityanduniquenessfeatures.Thetechnologyhasalreadyobtainedthewidespreadapplicationinthecommunity.Thispaperdesignsthealgorithmoffingerprintrecognitionbasedinmatlab.Itfirstlyfinishedtheseparationofimagesandaddedinthehistogramequalization.Itcanincreasethecontrastofimages.Thenthepre-processingandrefinementhasbeensolved.Wealsoanalysethetestresultscarefully.Itsolvesthevagueproblembecauseofthequalityofimages.Duringtheperiodoffeatureextraction,bythecomparisionoffingerprintcharacters,wecandeterminethepositionsuccessfully.Thelastisfeaturematching,thepaperusesthreestepstofinishthefingerprintrecognition.Thepaperconfirmedthestablitybyafewexperiments.Atthesametime,thepaperusesthesoftwarematlab.Theversionisthenewestanditfinishedthematchingfastly.Keywords:fingerprintrecognition;preprocessing;featureextraction;featurematching-iii-目录摘要.1Abstract.2前言.3第一章绪论.41.1研究背景及意义.41.2研究现状.41.3存在的问题.61.4本次设计所做工作.7第二章指纹图像的分割.82.1指纹图像分割.82.2直方图均衡.92.3仿真结果与分析.10第三章指纹图像的细化.143.1指纹图像的预处理.143.2二值化处理.15iv3.3图像细化.163.4仿真结果与分析.16第四章指纹图像的特征提取.184.1特征提取概述.184.2特征提取步骤.204.3仿真结果与分析.20第五章指纹图像的匹配.225.1指纹图像匹配.225.2仿真结果与分析.25第六章总结与展望.26参考文献致谢附录0前言上世纪60年代起,人们开始尝试用计算机来处理指纹。指纹由于其唯一性,稳定性,可获得等众多优点,逐渐变成一种身份鉴定的有效方式。上世纪80年代,光学扫描技术空前发展,给指纹的录入与辨别提供了便利。90年代末,随着各种成像仪器的研发与更新,指纹识别算法也呈多样态势,指纹识别技术向前迈进了一大步。如今的指纹识别系统应用广泛,政府部门,医疗卫生领域,考勤门禁等等,可以说只要需要身份确认,指纹识别都可以派上用场。也正因其广阔的应用前景,本次毕业设计将其作为研究主题,提出一种基于matlab编程的指纹识别算法。实现指纹识别是一个复杂的过程,本次设计历时两个半月,最终完成这篇毕业论文。本文把指纹识别处理分成四个大模块:指纹图像分割;图像细化;特征提取和特征匹配,这也是目前实现指纹识别系统的常规步骤。本次设计使用的是最新的matlab2014a仿真软件,测试结果更加清晰,图像处理速度更快,同时在前人给出的指纹识别matlab程序中作了加入与调整,并尝试编写了直方图均衡的部分程序。1第1章绪论1.1研究的背景及意义随着信息技术的发展,互联网成为人与人交流最快捷的方式,人们通过网络保持通信,通过网络洽谈商务,通过网络发布命令,互联网给人类的生活带来了巨大的便利,但同时也产生了很多的问题。最突出的就是信息安全问题。可想而知,庞大的信息量在网络汇集,传输,如果没有一个稳定又安全的加密方式,任何人都可以通过各种手段截取其中的信息,并因此带来巨大的危害。指纹识别技术应运而生,它是信息时代的产物,由于指纹是独一无二的,同时又能完全代表一个人,于是通过指纹识别赋予特定的人特定的权限,便可以有效地增强网络信息传输的可靠性,不仅如此,保险箱,门卫,报警器,网上银行等等一系列的操作过程都得到了安全保障。指纹识别同样可以运用在医疗领域:每个病人都拥有专属的指纹识别卡,输血时通过指纹验证便可将错误率降到最低。指纹识别技术还可用于公共救援、政府管理等众多需要身份确认的领域,可以说,只要有身份确认,就能用到指纹识别。1.2研究现状目前在国内,指纹识别所用到的传感器一般以真皮感应式的较多,同时由于计算机技术的广泛应用,越来越多的指纹识别模式涌现出来,比如脱机式指纹识别,DSP基础指纹识别,而在识别程序中,有的是matlab编程,有的是在VC+环境下实现,运行匹配速度也逐渐加快,可以说,国内的指纹识别技术正在不断成熟,与之配套的各种硬件设施也日臻完善。在国外近几年来,指纹识别技术从军用走向民用,大门正逐渐敞开,并由此引发众多商家与开发人员的关注,俨然成为最流行的生物技术之一。比较有代表性的有:IBM公司开发出指纹解锁的手提电脑;微软研制出可独立使用的指纹识别模块;韩国LG公司推出可指纹开启的手机等等。21.3存在的问题当前的指纹识别技术已经发展到空前的高度,但与此同时,一些问题也暴露出来。具体的不足体现在:1、对环境要求高。手指的湿度、清洁度都可能影响到指纹识别的准确度;2、能采集到指纹不代表能准确识别,有的人指纹特征少,采集到的指纹难以成像,更无法与数据库的指纹进行比对;3、有些人由于手指脱皮、疤痕等自身问题,指纹需要多次录入,还可能由于噪声难以去除导致录入失败;4、用户通过指纹识别器录入指纹后,采集头上会留有用户的指纹痕迹,这种痕迹存在被复制的可能;5、指纹识别模块编写有一定难度,完全独立编写调试需要大量人力物力。1.4本次设计所做工作本次毕业设计将自动指纹识别作为研究课题,主要任务及目标为:在Matlab2014a环境下进行编程,实现指纹图像的分割和预处理,采用直方图均衡的图像分割算法进行仿真,完成指纹细化,特征提取,指纹识别等三个步骤。下面是各个阶段的工作内容:(1)通过在Matlab2014a环境下运行的程序实现指纹图像的分割均衡和预处理;(2)基于图像滤波处理建立原始图像和变换系数之间的相关性,这其中涉及大量公式运算;(3)在编程中采用3维矩阵变换,更好地保持图像信息,去除大量图像边缘信息;(4)研究方向加权中值滤波算法,在指纹图像细化之前,对指纹二值化图像进行修补,使图像更为平滑;(5)研究图像滤波去噪的方法并增强图像的抗干扰性。3第二章指纹图像的分割2.1指纹图像的分割图像的分割,顾名思义,是将对象本身和图像的其它部分区分开,包括指纹图像背景和前景的分割。其中前景就是指指纹对象本身,这里就是凸出的指纹纹线部分。图像的背景则是指纹纹线以外的区域,比如空白,噪点等等。上述是图像分割的定义,下面我们从理论上分析如何实现指纹图像的分割。这里涉及到平均梯度的概念。平均梯度,就是指图像边界两侧存在的灰度差异。灰度变化率大,图像越清晰,于是我们通过梯度场来区分指纹图像,梯度值高的认为是前景区域,梯度值较低的则为背景区域。假设两张指纹图像要素相同,那么在梯度上便会有相同的特征,这时灰度梯度特征就可以作为鉴别两张指纹是否为同一人的依据。图像处理过程中还有一个关键点,那就是分形维数。我们知道,一般的维数概念源于欧式空间,但这种维数有一定局限性,它要求是整数,最常见的就是我们常说的二维平面,三维立体,但这在描述一些不规则或者是不光滑对象时就比较困难,由此引入了一个分形维数的概念,它有很多定义,但根本要素就是能够表达复杂形体占有空间的有效性。指纹图像便是复杂形体中的一种,它或连续,或断开,或平滑,或粗糙,所以分形维数便负责从少量的数据序列中提取出维数。接下来是指纹图像分割的具体步骤。我们可以把指纹图像的分割分成三类:全局范围内的图像分割,点像素的细节分割和块区域的局部分割。其中基于像素的图像分割方法运用最多的是阈值法和小波变换。小波变换的优点很明显,它压缩速度快,压缩后图像特征仍可保持不变,并且抗干扰能力强,也正因如此,在图像处理领域,小波变换一直是很多人的选择。但与此同时,小波变换运算太过复杂,对函数选择的要求也很高。我由于以前从未接4触过小波变换,翻阅资料后发现要熟练运用小波变换难度较大,所以采用了另一种图像分割法:阈值法。阈值法简单而言,就是通过设定阈值区分前景和背景。可以想象,由于指纹纹线突出,其前景肯定比背景梯度值大。至于如何判断前景和背景,简单的说,阈值相对大的是前景,阈值相对小的是背景,这其中有一个关键的问题,就是临界点,即临界阈值。具体步骤如下:首先是计算梯度值。我们假设f(x,y)为图像函数,T(x,y)为某位置的梯度,则,字面上解释就是函数的偏导数等于该点位置的梯度。进一步转),(),(yxfT换为公式2.1:(公式yfxfyfxfT+2)(+2)(=2.1)需要注意的是,要得出图像的梯度场,必须先计算方向场,计算方向场可以使指纹图像按纹线方向场进行智能增强。下一步便是确定阈值,步骤如下。阈值的选择跟图像质量有关。对于光学图像,由于是可见光和部分红外波段传感器获取的影像数据,所以较为平滑。一般阈值也比较小,大都在30到40之间。如果遇到图像噪点多,比较粗糙,则要对图像进行平滑处理,此时的阈值可以调整至50。要测出临界阈值,我们可以把单位区域上的平均梯度作为该单位区域阈值。具体的公式上面已经给出。f(x,y)为图像函数,T(x,y)为某位置(x,y)的梯度,则:。),(),(yxf设A为分割阈值。若,则点在指纹图像的前景上。yx),(00,若,则点在指纹图像的背景上。Tyx至此,利用分形维数我们便可以把指纹图像的前景和背景分割开来了。2.2直方图均衡(指纹图像的均衡)5先举一个生活中的例子,我们从户外明亮的地方突然进入昏暗的房间,眼睛会突然看不见东西,需要过一段时间,视觉才慢慢恢复,才能逐渐看清。这个过程就是人眼均衡的过程。本次设计也用到均衡,叫直方图均衡。简单地说,就是通过对比度拉伸,扩大前景和背景的灰度差别,增强对比度。下面介绍本次设计如何实现这一均衡。它的关键是在输入图像转换为输出图像的过程中保持像素点数的不变,同时增强对比度。从像素到像素的变换,运用公式:=fA(x,y),其中f(D)称为灰度变换函数,用来描述输入灰度值和输出灰度值),(yxB的转换关系。只要我们确定了变换函数,图像上点的位置便可确定。指纹图像直方图均衡MATLAB程序,如图2-1所示:图2-1直方图均衡程序2.3仿真结果与分析:6(a)输入指纹图像(b)均衡化后图像图2-2输入输出图像比较-5005010015020025030000.0050.010.0150.020.0250.030.035值值值值值值值值值值值值值-5005010015020025030000.0050.010.0150.020.0250.030.035值值值值值值值值值值值值值值值(a)原图像直方图(b)均衡后的图像直方图图2-3图像直方图比较由图2-2和图2-3比较结果可以看出,将指纹图像进行直方图均衡后图像的灰度值变化明显,图像的前景与背景差别也被扩大。原图像直方图在灰度值为80左右的地方开始出现,灰度值180左右的地方出现频率最高;而均衡后的图像灰度值在0阶段便开始出现,在200左右达到最大,可见图像均衡化后其前景和背景灰度差别变大,同时对比度也得到很好增强。7第3章指纹图像的细化3.1指纹图像的预处理不同的指纹图像预处理可以有不同的算法,同一种算法由于指纹图像的差异也可能产生不同的结果。如何编写预处理算法影响指纹识别的整个过程。前文已经进行的指纹图像分割过程同时也产生了许多额外的特征点,在以往的图像增强算法中,由于图像的前景和背景不能完整的分离,导致后面的指纹特征提取和匹配过程都会有很大的误差。所以在指纹图像的细化前,对图像进行预处理必不可少。具体而言,图像的预处理步骤有很多,例如平滑、锐化、二值化等,在本次设计中主要进行的是平滑和二值化处理。首先是增强对比度。方法一般有空域法和频域法两种,空域法是通过增强图像像素提升对比度,处理方法为公式(3.1):g(X,Y)=T(F(X,Y)公式(3.1)式中F(X,Y)是输入的原始指纹图像,灰度范围是m,M,g(X,Y)为处理后的图像,灰度增强过程可用公式(3.2)描述:公式(3.2)nMmYXFnNYg),(),将图像规范处理后,图像均值、图像方差都会在一个特定的范围内。这时我们对图像的点像素公式处理,具体如下公式(3.3):8N(x,y)=公式,),(;),(,+200他VMarroaryxG(3.3)式中:N(x,y)为规范的指纹图像,G(x,y)为原图像,意思是第x行第j列像素所对应的灰度值,和M表示图像的方差和均值,和则分别表示期望方ar0arVM差和期望均值。增强对比度后我们发现,指纹脊线方向的像素点明显增强,其它部分则不同程度的削弱,这可以有效地抑制图像噪声,同时也突出了指纹的细节特征。通过熟悉指纹识别系统的基本结构,可以看出指纹图像的预处理过程占了很大一部分,如图3-1所示。图像增强二值化处理图像细化特征提取特征匹配指纹图像分割图3-1指纹识别系统的基本结构3.2二值化处理第二步是二值化处理。我们知道,图像是由灰度不同的区域构成的,在指纹图像中,可以明显看到有两块不同的灰度区域,即前文所说的脊线区域和谷线区域。脊线比起谷线显示较暗,在图像中显示就是颜色较深,而谷线区域则是图像中明亮的部分。本次设计进行的二值化处理就是通过设定阈值,分别用两个灰度值表示出图像的前景和背景。通过查阅资料,我发现二值化的方法有很多,最常用的有全局阈值法和局部阈值法。全局阈值法,显而易见,就是图像上每个像素区域所使用的阈值都相等,那就是全局阈值,它在位置和灰度方面都有很强的一致性。而局部阈值法,则是不同9像素区域使用的阈值都可能不同,需要对每一块区域选定一个阈值进行分割。本次设计采用的是动态局部阈值化算法,也称自适应阈值化算法。所谓动态就是根据每个像素的灰度值情况,动态计算出分割所需的阈值。接下来便是确定阈值,这是二值化过程中最重要的一个步骤,因为阈值直接影响到分割的精度。本次设计采用的是自适应阈值算法,原理就是根据图像的灰度特性,把图像分成背景和目标(也就是上文所述的前景)两部分,背景和目标类间方差越大,就说明前景和背景之间的图像差别也越大。假设我们把前景错分为背景,或者是背景错分为前景,都可能导致这两部分的差别变小。所以,这种最大类间方差法可以有效提高图像分割的准确率,最终得出较为精确的阈值。根据脊线扩散的特点,我们把扩散看成4n个方向的和。即位于(x,y)处的像素g(x,y)的阈值V(x,y)是由以(x,y)为中心的指纹图像窗口(2n+1)(2n+1)中所有点的灰度值确定的。公式(3.4)表达如下:公式(3.4)nxygyV),(1),(22为了使图像更加连续光滑,本次设计还将二值化后图像中的点进行了修正。假设图像中一个点的像素为1,而它周围只有不到3个点的像素为1,这时就把该点像素修改为0;而当某个点像素为0时,它周围有不少于7个点像素均为1,则把像素值修改为1。可以想象,经过这种修正后的指纹图像更加连续,从而使接下来的图像细化更为便利。3.3图像细化第三步是图像细化。简单而言,细化就是去除图像的边缘像素,让粗细不均的指纹图像转换为线宽一个像素的中心线图像,展现出来的效果就是指纹图像变得更加清晰简洁,便于以后的特征点提取。细化时我们需要选择一个模板。一个是消除模板,就是模板中判定将某一个点去除作为背景;另一个是保留模板,就是根据条件将某点保留作为前景。实际效果就是,可以把原本很粗的图像曲线转化成很细的以像素为单位的线,减少了图像的信息量,有利于下文中特征匹配的高效进行。具体程序如图3-2所示:10图3-2指纹细化程序3.4仿真结果与分析:图3-3指纹二值化图像图3-4主程序运行后的细化图由图3-3和图3-4可以看出,运行得出二值化图像后纹线仍显太粗,而实现指纹识别只需要指纹纹线的走向即可,这时便需要对指纹图像进行细化,得到图3-5的指纹细化图像,细化后的图像去除了不必要的信息,为后文进行的指纹特征提取和匹配提供了方便。11第4章指纹图像的特征提取4.1特征提取概述这一章讲述的是本次设计的特征提取过程。首先,特征提取是计算机视觉中的一个概念,它的关键步骤是通过计算机提取图像信息,看图像的点像素是否为一个图像特征。如果把图像上所有的点看成是一个大的集合,那么指纹图像中那些孤立的点,断开的纹线或者是一小块区域,都可以看做这个集合的子集,特征提取就是在这些子集中找出指纹图像独一无二的点。在进行具体的特征提取操作前,我们需要先确定什么样的点可以作为特征点,也就是特征点的分类。通过查阅资料我发现,对于特征点的定义不完全相同,但有两类最为典型:终结点和分叉点。终结点也可以叫端点,意思是一条指纹纹线在这个点断开。分叉点比较明显,指纹纹线在这个点分开形成两条或两条以上的支线路。其它如孤立点:纹线非常短以至于成一个点;分歧点:两条平行纹线的分开点;环点:纹线分开成两条以后又合并为一条形成一个环等等,一般也作为指纹识别的特征点,具体的示例如下图4-1所示。图4-1纹线特征分类4.2特征提取步骤目前最为常见的特征提取方法有两种。一个是从灰度图像中提取。实际就是跟踪灰度指纹纹线,根据跟踪结果确定特征点的位置,用这种方法可以判断出特征点12的类型,但由于没有进行指纹图像的预处理,加上其算法较复杂,所以本次设计没有采用,而是采用第二种:从细化后的二值化图像中提取特征点。我们知道,二值化后的图像,像素点的灰度值只有0和1两种情况:0表示背景点灰度(白色),1表示前景点,也就是纹线部分灰度(黑色)。在得到可靠的细化二值图像后,我们可以通过一个33的模板将终结点和分叉点提取出来。模板见下图4-2。模板中X表示待检测的点,A1-A8表示该点周围的8个邻域点,其中表示该邻域点的灰度值。具体如图4-2所示。iRA4A3A2A5XA1A6A7A8图4-2如果X是终结点,则它满足公式(4.1):(公式4.1)1=-21=81+iiinRC如果X是分叉点,则公式(4.2)为:(公式4.2)3-81=+iiin由于特征点可以是终结点,也可以是分叉点,因此将指纹图像细化后,首要目的就是找出所有的终结点和分叉点。本次设计便是由自定义的函数P.m对图4-2中8个邻域点的位置进行确定。具体函数程序如图4-3所示。13图4-3定义函数P.m程序如图4-3所示,P函数实现功能即为对8邻域点的位置进行定义,找出指纹图像细化后的所有终结点和分叉点。接下来将该点的8个邻域点两两相减,取其绝对值,并将所得值相加,结果若为2,则认为是终结点,若为6,则为分叉点。据此定义函数point.m,程序如下图4-4所示:图4-4定义函数point.m程序144.3仿真结果与分析:图4-5特征值提取由图4-5运行结果可知,运行上述程序后,所得结果也比较明显,图中标明的便是终结点和分叉点,而指纹识别模块中特征点最为典型的便是这两种,至此我们已经找到两张指纹图像的特征点,相同纹线也用深红色标出,接下来要进行的便是第五章的内容:指纹图像匹配。15第5章指纹图像的匹配5.1指纹图像匹配我们知道,指纹识别的可行性就在于没有两枚指纹是完全一样的。我通过查阅资料得知,如果只考虑局部特征,只需要比对13个特征点,如果这13个特征点均相同,就可以确定这是同一枚手指,这是通过指纹的局部特征进行匹配。这种局部特征匹配方法也是目前较为流行的方法之一,它的特点是从指纹的小区域入手,由于指纹的端点和分叉点非常稳定,所以检测比较迅速而且准确。基于图像特征的匹配方法有明显的优越性,它是利用图像特征点进行匹配,由于图像特征点比像素点少很多,匹配的计算量因此大幅减少,而且图像特征点对于位置的变化很敏感,可以提高匹配的准确性。本文采用的便是目前使用较多的点模式匹配法,就是修改特征点的相对距离,使得各个特征点之间相对距离产生差异。具体来说,我们可以选定一个特征点,将它与周围两个特征点构成一个三角形,则它们三点之间的距离就是各个特征点的相对距离。在找到核心点后,比较它们相对距离的差异,对于满足一定值的点视为可积点,然后判断可积点的个数和相对值。当它们个数满足一定条件即为匹配成功,不满足则为不匹配。本次程序设计有三阶段的匹配:指纹长度匹配;相对距离匹配和特征点匹配。首先是指纹长度匹配。由第4章我们已经得到指纹的特征点和纹线,现在需要测量特征点到该纹线端点的距离,定义函数为distance.m,具体程序如图5-1所示。16图5-1定义函数distance.m程序可想而知,两张图像若为同一指纹,则它们特征点到纹线终点的距离也必然相同,这便是第一阶段的匹配。为了清晰地表明第一阶段两张图是否匹配,函数中定义了字母f=(sum(abs(d1./d2)-1),因为两张图像大小与像素值相同,所以d1与d2的比值应接近1,如果两张图像完全匹配,则最终的结果f应为0,换句话说,f的值越靠近0,两幅图像的匹配度越高。第二阶段的匹配我设置为相对距离的匹配,这是我查阅资料找到的一种匹配方法,也叫全等三角形法。首先是选定一个特征点,找到与其距离最近的另外两个特征点,三个点构成一个三角形,如果两张指纹图像的特征点三角形全等,则可以认为它们在这一阶段匹配成功。接下来便是如何找出距离最近的另两个特征点。函数定义find_point.m,程序如图5-2所示:17图5-2定义函数find_point.m函数为了表明两张指纹图像是否匹配,本次设计在最后的主函数程序中定义了表达值ff=(sum(abs(dd1./dd2)-1),等式类似于第一阶段的f值,如果匹配,则dd1与dd2的比值为1,ff值为0,也就是ff值越接近0,两张指纹图像越匹配。第三阶段是特征点匹配。具体步骤是:先确定一个特征点,找出它周围的20个终结点或分叉点,如果两张指纹图像匹配,则它们终结点所占的比例一定相同。最后的主函数定义了值fff=abs(f11-f21)/(f11+f12)用来表明第三阶段是否匹配,如果指纹图像匹配,上文已经论述过,f11=f21=2,那么fff的值就为0,也就是fff的值越接近0,两张指纹图像越匹配。主函数程序中还调用了前文的一些子程序,所有的程序代码会在论文最后附上。185.2匹配结果与分析:图5-3指纹匹配结果实验一:由图5-3可知,本次匹配过程耗时11.33秒。而通过多次实验我们得出f的阈值为0.5,ff的阈值为1.5,fff的阈值为0.2。即两张指纹图像的f,ff,fff若均小于阈值,则两张图匹配,指纹为同一个指纹,若三个值中有一个值大于阈值,则不匹配,指纹来自不同人。本次设计选取的两张指纹图像,匹配结果f=0.3409;ff=0.5750;fff=0.1220,可以发现三个值均小于设定的阈值,即图像匹配,两张为同一指纹。实验二:由于一组匹配数据没有可比性,本次设计还增加了两次对比实验。通过从数据库中的二十幅指纹图像随机选取,完成指纹匹配。输入指纹图像如图5-4和图5-5所示。19图5-4指纹图像frh1.png图5-5指纹图像frh2.png对输入的指纹图像进行前文所述的一系列处理后,特征提取后得出结果如图5-6所示。图5-6特征提取结果其中红色的端点为满足single_point函数的端点,红色的纹线为沿上述端点走一定距离后的纹线,一部分可以一直走到规定距离(这些即是要找的特征点),还有一部分走到端点或叉点停止。特征提取完成后,再对其进行匹配。结果如图5-7所示:20图5-7实验二匹配结果由上述结果可以发现。f值为1.2349,ff值为1.0736,fff值为0.2683。f和fff的值均大于阈值,所以指纹图像不匹配。最终用时13.04秒。实验三:方法和步骤同上。随机选取不同的指纹图像,最终得出特征提取结果如图5-8所示。图5-8实验三特征值提取最终匹配结果如图5-9所示。21图5-9实验三匹配结果由图5-9结果可知,f值为0.3637,ff值为2.8084,fff值为0.0488,其中ff的值大于阈值,所以指纹不匹配。最终用时16.07秒。通过上述三次实验,可以确定本次设计的指纹识别系统是可靠的,能有效判断出指纹是否吻合并给出判断结果。三次实验所用的匹配时间分别为11.33秒,13.04秒和16.07秒,平均完成匹配的时间为13.48秒,而一般的在软件平台仿真测试的匹配时间需要半分钟,本次设计也较为快速。22第6章总结与展望本次毕业设计主题是指纹识别技术,我选用的软件是matlab2014a。从最开始确定设计题目,到最终的大体完成,将近两个半月。尽管遇到很多问题,我还是按照毕业设计进程安排及时完成了,下面便是本次毕业设计所做的工作。确立题目后,我花费时间较多的便是搜集资料。因为大学期间虽然学过很多相关的应用软件,但是对于指纹识别技术这种专业性较强的课题,我并没有什么概念。所以,在最初阶段我去图书馆翻阅了大量相关资料,还在网络上下载了几本关于实现指纹识别技术的书籍,并最终决定使用matlab编程。实现指纹识别功能有四个关键步骤:图像分割,图像细化,特征提取,特征匹配。我最初完成的便是图像分割。图像分割较为简单,就是把指纹图像本身和图像的其它部分分隔开来,便于后面的细化和特征提取,这也是实现指纹识别的第一步。图像的细化过程则涉及到预处理和二值化处理,本次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论