一种指纹检索模型及验证方法与流程

文档序号:32211266发布日期:2022-11-16 06:07阅读:211来源:国知局
一种指纹检索模型及验证方法与流程

1.本发明涉及指纹检索技术领域,特别是一种指纹检索模型及验证方法。


背景技术:

2.目前受到广泛关注的是基于人体生物特征识别技术的身份认证,它依据的是被识别对象自身特有的生理特征或行为特征。这些特征具有唯一性、稳定性、不会丢失、很难伪造等优点,可以凭其快速实现身份鉴别,从而有效地克服传统认证方式的各种缺陷。在生物特征识别领域,指纹作为最具独特性与持久性的生物特征之一,被广泛应用于身份识别。
3.指纹识别系统的主要功能应用在以下两方面:验证和辨识。验证是指把一个实时采集的指纹与一个已经记录的指纹进行一对一的匹配,进而确认身份的过程。辨识则指把实时采集的指纹同已经入库的指纹逐一对比,在其中找出能匹配实时采集的指纹的过程。在匹配算法和系统设计上验证和辨识具有不同的技术特点。例如验证系统一般只考虑比对完整的指纹,而辨识系统还要考虑比对残纹的特征;辨识系统比验证系统对比对算法的速度要求更高,但验证系统更强调易用性;另外在辨识系统中,分类技术一般作为加快查询速度的主要技术手段。
4.随着计算机性能的发展,使得借助计算机程序建立指纹的样本数据库,并利用相关的智能算法对指纹的快速检索成为可行的方案。


技术实现要素:

