基于模糊判别的指纹识别算法探讨
引言
人的指纹都是唯一的, 并且终生不变,它是一个人与生俱来的可以证明个人身份的可靠证据。通过比较一个人的指纹和预先保存的指纹, 就可以验证他的真实身份。指纹技术在现实生活中的应用非常广泛,如: 信用卡识别, 门禁系统, 军事要地的通行系统, 电子商务等。
由于指纹具有隐私性, 一般不直接存储指纹的图像, 因此不能直接处理指纹图像。指纹识别算法最终都归结为在指纹图像上找到并比对指纹的特征。而关于指纹识别的算法有很多, 比如有: 基于形态学和结构图表的指纹识别, 基于脊线采样的指纹识别, 基于方向场和细节特征匹配的指纹识别等等。本文从指纹识别的原理出发, 介绍一种基于模糊判别的指纹识别算法。
1 指纹识别技术的基础与原理
通常可通过指纹的两类特征进行验证: 总体特征和局部特征。在考虑局部特征的情况下, 英国E.R.Herry 认为, 只要比对13 个特征点重合, 就可以确认是同一个指纹。总体特征是指那些用人眼就可直接观察到的特征, 如图1 所示。
其他的指纹图案都是基于此3 种基本图案。这只是一个粗略的分类, 通过详细分类可使在大数据库中搜寻指纹更为便捷, 如图2。
2 指纹识别前的预处理
在指纹自动识别过程中, 输入的指纹图像由于各种原因的影响, 是一幅含噪音较多的灰度图像, 预处理的目的就是去除图像中的噪音, 把它变成一幅清晰的点线图, 便于提取正确的指纹特征。预处理是指纹自动识别系统中的第一步,它的好坏直接影响着指纹识别的效果。指纹预处理的一般工作过程如图3 所示。
图3 指纹预处理的一般工作过程
3 指纹的匹配
指纹匹配是指从已有的指纹集合中找出与待识别指纹图像来自同一手指的指纹图像的过程。指纹匹配是自动指纹识别系统中最关键的一步:
①基于图形的匹配方式;图形图像
②采用人工神经网络的方法。
图形匹配是针对纹线几何形状和特征点的拓扑结构的匹配方式。它的原理是采用相似变换的方法把两个细节点集中相对应地点匹配起来。它可以在一定程度内允许少量伪特征点的存在、真正特征点的缺失以及轻微的特征点定位偏差,对图像的平移和旋转也不敏感。但这种方法有两个不足之处:
①匹配速度比较慢;
②对指纹图像的质量要求比较高, 低质量的图像匹配效果不佳。
采用人工神经网络的方法有很多,这里不再介绍。指纹匹配算法的准确性和速度是检测系统性能的两个主要指标。由于图像录入时的随机性和特征提取技术的不完善性等客观问题的存在, 使得指纹比对技术的实现存在很大的技术难度。
4 指纹识别技术的应用
应用系统利用指纹识别技术可以分为两类, 即验证(Verification) 和辨识(Identification)。
验证就是通过把现场采集到的指纹与己经登记的指纹进行一对一的比对(one to one matching),来确认身份的过程。
辨识则是把现场采集到的指纹同指纹数据库中的指纹逐一对比, 从中找出与现场指纹相匹配的指纹。
5 指纹识别技术的一些具体算法
关于指纹识别的算法有很多, 比如有: 基于形态学和结构图表的指纹识别, 基于脊线采样的指纹识别, 基于方向场和细节特征匹配的指纹识别等等。下面简单介绍一种基于模糊判别的指纹识别算法。
过去人们对指纹识别做了很多研究。Isenor 等指出了一种用图匹配来对两幅指纹图像进行匹配的方法。Hrechak 等用结构匹配来做指纹识别。但目前最常用的方法是用美国联邦调查局(FBI) 提出的细节点坐标模式来做细节匹配。此外, Ranade 等松弛算法,Chang 等的基于二维聚类的快速算法, Jain 等的串匹配算法, 以及Luo 等针对Jain 等的算法所提出的改进算法等, 都曾用于指纹的识别。
利用模糊判别技术从另外一种角度改进了Jain等提出的指纹匹配算法, 增强了指纹识别系统抵抗噪声和非线性形变的能力, 在一定程度上解决了Luo等在实验过程中所遇到的问题。
下面具体介绍这个算法。基于模糊判别的指纹识别算法由两部分组成:
①根据样本库建立各细节点特征库;
②基于细节特征库利用模糊判别的方法对待识别指纹图像进行识别。
目标分割采用简单的二值分割法; 细节特征提取采用细节点坐标模式。
假设样本库中共有C 个手指的指纹图, 每个手指用N 个细节点特征来描述, 每个手指有L 幅指纹图(每幅指纹图不限制位置和方向) , 每幅指纹图提取出的细节特征值记为P ijk (i 表示是哪个手指, j 表示细节特征序列号, k 表示是哪幅指纹图)。
现以每个手指的特征均值和方差来表述该手指, 即每个手指对应一个确定的均值和方差矢量, 设第i 个手指的细节特征的均值和标准差矢量为M(i ),V(i ), 即:M( i) =[m i1, ?, m ij , ?, m iN ]
V( i) =[v i1, ?, v ij , ?, v iN ]这样, 有C 个手指的指纹图模型库为: {M ( i) ,V ( i) }, i = 1, 2, ?, C。
在判别过程中, 由于特征值的变化是随机噪声等因素引起的, 可以把特征值的波动视为一种高斯分布。根据高斯分布的性质, 特征值离均值3 倍标准差以外的概率几乎为0。这样当识别指纹时, 如果待识别的指纹图与样本库中的某手指指纹相匹配, 那么该指纹的每个细节特征值均应落在样本库中某手指的指纹细节特征均值的3 倍标准差以内。在定义所要识别的指纹图对于样本库中的某手指指纹的隶属度时,先逐个按特征计算指纹图归属于样本库中某手指各幅指纹图的隶属度, 以后再以已算出的一组隶属度中的极小值作为被识别指纹图对样本库中某手指的隶属度。根据实验结果确定隶属度的阈值, 在识别时,若样本库中获得极大隶属度的那个指纹大于所设阈值, 则认为该指纹图与被识别的那个指纹图相匹配。假设有C 个手指的指纹图样本模型库, 现讨论对待识别指纹图Q 的模糊判别过程。
将待识别指纹图Q 的特征记为矢量FQ ,FQ =[f q1, ?, f q j ,?f q N ]
如果该指纹图与样本库的第i 个手指相匹配, FQ虽具有不变性, 但由于随机因素的影响,FQ 不可能恒等于第i 个手指指纹的均值矢量M( i) , 而是以高斯分布的形式集中在M( i) 周围。
FQ 的每个分量f q j 应集中在各自的mij 的附近, 但也可能在其他mrj (r≠i)附近, 这就是f q j 的不确定性, 由其作识别也就带来了识别的不确定性。现在用f q j 定义待识别指纹图属于手指r 的隶属度drj , 则上述隶属度d r j 在0~1 之间。如该指纹图与样本库中的手指i 匹配, 则FQ 每一分量均应在M( i) 对应分量的周围, 即在逻辑上是一种与的关系, 这就可以定义该待识别指纹图与样本库中的手指i 相匹配的隶属度为Di =min(d / j ) (1≤j≤N)。同样求得该待识别指纹图属于样本库中每个手指的隶属度, 最后在作识别归属判别时, 只要样本库中获得极大隶属度的手指的隶属度大于给定阈值, 则认为待识别指纹图属于样本库中获得极大隶属度的手指。
6 系统设计
以上设计的自动指纹识别系统由样本库和待识别指纹图两部分组成。框图如图4 所示,在系统的样本库部分, 用指纹采集仪采集指纹, 经过预处理后提取细节点特征, 存入样本库。
在待识别指纹图部分, 用指纹采集仪采集指纹,经过预处理后提取细节点特征, 然后将这些细节点与保存在样本库中的模板细节点进行匹配, 判断待识别指纹与样本库中的模板细节点是否来自同一个手指的指纹。
图4 自动指纹识别系统框图
结语
本文从指纹识别的原理出发, 介绍了一种基于模糊判别的指纹识别算法。
该算法具有以下一些特点:
①由于采用模糊判别技术, 使得在信息不完备的情况下能最大限度地判决, 实现对多目标的识别;
②由于采用了具有不变性的特征, 保证有较高的准确性;
③由于基于图像的特征层进行模糊化, 而不是直接在灰度上进行判别, 大大减少了数据量, 具有较快的识别速度。
实验表明该算法有效地解决了在图像质量很差时不能有效地进行指纹匹配的问题。