用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

利用中心点信息的活体指纹分类算法

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:51:31
【本文由PB创新网为您整理】
 摘要:一种针对活体指纹采集样本的分类算法。将指纹分为四类:弓形、左箕形、右箕形和箕形(Right loop)和斗形(Whorl)。根据公安部的统计,中国人指纹类型的分布,弓形和帐弓形分别为1.1%、1.4%。对于实验系统,把两者分离的必要性不大。而且,弓形和帐弓形在结构上很相似,没有明显的特征可以把两者很好地分开。文献的实验表明:不把这两类分开,可以在不影响分类器效率的情况下,提高正确率。本文采用指纹结构特片分析方法,基于实用性的考虑,把采集的指纹分为四类:弓形(Arch)、左箕形(Left Loop)、右箕形(Right loop)和斗形(Whorl)。如图1所示。

    关键词:指纹分类 奇异点 方向滤波 连续分类

目前指纹分类在的研究对象主要是油墨指令等滚动按捺得到的指纹图像,一般采用美国中央情报局的SINT4、NIST9、NIST14、NIST24等批文数据库,这些据指纹图像通常保留了三角点和中心点等特征点。但活体采集通常不能完整采集三角点。活体采集的样本与传统油墨按捺采集的样本有很大不同。从目前所能查阅的国内外文献来看,针对活体采集样本的分类算法研究并不多见,而且效果并不是很理想。本文所研究的指纹库是用主流芯片级指纹采集器——富士通公司的BMF200电容式的指纹传感器采集得到的。这款采集器在自动指纹识别系统中得到了广泛应用。因此,针对这种样本数据库的分类算法的研究具有现实意义和理论意义。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    传统的分类算法沿用指纹学上的分类法,把指纹分为五类:弓形(Arch)、帐弓形(Tent Arch)、左箕形(Left loop)、右箕形(Right loop)和斗形(Whorl)。javascript:window.open(this.src);" style="cursor:pointer;"/>根据公安部的统计,中国人指纹类型的分布,弓形和帐弓形分别为1.1%、1.4%。对于实际系统,把两者分离的必要性不大。而且,弓形和帐弓形在结构上很相似,没有明显的特征可以把两者很好地分开。文献的实验证表明:不把这两作业成绩分开,可以在不影响分类器效率的情况下,提高正确率。本文采用指纹的结构特征分析方法,基本实用性的考虑,把采集的指纹分为四类:弓形(Arch)、左箕形(Letf loop)、右箕形(Right loop)和斗形(Whorl)。如图1所示。

1 指纹分类算法

分类算法的基本步骤是:

(1)图像预处理:为使指纹图像有要同的均值和方差,对原始图像进行归一化处理,然后根据图像灰度信息对图像分割,把背景区分割出来;

(2)计算方向图:计算指纹图像每一点的方法;

(3)提取特征:根据方向图,找出指纹的奇异点;

(4)分类:根据中心点数目和指纹特定区域的流向把指纹分为四类。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    程序流程图如图2。

1.1 图像预处理

预处理包括归一化、背景分割。归一化就是把原始图像的灰度均值和方差变换为期望得到的均值和方差。

归一化后,对图像进行分割,利用灰度信息把指纹区和背景区分开。

图3是一幅指纹图像的分割结果。

1.2 方向图的计算与平滑

输入的指纹图像大小为240×264,分成8×8的小块。首先计算每一点的方向,把平面空间量化成8个方向码,通过式(1)计算每一点的方向。

javascript:window.open(this.src);" style="cursor:pointer;"/>

其中:D(i,j)表示点(i,j)的方向码;N这里取值为8。G(i,j)表示点(i,j)的灰度值;w表示以点(i,j)中心,在方向为d的直线上,每一边的点数。G(ik,jk)d表示d方向的直线上所取像素点的灰度值。点的方向码的计算解释如下:在某一个点较小的范围内,纹线上的点的灰度值相关不大,而纹线上与非纹线的点的灰度值相差较大。因此沿着纹线计算的差的绝对值之和较小,而沿着其他方向计算出的差的绝对值之和则较大。

