APP下载

傅里叶频域下基于曲面变换的指纹增强算法

2018-08-17,

计算机工程 2018年8期
关键词:指纹图傅里叶曲面

梅 ,

(南京信息工程大学 a.江苏省网络监控中心;b.江苏省大气环境与装备技术协同创新中心; c.计算机与软件学院,南京 210044)

0 概述

鉴于指纹皮肤干湿、清洁度、破损及传感器噪声等因素,往往会造成较大比例采集到的指纹图像中存在低质量区域。为了确保低质量区域特征提取的准确性,需要对指纹进行增强,其目的是提升指纹脊、谷纹路的清晰度。

宏观上讲,常用的指纹图像增强方法主要分为空域增强和频域增强,其基本思想都是利用指纹图像在局部所呈现的方向性信息及脊、谷线交替的频率信息来设计滤波器以达到增强目的。

1)空域增强主要的代表工作有方向滤波[1-3]、Gabor滤波[4-7]等。方向滤波预先设计一组具有固定方向的滤波模板,通过选择与当前待增强区域方向一致的滤波模板来实现增强。Gabor滤波器具有天然的频率和方向双重选择性质,该方法沿脊线方向实施低通滤波以连接断开的脊线,在脊线垂直方向实施带通滤波以分离粘连的脊、谷线。

2)频域增强将指纹图像从空域转换到频域下,依据频谱特征设计滤波器以实现指纹增强。文献[8]给出了一种基于傅里叶变换的增强算法,其主要步骤为:对原指纹图像做傅里叶变换获得频谱图像;使用0-n个方向带通滤波器分别对频谱图像滤波,得到一组滤波后频谱图PF0-PFn;对滤波后频谱图做傅里叶逆变换获得一组预滤波图像pf0-pfn;依据每个像素点方向,从方向一致的预滤波图像中选取该像素来组成滤波后图像;设置阈值对滤波后图像进行二值化,得到增强图像。该算法需要对整幅频谱图像进行n+1次方向滤波和傅里叶逆变换,因此,运算复杂度较高。

区别于上述工作,文献[9-11]在指纹局部块上进行傅里叶变换,其主要思路为:将指纹图像划分为一系列互不重叠的块;对每个块做二维离散傅里叶变换得到局部频谱图像;设计滤波器对频谱图像滤波;逆变换之后得到滤波后图像;重复上述步骤直到遍历所有块,重新组合获得增强结果。该类算法只需对指纹图像的每个局部区域做一次傅里叶变换、滤波和傅里叶逆变换,运算复杂度明显降低,但该类工作[12-13]也存在2个问题:对非平缓区域增强效果较差;由于块窗口尺度引起块效应问题。

为此,本文提出一种傅里叶频域下基于曲面变换的指纹增强算法,以改善非平缓区域的增强效果,解决块窗口尺度问题。为了便于描述,以下将基于局部块的增强算法称为基于非曲面的指纹增强算法。

1 相关工作及讨论

基于非曲面的指纹增强算法存在以下问题:

1)平缓区域与非平缓区域问题

对于指纹方向变化较小的平缓区域,其频谱图呈现出中心对称的2个亮斑:亮斑连线与水平轴之间的夹角即脊线梯度方向;亮斑与中心点之间距离代表频率大小。平缓区域频谱图像能量集中在沿脊线梯度方向中心对称的两点,增强所用滤波器方向与待增强区域脊线梯度方向一致时,可以有效地滤除噪声,保留重要的指纹频率信息。方向变化范围较大的非平缓区域的频谱图,其频谱图像能量集中区域近似为一个圆环,增强时无法确定主要的滤波方向,取某一特定方向会丢失圆环上其他方向所保留的指纹信息,使得方向滤波的增强效果较差。指纹局部区域的频谱图如图1所示。

图1 指纹局部区域的频谱图

2)块窗口尺度问题

当窗口较大时,其间包含多条脊、谷线,频率信息较为明显,但相邻块之间方向差异较大,从而导致增强后相邻块之间不能很好地连接在一起,本文将该现象称为块效应;当窗口较小时,频率信息不明显,不适合进行频域滤波增强。

