APP下载

指纹密码的提取与匹配算法

2016-12-22何丹琪

中国高新技术企业 2016年31期

何丹琪

摘要:指纹是指手指上谷线和脊线所形成的图形,指纹识别技术因为其准确性、便捷性和易操作性得到了广泛的运用。文章通过综合运用图像的处理和模式的识别技术,对指纹的图像文件进行预处理、对指纹的特征点进行提取,并进行指纹匹配,进而解决相关问题。

关键词:二进制编码;指纹分类;指纹识别与对比;指纹相似度;指纹密码 文献标识码:A

中图分类号:TP242 文章编号:1009-2374(2016)31-0017-02 DOI:10.13535/j.cnki.11-4406/n.2016.31.009

1 指纹图像的采集

在实际生活中,指纹图像的采集通常需要借助相关的一起设备来完成,通过对指纹的图像化处理,可以采集相关数据。

2 指纹图像的预处理

从大多数的指纹图像可以发现,某些指纹图像有比较大的噪声,如某些图像的脊线出现了断裂、模糊、桥接等现象,因此为了使后期处理得以简化,特征提取的可靠性得以提高,指纹图像的预处理十分有必要。图像的预处理步骤主要是以下步骤:图像的分割、图像的增强、图像的二值化和细化等。

(1)图像分割。将指纹图像的有效部分(主要是前景部分)切割出来,把含有大量噪声的背景部分舍弃;(2)图像增强。将断裂的指纹连上,粘连的指纹分开,使模糊的指纹清晰;(3)二值化处理。选用合适的限制条件即阈值,对指纹灰度图像进行二值化处理,使之成为黑白二值的图像;(4)细化。在不改变脊线连通性的基础上,通过腐蚀操作将原有的脊线转换至单像素宽,使指纹图像数据量减少,纹线结构更加

清晰。

具体模型过程如下:

2.1 图像的分割

这里采用灰度共生矩阵法。这种方法通过计算指纹图像中某些指定取向和某些指定距离的两个像素点之间的灰度差值的次数,就可以计算出指纹图像在方向、间隔、幅度变化大小和速度的不同信息,这样可以将指纹图像的灰度数据转变为一条一条的纹理数据。

2.2 图像增强和二值化

为了将图像进行二值化,首先确定一个3×3的小块,需要确定这个小块中中心线的灰度值,其计算公

式为:

(1)

式中:p表示小块中灰度值大于阈值的概率,阈值取这个小块的平均值。通过这个模型的计算可以将所有的灰度值转换成只有0和255,增强了图像的对比度,使得为下一步指纹细化操作提供了依据。

2.3 图像细化

指纹图像的细化处理是指在指纹图像进行灰度二值化以后,在不影响指纹纹路的连通性的前提下,去除指纹纹线的边缘的像素点,细化纹路的像素宽度,直到小于等于一个像素的宽度。对于细化算法主要要满足以下六个方面的要求:(1)纹路连通:删除边界数据时不能破坏指纹的连通性;(2)不变性:维持指纹的细节方面的特征,如叉口等;(3)中轴性:骨架尽量接近指纹纹路的中心线;(4)迭代收敛:进行数据迭代计算时是不发散的;(5)细化性:骨架纹线的必须其宽度为1个像素;(6)拓扑特征:保证纹路基本结构特性不发生变化。

在上述步骤中,我们采用了一种模板的消去保留法,对图像逐点保留或删除,通过增加保留模板和消去模板,提高细化的速度与精度。该算法是一种串行细化算法,采用统一的模板,先构建了8个消除模板和6个保留模板,实现细化处理。

2.4 图像可能特征点的提取

指纹细节特征点(Minutiae)主要指的是纹线端点(Ridge Ending)和纹线分叉点(Bifurcation)。纹线端点就是指指纹纹路突然中断的位置,纹路分叉点指的是纹路一分为二的位置。根据资料显示的统计结果表明,采用这两种特征点可以确定指纹的唯一性。因此我们只提取端点和分叉点,并进行去伪处理。

具体算法如下:

(2)

2.5 图像伪特征点的去除

经过以上二值化和细化步骤的指纹图像中,还存在以下五类噪声:(1)纹线间断。上个模型中的指纹特征点提取算法测得到两个指纹纹路端点,并定义其为伪特征点。这种伪特征点的两点间距非常小,而且沿局部纹线方向的两点之间的区域无纹线;(2)纹线叉连。在纹线叉连的位置,上个模型中的指纹特征点提取算法会提取到两个指纹的分叉点,但都属于伪特征点;(3)短横线。如果指纹不洁净,有污渍,采集到的指纹图像易产生很多的由随机噪声引起的短横线。在短横线位置,可能提取到两个纹线端点,也属于伪特征。这种伪特征点的特点是两点之间距离很小,两点之间由一条指纹纹路相连;(4)较小的孔状结构;(5)毛刺。

