1、毕业设计毕业论文题目 基于 matlab 的指纹识别院 系 班 级 学生姓名 学 号 指导教师 时间 目录摘要4Abstract4第一章 绪论51.1 研究背景51.2 国内外研究现状61.3 研究的目的和意义81.4 研究内容9第二章 指纹识别系统概述102.1 指纹识别的基本原理102.2 指纹识别系统工作流程102.3 指纹识别技术的方法122.3.1 神经网络指纹识别算法122.3.2 滤波特征和不变矩指纹识别算法122.3.3 指纹匹配算法13第三章 指纹图像预处理153.1 图像规格化153.2 图像分割163.3 图像二值化193.4 图像增强213.5 图像细化23第四张 特征
2、点提取264.1 找出所以的端点和交叉点264.2 纹线光滑处理284.3 去除图像边缘和端点294.4 找出特征点304.4.1 single_point 函数304.4.2 walk 函数324.4.3 last1 函数.33第五章 特征点匹配.355.1 纹线长度匹配355.2 三角形边长匹配355.3 点类型匹配36第六章 实验过程.38第七章 总结.45参考文献45致谢47摘要随着生物识别技术不断发展,人们发现每个人的指纹都有唯一性和不变性的特点。因此指纹识别技术正在逐步发展为一种新的身份识别方式,并且凭借它良好的安全可靠性,大有可能取代传统身份识别方式的趋势。本文简单介绍了指纹识别
3、的基本步骤,分别是指纹的图像预处理、指纹特征提取、指纹匹配。在图像预处理中,依次介绍了规格化处理、图像增强、二值化处理和细化处理的方法。预处理后将得到一幅宽度为一个像素的细化二值图像,然后通过特定的端点和交叉点的特征进行指纹匹配。论文中采用MATLAB 编程实现全部算法。关键词:指纹识别,图像处理,特征提取,特征匹配AbstractWith the continuous development of Biometric Identification Technology,People found that each persons fingerprint has uniqueness and
4、invariant.Therefore Fingerprint Identification Technology gradually developed as a new identity recognition mode,and with its good safety and reliability,it has replaced the traditional identification way trends.This paper briefly introduces the basic step of Fingerprint Identification,they are Fing
5、erprint image preprocessing, Fingerprint characteristic extraction,Fingerprint matching.In the Fingerprint image preprocessing,in turn introduced the normalized processing, Image enhancement, Binary treatment and Refining processing method.After pretreatment will get a picture for a pixel width of t
6、wenty-first-century binary image,then through the particular endpoint and intersection on the characteristics of the Fingerprint matching.This paper using Matlab programs all algorithm.Key words Fingerprint identification Image processing Feature extraction Feature matching第一章 绪论1.1 研究背景随着网络信息化时代不断的
7、迅速的发展,个人身份信息的数字化和隐性化水平也得到了很大的提高。如何准的确鉴定一个人的身份,保护信息安全也就成为了当今信息化时代中一个必须解决的关键性的社会问题。在目前,我国的各种信息的管理大部分还使用证件、磁卡、IC 卡和密码等,然而这些手段却无法避免伪造或遗失,而且密码也很容易被别人窃取或者遗忘。这些都会给管理者和使用者带来极大的不方便。而生物特征身份识别的方法却可以避免这些麻烦。因此,生物特征识别技术已经成为身份鉴别领域和研究的新热点。生物特征识别(BiometriCS)技术是指通过计算机利用人体所固有的生理特征或行为特征来进行的对个人的身份鉴别。因为生理特征是与生俱来,多为先天性的;而
8、行为特征则是习惯使然,多为后天性的。所以将生理和行为特征统称为生物特征,而用于身份鉴别的生物特征应具有普遍性,即所有人都具有这一特征; 而且生物特征识别技术还具有唯一性,是因为不同人的生物特征都各不相同; 生物特征识别技术还具有稳定性,这就意味着它不随时间、外界环境等的变化而发生改变;此外生物特征识别技术还具有可接受性,利用这一特征来进行人体身份鉴别可以被人们接受和认可; 最后生物特征识别技术还具有防伪性,是因为它这一特征不易被仿造和窃取。目前,常见的生物特征识别的手段主要有人脸、指纹、声音、手形、手部血管分布、虹膜、视网膜、手写体、和脸部热量图等等。它们当中有的已逐步得到应用和推广,有的还仅
9、仅处于实验研究的阶段。其中,人脸、指纹、虹膜、视网膜、手形、手部血管分布和脸部热量图等这些属于生理特征,手写体属于行为特征,而声音则兼有这两方面的属性。下面主要是对其中的指纹识别技术作的介绍和研究。指纹识别技术的原理是根据不同人的指纹不同,同一个人的不同手指的指纹也不同,而且纹线走向及纹线的断点和交叉点等都是各不相同的,也就是说,每一个人的指纹都具有唯一性。此外,人的指纹不会随年龄的增长而发生变化,是终生不变的。所以依靠这种唯一性和稳定性,可以将一个人身份和信息同他的指纹对应起来,只要通过对他的指纹和预先保存的指纹进行比较,用计算机进行快速的识别,就能很快的验证他的真实身份。达到一种身份识别认
10、证的效果。指纹用于身份鉴定的历史悠久。在很早的古叙利亚和中国,指纹鉴别早就己经开始应用了。在 19 世纪初,科学家通过研究发现了至今仍然承认的指纹的两个重要的特征,第一个是两个不同手指的指纹纹线的式样不同,第二个是指纹纹线的式样终生不变。这个研究成果使得指纹在犯罪鉴别中得以正式应用。在早期的指纹识别仅仅依靠人工对比方式进行。但因为指纹结构的复杂性及对指纹识别要求的严格性,从而导致了人工识别指纹的难度性变得很大、速度变得很慢而且识别准确性也受专家经验的制约,这种人工识别技术远远不能适应实际工作的需要。在 20 世纪 60 年代,随着计算机图像处理技术的诞生、不断发展和进步,新的图像处理模式识别方
11、法的日臻完善,人们开始着手研究如何利用计算机来处理指纹识别。从那时起,自动指纹识别系统(AFIS:Automated FingerprintIdentification System)在法律实施方面的研究和应用在世界许多国家开始展开。在 20 世纪 80 年代,个人电脑、光学扫描这两项技术的突破性发展,使得它们作为指纹取像的工具成为了现实,从而使指纹识别可以在其他领域中得以很大的应用,比如代替 IC 卡,普通锁等。在 20 世纪 90 年代后期,低价位的取像设备引入及其飞速发展,可靠的比对算法的发现为个人身份识别应用的增长提供了舞台。据统计,到了 20 世纪末,全世界生物识别技术市场约为 1.
12、56亿美元,其中指纹识别技术约为 1.2 亿美元,这标志着指纹识别是当前最成熟最稳定的技术之一,并且是应用领域最广泛的生物识别技术。1.2 国内外研究现状 指纹的应用可以追溯到几千年以前,而指纹学真正成为一门学科,却只有百余年的历史。指纹应用可以分为以下三个时期。第一时期:摸索时期;据考证,我国已经发现 6 千多年前的陶器上留下的指纹。中国是运用指纹最早的国家之一,古代军队就设有箕斗花名册。在古代罪犯的供词也以通过捺印指纹为证。在周代,指纹被用于民间契约的签署等。指纹在侦察断案中也有着 2 千余年的应用历史。而外国的指纹应用要比我国晚得多,巴比伦与西腊人,在公元前 2 世纪在陶器上捺印指纹,
13、用于鉴别。据考证,埃及、罗马、印度这些具有悠久历史的国家应用指纹也有上千年的历史。第二时期:指纹科学化时期;这一时期是从 17 世纪 80 年代开始的。1684年,英国医学博士格留第一次对指纹做了详细的分类。1860 年英国驻印殖民地行政长官威廉.赫谢尔,也开始进行犯罪指纹登记实验,提出了指纹“人各不同,至死不变”的观点,他对指纹进行了详细的分析和建立了明确的分类方法。从此,指纹研究逐步走向科学化的轨道。然而指纹正式作为一种刑事登记制度最先始于英国。1892 年英国的高尔顿研究指纹,最早提出了利用指纹进行刑事登记的方法。1895 年,英国采用高尔顿的研究成果,开始实行指纹登记制度。1897 年
14、,英国爱德华.享利发明了指纹二部分析法,使指纹的分析、储存、查对逐渐趋于完善。1901 年,英国政府正式采用了享利指纹分析法。从此以后,指纹的登记制度逐渐被世界各国重视和广泛运用,并沿袭至今。而在 1903 年,中国青岛市警察局首次应用汉堡式指纹法。此后我国相继开展了指纹的研究及应用,还曾建立过“指纹学会”。刘紫宛编写的 中华指纹法一书是我国最早的指纹专著。全国解放后,我国对指纹识别技术研究一直比较重视。1955 年编制了中华人民共和国十指纹分析法 。这可以说是我国指纹的科学时期。第三时期:现代化、自动化时期;这一时期是从本世纪 60 年代开始的。随着现代科学技术的不断发展,指纹技术的应用迅速
15、地实现了现代化和自动化,例如:指纹的电子计算机应用,使储存、查对、鉴定开始走向半自动化和自动化的轨道。半自动管理:是采用人工或人与机器相结合的半自动方式分析指纹,把人工鉴定方法计算机化。实施的步骤是:借助于带有投影屏幕的指纹分析仪或光笔,将十指纹型、中心纹线的形态、中心花纹的特征数字加以表述。再用电子计算机自动化储存和查对。全自动化管理:不仅指纹储存和查对采用自动化的方式,而且指纹分析也由电子计算机自动进行图像识别。利用电子计算机管理指纹的方法早已在美国、日本、南非、罗马尼亚、德国等国实施,采用的方法有图像检查法和编码检索法这两种。法国的 CIMSA 公司和 M0R-PH0SYSTEMS 公司
16、为了提高工作的效率,还研制出了用于获取指纹、处理存贮和比较检索的整套指纹处理装置,主要用于对犯罪记录、图像存贮、传输照片、指纹、十指卡和现场指纹的犯罪检索等方面。该系统还包括对指纹自动化分析系统和数字数据系统。指纹自动分析系统的基本功能是获取指纹(图像处理) 、编码(特征点检索) 、识别(根据参照指纹检索) 、证实(难证检索结果) 。数字数据系统的主要功能是能满足主管民事案件或刑事案件调查的各种指纹处理要求。这种设计的主要优点是系统化、简便化、灵活化,而且改进安装;同时,集中和分散的控制结构,具有添加处理器和专用外围设备的扩展能力;由于它的安全性和开发利用的方便,使得非专业人员也能轻松运用这种
17、系统开展工作,在不必全部重新组织原有系统的情况下,也能适应用户的工作方式和满足开发等需要。日本的电气公司(NEC)发明了由计算机控制的指纹取样装置(FAIS),可使调查人员在极短的时间内将现场提取的指纹与过去有犯罪前科犯人的指纹档案进行快速比较,速度达到每秒钟检索 650 枚指纹。扫描器可以用不到 3 秒钟的时间进行分析、记录下乳突纹线和纹形等指纹的细微特征。然后,调查人员将分析到的资料输入带有图像屏幕的具有高分辨能力的监控器中,操作者根据监控器和计算机提供的大量资料处理模糊的指纹,纠正变形,采用外推法将一枚残缺指纹修复成一枚完整的指纹。经过处理后的模糊指纹,被另外贮存于“光盘”中。操作者再将
18、“光盘”输入由微处理机驱动的分析器作指纹比较。分析器每分钟可滤过万枚指纹,并告诉调查人员哪一级十指指纹与现场提取的指纹最接近,以便于指纹专家做最后的判断。1984 年 2 月,美国旧金山警察局用 160 万美元装备了“指纹自动识别系统 ”,六年成功识别指纹一千多例。而在 1990 年以前,旧金山警察局平均每年查对指纹案例仅仅能成功 70 例。这套“指纹自动识别系统”还配有远距离终端,警察在终端也能进行指纹检索。我国从 60 年代起,也开始了对手指纹管理现代化的工作,而在目前,我国已经基本上形成了一个指纹工作网,在指纹理论研究上也取得了重要的成果,指纹的应用已经日益广泛起来。如民间把捺印指印作为
19、合同和证件的凭证;在公安司法部门已经把指纹作为证实犯罪的证据;在医学方面,指纹还用于诊断遗传病症等。特别是在 90 年代后期,西安交大、清华大学先后开发了指纹自动识别系统,指纹门禁系统、指纹考勤系统等。使指纹个人身份识别系统得到了实际运用,此外,美国国家银行还根据这一技术将在 21 世纪初建成全国的个人身份认证网络系统。1.3 研究的目的和意义指纹识别作为一种现代生物鉴定技术,为人类的个体身份的鉴定提供了一个到目前为止最为快捷和最为可信的方法。随着指纹识别的应用和普及,人们之间的信任成本将大大降低,也大大提高了人类社会活动的效率。在信息时代的今天,一种安全便捷的身份认证方式显得越发重要。 “在
20、网络上,没有人知道你是一只狗”在这种情况下,任何基于网络环境下的交往活动都被蒙上了一层技术意义的灰色。这是不可避免的,所有基于这种网络技术基础之上的经济活动也因此被深深打上了不真实性和不被信任的烙印。面对如此伟大的技术,而人类对它的应用却仅仅局限于虚拟网络群落中的狂欢,而不能真正对经济交往模式和效率起到推动作用,对此实在是遗憾。对于想从事和已经从事网络商务的公司来讲,确认交易人的身份是解决信用问题的第一步,而且也是最重要的一步。例如:对于网上交易最大的商家-淘宝来说,它能做的仅仅是通过身份证注册来保证交易人身份,这样的确是降低了身份冒用的及率,但不能不说这道防线是非常脆弱的。盗用他人身份证到淘
21、宝上注册来骗取货款的案例也是层出不穷。再例如:阿里巴巴这样的大型 B2B 网站,即使他们在授予“诚信通”之前会对企业的注册资料等方面做详尽评估和考察,但是谁又能保证后续的交易者就是企业本身呢?毕竟, “诚信通”不能保证使用者的帐号和密码不会被不法分子盗取。这正是电子商务所面临的困境和瓶颈。Paypal 已经推出了通过指纹识别来进行网络支付。相信随着技术成熟和应用成本降低,除了支付之外的任何网络信任问题都可以指纹识别得到极大改善,从而会大大提高人们在信息时代的行动效率。从生物测量的角度而言,指纹识别将会是一种非常理想的工具,用来定位一个人基本的社会坐标原点。每一个人,都具有非常复杂的社会角色和社
22、会关系。在公司的时候,你可能是经理、员工等工作性角色;回到家,你就是丈夫、孩子、爸爸、叔叔、哥哥等血缘性角色;当参加公司年度运动会时,你又是一名百米跑运动员。所有这些角色都是基于你的生物测量基础上的。所以社会公共管理中,必须有一个基础变量来确认一个人的基本身份。在过去的很长一段时间里,我们是通过户籍制度来进行管理和定义一个人的,每一个人从出生到死亡都是根据其出生地来定义和追溯其身份的。这种方式的随意性很大,防伪性也很差,容易引起管理上的漏洞。在现实生活中,有些内地考生为了取得成绩优势,到偏远省份重新办理一套身份系统,包括户口、身份证、档案等。在这种情况下,一个人的真实身份是很难被分辨的。而指纹
23、识别作为一个人基本社会角色定位点,其方便性和准确性已经得到了全世界范围内的认可。可以通过各种各样的指纹识别系统,使社会公共管理的职能得到强化,效率得到提高。例如原来的养老保险系统,冒领保险金现象较为严重。但随着越来越多的地方实施了指纹养老金发放系统,这一现象得到了彻底的改善,没有当事人的指纹,对应的养老金是不可能被领取的。在深圳罗湖口岸,指纹认证的出入境系统实施大大的提高了通关效率,过关的旅客再也不需要拿着身份证排着长队等待检查了。指纹识别技术承载了很多的社会意义,从最根本上来讲,指纹识别技术是可以良好的来判断和定义一个人的真实生物身份。从而大大降低了社会活动中的信任成本,从根本上改变经济交易
24、和社会交往模式改变,大大提高效率。指纹识别作为一种新的生物鉴定技术,为人类的个体的定义提供了一个到目前为止最为快捷和最可信的方法。随着指纹识别技术的越来越成熟,图像处理及模式识别界曾一度被认为自动指纹识别问题已经得到很好的解决。但实际上,指纹识别的核心技术仍然存在许多尚未解决的难题,尤其是对残缺、污损指纹图象进行识别的鲁棒性和适应性方面还远远不能令人满意。而指纹识别系统将会随着更小更廉价的指纹输入设备的出现、计算能力更强更廉价的硬件以及互联网的广泛应用而得到进一步拓宽应用。其中,能适应在线应用的自动指纹识别系统的算法还有待进一步改进和提高,多种指纹识别方法的集成应用以及包括指纹识别在内的多种生
25、物特征鉴定技术的集成应用也将会是今后研究的发展方向。因此,自动指纹识别技术现在是,未来几年仍将是一个非常重要的、极具挑战性的模式识别研究的课题。1.4 研究内容1)本文简要介绍了指纹识别的历史及研究现状,并针对当前实际情况,提出了指纹识别研究的目的和研究意义。2)本文对指纹识别技术进行了详细的论述,其中包括:指纹识别系统的流程;指纹图像的预处理方法(灰度分割、图像滤波、二值化、细化等) ;指纹图像特征提取;指纹图像匹配(中心点定位、建立特征模板、特征点向量匹配) 。3)本文通过 Matlab7.0 软件对指纹识别系统进行软件仿真。得到的实验结果效果良好。经过一系列的识别过程,基本能体现出良好的
26、匹配结果。第二章 指纹识别系统概述在十九世纪初,科学研究发现了至今仍然承认的两个重要特征:一个是两个不同手指的指纹纹脊的样式(Ridge Pattern)不同,另外一个是指纹纹脊的样式终生不变。这个研究成果使得指纹在犯罪鉴别中得以正式应用。到了二十世纪六十年代,由于计算机可以有效地处理图形,于是人们开始着手研究计算机来处理指纹,自动指纹识别系统 AFIS 在法律实施方面的研究与应用有就由此诞生了。2.1 指纹识别的基本原理指纹识别其实是比较复杂的。与人工识别处理方法不同,许多生物识别技术公司并不直接存储指纹图像。多年来在各个公司及其研究机构产生了很多数字化的算法(美国有关法律认为,指纹图象属于
27、个人隐私,因此不能直接存储指纹图象) 。但指纹识别算法最终都归结为在指纹图象上找到并比对指纹的特征。1指纹的特征我们定义了指纹的两类特征来进行指纹的验证:总体特征和局部特征。在考虑局部特征的情况下,英国学者 E.R.Herry 认为,只要比对 13 个特征点重合,就可以确认为是同一个指纹。总体特征:总体特征是指那些用人眼直接就可以观察到的特征,包括:基本纹路图案环型(loop),弓型(arch),螺旋型(whorl) 。其他的指纹图案都基于这三种基本图案。因此仅仅依靠图案类型来分辨指纹是远远不够的,这只是一个粗略的分类,但通过分类后使得在大数据库中搜寻指纹更加方便。局部特征:局部特征是指指纹上
28、的节点的特征,这些具有某种特征的节点称为特征点。两枚指纹常常会具有相同的总体特征,但它们的局部特征-特征点,却不一定完全相同。2指纹的特征点指纹纹路并不是连续的、平滑笔直的,而是经常出现中断、分叉或打折。这些断点、分叉点和转折点就称为“特征点” 。就是这些特征点提供了指纹唯一性的确认信息。2.2 指纹识别系统工作流程指纹识别技术主要涉及四个功能:读取指纹图象、提取特征、保存数据和比对。首先,指纹要通过指纹采集设备(常见的有光学取像设备、超声波扫描取像设备、晶体传感器,现在广泛使用的是晶体传感器)转化为计算机内的数字图像(一般为灰度图)。由于采集过程中难免因手指或仪器的原因而使图像存在较多的噪声
29、,所以为了使图像更清晰以便于后续特征提取,必须对采集到的图像进行增强和滤波,并进一步二值化、细化 5。之后,在细化后的点线图上提取特征值,删除伪特征值,最终得到用于匹配的细节点。采集到的图像细节点与模板中的细节点进行比对,最终完成指纹匹配。各个环节环环相扣,对整个系统都起着十分重要的作用。本文着重研究了图像预处理和细节特征提取这两个关键部分。接下来,指纹辨识软件会建立指纹的数字表示特征数据,一种可以单方向的转换,将指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。软件从指纹上找到被称为(minutiae)的数据点,也就是那些指纹纹路的分叉、终止或打圈处的坐
30、标位置,这些点同时具有七种以上的唯一性特征。因为通常手指上平均具有 70 个节点,所以这种方法会产生大约 490 个数据。有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总的来说,这些数据,通常称为模板,保存为 1K 大小的记录。无论它们是怎样组成的,至今仍然没有一种模板的标准,也没有一种公布的抽象算法,而是各个厂商自行其是。最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。指纹识别系统框图如图 2.1所示。指纹采集图像预处理特征提取特征匹配指纹识别指纹库图 2.1 指纹
31、识别系统工作原理框图2.3 指纹识别技术的方法本文重点研究了基于神经网络的指纹识别算法、滤波特征和不变矩指纹识别算法和指纹匹配算法,针对已有的三种指纹识别算法进行编程识别,通过Matlab7.0 软件仿真,从而进一步论证三种算法的优缺点。用 Matlab 实现这种方法,既能分步对指纹图像预处理算法进行仿真测试,又可以很直观地看到图像预处理算法的效果。实验证明,用 Matlab 实现的处理结果比较理想,满足识别的应用性。本文介绍用 Matlab 实现了指纹图像的对比度增强、有效区域的选取、指纹图像的二值化、指纹的特征值提取,特征点匹配等。并选取较好的处理步骤和算法参数解决指纹图像预处理的问题。2
32、.3.1 神经网络指纹识别算法用神经网络的方法进行识别选用哪种特征是个关键问题而考虑到本文这里的识别过程是在同类型指纹间进行的这些指纹具有相似的纹线走向指纹的方向信息在这里就显得无关紧要了,通过对同类型指纹的分析,发现了它们差别主要体现在具体的每个细节点上,因此本文就提取了指纹的细节点特征作为识别特征每个样本提取的细节点特征是一个 801 维的向量包含 20 个特征点每个特征点的特征值是个 4 维的向量分别是特征点的类型特征点与参考点的纹线方向差值特征点与参考点的距离特征点与参考点的角度我们认为特征点的这些信息即可充分体现同类型指纹间的细微差别也同时具有一定的抗平移和抗旋转性。本文采用的是学习
33、矢量量化 LVQ 神经网络模型 LVQ 神经网络由于其自身的自组织和聚类特性可以很好地给出模式在多维空间的概率分布估计从而可较好地完成指纹的识别,其识别模型如图 2.2 所示.图 2.2 基于神经网络的自动指纹识别模型2.3.2 滤波特征和不变矩指纹识别算法滤波特征识别算法:指纹图像特征的表示要求必须满足尺度不变性、 位移不变性和旋转不变性这 3 个特征。尺度不变性是满足的。在滤波提取算法中,位移不变性是通过确定指纹图像的中心参考点来实现的。 图像的旋转不变性可以通过在匹配阶段建立多角度旋转特征向量来实现。滤波特征的提取算法包括 4 个步骤: 一是:确定指纹图像的中心参考点,以及要处理的指纹区
34、域,记为ROI 区域; 二是:以参考点为中心, 对 ROI 区域进行划分, 得到一定大小的块;三是: 用一组 Gabor 滤波器在八个不同的方向对 ROI 区域进行滤波运算(在指纹图像中,完全获取指纹的局部脊线特征需要使用 8 个方向滤波器, 获取全局结构信息仅需要 4 个方向滤波器) ;四是:在滤波图像中,计算每一块中灰度值相对于均值的平均绝对偏差, 进而得到特征向量或特征编码。基于滤波特征的指纹识别算法,首先对指纹图像进行滤波特征提取,然后在滤波特征值构成的特征向量的基础上进行匹配。不变矩识别算法:算法的基本思路是:搜索预处理后的二值图像中所有可能成为目标的区域,计算区域的 7 个不变矩特
35、征,认为与模板匹配程度最高的区域为目标。其中相似度度量采用欧式距离。2.3.3 指纹匹配算法指纹匹配指的是指纹特征值比对过程。它是把当前取得的指纹特征值集合与事先存好的指纹特征值模板进行匹配的过程。指纹匹配是一个模式识别的过程,指纹匹配判定的标准不是相等或不等,而是相似的程度。这个程度的判定依赖于事先设定的阈值,以及与判定时比较的特征点的个数。阈值取的合理,特征点取的越多,误判的机率就越小。指纹匹配的方法有很多,包括基于奇异点的匹配、嵴模式的匹配、特征点的匹配、特征点线对(两个特征点的连线)匹配,以及特征点组的匹配方法等等。在指纹匹配之前需要作出指纹定位。指纹定位是使待验证指纹的数个细节点的坐
36、标值与指纹库中的数个细节点的坐标值一一相互对准的过程,从而使两个指纹图像对准重合。由于在指纹采样时,用户手指每次放置的位置和角度不同,形成的指纹图像也略有不同,因此各个指纹特征值的坐标值也就不同。主要表现为手指平移和旋转的差异,形成平移误差和旋转误差。解决指纹图像的平移误差和旋转误差是指纹比对算法面对的首要问题。可以选取奇异点作为对准参数,也可以选择某一区域内的特征点及嵴方向、嵴密度作为对准参数。实际上,在除了处理两种误差之外,在指纹采集过程中,由于每次按压的力度不同而形成的指纹图像挤压变形和拉伸变形,同样是指纹匹配之前需处理的。下图为基于混合模式的指纹识别算法的流程图。图 2.3 混合模式匹
37、配算法流程图第三章 指纹图像预处理3.1 图像规格化因为受采集设备参数和环境的影响,采集到的指纹图像可能总体的对比度会比较差。图像归一化的作用就是使所有指纹图像具有相同的灰度均值和方差,从而使每一幅图像的灰度调整到统一的范围,方便后续的处理。归一化的算法是:(1) 先计算图像的平均值和方差。这部分工作主要通过统计图像中各点像素值得到该图像的直方图完成的,然后利用直方图来计算指纹图像的相关指标。 10()(,)HWijMIIi120()(,)(ijVarIIijMI(2) 指定期望经过处理后的图像均值和方差,计算归一化后的图像 G。200 200(,)(,)(,),VarIijIijGijijo
38、thersr图像规格化的 Matlab 程序如下(其中方差取 Var0=2000,M0=150):% 归一化M=0;var=0;for x=1:mfor y=1:nM=M+I(x,y);endendM1=M/(m*n);for x=1:mfor y=1:nvar=var+(I(x,y)-M1).2;endendvar1=var/(m*n);for x=1:mfor y=1:nif I(x,y)=M1I(x,y)=150+sqrt(2000*(I(x,y)-M1)/var1);elseI(x,y)=150-sqrt(2000*(M1-I(x,y)/var1);endendendfigure, i
39、mshow(uint8(I) ;带入指纹图像zhiwen1.bmp后得到的原始图像和归一化图像见图 3-1 和图 3-2:图 3-1 原始指纹图像 图 3-2 规格化后的指纹图像3.2 图像分割指纹图像通常包括纹线区域和周边的无用区域。如果保留这些无用区域,就会致使计算冗余度增加。因此要先将其从待处理区域中去除。通常用的分离方法有像素领域特征的方法和基于像素分布概率的方法等。本文采取对各像素邻域特征进行分析,然后分割图像算法。把图像分成 T*T 的非重叠块,计算每一块的灰度均值 M 和方差 Var,通过下列条件区分前景与背景:(1) 如果 MM1 且 Var=Var1,则认为前景,否则待定;(
40、3) 对所有分块划分完毕后,在对待定块进行判决。如果在 8 邻域中,背景景小于等于 4 则认为是前景,否则是背景在编程过程中通过几次调试后对图像进行 3*3 分块处理Matlab 程序如下:% 分割M =3; %3*3H = m/M; L= n/M;aveg1=zeros(H,L);var1=zeros(H,L);% 计算每一块的平均值for x=1:H;for y=1:L;aveg=0;var=0;for i=1:M;for j=1:M;aveg=I(i+(x-1)*M,j+(y-1)*M)+aveg;endendaveg1(x,y)=aveg/(M*M);% 计算每一块的方差值for i=
41、1:M;for j=1:M;var=(I(i+(x-1)*M,j+(y-1)*M)-aveg1(x,y).2+var;endendvar1(x,y)=var/(M*M);endendGmean=0;Vmean=0;for x=1:Hfor y=1:LGmean=Gmean+aveg1(x,y);Vmean=Vmean+var1(x,y); endendGmean1=Gmean/(H*L);%所有块的平均值Vmean1=Vmean/(H*L);%所有块的方差gtemp=0;gtotle=0;vtotle=0;vtemp=0;for x=1:Hfor y=1:Lif Gmean1aveg1(x,y
42、)gtemp=gtemp+1;gtotle=gtotle+aveg1(x,y);endif Vmean1G2 1 1 1;1 1 1;%模板系数 均值滤波Im=double(I);In=zeros(m,n);for a=2:m-1;for b=2:n-1;In(a,b)=Im(a-1,b-1)*temp(1,1)+Im(a-1,b)*temp(1,2)+Im(a-1,b+1)*temp(1,3)+Im(a,b-1)*temp(2,1)+Im(a,b)*temp(2,2)+Im(a,b+1)*temp(2,3)+Im(a+1,b-1)*temp(3,1)+Im(a+1,b)*temp(3,2)+
43、Im(a+1,b+1)*temp(3,3);endendI=In;Im=zeros(m,n);for x=5:m-5;for y=5:n-5;sum1=I(x,y-4)+I(x,y-2)+I(x,y+2)+I(x,y+4);sum2=I(x-2,y+4)+I(x-1,y+2)+I(x+1,y-2)+I(x+2,y-4);sum3=I(x-2,y+2)+I(x-4,y+4)+I(x+2,y-2)+I(x+4,y-4);sum4=I(x-2,y+1)+I(x-4,y+2)+I(x+2,y-1)+I(x+4,y-2);sum5=I(x-2,y)+I(x-4,y)+I(x+2,y)+I(x+4,y);
44、sum6=I(x-4,y-2)+I(x-2,y-1)+I(x+2,y+1)+I(x+4,y+2);sum7=I(x-4,y-4)+I(x-2,y-2)+I(x+2,y+2)+I(x+4,y+4);sum8=I(x-2,y-4)+I(x-1,y-2)+I(x+1,y+2)+I(x+2,y+4);sumi=sum1,sum2,sum3,sum4,sum5,sum6,sum7,sum8;summax=max(sumi);summin=min(sumi);summ=sum(sumi);b=summ/8;if (summax+summin+ 4*I(x,y) (3*summ/8) sumf = summ
45、in;elsesumf = summax;endif sumf bIm(x,y)=128;elseIm(x,y)=255;endendendfor i=1:mfor j =1:nIcc(i,j)=Icc(i,j)*Im(i,j);endendfor i=1:mfor j =1:nif (Icc(i,j)=128)Icc(i,j)=0;elseIcc(i,j)=1;end;endendfigure,imshow(double(Icc);title(二值化 );得到的二值化图像如图 3-5:图 3-5 二值化后的图像3.4 图像增强在当前的指纹采集条件下,不可避免的会受到环境,包括皮肤上的油脂、水
46、分、污渍的影响等,使采集到的指纹图像出现纹线粘连、纹线断裂等缺陷,这会对后续的指纹特征提取带来很大困难。所以我们必须对指纹图像进行图像增强处理,例如分离粘连的纹线,连接断裂的纹线,平滑纹线的边缘等,以保证指纹特征提取的可靠性。实验中进行了初步去除空洞和毛刺的处理,程序如下:u=Icc;m,n=size(u) %去除空洞和毛刺for x=2:m-1for y=2:n-1if u(x,y)=0if u(x,y-1)+u(x-1,y)+u(x,y+1)+u(x+1,y)=3u(x,y)=1;endelse u(x,y)=u(x,y);endendendfigure,imshow(u)%title(去除毛刺 )for a=2:m-1for b=2:n-1if u(a,b)=1if abs(u(a,b+1)-u(a-1,b+1)+abs(u(a-1,b+1)-u(a-1,b)+abs(u(a-1,b)-u(a-1,b-1)+abs(u(a-1,b-1)-u(a,b-1)+abs(u(a,b-1)-u(a+1,b-1)+abs(u(a+1,b-1)-u(a+1,b)+abs(u(a+1,b)-u(a+1,b+1)+abs(u(a+1,b+1)-u(a,b+1)=1%寻找端点if (u(a,b+1)+u(a-1,b+1)+u(a-1,b)*(u(a,b-1)+u(a+1,b-1)+u(a