综上所述,非平缓区域方向范围较大,滤波增强时无法确定主要的滤波方向,增强效果较差。受文献[6]的曲面Gabor滤波和文献[7]的正交双曲线Gabor滤波的启发,本文将曲面变换用于频域增强,解决非平缓区域的增强问题。

文献[6]提出的曲面如图2所示,曲面区域为一个包含2p+1条平行曲线的区域,且每条曲线均包含2q+1个点。定位像素点(i,j)处曲面区域Ci,j的大致过程如下:

1)定位平行曲线的中点

把像素点(i,j)作为曲面中心,从中心点出发,沿着垂直脊线的2个方向初始化平行曲线的中点(如图2中的竖直方向点所示),每一个方向拓展p个像素单元即可得到2p+1个曲线中点。在每一次拓展中,所取方向始终正交于局部脊线方向。

2)寻找平行曲线

从每一个曲线中点出发,沿着脊线方向θ和脊线相反方向θ+π分别拓展q个像素单元即可得到2p+1条长为2q+1的曲线。由此得到了一个大小为(2p+1)×(2q+1)的曲面区域Ci,j。

图2 曲面区域Ci,j

本文将定位曲面区域并将其映射到二维数组的过程称为曲面变换。在曲面变换过程中,记录二维数组中每一个元素在原指纹图像中的对应坐标,这些坐标值用于将二维数组映射回曲面区域,该过程称为逆曲面变换。

在非平缓区域使用曲面变换得到二维数组(如图1(c))所示),其频谱图(如图1(f))呈现出沿竖直方向中心对称的2个亮斑,这表明频谱能量集中在竖直方向,因此,增强时滤波方向选为竖直方向可以达到较好的增强效果。

由于曲面变换比较耗时,为了提高执行效率,本文只在非平缓区域执行曲面变换,为此需要区分平缓区域与非平缓区域。

本文借鉴文献[14]定义的变化度来解决该区分问题,变化度反映当前块与8个相邻块之间的方向差异,其定义如下:

其中:

α=|θB(m,n)-θB(i,j)|

β=π-|θB(m,n)-θB(i,j)|

其中,θB(i,j)表示当前块的方向,θB(m,n)表示8个相邻块的方向。设置一个阈值,当块的变化度小于阈值时,该块被标记为平缓区域;否则,被标记为非平缓区域。图3展示了一个指纹图像标记平缓区域和非平缓区域后的结果,窗口大小为11×11,其中,灰色区域为非平缓区域,其他区域为平缓区域。

图3 标记非平缓区域

文献[15]引入复合窗口模板解决在方向场计算过程中由于窗口尺寸引起的准确性与抗噪性的矛盾。受其启发,本文引入复合窗口模板来解决块窗口尺度问题。复合窗口模板[15](如图4所示)将窗口分为内层窗口和外层窗口,且外层窗口大于内层窗口,将较小的内层窗口作为当前需要增强的窗口。由于较大窗口指纹图像包含足够多的脊线,频率信息较为明显,因此先在较大的外层窗口上实现滤波增强得到增强后图像,然后将内层窗口在外层窗口中的对应区域作为该内层窗口的增强结果,以减小增强后图像的块效应。

图4 复合窗口模板

2 算法实现

本文提出一种傅里叶频域下基于曲面变换的指纹增强算法,以克服基于非曲面算法在非平缓区域增强效果较差的问题,同时解决非曲面增强所产生的块效应问题。其流程如图5所示。

图5 指纹增强算法流程

本文算法所用滤波器包括径向滤波器Hρ和方向滤波器Ho,公式如下:

H(ρ,θ)=Hρ(ρ)Ho(θ)

(2)

其中,ρ、θ分别代表频率和方向,DL和DH为截断频率,θbp是滤波器的角度带宽,θc是滤波方向。

