指纹信息的动态更新方法和指纹识别装置
技术领域
本发明涉及指纹识别技术领域,尤其是涉及一种指纹信息的动态更新方法和指纹识别装置。
背景技术
指纹识别作为安全性较高的生物识别技术,已被广泛应用于各个领域。尤其在智能手机领域,指纹识别技术已被应用于身份验证、密码管理,使得用户个人信息得到安全保护,同时也为用户带来了便捷的操作。
对于应用于智能手机上的小面积的按压式指纹传感器而言,传统的指纹识别方法并不适用。因为在注册过程中只能获取手指的一部分指纹信息存储于指纹模板数据库中,作为指纹识别时的参考模板,而指纹模板数据库中的指纹信息是固定不变的,当进行指纹识别时采集的指纹信息在注册区域之外时,由于指纹模板数据库中并不包含该注册区域之外的指纹信息,此时指纹识别装置便会判别为指纹识别失败而导致误判,影响指纹识别的准确率。特别是在不同使用环境下(例如四季变换),用户的指纹信息会发生变化而与指纹模板数据库中的指纹信息产生差异,更会增加误判的概率。
发明内容
本发明的主要目的在于提供一种指纹信息的动态更新方法和指纹识别装置,旨在对指纹模板数据库中的指纹信息进行动态更新,提高指纹识别的准确率。
为达以上目的,本发明提出一种指纹信息的动态更新方法,包括步骤:
采集指纹信息,根据采集的指纹信息和预先注册的指纹模板数据库进行指纹识别;
指纹识别成功后,判断所述指纹模板数据库是否饱和;
当所述指纹模板数据库没有饱和,且采集的指纹信息满足第一更新条件时,将采集的指纹信息添加到所述指纹模板数据库中;
当所述指纹模板数据库已经饱和,且采集的指纹信息满足第二更新条件时,从所述指纹模板数据库中选取目标指纹信息,并以采集的指纹信息替换所述目标指纹信息。
本发明同时提出一种指纹识别装置,包括:
采集模块,用于采集指纹信息;
识别模块,用于根据采集的指纹信息和预先注册的指纹模板数据库进行指纹识别;
更新模块,用于在指纹识别成功后,对所述指纹模板数据库进行更新;
所述更新模块包括判断单元、第一更新单元和第二更新单元,其中:
判断单元,用于判断所述指纹模板数据库是否饱和,若否,则启动所述第一更新单元,若是则启动所述第二更新单元;
第一更新单元,用于判断采集的指纹信息是否满足第一更新条件,若是则将采集的指纹信息添加到所述指纹模板数据库中;
第二更新单元,用于判断采集的指纹信息是否满足第二更新条件,若是则从所述指纹模板数据库中选取目标指纹信息,并以采集的指纹信息替换所述目标指纹信息。
本发明所提供的一种指纹信息的动态更新方法,在指纹识别过程中,当指纹模板数据库不饱和时,以往指纹模板数据库中添加新的指纹信息的方式进行指纹信息的快速更新,从而快速获得手指大部分的指纹信息;当指纹模板数据库已经饱和时,则以当前采集的指纹信息替换掉指纹模板数据库中相应的指纹信息,从而可继续获得新的指纹信息或者随着手指指纹的变化对指纹模板数据库中的指纹信息进行同步更新。最终实现了在使用过程中对指纹模板数据库中的指纹信息的动态更新,在不提高指纹识别认假率的同时降低了指纹识别的拒真率,提高了指纹识别的准确率,降低了指纹识别装置在不同使用环境下的误判率,提升了用户的使用体验。
附图说明
图1是本发明指纹信息的动态更新方法一实施例的流程图;
图2是本发明指纹信息的动态更新方法一实施例中满足第一更新条件时添加指纹信息的示意图;
图3是本发明指纹信息的动态更新方法一实施例中满足第二更新条件时
替换指纹信息的示意图;
图4是本发明指纹信息的动态更新方法一实施例中满足第二更新条件时另一替换指纹信息的示意图;
图5是本发明的指纹识别装置一实施例的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,提出本发明的指纹信息的动态更新方法一实施例,所述方法包括以下步骤:
步骤S10:采集指纹信息,进行指纹识别。
指纹识别装置中预先注册了指纹模板数据库,指纹识别装置将采集的指纹信息与指纹模板数据库中的指纹信息进行比对,当二者的相似度或匹配的特征数达到一定阈值时,则判定指纹识别成功,否则判定指纹识别失败。
步骤S11:判断指纹识别是否成功。
当指纹识别成功后,则进入步骤S12;当指纹识别失败后,则提示用户识别失败,返回步骤S10,重新采集指纹信息进行指纹识别。
步骤S12:判断指纹模板数据库是否饱和。
由于在小面积指纹识别传感器上,每次采集只能获取到手指小部分区域的指纹信息,为了保证注册流程用户的使用体验,注册流程中采集指纹的次数不能过多,所以指纹模板数据库中只能存储用户一部分指纹信息。
在指纹注册流程保持不变的情况下,本发明在指纹识别过程中增加了两个阶段的学习流程,以动态更新指纹信息。当指纹模板数据库没有饱和时,则进行第一阶段的学习,快速增加指纹模板数据库中的指纹信息,直至指纹模板数据库饱和为止;当指纹模板数据库已经饱和时,则进行第二阶段的学习,对指纹模板数据库中的指纹信息进行优化更新。
假设指纹模板数据库中当前存储的指纹信息数量为n,指纹模板数据库所能容纳的最大指纹信息数量为M。当n<M时,则判定指纹模板数据库没有饱和,进入步骤S13;当n≥M时,则判定指纹模板数据库已经饱和,进入步骤
S15。
步骤S13:判断是否满足第一更新条件。
当指纹模板数控库尚未饱和时,则进一步判断采集的指纹信息是否满足第一更新条件。
在某些实施例中,判断采集的指纹信息中相对于模板数据库中的指纹信息是否有新增信息,只要有新增信息,则判定采集的指纹信息满足第一更新条件,进入步骤S14。否则判定不满足第一更新条件,不予更新,进入步骤S17,结束流程。
在另一些实施例中,当采集的指纹信息相对于指纹模板数据库中的指纹信息有新增信息,且新增信息量达到(大于等于)第一阈值时,则判定采集的指纹信息满足第一更新条件,进入步骤S14。若没有新增信息,或者新增信息小于第一阈值时,则判定不满足第一更新条件,不予更新,进入步骤S17,结束流程。
第一阈值可以是一固定值,第一阈值设置得宽松时,学习速度较快,会增加过多重复的冗余信息。为了控制第一阶段学习的学习速度,即指纹信息的更新速度,优选第一阈值为一动态变化值,通过计算出指纹模板库中已经包含的指纹信息量来自适应调整第一阈值。
如果当前指纹模板数据库中的信息量较少,则放松第一阈值,加快更新速度。随着学习过程中指纹模板库中的信息量逐步增加,逐步加严第一阈值,调整更新速度。为此,第一阈值可以是采集的指纹信息新增的信息量占指纹模板数据库中指纹信息量的一定百分比(如5%-10%),则随着指纹模板数据库中指纹信息量的增加,第一阈值也越来越大,第一更新条件越来越严格。
优选地,设第一阈值为r,且r=a·r0+b·I,其中a、b为常数,r0为原始阈值,I为指纹模板数据库中当前的指纹信息量。上式表明,随着I的增大,第一更新条件越来越严格。
在某些实施例中,若采集的指纹信息相对指纹模板数据库没有新增信息,即指纹模板数据库中存在与采集的指纹信息完全相匹配的指纹信息,但是由于当前指纹模板数据库不饱和,并且多张指纹图像的图像质量等指标也可能不相同,增加指纹模板对降低拒真率也是有意义的。因此,在这种情况下,同样判定为满足第一更新条件。
步骤S14:将采集的指纹信息添加到指纹模板数据库中。
当采集的指纹信息满足第一更新条件时,则将采集的指纹信息添加到指纹模板数据库中,更新指纹模板数据库中的指纹信息。
如图2所示,指纹图像1-5均满足第一更新条件,在持续的动态更新过程中,指纹图像1-5均被添加到指纹模板数据库中。从而,将从一开始注册得到的手指小部分区域的指纹信息,通过使用过程中持续的动态更新,最终获得手指大部分区域的指纹信息。
步骤S15:判断是否满足第二更新条件。
当指纹模板数据库已经饱和时,则进一步判断采集的指纹信息是否满足第二更新条件。
在某些实施例中,当采集的指纹信息相对于指纹模板数据库中的指纹信息有新增信息,且新增信息量达到(大于等于)第二阈值时,则判定采集的指纹信息满足第二更新条件,并选取指纹模板数据库中冗余信息(Redundancy Information,RI)最多且其新增信息小于采集的指纹信息的新增信息的指纹信息作为目标指纹信息,进入步骤S16。冗余信息最多指的是:在满足第一更新条件时添加进指纹模板数据库的指纹信息与注册过程中的指纹信息相比重复信息最多,或者是增加的信息最少。若没有新增信息或者新增信息量小于第二阈值,则判定不满足第二更新条件,不予更新,进入步骤S17,结束流程。其中,第二阈值可以是采集的指纹信息新增的信息量占指纹模板数据库中指纹信息量的一定百分比(如10%以上),例如当采集的指纹信息新增的信息量大于指纹模板数据库中指纹信息量的10%时,则判定采集的指纹信息满足第二更新条件。
如图3所示,指纹模板数据库中的指纹图像1-5的冗余信息分别为RI1、RI2、RI3、RI4和RI5,指纹图像3添加进指纹模板数据库的新增信息(Add Information,AI)为AI3,指纹图像6为新采集的指纹图像,新增信息为AI6。若RI3=max(RI1,RI2,RI3,RI4,RI5),AI3>10%,AI6>AI3,则将指纹图像3从指纹模板数据库删除,将指纹图像6添加进指纹模板数据库,指纹图像3和指纹图像6可以是不同位置的指纹图像。
在另一些实施例中,当采集的指纹信息的图像质量满足预定条件时,则判定采集的指纹信息满足第二更新条件,并将指纹模板数据库中与采集的指纹信息相匹配的指纹信息选取为目标指纹信息,进入步骤S16。若不能满足预定条件,则判定不满足第二更新条件,不予更新,进入步骤S17,结束流程。
其中,预定条件可以为:采集的指纹信息与指纹模板数据库中与之匹配的指纹信息的图像质量接近,如采集的指纹信息的图像质量不小于指纹模板数据库中与之匹配的指纹信息的图像质量的一定百分比(如70%),则判定采集的指纹信息满足第二更新条件。或者,预定条件也可以是采集的指纹信息的图像质量达到一预定标准等。
如图4所示,指纹图像7和指纹图像4为同一位置的指纹图像,当指纹图像7的图像质量满足预定条件时,以指纹图像7替换指纹图像4。指纹图像7的图像质量与指纹图像4的相比,可能提高也可能降低。这样的替换方式可以使指纹模板数据库中的指纹信息随着手指指纹的变化而同步更新,但也不至于变得很差。
还有一些实施例中,可以将前述两实施例结合起来。首先判断采集的指纹信息的新增信息量是否达到第二阈值,若是则判定采集的指纹信息满足第二更新条件,并选取指纹模板数据库中冗余信息最多且其新增信息小于采集的指纹信息的新增信息的指纹信息作为目标指纹信息,进入步骤S16。若新增的信息量小于第二阈值,则继续判断采集的指纹信息的图像质量是否满足预定条件;若是则判定采集的指纹信息满足第二更新条件,并将指纹模板数据库中与采集的指纹信息相匹配的指纹信息选取为目标指纹信息,进入步骤S16;若否则判定不满足第二更新条件,不予更新,进入步骤S17,结束流程。
步骤S16:以采集的指纹信息替换指纹模板数据库中的目标指纹信息。
当目标指纹信息为指纹模板数据库中冗余信息最多且其新增信息小于采集的指纹信息的新增信息的指纹信息时,则删除该冗余信息最多的指纹信息来腾出空间,并添加采集的指纹信息作为替换信息,实现对指纹模板数据库中的指纹信息进行动态更新。从而通过删除可以舍弃的多余的指纹信息,继续增加指纹模板库中的指纹信息,将从一开始注册得到的手指小部分区域的指纹信息,扩展得到手指大部分区域的指纹信息。
当目标指纹信息为指纹模板数据库中与采集的指纹信息相匹配的指纹信息时,则删除该目标指纹信息来腾出空间,并添加采集到的指纹信息作为替换信息,实现对指纹模板数据库中的指纹信息进行动态更新。从而,在用户使用过程中,可以随着手指指纹的变化对指纹模板数据库中的指纹信息进行同步更新,降低了在不同的使用环境下指纹识别失败的概率,保证了用户的体验效果,提高了指纹识别技术的应用性能。
步骤S17:结束流程。
参见图5,提出本发明的指纹识别装置一实施例,所述指纹识别装置包括采集模块、注册模块、识别模块、更新模块。
采集模块:用于采集指纹信息。
注册模块:用于进行用户身份注册,将采集模块采集的指纹信息进行处理后存储于指纹模板数据库中,作为指纹识别时的参考模板。
由于在小面积指纹识别传感器上,每次采集只能获取到手指小部分区域的指纹信息,为了保证注册流程用户的使用体验,注册流程中采集指纹的次数不能过多,所以指纹模板数据库中只能存储用户的一部分指纹信息。
识别模块:用于根据采集的指纹信息和预先注册的指纹模板数据库进行指纹识别。具体的,识别模块将采集的指纹信息与指纹模板数据库中的指纹信息进行比对,当二者的相似度或匹配的特征数达到一定阈值时,则判定指纹识别成功,否则判定指纹识别失败,并输出识别结果。
更新模块:用于在指纹识别成功后,对指纹模板数据库进行更新。
在指纹注册流程保持不变的情况下,本发明的指纹识别装置在指纹识别过程中通过更新模块增加了两个阶段的学习流程,以动态更新指纹信息。当指纹模板数据库没有饱和时,更新模块则进行第一阶段的学习,快速增加指纹模板数据库中的指纹信息,直至指纹模板数据库饱和为止;当指纹模板数据库已经饱和时,更新模块则进行第二阶段的学习,对指纹模板数据库中的指纹信息进行优化更新。
其中,第一阶段的学习可称为贪心学习方法,该方法是以尽快获取指纹信息为目的的学习方法。第二阶段的学习可称为扩展式学习方法和/或智能更新学习方法,扩展式学习方法是在指纹模板数据库已满的情况下,删除指纹模板数据库中原有的冗余数据,并尽量增加新的指纹信息的学习方法;智能更新学习方法是在指纹模板数据库已满的情况下,根据用户使用环境,将指纹模板数据库中的指纹信息,更新为当前识别成功并且与指纹模板数据库中指纹信息的图像质量相近的指纹信息。
具体的,更新模块包括判断单元、第一更新单元和第二更新单元,其中,
判断单元:用于在指纹识别成功后,判断指纹模板数据库是否饱和,若没有饱和则启动第一更新单元进行第一阶段学习,若已经饱和则启动第二更新单元进行第二阶段学习。
假设指纹模板数据库中当前存储的指纹信息量为n,指纹模板数据库所能容纳的最大指纹信息量为M。当n<M时,则判定指纹模板数据库没有饱和;当n≥M时,则判定指纹模板数据库已经饱和。
第一更新单元:用于判断采集的指纹信息是否满足第一更新条件,若是则采用贪心学习方法,将采集的指纹信息添加到指纹模板数据库中,快速更新指纹模板数据库中的指纹信息。
在某些实施例中,第一更新单元判断采集的指纹信息中相对于模板数据库中的指纹信息是否有新增信息,只要有新增信息,则判定采集的指纹信息满足第一更新条件。否则判定不满足第一更新条件,不予更新。
在另一些实施例中,当采集的指纹信息相对于指纹模板数据库中的指纹信息有新增信息,且新增信息量大于等于第一阈值时,第一更新单元则判定采集的指纹信息满足第一更新条件。若没有新增信息,或者新增信息小于第一阈值时,则判定不满足第一更新条件,不予更新。
第一阈值可以是一固定值,第一阈值设置得宽松时,学习速度较快,会增加过多重复的冗余信息。为了控制第一阶段学习的学习速度,即指纹信息的更新速度,优选第一阈值为一动态变化值,通过计算出指纹模板库中已经包含的指纹信息量来自适应调整第一阈值,如果当前指纹模板数据库中的信息量较少,则放松第一阈值,加快更新速度。随着学习过程中指纹模板库中的信息量逐步增加,逐步加严第一阈值,调整更新速度。为此,第一阈值可以是采集的指纹信息新增的信息量占指纹模板数据库中指纹信息量的一定百分比(如5%-10%),则随着指纹模板数据库中指纹信息量的增加,第一阈值也越来越大,第一更新条件越来越严格。
优选地,设第一阈值为r,且r=a·r0+b·I,其中a、b为常数,r0为原始阈值,I为指纹模板数据库中当前的指纹信息量。上式表明,随着I的增大,第一更新条件越来越严格。
在某些实施例中,若采集的指纹信息相对指纹模板数据库没有新增信息,即指纹模板数据库中存在与采集的指纹信息完全相匹配的指纹信息,但是由于当前指纹模板数据库不饱和,并且多张指纹图像的图像质量等指标也可能不相同,增加指纹模板对降低拒真率也是有意义的。因此,在这种情况下,同样判定为满足第一更新条件。
当采集的指纹信息满足第一更新条件时,第一更新单元则将采集的指纹
信息添加到指纹模板数据库中,更新指纹模板数据库中的指纹信息。从而,将从一开始注册得到的手指小部分区域的指纹信息,通过使用过程中持续的动态更新,最终获得手指大部分区域的指纹信息。
第二更新单元:用于判断采集的指纹信息是否满足第二更新条件,若是则采用扩展式学习方法和/或智能更新学习方法,从指纹模板数据库中选取目标指纹信息,并以采集的指纹信息替换该目标指纹信息,以对指纹模板数据库中的指纹信息进行动态更新。
在某些实施例中,当采集的指纹信息相对于指纹模板数据库中的指纹信息有新增信息,且新增信息量达到第二阈值时,第二更新单元则判定采集的指纹信息满足第二更新条件,并选取指纹模板数据库中冗余信息最多且其新增信息小于采集的指纹信息的新增信息的指纹信息作为目标指纹信息,采用扩展式学习方法进行更新;若没有新增信息或者新增信息量小于第二阈值,第二更新单元则判定不满足第二更新条件,不予更新。其中,第二阈值可以是采集的指纹信息新增的信息量占指纹模板数据库中指纹信息量的一定百分比(如10%以上),例如当采集的指纹信息新增的信息量大于指纹模板数据库中指纹信息量的10%时,第二更新单元则判定采集的指纹信息满足第二更新条件。
在另一些实施例中,当采集的指纹信息的图像质量满足预定条件时,第二更新单元则判定采集的指纹信息满足第二更新条件,并将指纹模板数据库中与采集的指纹信息相匹配的指纹信息选取为目标指纹信息,采用智能更新学习方法进行更新;若不能满足预定条件,则判定不满足第二更新条件,不予更新。其中,预定条件可以为:采集的指纹信息与指纹模板数据库中与之匹配的指纹信息的图像质量接近,如采集的指纹信息的图像质量不小于指纹模板数据库中与之匹配的指纹信息的图像质量的一定百分比(如70%),则判定采集的指纹信息满足第二更新条件。或者,预定条件也可以是采集的指纹信息的图像质量达到一预定标准等。
还有一些实施例中,可以将前述两实施例结合起来。第二更新单元首先判断采集的指纹信息的新增信息量是否达到第二阈值,若是则判定采集的指纹信息满足第二更新条件,并选取指纹模板数据库中冗余信息最多且其新增信息小于采集的指纹信息的新增信息的指纹信息作为目标指纹信息,采用扩展式学习方法进行更新。若新增的信息量小于第二阈值,第二更新单元则继
续判断采集的指纹信息的图像质量是否满足预定条件;若是则判定采集的指纹信息满足第二更新条件,并将指纹模板数据库中与采集的指纹信息相匹配的指纹信息选取为目标指纹信息,采用智能更新学习方法进行更新;若否则判定不满足第二更新条件,不予更新。
当采用扩展式学习方法进行更新时,第二更新单元则删除指纹模板数据库中冗余信息最多且其新增信息小于采集的指纹信息的新增信息的指纹信息来腾出空间,并添加采集的指纹信息作为替换信息,实现对指纹模板数据库中的指纹信息进行动态更新。从而通过删除可以舍弃的多余的指纹信息,继续增加指纹模板库中的指纹信息,将从一开始注册得到的手指小部分区域的指纹信息,扩展得到手指大部分区域的指纹信息。
当采用智能更新学习方法进行更新时,第二更新单元则删除指纹模板数据库中与采集的指纹信息相匹配的指纹信息来腾出空间,并添加采集到的指纹信息作为替换信息,实现对指纹模板数据库中的指纹信息进行动态更新。从而,在用户使用过程中,可以随着手指指纹的变化对指纹模板数据库中的指纹信息进行同步更新,降低了在不同的使用环境下指纹识别失败的概率,保证了用户的体验效果,提高了指纹识别技术的应用性能。
需要说明的是:上述实施例提供的指纹识别装置在进行指纹信息的动态更新时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成。另外,上述实施例提供的指纹识别装置与指纹信息的动态更新方法实施例属于同一构思,其具体实现过程详见方法实施例,且方法实施例中的技术特征在装置实施例中均对应适用,这里不再赘述。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤可以通过程序来控制相关的硬件完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质可以是ROM/RAM、磁盘、光盘等。
应当理解的是,以上仅为本发明的优选实施例,不能因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。