当前位置:   article > 正文

指纹识别算法的matlab实现_指纹识别图像预处理

指纹识别图像预处理

指纹识别算法的matlab实现

摘 要  由于指纹所具有的普遍性,唯一性和不变性,以及指纹识别技术具有很高的可行性和实用性,使之成为目前最流行、也最可靠的个人身份认证技术之一。

本文主要对指纹图像进行三方面处理:图像预处理、特征提取和特征匹配。图像预处理包括四个步骤:图像分割、滤波增强、二值化、细化,对指纹图像进行预处理后,去除了原图像的冗余部分,方便后续的识别处理;特征提取主要是提取指纹图像细化后的端点和分叉点;特征匹配是利用两个指纹的图像进行特征点比较,来确定两幅图像是否来自于同一手指。

本文给出了指纹图像预处理、特征提取、特征匹配的matlab程序及处理结果。该结果证明,用matlab实现的这些算法的处理结果比较理想,满足识别的可行性和应用性。

关键词  分割,二值化,细化,特征点提取,匹配,Matlab

Abstract

Because of the universality, uniqueness and constantness of a fingerprint, and fingerprint identification technology has very high feasibility and practical applicability, make it to be one of the most popular, and most reliable personal identity authentication technology.

This paper focuses on three aspects of the fingerprint image processing:image preprocessing, feature extraction, feature matching. Image preprocessing including four steps: image segmentation, filtering, binary, Refining, after The fingerprint image preprocessing, in addition to the original image of redundancy part, convenient subsequent identification processing; The main feature extraction is extracted from the end of the fingerprint image after thinning and bifurcation point; Feature matching is use two fingerprint image feature point is to determine whether the two images from the same finger.

This paper provides the fingerprint image preprocessing, feature extraction, feature matching use matlab and handling results, The results prove that these algorithms had ideal results be used by matlab,, Be satisfied with the recognition and feasibility of the application.

 Key Words: Segmentation, Binary, Refining, Feature point extracting, Matching, Matlab

目录

1 绪论

1.1 指纹识别概述

1.1.1 研究背景及意义

1.1.2 国内外研究状况

1.2指纹识别的原理和方法

1.2.1 指纹的基本知识

1.2.2 指纹识别的原理及应用

1.3 Matlab在指纹识别中的应用

2 指纹图像预处理

2.1图像的分割

2.1.1 图像归一化

2.1.2 图像分割的方向法

2.1.3 图像分割的方差法

2.2 图像的二值化

2.2.1 方向图

2.2.2 指纹图像二值化

2.2.3 静态阈值二值化

2.2.4 基于方向场的二值化

2.3 指纹图像的滤波

2.4 图像细化

2.4.1 快速细化算法

2.4.2 改进的OPTA算法

3 图像特征提取和特征匹配

3.1 特征点提取

3.2 找出特征点

3.3 特征点匹配

总结与展望

   

参考文献

附录A 预处理代码

附录B 特征点提取代码

附录C 图像特征点代码

附录D 特征点匹配代码

 1章 绪论

1.1 指纹识别概述

21世纪是信息化时代,在这个特殊的时代,我们的生活中电子设备越来越多,比如,笔记本电脑,ATM取款机,考勤系统,门禁系统和各种智能卡,网络中的网上银行,人人网账号等,都需要验证身份。对个人身份识别技术的要求不断提高,如果没有安全可靠和快捷的身份识别技术,电子商务、网上购物等就存在重大隐患。目前许多身份验证系统都采用“用户名+密码”的方式来进行用户访问控制[1],但此方法存在诸多隐患,比如密码被窃取、破解或遗忘。因此我们在与机器交互时急需一种准确、安全快捷的识别技术来取代现有的身份验证。

1.1.1 研究背景及意义

因为人的一些特殊的生物特征,人们把身份认证技术的目光转向了生物特征的识别技术。生物识别技术是利用人体生物特征进行身份认证的一种技术,它主要有指纹、手形、脸形、声音、虹膜、视网膜、签名、掌纹、和脸部热谱图等,在生物识别技术中指纹识别技术是目前相对成熟的一种。

1.1.2 国内外研究状况

指纹是人特有的一种特征,在中国的研究也有近百年的历史,中国被认为是世界上最早应用指纹识别技术的国家,指纹识别技术从很早以前的人工比对到现如今采用先进的计算机技术实现指纹的识别,使得指纹对比比以前更加准确,识别效率得到了非常大的提高。

在国外,经过几十年的发展,指纹识别技术的软件和硬件相对来说都比较成熟。在很多国家内,政府用法律强制性的规定来保证生物识别技术的应用。所以总体上来说,国外的指纹识别应用己经进入了正规的应用阶段。

但是在国内,经过了十多年的发展,指纹识别的一些关键算法是有了较大的提高和发展,但是距离国外的优秀算法仍然有非常大的差距,因此国内的应用现在处于发展的初期,应用主要集中在自发性的企业上。

指纹识别的应用前景是非常广阔的,它的应用将渗透到社会生活,经济贸易的每一个角落,将成为保护我们个人以及国家信息的重要手段。             

1.2指纹识别的原理和方法

1.2.1 指纹的基本知识

指纹是我们各个手指的第一个指节的指头表面突起的脊线;而脊线是手指突起的花脊线条;谷线是两个脊线之间低凹下去的部分;指印是指纹在物体表面留下的痕迹;指纹的细节特征是指纹固有的自身特点。根据指纹中的细节特征我们常将指纹特点分为端点和分叉点,如图1-1所示。

图1-1  端点、分叉点

英国科学家Gallon在1892年的《Fingerprint》一书中提出了指纹的四条基本性质。