在本文算法中,若窗口为平缓区域,则用Wplane_in、Wplane_out分别表示内层窗口和外层窗口,用Eplane_in、Eplane_out分别表示内层窗口和外层窗口增强后图像。若窗口为非平缓区域,则用Wcurve_in、Wcurve_out、Warray_out分别表示内曲面窗口、外曲面窗口和外曲面窗口映射得到的二维数组,Ecurve_in、Ecurve_out、Earray_out分别表示内曲面窗口、外曲面窗口和外曲面窗口映射得到的二维数组的增强后图像。

以下将依据图5所示流程,详细阐述每个步骤的具体内容。

步骤1将原始指纹图像划分成一系列互不重叠的小块,作为图4中复合窗口模板的内层窗口。

步骤2依据式(1)定义的变化度来判断内层窗口是平缓区域还是非平缓区域。

步骤3如果该窗口是平缓区域,用Wplane_in来表示,首先找到复合模板的外层窗口Wplane_out;在外层窗口上进行离散傅里叶变换(DFT)得到频谱图F;然后采用式(2)的滤波器H(ρ,θ)对频谱图F进行滤波,此时滤波器方向为窗口中心点处梯度方向;逆傅里叶变换(IDFT)得到增强后的外层窗口Eplane_out;将内层窗口Wplane_in在外层窗口Eplane_out中对应区域作为该内层窗口的增强后图像Eplane_in。

步骤4如果该窗口是非平缓区域,用Wcurve_in来表示,首先使用曲面变换定位外曲面窗口Wcurve_out并映射得到二维数组Warray_out;对得到的二维数组Warray_out进行DFT得到相应的频谱图F;然后采用竖直方向的滤波器H(ρ,θ)对F进行滤波;经过IDFT得到二维数组的增强结果Earray_out;逆曲面变换将结果Earray_out映射到外曲面窗口,得到增强后的曲面Ecurve_out;将内曲面窗口Wcurve_in在Ecurve_out中的对应区域Ecurve_in填充到新图像对应区域。

步骤5重复上述步骤2~步骤4直到遍历完所有内层窗口,重新组合即可得到增强后指纹图像g。

3 实验与讨论

为了验证提出的基于曲面变换的指纹增强算法的增强效果,将本文算法与文献[6]曲面Gabor增强算法、文献[9]傅里叶频域下基于非曲面的指纹增强算法进行对比。实验从增强效果、指纹匹配结果和时间复杂度3个角度进行算法性能评估。实验在FVC2002的DB1和DB2指纹库上进行,DB1与DB2各包含100个不同的手指,每个手指保存了8幅指纹图像。

为了尽可能地提高对比性,本文在实验设计时做了以下3点工作:

1)在实现对比时,单窗口应与复合窗口的外层窗口大小一致。在实验中,复合窗口的外层窗口大小选为31×31,内层窗口大小为11×11,复合窗口大小的选择采用文献[15]推荐的参数值。

2)曲面Gabor算法及非曲面算法均采用了与本文算法一致的方向场。

3)算法采用文献[14]推荐的参数值作为变化度的阈值以实现平缓区域与非平缓区域的区分。

3.1 增强效果对比

在指纹库FVC2002上,分别实现曲面Gabor算法、非曲面算法和本文算法,以验证本文算法中的复合窗口、曲面变换的有效性。抽取库中一幅指纹图像,其增强效果对比图如图6所示,从图6(d)、图6(h)、图6(l)与图6(b)、图6(f)、图6(j)的对比可以看出,本文算法相比于非曲面算法具有更好的增强效果,可以有效解决非曲面算法存在的块效应问题和在非平缓区域增强效果差的问题。从图6(d)、图6(h)、图6(l)与图6(c)、图6(g)、图6(k)的对比可看出,视觉上本文算法与经典的曲面Gabor算法的增强效果相当。

图6 增强实验结果对比1

图7展示了FVC2002指纹库几幅质量较差指纹的增强效果对比图。可以看出,本文算法的增强效果明显优于非曲面算法,相比于曲面Gabor算法,本文算法在连接断开脊线、增强非平缓区域等方面的效果更好。

图7 增强实验结果对比2

3.2 指纹匹配结果对比