3 指纹密码存储模型

在采集完指纹特征点之后,我们需要将特征点信息存储,以便下步对比匹配时使用。对细化后的图像以像素为单位,采用上述特征点提取算法遍历整个图像,记录特征点的位置信息。对于分叉点,记录为0,坐标为(x,y);端点记录为1,坐标为(x,y)。对于坐标(x,y),需要16bite来存储,对于0/1,需要1bite。遍历整个图像后,就可以将端点和分叉点信息存储。

一般来说指纹识别所给的图像分辨率是400*600,将其分割后160*120,但是图像的DPI只有72,根据我国《居民身份证采集器通用技术要求》,宽为12.75mm,长为17.93mm,图像DPI为500。DPI是指单位英寸上所包含的像素点,那么题目所给的图像单位面积上所包含的像素点总数是72 72 5184点/平方英寸,而更具标准所要求应该具有的像素点总数是500 500 250000点/平方英寸,标准单位面积上所具有的像素点总数是题目所给图像的48.23倍。这样一来,对题目所给的图像进行分割和细化等工作时,效果并不是很乐观,为了体现算法的有效性,我们还选取了FVC2004指纹库中的一些指纹进行细化处理,用来和题目所给的图像进行对比。

4 指纹密码对比模型

经过前面的指纹图像预处理和特征点提取环节,获得的细节特征信息就是指纹图像的特征点集合,通过对特征集合之间的信息相似性进行比对,就能够判断出对应的指纹图像是否来自同一个手指。

若要进一步压缩指纹密码的存储空间,则可以对指纹密码的对比模型进行改进,不用存储全部的特征点,可以存储特定的特征点,比如隔一个特征点就存储一个,这样就可以降低特征点存储数目,使得所需要的存储字节降低。但是这要求对比模型也要做一定的改进。对于唯一性的确定,通过生物学上的分析,一个人的指纹是唯一的,那么如果在确保能够准确提取多个特征点,那么一个人的指纹将是唯一的。但是由于算法在细化和分割过程中有许多的伪特征点,那么就有一定的可能使得两枚指纹的指纹密码是类似的,在做对比时可能会判定为同一枚指纹。

5 模型的优缺点

模型对图像分辨率的要求很高,在题目所给的指纹上表现并不是很好,因为题目所给的图像分辨率很低。在FVC2004的一枚指纹上可见模型的表现还是很好的。模型没有进行低质量指纹图的测试,但是通过理论分析,模型在对指纹图像噪声的处理上还有待提高。由于不能使用别人已有的指纹识别算法,加上我们小组成员对图像噪音处理不是很了解,导致我们在噪声处理方面有很大的缺点,后续可以对模型的噪声处理进行加强,想必能得到一个很好的指纹识别算法。

模型在噪音处理方面可以做进一步的改进,还可以通过对算法的优化降低编程计算的时间复杂度,使得模型更加高效。

6 结语

本模型的数学背景不是很复杂,有利于编程实现,并且模型将指纹密码采用紧凑的二进制数字来存储,这样能够提高存储所需的内存空间,降低存储的使用,对目前大量的指纹数据来说,这是很经济的,也是很实

用的。

参考文献

[1] 郭进,文安邦,严冬春,史忠林.复合指纹识别技术 定量示踪流域泥沙来源[J].农业工程学报,2014, (2).

[2] 祝恩.低质量指纹图像的特征提取与识别技术的研究 [D].国防科学技术大学,2005.

[3] 王玮.自动指纹识别系统关键技术研究[D].重庆大 学,2007.

[4] 张圆圆.指纹识别技术相关算法的研究[D].北京邮电 大学,2012.

[5] 张洁.残缺指纹识别中若干关键技术的研究[D].北京 邮电大学,2013.

[6] 田捷,陈新建,张阳阳,杨鑫,何余良,李亮,谢 卫华,郑志鹏.指纹识别技术的新进展[J].自然科学 进展,2006,(4).

[7] 时鹏,田捷,苏琪,杨鑫.基于奇异点邻近结构的快 速指纹识别[J].软件学报,2008,(12).

[8] 戴平阳.指纹识别技术研究进展[J].厦门大学学报 (自然科学版),2002,(6).

[9] 王俊珺.指纹识别算法优化与应用研究[D].华东师范 大学,2009.