一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于大容量指纹库的指纹比对方法与流程

2022-04-25 03:01:42 来源:中国专利 TAG:

1.本发明涉及指纹搜索比对领域,尤其涉及一种用于大容量指纹库的指纹比对方法。


背景技术:

2.在小区或者厂区中需要进行人员统计时,一般会在物业或者人事那统一注册每个人的指纹,放在指纹库中,由于人数较多,累计注册用户可能达到一万枚以上,如果需要在其中找到一个人的指纹信息时,常规做法是每次与指纹库进行比对,都全局搜索一遍,这样搜索的耗时会很长,达到2s以上。


技术实现要素:

3.为了在大容量的指纹库内进行比对指纹,提高比对效率,本发明采用以下技术方案:
4.一种用于大容量指纹库的指纹比对方法,包括以下步骤:
5.步骤s1:用户进行指纹注册并生成指纹模板,指纹模板存放在本地模板库中;
6.步骤s2:建立本地指纹搜索表,本地指纹搜索表中包括两列数据,一列为比对成功的序号id,另一列为每一个id对应的比对成功的次数num;
7.步骤s3:获取待比对的指纹模板,并在本地模板库中搜寻与待比对的指纹模板对应的指纹模板:对本地指纹搜索表中的num列进行判断:
8.若num列中所有值都为0,则将待比对的指纹模板与本地模板库进行一对多比对,如果比对成功,则进入步骤s6;否则输出指纹不存在;
9.若num列中的值存在不为0,则进入步骤s4;
10.步骤s4:统计本地指纹搜索表中num列中值不为0的有效数据条数susnum;
11.若susnum小于条数阈值,则将待比对的指纹模板与本地指纹搜索表进行一对一比对,如果比对成功,则进入步骤s6;否则将待比对的指纹模板与本地模板库进行一对多比对;
12.若susnum大于等于条数阈值,则进入步骤s5;
13.步骤s5:将待比对的指纹模板通过进行补集法进行比对,如果比对成功,则进入步骤s6;否则输出指纹不存在;
14.步骤s6:将待比对的指纹模板更新至本地指纹搜索表,比对结束。
15.具体的,指纹特征模板内包括程序版本号、特征点个数,每个特征点的位置信息(x,y坐标)、方向、曲率、特征点类型信息。
16.具体的,在步骤s5中,将待比对的指纹模板通过进行补集法进行比对的过程为:将本地指纹搜索表中的前roughnum个模板组成集合prem,然后将待对比的指纹模板与集合prem中的模板进行一对多比对,如果比对成功,则进入步骤s6;如果比对不成功,将本地模板库中去除集合prem剩余的模板组成集合extram,将待对比的指纹模板和集合extram进行
一对多比对。
17.具体的,若susnum值大于本地模板库中模板总数的十分之一,则roughnum为本地模板库中模板总数的十分之一,否则roughnum等于susnum。
18.具体的,一对多比对的过程为:通过指纹相似方法对待对比的集合或是本地模板库进行计算并进行相似度降序排名,将前n个模板组成集合m,然后再将待比对的指纹模板与集合m中的所有模板进行一比一精确比对。
19.具体的,其中n值的选取规则是:待对比的集合或是本地模板库中模板总数为tempsum,
20.如果tempsum《400,则n=90;
21.如果400≤tempsum《800,则n=120;
22.如果800≤tempsum《2000,则n=300;
23.如果2000≤tempsum《3000,则n=400;
24.如果3000≤tempsum《5000,则n=650;
25.如果5000≤tempsum《10000,则n=750;
26.否则,n=900。
27.具体的,更新本地指纹搜索表的过程为:遍历本地指纹搜索表,找到表中与待比对指纹模板相同的id,并将对应id的num值增加1,然后根据num值从大到小排序。
28.综上所述,本发明本装置具有以下优点:大大提高了指纹在指纹库内搜索的时间,以及提升比对成功率。以一万枚的本地模板库来说,经常使用的用户比对时间从2s降低到200ms,这极大的提升了用户的体验。
具体实施方式
29.一种用于大容量指纹库的指纹比对方法,包括以下步骤:
30.步骤s1:用户进行指纹注册并生成指纹模板,后台记录包括用户名,以及所述用户名一对一映射的序号id了等信息,指纹特征模板内包括程序版本号、特征点个数,每个特征点的位置信息(x,y坐标)、方向、曲率、特征点类型等信息。指纹模板存放在本地模板库中。
31.步骤s2:建立本地指纹搜索表,本地指纹搜索表中包括两列数据,一列为比对成功的序号id,另一列为每一个id对应的比对成功的次数num。其中这个本地指纹搜索表为小范围内指纹检索提供了便利,例如对于一个小区内的用户有很多,本地指纹搜索表通常集中收集了小区内的一个固定单元内的住户的比对信息,当该单元的用户进行指纹比对时,可优先在本地指纹搜索表中搜寻,这样可以减少在本地模板库内大范围内进行搜寻比对的时间,提高了比对效率。
32.步骤s3:用户需要进行指纹比对生成待比对的指纹模板,在本地模板库中搜寻与待比对的指纹模板对应的指纹模板:对本地指纹搜索表中的num列进行判断:
33.若num列中所有值都为0,则将待比对的指纹模板与本地模板库进行一对多比对,如果比对成功,则进入步骤s6;否则输出指纹不存在;
34.若num列中的值存在不为0,则进入步骤s4;
35.步骤s4:统计本地指纹搜索表中num列中值不为0的有效数据条数susnum;
36.若susnum小于条数阈值,条数阈值为90,则将待比对的指纹模板的序号id与本地
指纹搜索表中的序号id进行一对一比对,如果比对成功,则进入步骤s6;否则待比对的指纹模板与本地模板库进行一对多比对;
37.若susnum大于等于条数阈值,条数阈值为90,则进入步骤s5;
38.步骤s5:将待比对的指纹模板通过进行补集法进行比对,将本地指纹搜索表中的前roughnum个模板组成集合prem。若susnum值大于本地模板库中模板总数的十分之一,则roughnum为本地模板库中模板总数的十分之一,否则roughnum为susnum值
39.然后将待对比的指纹模板与集合prem中的模板进行一对多比对,如果比对成功,则进入步骤s6;如果比对不成功,将本地模板库中去除集合prem剩余的模板组成集合extram,将待对比的指纹模板和集合extram进行一对多比对。如果比对成功,则进入步骤s6;否则输出指纹不存在;
40.步骤s6:将待比对的指纹模板更新至本地指纹搜索表,获取当前比对成功的序号id,遍历本地指纹搜索表,找到表中与待比对指纹模板相同的id,并将对应id的num值增加1,然后根据num值从大到小排序。这里并不需要对表从头到尾进行一次排序操作,因为每次对表进行更新后,都会对表进行排序,所以更新id对应的num值之后,只需要局部排序:对表进行向上查找,找出次数比它大的序号id0:将id这一行数据移到id0行下一行,原id0后面的数据依次下移,同时,比对结束。
41.上述方法中一对多比对的过程为:通过指纹相似方法对待对比的集合或是本地模板库进行计算,用可靠性较高的分叉点所在脊线的相似度寻找出基准点对,根据基准点与周围特征点的关系筛选基准点对、确定旋转变换参数,然后进行旋转变换,变换完成后,再进行所有细节点的比对,得到相似度得分,将相似度得分降序排名,将前n个模板组成集合m,然后再将待比对的指纹模板与集合m中的所有模板进行一比一精确比对。
42.其中n值的选取规则是:待对比的集合或是本地模板库中模板总数为tempsum,
43.如果tempsum《400,则n=90;
44.如果400≤tempsum《800,则n=120;
45.如果800≤tempsum《2000,则n=300;
46.如果2000≤tempsum《3000,则n=400;
47.如果3000≤tempsum《5000,则n=650;
48.如果5000≤tempsum《10000,则n=750;
49.否则,n=900。
50.从上面描述可得,该装置具有以下优点:大大提高了指纹在指纹库内搜索的时间,以及提升比对成功率。以一万枚本地模板库来说,经常使用的用户比对时间从2s降低到200ms,这极大的提升了用户的体验。
51.可以理解的是,以上关于本发明的具体描述,仅用于说明本发明而并非受限于本发明实施例所描述的技术方案。本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换,以达到相同的技术效果;只要满足使用需要,都在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献