一种指纹匹配方法和装置制造方法
【专利摘要】本发明提供一种指纹匹配方法和装置,通过分别对现场旋转指纹中的各细节点与指纹库中各捺印指纹的细节点间的坐标差进行投票确定现场旋转指纹与捺印指纹间的坐标差;将现场旋转指纹进行坐标平移,使得坐标平移后的现场旋转指纹与捺印指纹配准;对在配准后的现场旋转指纹中的细节点及对应的捺印指纹中细节点进行二次匹配投票;根据各捺印指纹与现场指纹的匹配度从大量指纹库中确定与现场指纹的粗匹配度的捺印指纹,本方法仅利用每一细节点的位置信息进行细节点间的匹配投票,用简单的运算、投票方法,快速排除了大容量指纹库中不匹配的捺印指纹,缩小指纹精确匹配的范围,从而极大的减少总的指纹匹配时间。
【专利说明】一种指纹匹配方法和装置
【技术领域】
[0001]本发明涉及指纹识别领域,尤其涉及一种指纹匹配方法和装置。
【背景技术】
[0002]指纹自动识别包括图像处理、特征提取、指纹匹配等几部分。其中,指纹匹配通常可分为两类:基于图像的匹配和基于特征结构的匹配。基于图像的匹配即将整个图像的灰度信息或方向信息作为匹配特征,利用互相关和/或方差和的方法计算两幅图像之间的灰度相关性;基于特征结构的匹配利用指纹图像内部丰富的信息进行匹配,应用最为广泛的是细节点特征。
[0003]目前常用的基于细节点特征的指纹匹配方法,多是利用细节点的位置、方向、类型及细节点密度等信息,构造能表征细节点特性的特征向量或领域结构,进而将指纹的匹配问题转化为特征向量或领域结构的相似度度量问题。比如基于矢量三角形的指纹细节匹配方法,初匹配时首先基于现场指纹和捺印指纹中的每个细节点与相邻的5个点构造10个矢量三角形,矢量三角形的特征信息包括长边、短边、夹角、纹线数之和、长边对应的细节点的角度及类型、短边对应的细节点的角度及类型等,然后通过矢量三角形关系及其特征信息对现场指纹及捺印指纹间任意两点进行比较,求出细节点间的匹配分数并找出相应的參照点;在二次匹配中,分别通过以初级匹配中最高匹配分数对应的匹配点作为极点,将两个指纹的原坐标转化成极坐标,再以捺印指纹作为标准,将现场指纹细节点进行校准后将指纹分成ー个个界限盒,在ー个界限盒内的细节点认为是匹配的细节点,当现场指纹与捺印指纹相互匹配的细节点数大于某一阈值时,认为两个指纹匹配。
[0004]利用上述指纹匹配方法进行指纹匹配,基于每个细节点构造10个矢量三角形,且每个矢量三角形又包含大量的特征信息,若指纹库中有10万副捺印指紋,每幅指纹有50个细节点,则将ー副现场指纹中的ー个细节点与各捺印指纹中的细节点进行匹配就需要进行IX IOX IO5X 10X 50=5X IO9次,由于每个矢量三角形又包含大量的特征信息,匹配复杂度高,毎次匹配的时间也会比较长,这就使得ー副现场指纹的识别速度较慢,效率低。
[0005]近年来,指纹自动识别在刑事侦破工作中发挥着越来越重要的作用。指纹数据库中捺印指纹的数据日益膨胀,对指纹匹配的速度要求越来越高。大容量指纹的快速匹配是ー个迫切的需求,如何提高指纹匹配速度成为指纹自动识别研究的一个关键问题。
【发明内容】
[0006]本发明提供一种指纹匹配方法和装置,用于解决现有技术中大容量指纹匹配复杂度高,耗时严重的问题。
[0007]本发明的第一个方面是提供一种指纹匹配方法,包括:
[0008]将现场指纹以所述现场指纹中心点为中心按照预设角度进行逐次旋转,得到多个现场旋转指纹;
[0009]针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中每个第一细节点对应的第二细节点;
[0010]针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵;
[0011]对所述第一投票矩阵进行高斯平滑处理,确定所述处理后的第一投票矩阵中最高投票值对应的坐标差;
[0012]根据所述最高投票值对应的坐标差,对所述现场指纹的每个第一细节点进行坐标平移;
[0013]针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵;
[0014]对所述第二投票矩阵进行高斯平滑处理,将处理后的第二投票矩阵中的最高投票值作为所述现场旋转指纹与所述捺印指纹的匹配度;
[0015]针对每个捺印指纹,将与各现场旋转指纹的最高匹配度确定为所述捺印指纹与所述现场指纹的匹配度;
[0016]将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
[0017]本发明的另ー个方面提供一种指纹匹配装置,包括:
[0018]旋转模块,用于将现场指纹以所述现场指纹中心点为中心按照预设角度进行逐次旋转,得到多个现场旋转指纹;
[0019]第一确定模块,用于针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中姆个第一细节点对应的第二细节点;
[0020]第一投票模块,用于针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵;
[0021]第一处理模块,用于对所述第一投票矩阵进行高斯平滑处理,确定所述处理后的第一投票矩阵中最高投票值对应的坐标差;
[0022]平移模块,用于根据所述最高投票值对应的坐标差,对所述现场旋转指纹的每个第一细节点进行坐标平移;
[0023]第二投票模块,用于针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵;
[0024]第二处理模块,用于对所述第二投票矩阵进行高斯平滑处理,将处理后的第二投票矩阵中的最高投票值作为所述现场旋转指纹与所述捺印指纹的匹配度;
[0025]第二确定模块,用于针对每个捺印指纹,将与各现场旋转指纹的最高匹配度确定为所述捺印指纹与所述现场指纹的匹配度;
[0026]第三确定模块,用于将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
[0027]本发明提供的指纹匹配方法和装置,通过将现场指纹进行旋转变换后,通过对各现场旋转指纹中的每个细节点与各捺印指纹中对应的细节点的坐标差进行投票,根据确定的坐标差将现场旋转指纹进行坐标平移,根据现场旋转指纹平移后的每个细节点及捺印指纹中对应的细节点间的坐标差再次投票打分,根据投票值确定与现场指纹粗匹配的捺印指纹,由于仅利用每ー细节点的位置信息进行细节点间的匹配投票,且仅利用简单的运算、投票方法,可以快速排除大容量指纹库中不匹配的捺印指紋,縮小了指纹精确匹配的范围,极大的减少总的指纹匹配时间。
【专利附图】
【附图说明】
[0028]图1为本发明提供的一种指纹匹配方法实施例的流程示意图;
[0029]图2为本发明提供的矩阵A的示意图;
[0030]图3为本发明提供的矩阵B的示意图;
[0031]图4为图1所示的实施例中步骤105中得到第二投票矩阵的一种实施例的流程示意图;
图5为基于CUDA的指纹匹配组织结构示意图;
图6为本发明提供的一种指纹匹配装置实施例结构示意图。
【具体实施方式】
[0032]图1为本发明提供的一种指纹匹配方法实施例的流程示意图,如图1所示,该方法包括:
[0033]100,将现场指纹以所述现场指纹中心点为中心按照预设角度进行逐次旋转,得到多个现场旋转指纹。
[0034]本实施例中,现场旋转指纹包括初始现场指纹及将现场指纹旋转后的各现场旋转指紋,将采集的现场指纹按预设的角度进行旋转,得到多个现场旋转指紋。
[0035]具体地,上述将现场指纹按照预设角度进行逐次旋转,得到多个现场旋转指紋,包括:将所述现场指纹按照预设角度分别沿顺时针和逆时针方向依次旋转Y次,得到2*Y+1个现场旋转指纹。
[0036]通常,在将现场指纹进行旋转时,预设的旋转角度可以根据指纹中细节点的方向差的范围确定,一般在3°~7°间即可,旋转次数Y根据预设的旋转角度及旋转角度范围确定,旋转角度范围一般在-80°~80°之间选择即可。举例来说,若旋转角度范围在-60°~60°之间,旋转角度为4°,则沿顺时针和逆时针方向依次旋转60/4次,即可得到30+1个现场旋转指纹,然后将这31个现场旋转指纹分别与指纹库中的捺印指纹进行匹配。
[0037]将现场指纹按预设的角度进行逐次旋转,即是将该现场指纹中的各细节点按预设角度进行逐次旋转,若现场指纹中第i个细节点的坐标为(Xi,yi),旋转角度为9,则第k次旋转的现场旋转指纹中第も个细节点的坐标(xki, yki)可由式(I)确定:
[0038]Xki=Xi ? cos (k 0 ) -Yi ? sin (k 0 )(I)
[0039]Yki=Xi ? sin (k 0 ) +Yi ? cos (k 0 )
[0040]其中,若沿逆时针旋转,则9为负值,若沿顺时针旋转,则9为正值。由式(I)可以看出,现场旋转指纹中细节点的坐标仅与初始现场指纹中该细节点的坐标及旋转角度有关,这样同一现场旋转指纹中各细节点的坐标和不同现场旋转指纹中各细节点的坐标都可以并行计算,而且算法简单。
[0041]101,针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中每个第一细节点对应的第二细节点。
[0042]本实施例中,现场旋转指纹包括初始的现场指纹及经过了旋转后的2*Y个现场旋转指纹,针对该2*Y+1个现场旋转指纹中每一指纹中的每个第一细节点,都要将其与指纹库中的每个捺印指纹的细节点进行比较,找到与该第一细节点对应的捺印指纹中的第二细节点。
[0043]具体地,所述针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中每个第一细节点对应的第二细节点,包括:
[0044]针对每个现场旋转指纹的每个第一细节点,确定每个捺印指纹中与所述第一细节点的方向差小于预设第一阈值的细节点为与所述第一细节点对应的第二细节点。
[0045]通常,确定与现场旋转指纹中第一细节点对应的捺印指纹中的第二细节点时可考虑细节点对间的方向差,比较该细节点对间的方向差与预设第一阈值的大小,此处预设第一阈值可在10°?30°之间取值。举例来说,若预设的第一阈值为20°,现场旋转指纹中某第一细节点的方向为50°,而与该现场指纹进行匹配的某捺印指纹中某第二细节点的方向为20°,即该两个细节点间的方向差大于20°,则该第二细节点不是该第一细节点对应的细节点,继续比较该捺印指纹中的其它细节点与该第一细节点的方向差,若找到与该第一细节点对应的第二细节点则执行102。
[0046]102,针对每个捺印指紋,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵。
[0047]本实施例中,每个现场旋转指纹要分别与指纹库中的每个捺印指纹进行匹配投票,即针对每个捺印指纹,都有一个与该捺印指纹及ー个现场旋转指纹对应的投票矩阵。举例来说,若某一现场指纹经旋转后得到20个现场旋转指纹,则指纹库里的每个捺印指纹分别与该20个现场旋转指纹构成20个第一投票矩阵。
[0048]具体地,所述针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵,包括:
[0049]初始化第一投票矩阵,所述第一投票矩阵中各矩阵元素为对应不同坐标差的投票值,且所述第一投票矩阵中各矩阵元素对应的坐标差根据各矩阵元素在所述第一投票矩阵中的位置按坐标轴排列;
[0050]针对现场旋转指纹N中的第一细节点Ni,获取捺印指纹M中所述第一细节点Ni对应的第二细节点Mu与所述第一细节点Ni的坐标差Cu ;
[0051]将所述第一投票矩阵中与所述坐标差Cij对应的投票值加1,所述坐标差Cij在以所述对应的投票值对应的坐标差为中心的坐标差范围内;
[0052]其中,1、j为自然数,i G [I, n], j G [I,Hii], n为现场旋转指纹N中第一细节点的个数,Hii为捺印指纹M中与第一细节点Ni对应的第二细节点的个数。
[0053]一般情况下,不同指纹的细节点间的坐标差具有一定的差异性,只需要找出这些坐标差的范围,即可知道两幅指纹间的大概关系。此处的第一投票矩阵对应预设的坐标差范围,第一投票矩阵中的各矩阵元素分别对应不同的坐标差,各矩阵元素对应的坐标差以预设的坐标差间隔沿坐标轴方向排列,需要说明的是虽然每个矩阵元素对应的坐标差为某一固定的值,但是该固定值仅表示ー坐标差范围的中心值,该坐标差范围是以该固定值为中心、以该第一投票矩阵的坐标差间隔为边长的范围,该矩阵元素对应的投票值表示坐标差在该坐标差范围内的细节点对的个数,即姆有一对细节点的坐标差在某一矩阵元素代表的坐标差范围内,该矩阵元素的投票值加一。通常两个指纹细节点对间的最大坐标差范围一般可在-280像素?280像素间选择,即第一投票矩阵对应的预设坐标差范围最大可为Ax|=280, I Ay|=280,投票时,舍弃坐标差超过该第一矩阵的投票范围的细节点,坐标差间隔可考虑同一指纹中两细节点间的坐标差确定,通常坐标差间隔在10像素?20像素间取值即可。
[0054]举例来说,若某第一投票矩阵A的坐标差投票范围为-60像素?60像素,即X,I的坐标差都在-60像素到60像素之间,坐标差间隔为20像素,则该第一投票矩阵A为(2*60/20+1) X (2*60/20+1)即7X7的矩阵。图2为本发明提供的矩阵A的示意图。
[0055]
[0056]其中,矩阵A中的矩阵元素an对应的坐标差为(_60,60)像素,an的投票值表示坐标差在以(-60,60)为中心,以20为边长的坐标差范围内的细节点对的个数;矩阵元素a12对应的坐标差为(-40,60)像素,a12的投票值表示坐标差在以(-40,60)为中心,以20为边长的坐标差范围内的细节点对的个数;矩阵元素a21对应的坐标差为(-60,40)像素,a21的投票值表示坐标差在以(-60,40)为中心,以20为边长的坐标差范围内的细节点对的个数;矩阵元素a33对应的坐标差为(-20,20)像素,a33的投票值表示坐标差在以(-20,20)为中心,以20为边长的坐标差范围内的细节点对的个数;矩阵元素a44对应的坐标差为(0,0)像素,a44的投票值表示坐标差在以(0,0)为中心,以20为边长的坐标差范围内的细节点对的个数,依次类推。举例来说,在某一现场旋转指纹N中,第一细节点N1与对应的捺印指纹M中第二细节点M11间的坐标差C11为(-18,12),则将第一投票矩阵A中矩阵元素a33的投票值加I ;第一细节点N1与对应的捺印指纹M中第二细节点M12间的坐标差C12为(38,-19),则将第一投票矩阵A中矩阵元素a56 (未在矩阵中示出)的投票值加I ;第一细节点N2与对应的捺印指纹M中第二细节点M21间的坐标差C21为(9,-37),则将第一投票矩阵A中矩阵元素a64 (未在矩阵中示出)的投票值加I,依次类推,直到针对现场指纹N中的每个第一细节点,遍历完捺印指纹M中的所有第二细节点为止,完成该现场指纹N与捺印指纹M间的第一投票矩阵。
[0057]通常,第一投票矩阵中所有矩阵元素的初始值相同,可以为0,也可以为设定的其它任意整数,在进行两幅指纹的匹配投票前首先将第一投票矩阵初始化,使该矩阵的所有矩阵元素初始值相同,投票完成的第一投票矩阵中矩阵元素的投票值越大,表示与该矩阵对应的两幅指纹中细节点间的坐标差在该矩阵元素对应的坐标差范围内的个数越多。
[0058]103,对所述第一投票矩阵进行高斯平滑处理,确定所述处理后的第一投票矩阵中最高投票值对应的坐标差。
[0059]一般情况下,针对某两个指纹中的各个细节点间的坐标差进行投票时,得到的第一投票矩阵中某几个矩阵元素对应的投票值可能相同或相近,但是投票值相同或相近的矩阵元素周围各矩阵元素的投票值不一定相同,为了增加区分性,对第一投票矩阵采用高斯平滑的处理,由于高斯平滑是根据各矩阵元素的数值大小为各矩阵元素分配不同的权重,以使数值不同的矩阵元素有明显区别的处理方法,所以高斯平滑处理后的第一投票矩阵中的会有一个矩阵元素对应的投票值最大,确定该具有最大投票值的矩阵元素对应的坐标差为与该投票矩阵对应的两个指纹的坐标差。本实施例中的高斯平滑处理可采用已知的技术实现,本发明对此不做限定。
[0060]104,根据所述最高投票值对应的坐标差,对所述现场旋转指纹的每个第一细节点进行坐标平移。
[0061]根据在步骤103中确定的坐标差,将与该坐标差对应的现场旋转指纹的每个第一细节点按该坐标差进行平移,使现场旋转指纹与对应的捺印指纹配准,由于最高投票值对应的坐标差表示现场旋转指纹与捺印指纹中细节点间坐标差在该最高投票值对应的坐标差范围内的个数最多,即按最高投票值对应的坐标差配准后的现场旋转指纹与捺印指纹中大部分的细节点间的坐标差变小。举例来说,若现场旋转指纹中共有40个细节点,与该现场旋转指纹及ー个捺印指纹对应的经高斯平滑处理后的第一投票矩阵A的最大投票值为18,对应的坐标差为(-20,20),表示与该现场旋转指纹与捺印指纹中有18个细节点间的坐标差落入坐标差(-20,20)表示的坐标差范围内,将该现场旋转指纹中各细节点进行(-20,20)的坐标平移后,配准后的现场旋转指纹与捺印指纹中至少该18个细节点对的坐标差变小了,比如该现场旋转指纹中某第一细节点H1坐标为(15,42),坐标平移后的第一细节点n/坐标为(35,22),一个对应的捺印指纹中的第二细节点Hi1坐标为(30,18),则第二细节点Hi1与坐标平移前的第一细节点Ii1的坐标差为(-15,24),而第二细节点Hi1与坐标平移后的第一细节点n/的坐标差为(5,4),即坐标差减小了。
[0062]需要注意的是,第一投票矩阵中各矩阵元素对应的坐标差代表了ー个坐标差范围,根据最大投票值对应的坐标差将现场旋转指纹中的每个第一细节点进行坐标平移后,现场旋转指纹与对应的捺印指纹中只是部分的细节点间的坐标差减小了。
[0063]105,针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵。
[0064]通过以上步骤,配准后的现场旋转指纹与捺印指纹的部分细节点间的坐标差减小了,为了得到配准后的现场旋转指纹与捺印指纹的匹配关系,针对坐标平移后的每个第一细节点,将其与捺印指纹中对应的细节点再次进行匹配投票。
[0065]具体地,所述针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵,包括:
[0066]初始化第二投票矩阵,所述第二投票矩阵中各矩阵元素为对应不同坐标差的投票值,且所述第二投票矩阵中各矩阵元素对应的坐标差根据各矩阵元素在所述第二投票矩阵中的位置按照坐标轴排列;
[0067]针对现场旋转指纹N中的坐标平移后的第一细节点N/,获取捺印指纹M中所述第一细节点N/对应的第三细节点Mu与所述坐标平移后的第一细节点N/的坐标差Du ;
[0068]确定所述第二投票矩阵中与所述坐标差Du对应的矩阵元素的坐标差Eu,将根据所述坐标差Dij与所述矩阵元素的坐标差Eij的距离Hij确定的投票值Sij増加到所述矩阵元素的投票值上,所述Sij随所述Hij的増加而减小,所述坐标差Dij在以所述对应的矩阵元素的坐标差Eij为中心的坐标差范围内;
[0069]其中,1、j为自然数,i G [l,n],j G [I,mi],n为现场旋转指纹N中平移坐标后的第一细节点的个数,Hii为捺印指纹M中与第一细节点Ni’对应的第三细节点的个数。[0070]本实施例中,第二投票矩阵中每个矩阵元素与一个坐标差对应,各矩阵元素对应的坐标差沿坐标轴方向以预设的坐标差间隔排列,第二投票矩阵可以是与上述第一投票矩阵相同的投票矩阵,也可以是投票的坐标差范围比第一投票矩阵小的投票矩阵,也可以是投票坐标差间隔比第一投票矩阵的坐标差间隔小的投票矩阵。与第一投票矩阵不同的是,第二投票矩阵中的矩阵元素对应的投票值不是投入该矩阵元素代表的坐标差范围中的细节点对的个数,而是根据满足该矩阵元素代表的坐标差范围内细节点间的坐标差与该矩阵元素对应的坐标差的距离确定的投票值的和。举例来说,若第二投票矩阵B的投票坐标差范围为-40像素~40像素,坐标差间隔为20像素。图3为本发明提供的矩阵B的示意图。[0071]
[0072]可以看出,在矩阵B中,矩阵元素b12对应的坐标差为(_20,0)像素,b12对应的投票值为根据满足坐标差在以(-20,0)为中心,以20为边长的坐标差范围内的细节点间的坐标差与(-20,0)的距离确定的投票值之和;矩阵元素b23对应的坐标差为(0,20),b23对应的投票值为根据满足坐标差在以(0,20)为中心,以20为边长的坐标差范围内的细节点间的坐标差与(0,20 )的距离确定的投票值之和;矩阵元素b31对应的坐标差为(-40,0 ),b31对应的投票值为根据满足坐标差在以(_40,0)为中心,以20为边长的坐标差范围内的细节点间的坐标差与(-40,0)的距离确定的投票值之和,依次类推。每个第二投票矩阵对应ー个捺印指纹和ー个与该捺印指纹配准的坐标平移后的现场旋转指紋。
[0073]投入第二投票矩阵元素中的投票值S根据细节点间的坐标差D与该第二投票矩阵中矩阵元素对应的坐标差E的距离H确定,距离H越大说明该细节点在该矩阵元素代表的坐标差范围内匹配度越低,则投票值越小,相反距离H越小说明该细节点对在该矩阵元素代表的坐标差范围内匹配度越高,则投票值越大,即投票值随距离的增加而减小。举例来说,投票值S与距离H间关系可以用下式(2)、(3),(4)中的任意ー种函数形式表示:
[0074]S=aH,其中,a G (0,1),H G (0,+ ⑴)(2)
[0075]S=a_H, 其中,a G (1,+ 00),H G (0,+ ⑴)(3)
[0076]S=a/H, 其中,a G (0,+ °°),H G (0,+ °°)(4)
[0077]需要说明的是,S也可以采用其它任意可满足S随H増加而减小的函数,本实施例对此不做限定。配准的每两个指纹进行完第二次匹配投票后,第二投票矩阵中任一矩阵元素对应的投票值是与该矩阵元素对应的所有细节点对投票值的和。
[0078]举例来说,与现场旋转指纹N中坐标平移后的第一细节点N/对应的为捺印指纹M中第三细节点M11,细节点N/与M11间的坐标差D11为(12,-3);与第一细节点N2,对应的为捺印指纹M中第三细节点M21,细节点N2’与M21间的坐标差D21为(-4,3);与第一细节点N3,对应的为捺印指纹M中第三细节点M31,细节点N/与M31间的坐标差D31为(-2,-7),则在上述第二投票矩阵B中对该现场旋转指纹N和捺印指纹M进行投票吋,D11对应B中矩阵元素b34,D21对应B中矩阵元素b33,D31对应B中矩阵元素b33,相应地D11与矩阵元素b34对
应的坐标差(20,0)的距离H11为#2-20)2+(-3-O)2 =拉,D21与b33的距离H21为5,D31
与b33的距离H31为,若细节点对间的投票值S按下式的计算:
[0079]S=2_h[0080]贝lj,与H11对应的投票值S11=0.00268,与H21对应的投票值S21=0.0313,与H31对应的投票值S31=0.0064,对应的第二投票矩阵B在计算完上述3对细节点对后,矩阵元素b34对应的投票值为0.00268,矩阵元素b33对应的投票值为0.0367,用同样的方式,将配准的现场旋转指纹及捺印指纹中的细节点投票遍历完毕后,得到该现场旋转指纹及捺印指纹对应的
第二投票矩阵。
[0081]优选地,所述针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵之前,还包括:
[0082]针对坐标平移后的每个第一细节点,确定所述捺印指纹中与所述坐标平移后的第一细节点的距离小于预设第二阈值且方向差小于预设第三阈值的细节点为与所述坐标平移后的第一细节点对应的第三细节点。
[0083]本实施例中,经步骤104后,现场旋转指纹中坐标平移后的每个第一细节点在捺印指纹中能找到最匹配的唯一的第三细节点,可以通过比较场旋转指纹中坐标平移后的第一细节点与捺印指纹中的各细节点间的距离及方向差是否均小于预设的阈值,来确定捺印指纹中的第三细节点是否为与该第一细节点唯一对应的细节点。
[0084]此处,第二阈值的大小可在(10,20)像素范围内取值,第三阈值仍可在10°?30°之间取值,可以与第一阈值取相同的值,也可以取不同的值,本实施例对此不做限定。
[0085]106,对所述第二投票矩阵进行高斯平滑处理,将处理后的第二投票矩阵中的最高投票值作为所述现场旋转指纹与所述捺印指纹的匹配度。
[0086]对配准的现场旋转指纹和捺印指纹中对应的细节点进行完投票打分后,第二投票矩阵中某些矩阵元素的投票值可能相同或相近,但是投票值相同的矩阵元素周围其它矩阵元素的投票值不一定相同或相近,为了增加区分性,同样对第二投票矩阵采用高斯平滑的处理,将高斯平滑处理后的第二投票矩阵中的最高投票值作为该矩阵对应的现场旋转指纹与捺印指纹的匹配度。高斯平滑处理可采用现有技术实现,本发明对此不做限定。
[0087]107,针对每个捺印指纹,将与各现场旋转指纹的最高匹配度确定为所述捺印指纹与所述现场指纹的匹配度。
[0088]经过步骤106后得到的第二投票矩阵为各现场旋转指纹与指纹库内各捺印指纹的匹配度,若某现场指纹对应20个现场旋转指紋,则每个捺印指纹对应20个匹配度,将该20个匹配度中的最高匹配度定为该捺印指纹与现场指纹的匹配度,若指纹库中捺印指纹为8万个,则该现场指纹与该8万个捺印指纹间有8万个匹配度。
[0089]108,将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
[0090]本实施例中的预设条件,可以是预设ー个阈值,匹配度大于该阈值的捺印指纹,则认为是与现场指纹粗匹配的指紋。
[0091]进ー步地,所述预设条件为匹配度排名百分比Z,所述捺印指纹库中的捺印指纹的个数为P,所述将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指纹,包括:
[0092]将各捺印指纹按照与所述现场指纹的匹配度从大到小的顺序进行排序;
[0093]将排在前Z*P名的各捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。[0094]进ー步地,所述将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指纹之后,还包括:
[0095]将与所述现场指纹粗匹配的各捺印指纹与所述现场指纹进行精确匹配,确定与所述现场指纹精确匹配的捺印指紋。
[0096]利用图1提供的指纹匹配方法,得到与现场指纹粗匹配的捺印指纹后,可以利用复杂的指纹匹配方法,比如矢量三角形方法,将现场指纹与粗匹配的捺印指纹再进行匹配校准,从而确定与现场指纹精确匹配的捺印指紋。由于图1提供的指纹匹配方法算法简单、实现容易,可以很快在大量指纹库中为现场指纹找到粗匹配的捺印指纹,縮小了指纹精确匹配的范围,从而減少了总的指纹匹配时间。
[0097]本实施例中,与现场指纹精确匹配的捺印指纹对应的匹配度在所有捺印指纹与该现场指纹匹配度中的排名用排前率表示。比如,指纹库中有100个捺印指紋,则通过上述方法可以得到100个匹配度,若与现场指纹精确匹配的捺印指纹的匹配度在这100个匹配度中排名第2,则该现场指纹的排前率为2%,若与现场指纹精确匹配的捺印指纹的匹配度在这100个匹配度中排名第3,则该现场指纹的排前率为3%。实验结果表明,通过本方法进行指纹粗匹配后再精确匹配,90%的现场指纹的平均排前率为2.5%,进ー步地,可以根据统计得到的排前率设置上述匹配度排名百分比Z,比如设置为3%,则当用图1所述的指纹匹配方法得到捺印指纹的匹配度排序后,可取排名前3%的捺印指纹做为与该现场指纹粗匹配的捺印指纹,然后再进行精确匹配。当指纹库内捺印指纹的数量很庞大时,通过本方法,可很快为大部分的现场指纹从大量的指纹库中确定粗匹配捺印指紋,从而缩小精确匹配的范围。
[0098]本实施例提供的指纹匹配方法,通过分别对现场旋转指纹中的各细节点与指纹库中各捺印指纹的细节点间的坐标差进行投票确定现场旋转指纹与捺印指纹间的坐标差、然后对坐标平移后的现场旋转指纹中的细节点及对应的捺印指纹中细节点进行二次匹配投票,根据各捺印指纹与现场指纹的匹配度从大量指纹库中确定与现场指纹的粗匹配度的捺印指纹,仅利用每ー细节点的位置信息进行细节点间的匹配投票,用简单的运算、匹配方法,快速排除了大容量指纹库中不匹配的捺印指纹,缩小指纹匹配的范围,从而极大的減少总的指纹匹配时间。
[0099]图4为图1所示的实施例中步骤105中的得到第二投票矩阵的一种实施例的流程示意图,如图4所示,步骤105包括:
[0100]200,判断细节点N/与Mj的距离是否小于第二阈值,若是,则执行201,否则,令j=j+l,重新执行200。
[0101]具体的,N/ (Xi, yi; 0 i)为现场旋转指纹N中第一个细节点,Mj (Xj,Yj, 0 j)为与N/对应的捺印指纹M中的第三细节点,N/与Mj的距离为
【权利要求】
1.一种指纹匹配方法,其特征在于,包括: 将现场指纹以所述现场指纹中心点为中心按照预设角度进行逐次旋转,得到多个现场旋转指纹; 针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中每个第一细节点对应的第二细节点; 针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵; 对所述第一投票矩阵进行高斯平滑处理,确定所述处理后的第一投票矩阵中最高投票值对应的坐标差; 根据所述最高投票值对应的坐标差,对所述现场旋转指纹的每个第一细节点进行坐标平移; 针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵; 对所述第二投票矩阵进行高斯平滑处理,将处理后的第二投票矩阵中的最高投票值作为所述现场旋转指纹与所述捺印指纹的匹配度; 针对每个捺印指紋,将与各现场旋转指纹的最高匹配度确定为所述捺印指纹与所述现场指纹的匹配度; 将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
2.根据权利要求1所述的方法`,其特征在于,所述针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵,包括: 初始化第一投票矩阵,所述第一投票矩阵中各矩阵元素为对应不同坐标差的投票值,且所述第一投票矩阵中各矩阵元素对应的坐标差根据各矩阵元素在所述第一投票矩阵中的位置按坐标轴排列; 针对现场旋转指纹N中的第一细节点Ni,获取捺印指纹M中所述第一细节点Ni对应的第二细节点Mu与所述第一细节点Ni的坐标差Cu ; 将所述第一投票矩阵中与所述坐标差Cu对应的投票值加1,所述坐标差Cu在以所述对应的投票值对应的坐标差为中心的坐标差范围内; 其中,1、j为自然数,i G [l,n],jG [I, IHi], n为现场旋转指纹N中第一细节点的个数,Ini为捺印指纹M中与第一细节点Ni对应的第二细节点的个数。
3.根据权利要求1或2所述的方法,其特征在于,所述针对每个现场旋转指紋,确定指纹库中姆个捺印指纹中与所述现场旋转指纹中姆个第一细节点对应的第二细节点,包括: 针对姆个现场旋转指纹的姆个第一细节点,确定姆个捺印指纹中与所述第一细节点的方向差小于预设第一阈值的细节点为与所述第一细节点对应的第二细节点。
4.根据权利要求1所述的方法,其特征在于,所述针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵,包括:初始化第二投票矩阵,所述第二投票矩阵中各矩阵元素为对应不同坐标差的投票值,且所述第二投票矩阵中各矩阵元素对应的坐标差根据各矩阵元素在所述第二投票矩阵中的位置按照坐标轴排列; 针对现场旋转指纹N中的坐标平移后的第一细节点N/,获取捺印指纹M中所述第一细节点N/对应的第三细节点Mu与所述坐标平移后的第一细节点N/的坐标差Du ; 确定所述第二投票矩阵中与所述坐标差Du对应的矩阵元素的坐标差Eu,将根据所述坐标差Dij与所述矩阵元素的坐标差Eij的距离Hij确定的投票值Sij増加到所述矩阵元素的投票值上,所述Sij随所述Hij的増加而减小,所述坐标差Dij在以所述对应的矩阵元素的坐标差Eij为中心的坐标差范围内; 其中,1、j为自然数,i G [I, n], j G [1,Hii], n为现场旋转指纹N中平移坐标后的第ー细节点的个数,Hii为捺印指纹M中与第一细节点N/对应的第三细节点的个数。
5.根据权利要求1或4所述的方法,其特征在于,所述针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵之前,还包括: 针对坐标平移后的每个第一细节点,确定所述捺印指纹中与所述坐标平移后的第一细节点的距离小于预设第二阈值且方向差小于预设第三阈值的细节点为与所述坐标平移后的第一细节点对应的第三细节点。
6.根据权利要求1所述的方法,其特征在于,所述将现场指纹按照预设角度进行逐次旋转,得到多个现场旋转指纹,包括: 将所述现场指纹按照预设角度分别沿顺时针和逆时针方向依次旋转Y次,得到2*Y+1个现场旋转指纹。`
7.根据权利要求1所述的方法,其特征在于,所述预设条件为匹配度排名百分比Z,所述捺印指纹库中的捺印指纹的个数为P,所述将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指纹,包括: 将各捺印指纹按照与所述现场指纹的匹配度从大到小的顺序进行排序; 将排在前Z*P名的各捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
8.根据权利要求1所述的方法,其特征在于,所述方法在图形处理器GPU上执行。
9.根据权利要求1所述的方法,其特征在于,所述将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指纹之后,还包括: 将与所述现场指纹粗匹配的各捺印指纹与所述现场指纹进行精确匹配,确定与所述现场指纹精确匹配的捺印指紋。
10.一种指纹匹配装置,其特征在于,包括: 旋转模块,用于将现场指纹以所述现场指纹中心点为中心按照预设角度进行逐次旋转,得到多个现场旋转指紋; 第一确定模块,用于针对每个现场旋转指纹,确定指纹库中每个捺印指纹中与所述现场旋转指纹中每个第一细节点对应的第二细节点; 第一投票模块,用于针对每个捺印指纹,根据每个第一细节点和所述捺印指纹中对应的每个第二细节点的坐标差,分别进行匹配投票,得到第一投票矩阵; 第一处理模块,用于对所述第一投票矩阵进行高斯平滑处理,确定所述处理后的第一投票矩阵中最高投票值对应的坐标差; 平移模块,用于根据所述最高投票值对应的坐标差,对所述现场旋转指纹的每个第一细节点进行坐标平移; 第二投票模块,用于针对坐标平移后的每个第一细节点,根据所述坐标平移后的第一细节点和所述捺印指纹中与所述坐标平移后的第一细节点对应的每个第三细节点的坐标差,分别进行匹配投票,得到第二投票矩阵; 第二处理模块,用于对所述第二投票矩阵进行高斯平滑处理,将处理后的第二投票矩阵中的最高投票值作为所述现场旋转指纹与所述捺印指纹的匹配度; 第二确定模块,用于针对每个捺印指紋,将与各现场旋转指纹的最高匹配度确定为所述捺印指纹与所述现场指纹的匹配度; 第三确定模块,用于将与所述现场指纹的匹配度满足预设条件的捺印指纹确定为与所述现场指纹粗匹配的捺印指紋。
【文档编号】G06K9/00GK103559476SQ201310421510
【公开日】2014年2月5日 申请日期:2013年9月16日 优先权日:2013年9月16日
【发明者】周翾, 姜琳, 李田英, 张成岩 申请人:中国联合网络通信集团有限公司