5.本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本技术的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
6.鉴于上述或现有技术中存在的问题,提出了本发明。
7.因此,本发明的目的是提供一种指纹检索模型及验证方法,其能够提高检索速度,具有更小的时间成本和空间成本。
8.为解决上述技术问题,本发明提供如下技术方案:一种指纹检索模型及验证方法,其包括对细节点数据进行数据预处理,将表示方向的特征量乘以系数d;通过fcm聚类算法建立模型,将样本数据分别聚类,求出对应的聚类中心;建立处理过后的样本数据库计算聚类点的最短路径各段长度并进行编号;采用最短路径和对应路径各段长度均方差的方法进行筛选,建立基于饥饿游戏(hgs)算法优化下的tsp指纹检索模型;对检索模型的时间复杂度、空间复杂度进行计算,并对每枚指纹占据的空间进行说明。
9.作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述fcm聚类算法包括,基于k-means算法优化的fcm算法;根据聚类的数目c和一组包含n个l维向量的数据,用fcm算法输出元素的隶属度,它代表着数据是属于第i个类的概率,可以通过求下面目标函数的最小值得到,通常取m=2;
[0010][0011]
其中,上式中的约束条件为:
[0012][0013][0014]
在上述约束条件下,可以求得目标函数取最小值时相应的隶属度矩阵和聚类中心;通常,该最小值用极小值代替,因此分别对各变量求偏导,并令偏导数为0,联立并解出更新后的模糊隶属度和聚类中心,公式如下:
[0015][0016][0017]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述细节点数据进行数据预处理包括,对于原始数据将乘以一个常系数d,d的取值越大越好,将角度的特征量进行放大,利用不同参数角度之间的区别将每个样本之间的特征量的区别放大,在聚类分析时达到更好的效果,完成数据的预处理。
[0018]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述基于饥饿游戏(hgs)算法优化下的tsp指纹检索模型包括,动物接近食物的行为可以用下式表示:
[0019][0020]
其中,r是介于的随机数;r1,r2均为之间的随机数;randn是满足标准正态分布的随机数;t为当前迭代次数;w1,w2表示饥饿权重;xb表示全局最优位置;x(t)表示当前个体位置;l是设置的常数;e的计算公式如下:
[0021]
e=sech(|f(i)-bf|)
[0022]
其中,为第i个个体的适应度值;bf是当前最优适应度值;sech是一个双曲函数;
[0023][0024]
r的计算公式如下:
[0025]
r=2*a*rand-a
[0026]
接着对饥饿对象的饥饿特征进行数学建模,w1的计算如下所示:
[0027]
[0028]
计算w2的公式为:
[0029][0030]
其中,hungry表示每个个体的饥饿程度;n表示所有个体的总数;shungry表示所有个体饥饿程度的总和,即sum(hungry);r3,r4,r5均为[0,1]之间的随机数;计算如下:
[0031][0032]
其中,allfitness(i)表示每个个体的适应度值;h的计算如下:
[0033][0034][0035]
其中,r6为[0,1]之间的随机数;fi为每个个体的适应度;bf为当前最优适应度值;wf为当前最差适应度值;ub和lb分别表示搜索空间的上限和下限;lh为h的下界。
[0036]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:对检索模型的时间复杂度包括,分析一个算法的时间复杂度步骤:用常数1取代运行时间中的所有加法常数;在修改后的运行次数函数中,只保留最高阶项;如果最高阶项存在且不是1,则去除与这个项相乘的常数;得到的最后结果就是大o阶。
[0037]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:空间复杂度进行计算包括,分析一个算法的空间复杂度步骤:忽略常数,用o(1)表示;递归算法的空间复杂度=递归深度n*每次递归所要的辅助空间;对于单线程来说,递归有运行时堆栈,求的是递归最深的那一次压栈所耗费的空间的个数,因为递归最深的那一次所耗费的空间足以容纳它所有递归过程。
[0038]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述验证方法包括,对已有数据库进行分类,确定目标集和待检测集;特征信息提取,对目标集和待检测集分别使用fcm聚类算法得到每个指纹对应的聚类中心;利用建立的优化最短路径模型,求出最短路径距离和对应的路径均方差;根据所给条件过滤掉数据集中80%,90%,95%,97%图像;设定最短路径值检索范围,进行指纹初次过滤;利用最短路径对应长度,进行二次筛选达到过滤要求;进行精确匹配,判断剩余子集中仍含有“同一”指纹匹配对子的数量占总指纹“同一”匹配对子数量的比例(计算穿透率)。
[0039]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述优化最短路径模型包括,同一个指纹具有相近特性,聚类之后得到点的坐标表征一个指纹信息的特征;寻找三个点的最短路径,来自同一指纹的细节点有共同特征,所得到的最短路径相近,最短路径作为初次筛选的参数指标;运用所述tsp指纹检索模型,计算得到最短路径值和最短路径。
[0040]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述初次过滤包括,对得到的所有指纹最短路径值初次筛选;通过设置最短路径置信区间范围(d
±
a%),筛除掉一部分指纹,其中d为最短路径值,a为设置的筛选范围。
[0041]
作为本发明所述指纹检索模型及验证方法的一种优选方案,其中:所述二次筛选包括,利用聚类点的最短路径排序,将目标集每个指纹每段路径按从小到大排序,待检测集
做同样处理;待检测指纹的每一段路径长度和目标集对应路径值求均方差,设置差值区间范围,按照要求的80%、90%、95%、97%的过滤水平进行二次过滤;在剩余的子集中进行指纹匹配,并计算穿透率。
[0042]
本发明的有益效果:本发明通过采用了相关的优化算法对传统的k-means以及tsp算法进行了优化,减少了因参数不佳重新执行算法的次数,相比于传统算法,具有更小的时间成本和空间成本。将提出的mshgs算法应用到求最短路径问题中,在一定程度上减少拓扑计算量和计算时间,在建立大体量的数据库时具有一定的作用
附图说明
[0043]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
[0044]
图1为指纹检索模型及验证方法的fcm的算法流程图。
[0045]
图2为指纹检索模型及验证方法的hgs-tsp流程图。
[0046]
图3为指纹检索模型及验证方法的指纹聚类结果图。
[0047]
图4为指纹检索模型及验证方法的饥饿游戏算法适应度函数迭代图。
[0048]
图5为指纹检索模型及验证方法的指纹最短路径示意图。
[0049]
图6为指纹检索模型及验证方法的筛选比例对应穿透率图。
[0050]
图7为指纹检索模型及验证方法的筛选比例对应筛除时间图。
具体实施方式
[0051]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明。
[0052]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0053]
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
[0054]
实施例1
[0055]
参照图1~7,为本发明第一个实施例,该实施例提供了一种指纹检索模型及验证方法,其能够提高检索速度,具有更小的时间成本和空间成本。
[0056]
传统的方法特征量包括:直角坐标(x,y)、方向场θ、指纹类型(左旋、右旋、漩涡等),如三角形结构的指纹特征检索算法:任意三点构成三角形,同一手指的指纹具有较多相似三角形,以三角形的最小内角、第二大内角、三角形旋转方向、三角形类型(根据细节点的类型编码,如末梢型、分叉型)等。其缺陷在于:选取的特征量过多,占据大量空间内存,检索效率低。本实施例的优点:所需特征少,减少了构建数据库的存储空间,提高了检索效率。
[0057]
具体的,搭建一个数学模型筛选出相关的指纹样本,指纹样本的特征为“细节点”,
细节点一般采用三元存储格式:(x、y、θ),分别表示x轴像素坐标、y轴像素坐标及细节点方向。每个指纹的“细节点”在几十到几百之间,庞大的数据库带来了巨大的计算量,需要对数据进行预处理。因此,应选择合适的模型,采用fcm聚类的方法,得到合适的聚类中心,保证了指纹的“同一”性,按照此思路构建数据处理后的样本库。
[0058]
在这个基础上,提出了最短路径模型,求出各聚类中心的最短路径值。因为来自同一指的数据聚类后得出的最短路径相似,不会因为手指按压图像采集设备的角度、轻重及位置各不相同而出现较大差异,因此,最短路径的提出也保证了“同一性”。利用最短路径值和最短路径,设置合适的筛选范围,进行筛除和检索。
[0059]
针对时间复杂度和空间复杂度的任务要求,算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,而空间复杂度则定义为该算法所耗费的存储空间,二者在很大程度上能很好反映出算法的优劣与否。本文采用了相应的计算公式进行了计算,得到最终结果并对每一枚指纹图像应占据的大小给出了计算公式。
[0060]
所述验证方法是针对所提出指纹检索模型方法的一个实验验证。首先,将给定的异指和同指中指纹的数据构成的数据库分为指纹的目标集和待检测集。通过预处理即按照fcm聚类的方法进行数据特征降维,提取得到指纹聚类中心(新的特征向量),以此为判断依据进行数据匹配。对每一个指纹聚类得到的聚类中心,用优化后的最短路径算法求出各自对应的最短路径值,最短路径中各段长度按从小到大的顺序进行排列,为下一步匹配做准备。
[0061]
应说明的是,同指是指同指给定数据包里包含同一个指头的多次采集数据,异指是异指给定数据包里的指纹数据都是采集的不同指头。
[0062]
每一个指纹数据都会得到一个对应的最短路径值,同一指纹求得的最短路径值较为接近。通过设置最短路径值范围和利用对应路径各段长度均方差范围,即进行两次筛选,就可以在检索过程中过滤掉数据集中80%,90%,95%,97%的指纹数据。之后,在剩下的小规模子集中,对仍含有“同一”指纹匹配,计算匹配成功的数量占总指纹“同一”匹配对子数量的比例(穿透率)。
[0063]
应说明的是,下表为符号定义与说明
[0064][0065]
进一步的,针对指纹的检索和检索方法的时间复杂度、空间复杂度分析问题,本实施例采用以下方法:
[0066]
(1)对给出的“细节点”数据进行数据预处理,将表示方向的特征量乘以系数d(d值越大,第二步的聚类效果越好);
[0067]
(2)利用fcm聚类算法建立模型,将样本数据分别聚类,求出对应的聚类中心,然后建立处理过后的样本数据库计算聚类点的最短路径各段长度,按从小到大并进行相应的编号;
[0068]
(3)在上述的数据处理基础上,采用最短路径和对应路径各段长度均方差的方法进行筛选。针对最短路径的求解,提出了一种优化算法优化模型的参数,进而建立了基于饥饿游戏(hgs)算法优化下的tsp指纹检索模型;
[0069]
(4)对该检索模型的时间复杂度、空间复杂度本文根据相应的理论公式进行了计算,并对每枚指纹占据的空间进行了说明。
[0070]
进一步的,“细节点”数据预处理:
[0071]
对于原始数据,即给出的参数,将乘以一个常系数d,一般来说,d的取值越大越好,将角度的特征量进行放大,主要是要利用不同参数角度之间的区别将每个样本之间的特征量的区别放大,在聚类分析时达到更好的效果,完成数据的预处理。
[0072]
进一步的,k-means聚类算法:
[0073]
k-means算法是无监督的聚类算法,它实现起来比较简单,聚类效果不错,因此应用广泛。k-means算法的思想很简单,对于给定的样本集,按照样本之间的距离大小,将样本集划分为k个簇。让簇内的点尽量紧密的连在一起,而让簇间的距离尽量的大。
[0074]
k-means每个聚类问题的解都可以看作牧师—村民模型:有四个牧师去郊区布道,一开始牧师们随意选了几个布道点,并且把这几个布道点的情况公告给了郊区所有的村民,于是每个村民到离自己家最近的布道点去听课。听课之后,大家觉得距离太远了,于是每个牧师统计了一下自己的课上所有的村民的地址,搬到了所有地址的中心地带,并且在
海报上更新了自己的布道点的位置。牧师每一次移动不可能离所有人都更近,有的人发现a牧师移动以后自己还不如去b牧师处听课更近,于是每个村民又去了离自己最近的布道点。此后,牧师每个礼拜更新自己的位置,村民根据自己的情况选择布道点,最终稳定了下来,即为了让每个村民到其最近中心点的距离和最小。
[0075]
假设输入样本为t=x1,x2,