为了保证方向的抗干扰能力,可在块划分不变的情况下,适当扩展方向码的统计区域。块的划分尺寸为8×8,而统计该区域的方向码时,则按照12×12的扩展区域。统计每一小块对应区域中每一个方向码的像素点数,像素点数最多的方向码就是该小块的主方向。

为了消除局部的方向图计算误差,对方向图进行平滑。平滑方式采用3×3均值滤波器实现平滑滤波。图4给出滤波前后的方向图。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    1.3 奇异点寻找与修正

进行指纹分类前,先将指纹的特片点找出来。对指纹分类有用的是指纹的奇异点:中心点(core)和三角点(delta)。文献中介绍了判定中心点和三角点的方法。在中心点沿着逆时针方向一周的角度变化量(不大于90度)为180度,在三角点沿着逆时序方向一周的角度变化量(不大于90度)为-180度。

在实际计算时,由于方向图的划分、干扰的存在,根据上述判据找到的中心点和三角点有可能是伪奇异点,需要根据实际情况作一些修正,删除伪奇异点。修正奇异点的准则如下:

(1)如果指纹纹线在局部变化较大,就有可能出现相邻两个小块的方向互相垂直,这可能使中心点和三角点重合。这种情况都发生在中心区域而不是三角区域,所以需要删除与中心点重合的三角点。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    (2)指纹图像的边缘区域噪声较大,容易出现伪奇异点,所以在计算出的奇异点的一个适当的领域内如果有背景区,则删除该奇异点。

(3)由于噪声的影响,或是手指上有较大的皱纹,会使计算出的奇异点中出现相邻很近的中心点和三角点,这些都是伪奇异点。所以,如果存在一个中心点和一个三角点距离小于设定的阈值,则删除这两个点,并进一步删除与这两个点距离小于阈值的其它奇异点;

(4)对于指纹纹线在特征区域变化较大的情况,有可能在一个特征区域找出多于一个的奇异点。所以,在经过上述三步伪奇异点的删除后,使用聚类分析方法,把余下的中心点和三角点分成几个聚类,每一个聚类的中心就是最后得到的奇异点。

图5给出了一幅质量较差的指纹图像奇异点修正前和修正后的情况。

本文根据中心点数目组织分类判据将指纹分为三类:0个中心点为弓形,2个中心点为斗形,1个中心点为左箕形或右箕形。需要根据实际情况对此判据作进一步修正和改进。当中心点个数为1,存在三角点。如果三角点与中心点的距离小于一个阈值。则该指纹为弓形。

1.4 左箕、右箕的区分

对于中心点个数为1的指纹,可以根据中心点下方指纹纹线的流转方向进一步把指纹分成左箕形、右箕形。左箕形指纹纹线流向左方,右箕形流向右方。

对中心点下方一定角度的区域进行90°的方向滤波,可以通过方向码之间的计算近似实现方向滤波:

javascript:window.open(this.src);" style="cursor:pointer;"/>

P是滤波值,N是该区域小块的个数,pi是每一小块的滤波值,Di是小块的方向码,D0是滤波方向,在这里D0=4(90°)。不考虑到D0垂直的方向码。

P为负是左箕形,否则为右箕形。

图6给出了两种类型特征区域内指纹纹线的流向。

1.5 斗形的索引参数计算

斗形指纹在汉族人中所占比例很大,大约在一半左右。因此有必要对斗形指纹进行细分。实际情况中,很难从结构特征把斗形分成几个可以互相分得开的子类。本文以斗形的长短轴之比Flatness作为斗形的数据库索引参数,对斗形进行连续分类。
javascript:window.open(this.src);" style="cursor:pointer;"/>
   

[1] [2]  下一页

Tags:

作者:佚名
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:32,875.00000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号