发明内容
本发明实施方式的目的在于提供一种生物信息识别方法、装置、终端及存储介质,通过动态分布式生物信息识别方式进行识别,不仅可充分利用图像采集设备端的资源、识别效率高、容错性强,而且可大幅提升系统的容量。
为解决上述技术问题,本发明的实施方式提供了一种生物信息识别方法,包括:采集包含生物特征信息的图像;
根据所述包含生物特征信息的图像得到目标特征值;
将所述目标特征值与本地特征数据表中的生物特征值进行匹配,若匹配失败,则将所述目标特征值发送至云端进行匹配;
其中,所述本地特征数据表中的生物特征值的匹配顺序根据所述生物特征值的成功匹配记录确定。
本发明的实施方式还提供了一种生物信息识别装置,包括:
采集模块,用于采集包含生物特征信息的图像;
提取模块,用于根据所述包含生物特征信息的图像得到目标特征值;
匹配模块,用于将所述目标特征值与本地特征数据表中的生物特征值进行匹配;
判断模块,用于在所述匹配模块匹配失败时,触发传输模块;
传输模块,用于将所述目标特征值发送至云端进行匹配;
其中,所述本地特征数据表中的生物特征值的匹配顺序根据所述生物特征值的成功匹配记录确定。
本发明的实施方式还提供了一种生物信息识别终端,包括:存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如前所述的生物信息识别方法。
本发明的实施方式还提供了一种生物信息识别系统,包括云端以及若干个如前所述的生物信息识别终端;
各所述生物信息识别终端均与所述云端通信连接。
本发明的实施方式还提供了一种存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如前所述的生物信息识别方法。
本发明实施方式相对于现有技术而言,生物信息识别终端根据采集的包含生物特征信息的图像得到目标特征值,并将该目标特征值与本地特征数据表中的生物特征值进行匹配,在匹配失败时,再将该目标特征值发送至云端进行匹配,因此,生物信息识别的任务主要由生物信息识别终端承担,这样,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本。并且,由于本地特征数据表中的生物特征值的匹配顺序根据生物特征值的成功匹配记录确定,因此,本地特征数据表中的生物特征值的匹配顺序可以动态更新,有利于进一步提高匹配效率。
作为一个实施例,所述本地特征数据表为缓存数据表,所述缓存数据表还包括与所述生物特征值对应的活跃度;所述活跃度用于表示所述生物特征值匹配成功的频率;
所述将所述目标特征值与本地特征数据表中的生物特征值进行匹配,具体包括:
按照所述活跃度从大到小的顺序将所述缓存数据表中的生物特征值逐个与所述目标特征值进行匹配。从而,可提高活跃度大的用户的识别效率。
作为一个实施例,所述缓存数据表还包括与所述生物特征值对应的老化时间,所述老化时间用于表示所述生物特征值未匹配成功的持续时长;
所述生物信息识别方法还包括:
若所述老化时间大于老化阈值,则将所述老化时间对应的生物特征值从所述缓存数据表中删除。从而可减少使用频率较低的生物特征值,提高识别效率。
作为一个实施例,所述生物信息识别方法还包括:
在所述缓存数据表中的生物特征值匹配成功或者所述云端返回所述目标特征值匹配成功之后,更新匹配成功的生物特征值对应的活跃度以及老化时间。
作为一个实施例,所述缓存数据表还可以包括不具备所述老化时间的预设特征值。
作为一个实施例,还包括:
若所述目标特征值与所述本地特征数据表中的生物特征值匹配成功,则将匹配成功记录发送至所述云端;其中,所述匹配成功记录包括:所述目标特征值以及采集所述图像的终端的识别信息。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。
本发明的第一实施方式涉及一种生物信息识别方法,应用于生物信息识别终端。该生物信息识别终端为生物信息识别系统中的一个终端,且该生物信息识别系统还包括与各终端通信连接的云端(即后台)。该生物信息识别终端包括但不限于:基于生物信息的门禁终端、智能售货终端、机器人等。该方法包括:采集包含生物特征信息的图像;根据包含生物特征信息的图像得到目标特征值;将目标特征值与本地特征数据表中的生物特征值进行匹配,若匹配失败,则将目标特征值发送至云端进行匹配;其中,本地特征数据表中的生物特征值的匹配顺序根据生物特征值的成功匹配记录确定。本实施方式先由生物信息识别终端基于目标特征值进行匹配,在匹配失败时,再将该目标特征值发送至云端进行匹配,因此,生物信息识别的任务主要由生物信息识别终端承担,这样,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本。并且,可根据生物特征值的匹配成功记录动态更新其匹配顺序,有利于进一步提高匹配效率。
下面对本实施方式的生物信息识别方法进行详细说明。如图1所示,该方法包括步骤101至步骤106。
步骤101:采集包含生物特征信息的图像。
其中,生物特征信息包括但不限于人脸、指纹以及虹膜等的特征信息。下文主要以人脸为例对生物信息识别方法进行描述,指纹或者虹膜等的生物信息识别方法可参考人脸识别方法,本文不再赘述。在实际应用中,可通过摄像头采集得到人脸图像,人脸图像包含人脸特征信息。指纹图像可通过电容式或者光学指纹传感器采集得到,虹膜图像可通过红外虹膜传感器采集得到。可以一次采集多张人脸图像,并筛选出清晰的包含完整人脸的图像。
步骤102:根据包含生物特征信息的图像得到目标特征值。
步骤102中,可根据人脸图像得到人脸特征向量,目标特征值即为人脸特征向量。人脸特征向量的提取方法为本领域技术人员熟知,此处不再赘述。
步骤103:将目标特征值与本地特征数据表中的生物特征值进行匹配。
其中,特征数据表存储于生物信息识别终端本地,比如存储于本地缓存中。特征数据表用于存储生物特征值,比如用于存储人脸特征向量。步骤103中,将本地特征数据表中的生物特征值逐个与目标特征值进行比对。
步骤104:判断是否匹配失败,若匹配失败,则执行步骤105,若匹配成功,则执行步骤106。
若本地特征数据表中的某个生物特征值与目标特征值相同,则匹配成功,继续执行步骤106,若本地特征数据表中的所有生物特征值与目标特征值均不相同,则匹配失败,执行步骤105。
步骤105:将目标特征值发送至云端进行匹配。
具体地,可以将目标特征值与生物信息识别终端的识别信息一并发送至云端,比如将人脸特征向量以及生物信息识别终端的序列号一并发送至云端。由于人脸特征向量比人脸图像的数据量小很多,因此可大幅降低数据传输资费。在实际应用中,也可将筛选出的包含完整人脸的清晰的人脸图片一并发送至云端,其中人脸图片可以为清除掉背景的图片,可以减少数据传输量。通过发送人脸图像,在云端可以通过人工方式辅助进行人脸识别。通过将生物信息识别终端的序列号一并发送至云端,便于云端匹配人脸库,比如将来自同一生物信息识别终端的人脸图像以及人脸特征向量等维护为一个人脸库,从而可提高云端人脸识别速度。本实施方式对于生物信息识别终端的识别信息不做具体限制,只要能够标识该生物信息识别终端即可。
云端在接收到目标特征值以及生物信息识别终端的识别信息后,可以根据生物信息识别终端的识别信息确定目标识别库,比如目标人脸库,目标人脸库中预存有多个人脸特征向量。云端将目标特征值与目标人脸库中的生物特征值进行匹配,如果目标人脸库中的某个生物特征值与目标特征值一致,则向生物信息识别终端返回匹配成功,若目标人脸库中不存在与目标特征值一致的生物特征值,则返回匹配失败。
步骤106:根据匹配结果执行对应的操作。
如果生物信息识别终端或者云端确定匹配成功,则可执行对应的操作,比如生成开门指令,控制门禁设备开门。然不限于此,匹配成功后执行的相关操作可以根据具体的应用场景设置,此处不再赘述。如果云端确定匹配失败,则表示该目标特征值对应的用户无相关操作权限,禁止执行相关操作,并可向用户提示匹配失败的相关信息。
本实施方式中,本地特征数据表中的生物特征值的匹配顺序根据生物特征值的成功匹配记录确定,比如,某一生物特征值的成功匹配记录越多,则其越优先匹配,反之,某一生物特征值的成功匹配记录越少,则其匹配顺序越靠后。其中,任一生物特征值的成功匹配记录既包括本地特征数据表中的生物特征值的成功匹配情况,也包括云端存储的生物特征值的成功匹配情况。
值得一提的是,在生物信息识别终端确定匹配成功并执行了相关操作之后,还可以将匹配成功记录发送至云端。其中,该匹配成功记录可以包括:目标特征值以及生物信息识别终端的识别信息,从而便于云端统一备份各个生物信息识别终端的使用记录。
本实施方式与现有技术相比,优先在生物信息识别终端本地进行识别,在识别失败时,再将目标特征值而非包含有生物特征信息的图像发送至云端进行识别。因此,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本,使得相同配置的生物识别系统可在基本不增加成本的情况下扩容10倍以上。并且,根据生物特征值的成功匹配记录更新其匹配顺序,有利于进一步提高匹配效率。
本发明的第二实施方式涉及一种生物信息识别方法,第二实施方式在第一实施方式的基础上做出改进,主要改进之处在于,在第二实施方式中,进一步细化了本地特征数据表的更新方式。
如图2所示,本实施方式的生物信息识别方法包括步骤201至步骤206。其中,步骤201、步骤202、步骤204至步骤206与第一实施方式的步骤101、步骤102、步骤104至步骤106分别对应相同,此处步骤赘述。
本实施方式中,本地特征数据表为缓存数据表,该缓存数据表还包括与生物特征值对应的活跃度,活跃度用于表示生物特征值匹配成功的频率。在一些例子中,缓存数据表还可以包括与生物特征值对应的老化时间,老化时间用于表示生物特征值未匹配成功的持续时长。在实际应用中,该缓存数据表还可以包括人脸特征向量序号以及人脸特征向量的添加方式,即类型。下面结合下表一对缓存数据表的生成以及动态更新方式进行详细说明。
表一
序号 |
人脸特征向量 |
活跃度(次/天) |
老化时间(缺省7天) |
类型 |
1 |
ABCDE1234567 |
100 |
NA |
手动 |
2 |
BBCDE1234567 |
3 |
6天20小时 |
动态 |
3 |
CB CDE1234567 |
2 |
6天3小时 |
动态 |
4 |
DB CDE1234567 |
1 |
7天23小时 |
动态 |
5 |
EB CDE1234567 |
0 |
1天23小时 |
动态 |
6 |
FB CDE1234567 |
0 |
23小时 |
动态 |
生物信息识别方法还包括:若老化时间大于老化阈值,则将老化时间对应的生物特征值从缓存数据表中删除。生物信息识别方法还包括:在缓存数据表中的生物特征值匹配成功或者云端返回目标特征值匹配成功之后,更新匹配成功的生物特征值对应的活跃度以及老化时间。缓存数据表还可以包括不具备老化时间的预设特征值。
表一中第一列的序号用于统计缓存数据表中人脸特征向量的数量,便于查看表中人脸特征向量的条数。其中,缓存数据表中可存储的人脸特征向量的条数可根据生物信息识别终端的硬件参数进行设置,比如,序号的最大值可以设置为5000,然不限于此。表一中第二列为生物特征值,比如为人脸特征向量,其是基于人脸图像和人脸识别算法生成的数字序列。表一中第三列为活跃度,即人脸特征向量匹配成功的频率。活跃度为预设时长内人脸特征向量成功匹配的次数与该预设时长的比值。活跃度的单位比如为次/天,然不限于此,其中,预设时长也可以为2至7天。其中,同一人脸特征向量在预设时长内,比如一天内每匹配成功一次,其活跃度的数值可以加1。在到达预设时长时,各人脸特征向量对应的活跃度的数值可以清零。本实施方式中,各个人脸特征向量参与匹配的顺序可以根据其活跃度数值确定,比如活跃度数值越大,则越优先参阅匹配,因此,在一条人脸特征向量与目标特征值匹配成功之后,立即更新该人脸特征向量的活跃度以及其匹配顺序。比如,表一中第2条人脸特征向量的活跃度为3,当第三条人脸特征向量的活跃度增加到4时,第三条人脸特征向量的匹配顺序也会同步更新,此时,第三条人脸特征向量的匹配顺序较第二条人脸特征向量的匹配顺序靠前,具体地,即将表一中第二以及第三人脸特征向量的位置互换。
表一中第四列为人脸特征向量对应的老化时间,用于表示人脸特征向量在始终未成功匹配的情况下在表中停留的时间,老化阈值表示人脸特征向量在始终未成功匹配的情况下能够在表中停留的最大时间。其中,老化阈值比如为7天,然不限于此,老化阈值的大小可以根据实际需要设置,比如还可以为1天、1个月、半年或者1年等。表一中老化时间为人脸特征向量的剩余存储时间,即老化时间为0的人脸特征向量会被删除。在实际应用中,老化时间也可以为人脸特征向量在未成功匹配时在表中已停留的时间,此时当老化时间达到老化阈值时人脸特征向量会被删除。在人脸特征向量成功匹配之后,立即更新老化时间。比如,在匹配成功时,将老化时间修改为7天。
表一中第五列为人脸特征向量生成类型,包括自动和手动两种类型。自动生成类型是指生物信息识别终端匹配失败、云端匹配成功后将对应的人脸特征向量添加入表一中。手动生成类型可以是人工通过云端后台操作在表一中添加人脸特征向量。需要说明的是,手动生成类型不具备可老化时间,且可以具有无需更新的活跃度,比如活跃度为100次/天。因此,手动生成类型可用于测试或者特定用户。本实施方式中,预设特征值的类型即为手动生成类型。
在实际应用中,可以定时将缓存数据表备份至生物信息识别终端的外部存储中,防止终端突然掉电重启后缓存数据表中的相关数据丢失。
步骤203:按照活跃度从大到小的顺序将缓存数据表中的生物特征值逐个与目标特征值进行匹配。
即生物特征值的活跃度越高,越优先进行匹配,从而可提高识别较为频繁的用户的识别效率。
在生物信息识别终端或者云端匹配成功后,同步更新缓存数据表中生物特征值的活跃度、匹配顺序以及老化时间。
值得一提的是,步骤205将目标特征值发送至云端进行匹配时,云端可根据生物信息识别终端的识别信息确定目标人脸库,目标人脸库可以自动生成或者预先配置。其中,自动生成的人脸库下文中亦称第一人脸库,预先配置的人脸库下文中亦称第二人脸库。云端在进行匹配时,可先确定是否存在第一人脸库,若不存在,则采用第二人脸库进行匹配,若存在第一人脸库,则采用第一人脸库进行匹配。其中,第一人脸库以及第二人脸库均与生物信息识别终端的识别信息相关联。生物信息识别终端在接收到云端返回的匹配成功信息后,执行对应的操作,比如控制开门,同时更新缓存数据表中对应的人脸特征向量的活跃度以及老化时间。如果云端返回匹配失败信息,则可提示人员未授权等信息。云端对匹配成功以及匹配失败结果进行记录。本实施方式中,第一人脸库可以采用以下方式自动生成:若同一生物信息识别终端对应的匹配成功的人脸特征向量的条数大于阈值,比如5000条,则自动生成与该生物信息识别终端对应的第一人脸库。
本实施方式与现有技术相比,优先在生物信息识别终端本地进行识别,在识别失败时,再将目标特征值而非包含有生物特征信息的图像发送至云端进行识别。因此,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本,使得相同配置的生物识别系统可在基本不增加成本的情况下扩容10倍以上。并且,本实施方式通过动态更新生物特征值的活跃度以及老化时间,可以对使用频率较高的用户进行优先匹配,并及时清除老化的生物特征值,有利于进一步提高匹配效率。
本发明的第三实施方式涉及一种生物信息识别装置。请参阅图3,本实施方式的生物信息识别装置300包括:
采集模块301,用于采集包含生物特征信息的图像;
提取模块302,用于根据包含生物特征信息的图像得到目标特征值;
匹配模块303,用于将目标特征值与本地特征数据表中的生物特征值进行匹配;
判断模块304,用于在匹配模块匹配失败时,触发传输模块;
传输模块305,用于将目标特征值发送至云端进行匹配;
其中,本地特征数据表中的生物特征值的匹配顺序根据生物特征值的成功匹配记录确定。
在实际应用中,本地特征数据表为缓存数据表,该缓存数据表还可以包括与生物特征值对应的活跃度以及老化时间,活跃度用于表示生物特征值匹配成功的频率,老化时间用于表示生物特征值未匹配成功的持续时长。匹配模块303具体可用于按照活跃度从大到小的顺序将缓存数据表中的生物特征值逐个与目标特征值进行匹配,并在匹配成功之后,更新生物特征值的活跃度以及老化时间,在老化时间大于老化阈值时将老化时间对应的生物特征值从缓存数据表中删除。其中,缓存数据表还可以包括不具备老化时间的预设特征值,即预设特征值可以一直存储在缓存数据表中,不会被自动删除。
该生物信息识别装置300还可以包括上报模块(图未示),用于在匹配模块303匹配成功时将匹配成功记录发送至云端。其中,匹配成功记录包括:目标特征值以及采集图像的终端的识别信息。
本实施方式与现有技术相比,优先在生物信息识别终端本地进行识别,在识别失败时,再将目标特征值而非包含有生物特征信息的图像发送至云端进行识别。因此,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本,使得相同配置的生物识别系统可在基本不增加成本的情况下扩容10倍以上。并且,本实施方式通过动态更新生物特征值的活跃度以及老化时间,可以对使用频率较高的用户进行优先匹配,并及时清除老化的生物特征值,有利于进一步提高匹配效率。
本发明的第四实施方式涉及一种生物信息识别终端,如图4所示,该终端包括:存储器402和处理器401;
其中,所述存储器402存储有可被所述至少一个处理器401执行的指令,所述指令被所述至少一个处理器401执行以实现如第一或者第二实施方式所述的生物信息识别方法。
该终端包括一个或多个处理器401以及存储器402,图4中以一个处理器401为例。处理器401、存储器402可以通过总线或者其他方式连接,图4中以通过总线连接为例。存储器402作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器401通过运行存储在存储器402中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述生物信息识别方法。
存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器402中,当被一个或者多个处理器401执行时,执行上述任意方法实施方式中的生物信息识别方法。
上述设备可执行本发明实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的方法。
本发明的第五实施方式涉及一种生物信息识别系统。如图5所示,该系统包括云端50以及若干个如第四实施方式所述的生物信息识别终端51,各生物信息识别终端51均与云端50通信连接。其中,云端执行如第一或者第二实施方式所述的生物信息识别方法。
本实施方式与现有技术相比,优先在生物信息识别终端本地进行识别,在识别失败时,再将目标特征值而非包含有生物特征信息的图像发送至云端进行识别。因此,不仅可充分利用终端的资源,而且在终端本地进行生物信息识别可避免数据传输环节,识别效率更高、容错性更强,同时降低了生物识别系统的扩容成本,使得相同配置的生物识别系统可在基本不增加成本的情况下扩容10倍以上。并且,本实施方式通过动态更新生物特征值的活跃度以及老化时间,可以对使用频率较高的用户进行优先匹配,并及时清除老化的生物特征值,有利于进一步提高匹配效率。
本发明的第六实施方式涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。