实验利用匹配性能来评估算法的增强效果.采用文献[15]的匹配系统,该匹配系统主要包括指纹图像分割、方向场计算、指纹增强、二值化与细化、细节点提取和匹配等部分。实验中使用曲面Gabor算法、非曲面算法和本文算法来替代原系统中的指纹增强方法。本文实验将不同阈值(细节点匹配数目)下的正确率作为性能评价指标,如果指纹A、B来自同一个手指且结果是匹配,或者指纹A、B来自不同的手指且结果是不匹配,那么这样的匹配结果是正确的,反之则为错误结果,正确的匹配结果数与总的匹配次数的比值即为正确率。在统计每个指纹库的正确率时,抽取50个手指,每个手指取6幅指纹图像,共300幅指纹图像。将每个手指的第1张图像注册入库,然后将剩下的250幅指纹与库中所有图像进行匹配,因此共计进行50×250=12 500次匹配。

表1、表2分别为曲面Gabor算法、非曲面算法和本文算法在FVC2002 DBA的DB1、DB2上的匹配实验对比结果。

表1 曲面Gabor算法、非曲面算法、本文算法在DB1的匹配实验结果对比

表2 曲面Gabor算法、非曲面算法、本文算法在DB2的匹配实验结果对比

实验结果表明:

1)本文算法的匹配正确率明显高于非曲面算法。该结果表明曲面变换和复合窗口的使用可以有效解决块窗口尺度问题,以及非曲面算法在非平缓区域增强效果较差的问题,从而改善算法增强效果,提高匹配正确率。

2)本文算法的匹配正确率高于经典的曲面Gabor算法。说明本文算法的增强效果优于曲面Gabor算法。

综上可得,曲面变换和复合窗口的引入使得本文算法具有很好的增强效果。

3.3 时间复杂度对比

本文将算法在FVC2002指纹库的DB1和DB2上的平均运行时间作为时间复杂度评价指标。硬件环境为2.93 GHz CPU、2 GB RAM,软件环境为Windows操作系统,编程语言为Matlab。表3展示了曲面Gabor算法、非曲面算法和本文算法在时间复杂度方面的对比结果。

表3 在DB1、DB2上的平均运行时间对比 s

实验结果显示:

1)本文算法的时间复杂度高于非曲面算法。原因在于:本文算法使用复合窗口,在外层窗口上实现滤波增强后,把内层窗口的结果作为最终图像的一部分,而非曲面算法使用的是单层窗口,直接把较大外层窗口的增强结果作为最终图像的一部分,故复合窗口算法的时间复杂度是单窗口算法的(Wout×Wout)/(Win×Win)倍;本文算法需要对非平缓区域的每个内层窗口进行曲面变换,找到其对应的曲面区域后再实现滤波增强,相比于非曲面算法,本文算法增加了曲面变换的时间消耗。

2)本文算法的时间复杂度明显低于曲面Gabor算法。曲面Gabor算法在空域实现指纹增强,比本文算法更加耗时,运行时间是本文算法的近55倍。

4 结束语

基于曲面变换和复合模板,本文提出一种傅里叶频域下基于曲面变换的指纹增强算法。实验结果表明,与非曲面算法相比,对于指纹非平缓区域,该算法能取得更好的增强效果,引入的复合窗口模板可以有效解决非曲面算法存在的块效应问题。与曲面Gabor算法相比,运行时间明显降低。本文算法将曲面变换用于傅里叶频域下的指纹增强,下一步将对曲面变换在其他频域下的应用进行研究。

猜你喜欢

指纹图傅里叶曲面
简单拓扑图及几乎交错链环补中的闭曲面
芦荟药材化学成分鉴定及UPLC指纹图谱分析
法国数学家、物理学家傅里叶
双线性傅里叶乘子算子的量化加权估计
相交移动超曲面的亚纯映射的唯一性
关于第二类曲面积分的几个阐述
任意2~k点存储器结构傅里叶处理器
基于曲面展开的自由曲面网格划分
沉香GC-MS指纹图谱分析
基于模板检测法的指纹图像的细节特征提取