(1)确定性:指纹脊线的轮廓和细节特征是在人的一生中基本上保持不变。自胚胎六个月到出生至死亡腐败之前,始终是没有很大变化的。指纹的确定性,还表现在它具有一定的复原性和难于毁灭的特性。

(2)唯一性:由于指纹脊线的连接关系千变万化,因此,即使两个不同的指纹有着相同的轮廓和相同数量的细节特征,它们的细节位置也是不可能完全相同的。

(3)可分类性:指纹可根据脊线和谷线的走向进行分类,一般可分为如图1-2所示的弓形、环形和螺旋形。

  

  

              (a)弓形             (b) 环形             (c)螺旋形

图1-2 指纹类型

(4)留痕性:指纹接触物体后会留下痕迹。指纹的这个特点,是与手掌表面附着面的污垢的性能紧密相关的。

正是因为这些独特的性质,指纹被国内外的刑侦界称为“证据之首”。一切指纹的自动识别系统,都是根据这些独特的性质,进行身份的识别和确认的。

脊线是指纹的一个非常突出的特征,指纹的脊线一般由弓形线、环形线、箕形线、螺形线、曲形线和棒形线等脊线组成,每种脊线具有不同的细节和长度,如图1-3所示[2]。

图1-3 脊线的一般形态

1.2.2 指纹识别的原理及应用

在指纹识别的技术中, 一般都采用总体特征和局部特征来进行识别。总体特征是那些很容易就能看出来的非常明显的特征, 局部特征则是一小块指纹中的细节特征。指纹纹路一般都会有断点和分叉点, 因此会形成一些独特的节点。根据研究,两个指纹的总体特征有时候会很相似,但是局部特征是不会相同的,即没有两个指纹的纹路是相同的。英国学者E.G.Herry认为, 只要有13个特征点能重合, 就可以确认这两枚指纹是同一指纹[3]。指纹的面积虽然不大但却蕴含着大量的识别信息。这些皮肤的纹路会在交叉点,断点上有很大的区别。在指纹识别的过程中将其称为“特征点”,利用特征点的性质,我们可以把一个人的指纹同预先存储起来的指纹模版对比来验证他的真实身份。

指纹识别技术主要包括三大部分:指纹图像采集、指纹预处理、特征提取与匹配。如图1-4所示。

        图1-4  指纹识别流程

指纹作为人类与生俱来的特征,因为其独有的特性而成为具有法律地位的有力证据。一切需要身份确认的场所,都有它的踪影,如金融证券类的ATM指纹终端、指纹保险箱等、IT类的计算机的系统密码验证、网络安全等、安防类的门禁系统等、医疗类的个人医疗档案验证等、福利类的医疗确认、福利确认等,因此指纹识别在许多行业的应用系统中都具有广阔的应用前景。

1.3 Matlab在指纹识别中的应用

 Matlab是一种高级的计算机语言, 具有独特的数学运算能力是matlab语言最突出的优点。许多在其他语言中描述起来很复杂的问题在matlab语言编程中却只需要一条专用的指令就可以完成。Matlab语言的所有计算都是基于矩阵的,所以matlab中的所有变量都被定义为矩阵, 它是一种解释型语言, 因此几乎没有语法格式上的限制。基于matlab实现指纹图像算法及仿真验证不仅有较高的准确率, 而且减小了仿真难度。

第2章 指纹图像预处理

图像预处理是对原始图像进行的一种前期处理,方便后续的模块识别。无论采用何种方式获取的指纹图像, 都有一部分由于质量原因, 不能被系统直接识别,因此图像的预处理就显得非常有必要。

指纹图像的预处理目的就是将自己感兴趣的目标区域保留下来,去除背景区域和没有用的部分,同时根据指纹目标区域中脊线的结构特征,采取较好的滤波方法,提高指纹脊线清晰度,平滑脊线边缘的毛刺和空洞,抑制图像噪声,保证指纹特征的可靠提取,并使灰度图像转化成黑白的二值图像,最终得到脊线结构清晰的单像素宽的二值图像。本文预处理的主要流程如图2-1所示。

图2-1  预处理流程

                                    

2.1图像的分割

图像分割是从一幅图像中按一定规则将一些物体或区域加以分离,划分出我们感兴趣的部分或区域。经过分割后的图像更容易进行进一步的分类、分析和识别处理。图像分割要在指纹二值化和滤波及细化之前进行,如此可以减少计算的冗余量,提高指纹检测速度。

采集到的指纹内容分为目标区域和背景区域。在指纹图像中,由脊线和谷线组成的较清晰的部分,称之为目标区域;没有用的部分我们称之为背景区域。指纹识别中的分割就是将有用的目标区域分割出来,去掉没用的背景区域,以避免背景区域的各种干扰。指纹图像可分为四类区域:背景区、不可恢复区、可恢复区、清晰区,如下图2.2所示。

图2-2  指纹图像的四种区域

2.1.1 图像归一化

对指纹图像进行分割处理,消除剩下的背景区域前,首先要进行图像归一化。

对采集好的指纹图像进行归一化处理,是对指纹灰度图的灰度均值和方差做一次调整,使得不论用什么设备采集的指纹图像都可以有预期的方差和均值,从而屏蔽不必要的噪声。指纹归一化不改变指纹质量,只是方便指纹的后续处理并保证程序运行时收敛加快。

由于不同指纹区域的手指压力和强度不同,所以将指纹分为W*H小块,设图像中像素点的灰度值为I(i,j),归一化后的图像G(i,j)来表示,灰度平均值和方差分别用

来表示,则归一化算法如下[

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/765014
推荐阅读
相关标签
  

闽ICP备14008679号