,xm;则算法步骤为(使用欧几米得距离公式):
[0076]
(1)选择初始化的k个类别中心a1,a2,

,ak;
[0077]
(2)对于每个样本,将其标记为距离类别中心最近的类别j;
[0078][0079][0080]
(3)更新每个类别的中心点aj为隶属该类别的所有样本的均值;
[0081]
(4)重复上面两步操作,直到达到某个中止条件,即为迭代次数、最小平方误差mse、簇中心点变化率。
[0082]
使用平方误差为目标函数,其表达式为:
[0083][0084]
要获取最优解,也就是目标函数需要尽可能的小,对j函数求偏导数,可以得到簇中心点a更新的公式:
[0085][0086]
较佳的,基于k-means算法改进的fcm算法:
[0087]
通过分析可知,传统的k-means算法面临的问题有:k值需要人为设定,不同k值得到的结果不一样;对初始的簇中心敏感,不同选取方式会得到不同结果;对异常值敏感;样本只能归为一类,不适合多分类任务;不太适合离散的分类、样本类别不平衡的分类、非凸形状的分类。因此本实施例采用的方法是通过引入样本到聚类中心的隶属度,使准则函数不仅可微,且软化了模式的归属。它通过优化目标函数得到每个样本点对所有类中心的隶属度,从而决定样本点的类属以达到自动对样本数据进行分类的目的。
[0088]
根据聚类的数目c和一组包含n个l维向量的数据,用fcm算法输出元素的隶属度,它代表着数据是属于第i个类的概率,可以通过求下面目标函数的最小值得到,通常取m=2。
[0089][0090]
其中,上式中的约束条件为:
[0091][0092][0093]
在上述约束条件下,可以求得目标函数取最小值时相应的隶属度矩阵和聚类中心。通常,该最小值用极小值代替,因此分别对各变量求偏导,并令偏导数为0,联立并解出更新后的模糊隶属度和聚类中心,公式如下:
[0094][0095][0096]
参照图1,根据fcm的基本原理,总结出该算法的步骤如下:
[0097]
(1)设置目标函数的精度e,模糊指数m(m通常取2)和算法最大迭代次数;
[0098]
(2)初始化隶属度矩阵或聚类中心;
[0099]
(3)由上述公式更新模糊划分矩阵和聚类中心;
[0100]
(4)若目标函数则迭代结束;否则,跳转执行第三步;
[0101]
(5)根据所得到的隶属度矩阵,取样本隶属度最大值所对应类作为样本聚类的结果,聚类结束。
[0102]
进一步的,指纹的“同一”性问题:
[0103]
在提出的“细节点”数据预处理的基础上,利用fcm算法对所有附件中的指纹样本数据进行聚类,目的是建立一个聚类处理过的指纹样本数据库。基于fcm算法的数据库在提取了各个“细节点”特征量的同时,通过预处理放大了不同指纹样本之间的差距,使得聚类结果具有“同一”性的指纹样本之间的聚类中心更为贴近,联系更紧密,保证了指纹的“同一”性。
[0104]
进一步的,最短路径问题,hgs-tsp算法:
[0105]
tsp是典型的np完全问题,即其最坏情况下的时间复杂度随着问题规模的增大按指数方式增长,到目前为止还未找到一个多项式时间的有效算法。tsp问题可描述为:已知n个节点相互之间的距离,某个人从某个节点出发访问每个节点一次且仅一次,最后回到出发的节点,如何安排才使其所走路线最短。简言之,就是寻找条最短的遍历n个节点的路径,或者说搜索自然子集x={1,2,

,n}(x的元素表示对n个节点的编号)的一个排列x(x)={v1,v2,

,vn},使t4=∑d(v,vm)+d(vn,v1)取最小值,其中d(v,v+1)表示节点v到节点v+1的距离。
[0106]
本实施例提供一种基于饥饿游戏搜索算法构建检索模型的方法,饥饿游戏搜索算法是于2021年提出的一种新型智能优化算法,该算法是根据动物饥饿驱动活动和行为而设计的,具有寻优能力强,收敛速度快等特点。
[0107]
动物接近食物的行为可以用下式表示:
[0108][0109]
其中,r是介于的随机数;r1,r2均为之间的随机数;randn是满足标准正态分布的随机数;t为当前迭代次数;w1,w2表示饥饿权重;xb表示全局最优位置;x(t)表示当前个体位置;l是设置的常数;e的计算公式如下:
[0110]
e=sech(|f(i)-bf|)
[0111]
其中i∈(1,2,

,n),f(i)为第i个个体的适应度值;bf是当前最优适应度值;sech是一个双曲函数;
[0112][0113]
r的计算公式如下:
[0114]
r=2*a*rand-a
[0115]
接着对饥饿对象的饥饿特征进行数学建模,w1的计算如下所示:
[0116][0117]
计算w2的公式为:
[0118][0119]
其中,hungry表示每个个体的饥饿程度;n表示所有个体的总数;shungry表示所有个体饥饿程度的总和,即sum(hungry);r3,r4,r5均为[0,1]之间的随机数;计算如下:
[0120][0121]
其中,allfitness(i)表示每个个体的适应度值;h的计算如下:
[0122][0123][0124]
其中,r6为[0,1]之间的随机数;fi为每个个体的适应度;bf为当前最优适应度值;wf为当前最差适应度值;ub和lb分别表示搜索空间的上限和下限;lh为h的下界。
[0125]
参照图2,采用饥饿游戏搜索算法优化tsp,其步骤如下:
[0126]
(1)对参数进行初始化,同时对个体x初始化;
[0127]
(2)判断迭代次数是否最优,达到最优就输出参数,否则计算每个个体的适应度;
[0128]
(3)更新bf,wf等参数并计算参数w1和w2;
[0129]
(4)为每个个体计算参数e并更新参数r和个体的位置;
[0130]
(5)判断迭代次数是否最优,否则重复步骤(3)、(4)、(5)。
[0131]
进一步的,时间和空间复杂度:
[0132]
在进行算法分析时,语句总的执行次数t(n)是关于问题规模n的函数,进而分析t(n)随n的变化情况并确定t(n)的数量级。算法的时间复杂度,也就是算法的时间量度,记
作:t(n)=o(f(n))。它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐近时间复杂度,简称为时间复杂度,是一种“渐进表示法”。其中f(n)是问题规模n的某个函数。
[0133]
一般情况下,随着输入规模n的增大,t(n)增长最慢的算法为最优算法。显然,由此算法时间复杂度的定义可知,我们的三个求和算法的时间复杂度分别为o(1),o(n),o(n2)。
[0134]
分析一个算法的时间复杂度步骤:
[0135]
(1)用常数1取代运行时间中的所有加法常数。
[0136]
(2)在修改后的运行次数函数中,只保留最高阶项。
[0137]
(3)如果最高阶项存在且不是1,则去除与这个项相乘的常数。
[0138]
(4)得到的最后结果就是大o阶。
[0139]
查找一个有n个随机数字数组中的某个数字,最好的情况是第一个数字就是,那么算法的时间复杂度为o(1),但也有可能这个数字就在最后一个位置,那么时间复杂度为o(n)。平均运行时间是期望的运行时间。最坏运行时间是一种保证。
[0140]
算法的空间复杂度通过计算算法所需的存储空间实现,算法的空间复杂度的计算公式记作:,其中,n为问题的规模,f(n)为语句关于n所占存储空间的函数,也是一种“渐进表示法”,这些所需要的内存空间通常分为“固定空间内存”(包括基本程序代码、常数、变量等)和“变动空间内存”(随程序运行时而改变大小的使用空间)。通常,都是用“时间复杂度”来指运行时间的需求,用“空间复杂度”来表达运行时的空间需求。
[0141]
分析一个算法的空间复杂度步骤:
[0142]
(1)忽略常数,用o(1)表示
[0143]
(2)递归算法的空间复杂度=递归深度n*每次递归所要的辅助空间
[0144]
(3)对于单线程来说,递归有运行时堆栈,求的是递归最深的那一次压栈所耗费的空间的个数,因为递归最深的那一次所耗费的空间足以容纳它所有递归过程。
[0145]
改进饥饿搜索算法:针对饥饿游戏搜索算法(hgs)在单峰函数收敛速度慢,在低维多峰函数上容易陷入局部最优的问题,提出了一种改进混合策略改进的饥饿游戏搜索算法(mshgs)。采用sobol序列初始化种群,提高算法初始种群多样性,引入翻筋斗搜索策略提高算法的收敛速度和全局搜索能力,通过反向学习机制和逐维高斯变异进一步提高算法跳出局部最优的能力。
[0146]
步骤:
[0147]
(1)根据sobol序列生成均匀的初始种群,计算所有种群的适应度值,选取最优解作为全局最优解;
[0148]
(2)根据原饥饿搜索算法更新种群位置;
[0149]
(3)根据翻筋斗搜索策略更新种群位置;
[0150]
(4)计算种群适应度值并排序,选取前10%最优解作为精英解;
[0151]
(5)根据反向学习机制求解精英解的反向解,若其反向解优于原解则将其位置替换为反向解的位置;
[0152]
(6)根据高斯变异算子求解精英解的变异解,若其变异解优于原解则将其位置替换为变异解的位置;
[0153]
(7)比较最优解和全局最优解,更新全局最优解;
[0154]
(8)满足最大迭代次数,返回全局最优解位置,否则回到第(2)步;
[0155]
本实施例采用了相关的优化算法对传统的k-means以及tsp算法进行了优化,减少了因参数不佳重新执行算法的次数,相比于传统算法,具有更小的时间成本和空间成本。
[0156]
进一步的,验证方法:
[0157]
验证方法是对所建立模型的验证,根据要求,利用异指和同指两个文件构成的数据集,利用提出的检索模型方法分别过滤掉数据集中80%,90%,95%,97%图像后,在剩下的小规模子集中,计算仍含有“同一”指纹匹配对子的数量占总指纹“同一”匹配对子数量的比例。针对此问题,思路如下:
[0158]
(1)对已有数据库进行分类,确定目标集和待检测集。
[0159]
(2)特征信息提取,对目标集和待检测集分别使用fcm聚类算法得到每个指纹对应的聚类中心。
[0160]
(3)利用建立的优化最短路径模型,求出最短路径距离和对应的路径均方差。
[0161]
(4)根据所给条件过滤掉数据集中80%,90%,95%,97%图像。设定最短路径值检索范围,进行指纹初次过滤。利用最短路径对应长度,进行二次筛选达到过滤要求。
[0162]
(5)进行精确匹配,判断剩余子集中仍含有“同一”指纹匹配对子的数量占总指纹“同一”匹配对子数量的比例(计算穿透率)。
[0163]
进一步的,特征信息提取和处理,基于fcm算法的聚类分析:
[0164]
对目标集和待检测集的数据中的角度特征量乘以系数d,然后运用fcm聚类算法得到每个指纹对应的聚类中心如图3所示(部分指纹为例)。例如,将同指中处理过的第一个指纹数据(编号1000_0)进行聚类(3类)后,得到结果为(178.39,207.62,3326.263)、(129.72,241.17,16360.62)、(109.67,276.28,31138.07)以此作为初步提取的特征量。对三个坐标进行处理,消除了角度影响因素,得到新的特征量(178.39,207.62)、(129.72,241.17)、(109.67,276.28),以此为例对所用数据全部进行处理。
[0165]
由图3可知,同一指纹具有较为明显的相似特征,同一指纹的细节点坐标经过聚类后得到的聚类点,大部分位置分布十分相近。对于指纹图像旋转的情况,其聚类后的相对位置也是差不多的。因此,通过聚类的方法提取新的特征量的方法是可行的。
[0166]
进一步的,基于hgs-tsp算法的最短路径分析
[0167]
由于同一个指纹具有相近特性,所以聚类之后得到点的坐标即可表征一个指纹信息的特征,上图所示同一指纹聚类之后的点分布图像十分相似。下一步,寻找三个点的最短路径,由于来自同一指纹的细节点有共同特征,所以不论指纹图如何旋转和变形,所得到的最短路径相近,以此可以用最短路径作为初次筛选的参数指标。运用提出的tsp算法模型,计算得到最短路径值和最短路径。为了加速收敛速度,提高模型质量,对模型参数进行了饥饿游戏算法(hgs)优化。如图5所示,即为得到的最短路径(部分指纹为例)。
[0168]
饥饿游戏优点:
[0169]
针对饥饿游戏搜索算法(hgs)在单峰函数收敛速度慢,在低维多峰函数上容易陷入局部最优的问题,本文提出了一种改进混合策略改进的饥饿游戏搜索算法(mshgs)。采用sobol序列初始化种群,提高算法初始种群多样性,引入一种惯性因子和翻筋斗搜索策略提高算法的收敛速度和全局搜索能力通过反向学习机制和逐维高斯变异进一步提高算法跳出局部最优的能力。
[0170]
本实施例将提出的mshgs算法应用到求最短路径问题中,在一定程度上减少拓扑计算量和计算时间,在建立大体量的数据库时具有一定的作用。
[0171]
因为聚类生成3个点,所以最短路径即为三角形的周长。同理,因为同一指纹具有相似的特性,所以最短路径围成的三角形形状具有相似性,相比之前聚类之后单纯得到的点,特征更加直观和明显。
[0172]
进一步的,不同过滤水平下的指纹筛选:
[0173]
得到所有指纹的最短路径值后,先进行初次筛选。通过设置最短路径置信区间范围(d
±
a%),可以筛除掉一部分指纹,其中d为最短路径值,a为设置的筛选范围。经过多次实验,初次筛选只能过滤掉数据集中约50%的数据,那么为了达到过滤要求,还需要二次进行筛选。二次筛选利用了聚类点的最短路径排序,如下表所示,将目标集每个指纹每段路径按从小到大排序,待检测集做同样处理。待检测指纹的每一段路径长度和目标集对应路径值求均方差,设置差值区间范围,按照要求的80%、90%、95%、97%的过滤水平进行二次过滤,最终达到过滤要求。最后,在剩余的子集中进行指纹匹配,并计算穿透率。
[0174]
表目标集最短路径(部分)
[0175][0176]
参照图6~7,得到了四种不同筛除比例下对应的穿透率值和筛除时间,分别为35.4%、23.4%、16.6%和11%以及11.427s、6.475s、3.991s、2.98s。从图像的变化趋势可以看出,穿透率与筛除比例和筛除时间的值的关系是成反比的。这也是符合客观事实的,因为筛除掉的数据集越多,剩余子数据库数据量越少,能够匹配成功的概率就会下降,也就穿透率会下降,筛除时间也相应缩短,数据变化趋势的正确性也说明了本实施例所建立模型的正确性。
[0177]
综上,采用了相关的优化算法对传统的k-means以及tsp算法进行了优化,减少了因参数不佳重新执行算法的次数,相比于传统算法,具有更小的时间成本和空间成本。将提出的mshgs算法应用到求最短路径问题中,在一定程度上减少拓扑计算量和计算时间,在建立大体量的数据库时具有一定的作用。
[0178]
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发
明的权利要求范围当中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1