CN108776753B - 生物识别方法及装置 - Google Patents
生物识别方法及装置 Download PDFInfo
- Publication number
- CN108776753B CN108776753B CN201810541784.7A CN201810541784A CN108776753B CN 108776753 B CN108776753 B CN 108776753B CN 201810541784 A CN201810541784 A CN 201810541784A CN 108776753 B CN108776753 B CN 108776753B
- Authority
- CN
- China
- Prior art keywords
- biological
- biometric
- module
- identification
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Collating Specific Patterns (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本公开是关于一种生物识别方法及装置。该方法包括:当生物识别客户端模块接收到来自于第一应用的生物识别指令时,生物识别客户端模块将生物识别指令发送至生物识别服务端模块;生物识别服务端模块将生物识别指令发送至守护进程,其中,硬件抽象层包括多个不同类型的生物识别模块;守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态;当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果;守护进程根据匹配结果确定识别结果;向第一应用返回识别结果。本公开通过一个生物识别架构支持不同类型的生物识别。
Description
技术领域
本公开涉及信息技术领域,尤其涉及生物识别方法及装置。
背景技术
生物识别是指通过计算机与光学、声学、生物传感器和生物统计学原理等高科技手段密切结合,利用人体固有的生理特征(如指纹、脸、虹膜等)和/或行为特征(如笔迹、声音、步态等)来进行个人身份的鉴定。随着技术的发展,越来越多的终端设备开始支持生物识别功能。
相关技术中,一个生物识别架构只能支持一种类型的生物识别功能(例如只能支持指纹识别,无法支持人脸识别或者虹膜识别),导致无法满足要求。
发明内容
为克服相关技术中存在的问题,本公开提供一种生物识别方法及装置。
根据本公开实施例的第一方面,提供一种生物识别方法,包括:
当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,所述生物识别客户端模块将所述生物识别指令发送至所述框架层的生物识别服务端模块;
所述生物识别服务端模块将所述生物识别指令发送至所述生物识别架构的硬件抽象层的守护进程,其中,所述硬件抽象层包括多个不同类型的生物识别模块;
所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态;
当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果;
所述守护进程根据所述匹配结果确定识别结果;
向所述第一应用返回所述识别结果。
在一种可能的实现方式中,所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态,包括:
若所述生物识别指令不具有指定的生物识别类型,则所述守护进程控制所述硬件抽象层中所有生物识别模块的状态机进入识别状态。
在一种可能的实现方式中,所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态,包括:
若所述生物识别指令具有指定的生物识别类型,则所述守护进程控制所述指定的生物识别类型对应的生物识别模块的状态机进入识别状态。
在一种可能的实现方式中,当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果,包括:
若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则所述多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果;
所述守护进程根据所述匹配结果确定识别结果,包括:
若所述多个匹配结果之间存在矛盾,则所述守护进程根据各个匹配结果中的匹配度,确定识别结果。
在一种可能的实现方式中,所述识别结果包括所述生物识别指令对应的生物识别模块的类型信息。
在一种可能的实现方式中,所述硬件抽象层中同一类型的生物识别模块支持不同的供应商。
在一种可能的实现方式中,所述方法还包括:
在所述生物识别客户端模块接收到来自于所述第一应用的录入指令时,所述生物识别客户端模块将所述录入指令发送至所述框架层的生物识别服务端模块;
所述生物识别服务端模块将录入指令发送至所述守护进程;
所述守护进程控制所述录入指令对应的生物识别模块的状态机进入录入状态;
当通过所述录入指令对应的生物识别模块的状态机采集到第二生物图像时,所述录入指令对应的生物识别模块根据所述第二生物图像生成所述录入指令对应的生物识别模块的模板数据。
在一种可能的实现方式中,所述方法还包括:
在终端设备开机时,所述守护进程检测所述终端设备支持的生物识别硬件;
所述守护进程控制所述终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
根据本公开实施例的第二方面,提供一种生物识别装置,包括:
第一发送模块,用于当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,所述生物识别客户端模块将所述生物识别指令发送至所述框架层的生物识别服务端模块;
第二发送模块,用于所述生物识别服务端模块将所述生物识别指令发送至所述生物识别架构的硬件抽象层的守护进程,其中,所述硬件抽象层包括多个不同类型的生物识别模块;
第一控制模块,用于所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态;
匹配模块,用于当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果;
确定模块,用于所述守护进程根据所述匹配结果确定识别结果;
返回模块,用于向所述第一应用返回所述识别结果。
在一种可能的实现方式中,所述第一控制模块用于:
若所述生物识别指令不具有指定的生物识别类型,则所述守护进程控制所述硬件抽象层中所有生物识别模块的状态机进入识别状态。
在一种可能的实现方式中,所述第一控制模块用于:
若所述生物识别指令具有指定的生物识别类型,则所述守护进程控制所述指定的生物识别类型对应的生物识别模块的状态机进入识别状态。
在一种可能的实现方式中,所述匹配模块用于:
若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则所述多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果;
所述确定模块用于:
若所述多个匹配结果之间存在矛盾,则所述守护进程根据各个匹配结果中的匹配度,确定识别结果。
在一种可能的实现方式中,所述识别结果包括所述生物识别指令对应的生物识别模块的类型信息。
在一种可能的实现方式中,所述硬件抽象层中同一类型的生物识别模块支持不同的供应商。
在一种可能的实现方式中,所述装置还包括:
第三发送模块,用于在所述生物识别客户端模块接收到来自于所述第一应用的录入指令时,所述生物识别客户端模块将所述录入指令发送至所述框架层的生物识别服务端模块;
第四发送模块,用于所述生物识别服务端模块将录入指令发送至所述守护进程;
第二控制模块,用于所述守护进程控制所述录入指令对应的生物识别模块的状态机进入录入状态;
生成模块,用于当通过所述录入指令对应的生物识别模块的状态机采集到第二生物图像时,所述录入指令对应的生物识别模块根据所述第二生物图像生成所述录入指令对应的生物识别模块的模板数据。
在一种可能的实现方式中,所述装置还包括:
检测模块,用于在终端设备开机时,所述守护进程检测所述终端设备支持的生物识别硬件;
第三控制模块,用于所述守护进程控制所述终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
根据本公开实施例的第三方面,提供一种生物识别装置,其特征在于,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述方法。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行上述方法。
本公开的实施例提供的技术方案可以包括以下有益效果:本实施例通过在生物识别架构的硬件抽象层中封装不同类型的生物识别模块,由此通过一个生物识别架构支持不同类型的生物识别,无需针对各种类型的生物识别分别设计生物识别架构,提高了系统的兼容性;应用只需与生物识别架构的框架层的生物识别客户端模块通信即可调用生物识别功能,简化了应用发起生物识别的流程,提高了系统的稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种生物识别方法的流程图。
图2是根据一示例性实施例示出的一种生物识别方法中生物识别架构的示意图。
图3是根据一示例性实施例示出的一种生物识别方法的一示例性的流程图。
图4是根据一示例性实施例示出的一种生物识别方法的另一示例性的流程图。
图5是根据一示例性实施例示出的一种生物识别装置的框图。
图6是根据一示例性实施例示出的一种生物识别装置的一示例性的框图。
图7是根据一示例性实施例示出的一种用于生物识别的装置800的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种生物识别方法的流程图。该方法可以应用于终端设备中。如图1所示,该方法包括步骤S101至步骤S106。
在步骤S101中,当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,生物识别客户端模块将生物识别指令发送至框架层的生物识别服务端模块。
在本实施例中,生物识别架构的框架(framework)层可以为生物识别架构的中间层。框架层提供客户端/服务端(Client/Service)服务,框架层包括生物识别客户端(BiometricsClient)模块和生物识别服务端(BiometricsService)模块。应用只需要调用框架层的生物识别客户端模块发起生物识别指令,即可调用生物识别功能。
在本实施例中,第一应用可以为任何需要调用生物识别功能的应用。例如,第一应用可以为锁屏应用或者支付应用等。
需要说明的是,第一应用中的“第一”在此仅为表述和指代的方便,并不意味着在本公开的具体实现方式中一定会有与之对应的第一应用。下文的第一接口中的“第一”、第一生物图像中的“第一”、第二生物图像中的“第二”与此类似。
在本实施例中,生物识别架构可以封装第一接口,第一接口可以为生物识别对应的接口。当接收到来自于第一应用的生物识别指令时,可以将第一接口提供给第一应用调用。第一应用无需关心生物识别的底层硬件和底层实现细节。各种类型的生物识别模块对应的各个供应商都可以支持第一接口。
在本实施例中,生物识别指令可以具有指定的生物识别类型,也可以不具有指定的生物识别类型。例如,当生物识别指令具有指定的生物识别类型时,指定的生物识别类型可以为指纹识别、人脸识别或者虹膜识别等。当生物识别指令不具有指定的生物识别类型时,该生物识别指令可以为通用生物识别指令,该通用生物识别指令可以用于指示各种类型的生物识别模块进行生物识别。
在步骤S102中,生物识别服务端模块将生物识别指令发送至生物识别架构的硬件抽象层的守护进程,其中,硬件抽象层包括多个不同类型的生物识别模块。
在本实施例中,生物识别架构的硬件抽象层(Hardware Abstraction Layer,HAL)可以为生物识别架构的底层。硬件抽象层包括守护(Deamon或者BiometricsDeamon)进程。生物识别服务端模块可以通过Treble接口与守护进程进行通信。
在一种可能的实现方式中,硬件抽象层可以包括指纹识别模块、人脸识别模块和虹膜识别模块中的至少两种。
需要说明的是,尽管以指纹识别模块、人脸识别模块和虹膜识别模块介绍了生物识别模块如上,但本领域技术人员能够理解,本公开应不限于此。本领域技术人员可以根据实际应用场景和/或个人喜好在硬件抽象层中灵活设置各种类型的生物识别模块。
在本实施例中,可以将各个生物识别模块对应的特征提取算法和匹配算法封装在底层驱动和底层算法库中。例如,可以将指纹识别模块的图像采集算法封装在指纹传感器驱动中。
在步骤S103中,守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态。
在本实施例中,守护进程可以维护状态机的状态切换。其中,状态机的状态可以包括识别状态、录入状态和休眠状态。
在一种可能的实现方式中,守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态,包括:若生物识别指令不具有指定的生物识别类型,则守护进程控制硬件抽象层中所有生物识别模块的状态机进入识别状态。例如,若硬件抽象层中的生物识别模块包括指纹识别模块、人脸识别模块和虹膜识别模块,且生物识别指令不具有指定的生物识别类型,则守护进程可以控制指纹识别模块、人脸识别模块和虹膜识别模块的状态机均进入识别状态。
在一种可能的实现方式中,守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态,包括:若生物识别指令具有指定的生物识别类型,则守护进程控制指定的生物识别类型对应的生物识别模块的状态机进入识别状态。例如,若生物识别指令的指定的生物识别类型为指纹识别,则守护进程可以控制指纹识别模块的状态机进入识别状态。
作为该实现方式的一个示例,若生物识别指令具有指定的生物识别类型,则生物识别指令可以携带指定的生物识别类型对应的设备ID(Identification,编号)或者设备类型信息。若接收到具有指定的生物识别类型的生物识别指令,则可以将指定的生物识别类型对应的设备ID或者设备类型信息作为调用参数发送给守护进程。
在步骤S104中,当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果。
其中,生物图像可以指具有人体固有的生理特征(如指纹、脸、虹膜等)或者行为特征(如笔迹、声音、步态等)的图像。例如,生物图像可以为指纹图像、人脸图像或者虹膜图像等。
在本实施例中,将生物识别指令对应的生物识别模块的状态机采集到的第一生物图像与该状态机对应的生物识别模块的模板数据进行匹配处理。例如,若该状态机为指纹识别模块的状态机,则将该状态机采集到的第一生物图像与指纹识别模块的模板数据进行匹配处理。若生物识别指令对应的生物识别模块的状态机包括指纹识别模块的状态机和人脸识别模块的状态机,则将指纹识别模块的状态机采集到的第一生物图像与指纹识别模块的模板数据进行匹配处理,将人脸识别模块的状态机采集到的第一生物图像与人脸识别模块的模板数据进行匹配处理。
在一种可能的实现方式中,当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果,包括:若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果。
在步骤S105中,守护进程根据匹配结果确定识别结果。
在一种可能的实现方式中,若生物识别指令具有指定的生物识别类型,则仅通过指定的生物识别类型的生物识别模块的状态机采集第一生物图像,该指定的生物识别类型的生物识别模块将该第一生物图像与模板数据进行匹配处理,得到匹配结果,守护进程可以根据该匹配结果确定识别结果。例如,若该匹配结果为匹配一致,则识别结果为识别通过;若该匹配结果为匹配不一致,则识别结果为识别不通过。
在另一种可能的实现方式中,若生物识别指令不具有指定的生物识别类型,则通过多个不同类型的生物识别模块的状态机采集多个第一生物图像,多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果。守护进程根据该多个匹配结果确定识别结果。
在该实现方式中,若多个匹配结果均为匹配一致,则可以确定识别结果为识别通过;若多个匹配结果均为匹配不一致,则可以确定识别结果为识别不通过;若多个匹配结果中的一部分匹配结果为匹配一致,另一部分匹配结果为匹配不一致,则可以确定多个匹配结果之间存在矛盾。
作为该实现方式的一个示例,守护进程根据匹配结果确定识别结果,包括:若多个匹配结果之间存在矛盾,则守护进程根据各个匹配结果中的匹配度,确定识别结果。在该示例中,若多个匹配结果之间存在矛盾,则可以计算各个匹配结果中的匹配度的均值。在匹配度的均值大于阈值时,可以确定识别结果为识别通过;在匹配度的均值小于或等于阈值时,可以确定识别结果为识别不通过。例如,若指纹识别模块的状态机采集到的第一生物图像与指纹识别模块的模板数据匹配不一致,人脸识别模块的状态机采集到的第一生物图像与人脸识别模块的模板数据匹配一致,则可以确定指纹识别模块对应的匹配结果与人脸识别模块对应的匹配结果之间存在矛盾。在这种情况下,可以获取各个匹配结果中的匹配度,例如,指纹识别模块对应的匹配结果的匹配度为0.9,人脸识别模块对应的匹配结果的匹配度为0.74。计算各个匹配度的均值,得到匹配度的均值为0.82。若第一阈值为0.8,则可以确定识别结果为识别通过。
在一种可能的实现方式中,识别结果包括生物识别指令对应的生物识别模块的类型信息。
作为该实现方式的一个示例,当生物识别指令具有指定的生物识别类型时,识别结果可以包括生物识别指令对应的生物识别模块的类型信息。例如,在解锁时,可以通过图标或者文字来显示进行生物识别的生物识别模块的类型信息。
在步骤S106中,向第一应用返回识别结果。
在本实施例中,守护进程可以将识别结果发送至生物识别服务端模块,生物识别服务端模块可以将识别结果发送至生物识别客户端模块,生物识别客户端模块可以将识别结果返回给第一应用。
本实施例通过在生物识别架构的硬件抽象层中封装不同类型的生物识别模块,由此通过一个生物识别架构支持不同类型的生物识别,无需针对各种类型的生物识别分别设计生物识别架构,提高了系统的兼容性;应用只需与生物识别架构的框架层的生物识别客户端模块通信即可调用生物识别功能,简化了应用发起生物识别的流程,提高了系统的稳定性。
在一种可能的实现方式中,硬件抽象层中同一类型的生物识别模块支持不同的供应商。在该实现方式中,通过对于同一类型的生物识别模块支持不同的供应商,能够满足终端设备厂商的多供应商支持的需求。
图2是根据一示例性实施例示出的一种生物识别方法中生物识别架构的示意图。如图2所示,生物识别架构可以包括框架层和硬件抽象层。其中,框架层包括生物识别客户端模块和生物识别服务端模块。硬件抽象层包括守护进程。硬件抽象层可以包括各种不同类型的生物识别模块,并可以支持不同供应商。例如,可以支持指纹识别供应商1、指纹识别供应商2、人脸识别供应商1、人脸识别供应商2、人脸识别供应商3、虹膜识别供应商1和虹膜识别供应商2等。
图3是根据一示例性实施例示出的一种生物识别方法的一示例性的流程图。如图3所示,该方法可以包括步骤S301至步骤S310。
在步骤S301中,在生物识别客户端模块接收到来自于第一应用的录入指令时,生物识别客户端模块将录入指令发送至框架层的生物识别服务端模块。
其中,录入指令可以为指纹录入指令、人脸录入指令或者虹膜录入指令等各种类型的录入指令。
在本实施例中,生物识别架构可以封装第二接口,第二接口可以为录入对应的接口。当接收到来自于第一应用的录入指令时,可以将第二接口提供给第一应用调用。各种类型的生物识别模块对应的各个供应商都可以支持第二接口。
在步骤S302中,生物识别服务端模块将录入指令发送至守护进程。
在步骤S303中,守护进程控制录入指令对应的生物识别模块的状态机进入录入状态。
例如,若录入指令对应的生物识别模块为人脸识别模块,则守护进程可以控制人脸识别模块的状态机进行录入状态。
在步骤S304中,当通过录入指令对应的生物识别模块的状态机采集到第二生物图像时,录入指令对应的生物识别模块根据第二生物图像生成录入指令对应的生物识别模块的模板数据。
在一种可能的实现方式中,可以将第二生物图像直接作为录入指令对应的生物识别模块的模板数据。
在另一种可能的实现方式中,可以从第二生物图像中提取特征,并将提取的特征作为录入指令对应的生物识别模块的模板数据。
在步骤S305中,当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,生物识别客户端模块将生物识别指令发送至框架层的生物识别服务端模块。
其中,对步骤S305参见上文对步骤S101的描述。
在步骤S306中,生物识别服务端模块将生物识别指令发送至生物识别架构的硬件抽象层的守护进程,其中,硬件抽象层包括多个不同类型的生物识别模块。
其中,对步骤S306参见上文对步骤S102的描述。
在步骤S307中,守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态。
其中,对步骤S307参见上文对步骤S103的描述。
在步骤S308中,当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果。
其中,对步骤S308参见上文对步骤S104的描述。
在步骤S309中,守护进程根据匹配结果确定识别结果。
其中,对步骤S309参见上文对步骤S105的描述。
在步骤S310中,向第一应用返回识别结果。
其中,对步骤S310参见上文对步骤S106的描述。
图4是根据一示例性实施例示出的一种生物识别方法的另一示例性的流程图。如图5所示,该方法可以包括步骤S401至步骤S408。
在步骤S401中,在终端设备开机时,守护进程检测终端设备支持的生物识别硬件。
在步骤S402中,守护进程控制终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
在本实施例中,在终端设备开机时,守护进程可以对各个生物识别模块进行初始化,控制各个生物识别模块的状态机进入休眠状态。在终端设备开机时,守护进程还可以对生物识别模块的供应商列表进行初始化。
在步骤S403中,当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,生物识别客户端模块将生物识别指令发送至框架层的生物识别服务端模块。
其中,对步骤S403参见上文对步骤S101的描述。
在步骤S404中,生物识别服务端模块将生物识别指令发送至生物识别架构的硬件抽象层的守护进程,其中,硬件抽象层包括多个不同类型的生物识别模块。
其中,对步骤S404参见上文对步骤S102的描述。
在步骤S405中,守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态。
其中,对步骤S405参见上文对步骤S103的描述。
在步骤S406中,当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果。
其中,对步骤S406参见上文对步骤S104的描述。
在步骤S407中,守护进程根据匹配结果确定识别结果。
其中,对步骤S407参见上文对步骤S105的描述。
在步骤S408中,向第一应用返回识别结果。
其中,对步骤S408参见上文对步骤S106的描述。
图5是根据一示例性实施例示出的一种生物识别装置的框图。如图5所示,该装置包括第一发送模块51、第二发送模块52、第一控制模块53、匹配模块54、确定模块55和返回模块56。
该第一发送模块51,被配置为当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,生物识别客户端模块将生物识别指令发送至框架层的生物识别服务端模块。
该第二发送模块52,被配置为生物识别服务端模块将生物识别指令发送至生物识别架构的硬件抽象层的守护进程,其中,硬件抽象层包括多个不同类型的生物识别模块。
该第一控制模块53,被配置为守护进程控制生物识别指令对应的生物识别模块的状态机进入识别状态。
该匹配模块54,被配置为当通过生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,生物识别指令对应的生物识别模块将第一生物图像与模板数据进行匹配处理,得到匹配结果。
该确定模块55,被配置为守护进程根据匹配结果确定识别结果。
该返回模块56,被配置为向第一应用返回识别结果。
在一种可能的实现方式中,第一控制模块53被配置为:
若生物识别指令不具有指定的生物识别类型,则守护进程控制硬件抽象层中所有生物识别模块的状态机进入识别状态。
在一种可能的实现方式中,第一控制模块53被配置为:
若生物识别指令具有指定的生物识别类型,则守护进程控制指定的生物识别类型对应的生物识别模块的状态机进入识别状态。
图6是根据一示例性实施例示出的一种生物识别装置的一示例性的框图。如图6所示:
在一种可能的实现方式中,该匹配模块54被配置为:
若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则所述多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果;
该确定模块55被配置为:
若多个匹配结果之间存在矛盾,则守护进程根据各个匹配结果中的匹配度,确定识别结果。
在一种可能的实现方式中,识别结果包括生物识别指令对应的生物识别模块的类型信息。
在一种可能的实现方式中,硬件抽象层中同一类型的生物识别模块支持不同的供应商。
在一种可能的实现方式中,该装置还包括第三发送模块57、第四发送模块58、第二控制模块59和生成模块60。
该第三发送模块57,被配置为在生物识别客户端模块接收到来自于第一应用的录入指令时,生物识别客户端模块将录入指令发送至框架层的生物识别服务端模块。
该第四发送模块58,被配置为生物识别服务端模块将录入指令发送至守护进程。
该第二控制模块59,被配置为守护进程控制录入指令对应的生物识别模块的状态机进入录入状态。
该生成模块60,被配置为当通过录入指令对应的生物识别模块的状态机采集到第二生物图像时,录入指令对应的生物识别模块根据第二生物图像生成录入指令对应的生物识别模块的模板数据。
在一种可能的实现方式中,该装置还包括检测模块61和第三控制模块62。
该检测模块61,被配置为在终端设备开机时,守护进程检测终端设备支持的生物识别硬件。
该第三控制模块62,被配置为守护进程控制终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例通过在生物识别架构的硬件抽象层中封装不同类型的生物识别模块,由此通过一个生物识别架构支持不同类型的生物识别,无需针对各种类型的生物识别分别设计生物识别架构,提高了系统的兼容性;应用只需与生物识别架构的框架层的生物识别客户端模块通信即可调用生物识别功能,简化了应用发起生物识别的流程,提高了系统的稳定性。
图7是根据一示例性实施例示出的一种用于生物识别的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (18)
1.一种生物识别方法,其特征在于,包括:
当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,所述生物识别客户端模块将所述生物识别指令发送至所述框架层的生物识别服务端模块;
所述生物识别服务端模块将所述生物识别指令发送至所述生物识别架构的硬件抽象层的守护进程,其中,所述硬件抽象层包括多个不同类型的生物识别模块;
所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态;
当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果;
所述守护进程根据所述匹配结果确定识别结果;
向所述第一应用返回所述识别结果。
2.根据权利要求1所述的方法,其特征在于,所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态,包括:
若所述生物识别指令不具有指定的生物识别类型,则所述守护进程控制所述硬件抽象层中所有生物识别模块的状态机进入识别状态。
3.根据权利要求1所述的方法,其特征在于,所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态,包括:
若所述生物识别指令具有指定的生物识别类型,则所述守护进程控制所述指定的生物识别类型对应的生物识别模块的状态机进入识别状态。
4.根据权利要求1所述的方法,其特征在于,当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果,包括:
若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则所述多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果;
所述守护进程根据所述匹配结果确定识别结果,包括:
若所述多个匹配结果之间存在矛盾,则所述守护进程根据各个匹配结果中的匹配度,确定识别结果。
5.根据权利要求1所述的方法,其特征在于,所述识别结果包括所述生物识别指令对应的生物识别模块的类型信息。
6.根据权利要求1所述的方法,其特征在于,所述硬件抽象层中同一类型的生物识别模块支持不同的供应商。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述生物识别客户端模块接收到来自于所述第一应用的录入指令时,所述生物识别客户端模块将所述录入指令发送至所述框架层的生物识别服务端模块;
所述生物识别服务端模块将录入指令发送至所述守护进程;
所述守护进程控制所述录入指令对应的生物识别模块的状态机进入录入状态;
当通过所述录入指令对应的生物识别模块的状态机采集到第二生物图像时,所述录入指令对应的生物识别模块根据所述第二生物图像生成所述录入指令对应的生物识别模块的模板数据。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在终端设备开机时,所述守护进程检测所述终端设备支持的生物识别硬件;
所述守护进程控制所述终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
9.一种生物识别装置,其特征在于,包括:
第一发送模块,用于当生物识别架构的框架层的生物识别客户端模块接收到来自于第一应用的生物识别指令时,所述生物识别客户端模块将所述生物识别指令发送至所述框架层的生物识别服务端模块;
第二发送模块,用于所述生物识别服务端模块将所述生物识别指令发送至所述生物识别架构的硬件抽象层的守护进程,其中,所述硬件抽象层包括多个不同类型的生物识别模块;
第一控制模块,用于所述守护进程控制所述生物识别指令对应的生物识别模块的状态机进入识别状态;
匹配模块,用于当通过所述生物识别指令对应的生物识别模块的状态机采集到第一生物图像时,所述生物识别指令对应的生物识别模块将所述第一生物图像与模板数据进行匹配处理,得到匹配结果;
确定模块,用于所述守护进程根据所述匹配结果确定识别结果;
返回模块,用于向所述第一应用返回所述识别结果。
10.根据权利要求9所述的装置,其特征在于,所述第一控制模块用于:
若所述生物识别指令不具有指定的生物识别类型,则所述守护进程控制所述硬件抽象层中所有生物识别模块的状态机进入识别状态。
11.根据权利要求9所述的装置,其特征在于,所述第一控制模块用于:
若所述生物识别指令具有指定的生物识别类型,则所述守护进程控制所述指定的生物识别类型对应的生物识别模块的状态机进入识别状态。
12.根据权利要求9所述的装置,其特征在于,所述匹配模块用于:
若通过多个不同类型的生物识别模块的状态机采集到多个第一生物图像,则所述多个不同类型的生物识别模块分别将各个第一生物图像与对应类型的生物识别模块的模板数据进行匹配处理,得到多个匹配结果;
所述确定模块用于:
若所述多个匹配结果之间存在矛盾,则所述守护进程根据各个匹配结果中的匹配度,确定识别结果。
13.根据权利要求9所述的装置,其特征在于,所述识别结果包括所述生物识别指令对应的生物识别模块的类型信息。
14.根据权利要求9所述的装置,其特征在于,所述硬件抽象层中同一类型的生物识别模块支持不同的供应商。
15.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第三发送模块,用于在所述生物识别客户端模块接收到来自于所述第一应用的录入指令时,所述生物识别客户端模块将所述录入指令发送至所述框架层的生物识别服务端模块;
第四发送模块,用于所述生物识别服务端模块将录入指令发送至所述守护进程;
第二控制模块,用于所述守护进程控制所述录入指令对应的生物识别模块的状态机进入录入状态;
生成模块,用于当通过所述录入指令对应的生物识别模块的状态机采集到第二生物图像时,所述录入指令对应的生物识别模块根据所述第二生物图像生成所述录入指令对应的生物识别模块的模板数据。
16.根据权利要求9所述的装置,其特征在于,所述装置还包括:
检测模块,用于在终端设备开机时,所述守护进程检测所述终端设备支持的生物识别硬件;
第三控制模块,用于所述守护进程控制所述终端设备支持的生物识别硬件对应的生物识别模块的状态机进入休眠状态。
17.一种生物识别装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1至8中任意一项所述的方法。
18.一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行权利要求1至8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810541784.7A CN108776753B (zh) | 2018-05-30 | 2018-05-30 | 生物识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810541784.7A CN108776753B (zh) | 2018-05-30 | 2018-05-30 | 生物识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108776753A CN108776753A (zh) | 2018-11-09 |
CN108776753B true CN108776753B (zh) | 2020-09-29 |
Family
ID=64027990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810541784.7A Active CN108776753B (zh) | 2018-05-30 | 2018-05-30 | 生物识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108776753B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100136285A (ko) * | 2009-06-18 | 2010-12-28 | 주식회사 비즈모델라인 | 생체 인식과 연동하는 이중 코드 생성 방식의 오티피 운영 방법 및 시스템과 이를 위한 기록매체 |
CN105303090A (zh) * | 2015-10-19 | 2016-02-03 | 广东欧珀移动通信有限公司 | 一种指纹解锁的方法、装置和终端 |
CN105740682A (zh) * | 2016-01-12 | 2016-07-06 | 黑河学院 | 一种计算机系统及其用户的身份识别方法和系统 |
CN107580114A (zh) * | 2017-08-24 | 2018-01-12 | 广东欧珀移动通信有限公司 | 生物识别方法、移动终端以及计算机可读存储介质 |
-
2018
- 2018-05-30 CN CN201810541784.7A patent/CN108776753B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100136285A (ko) * | 2009-06-18 | 2010-12-28 | 주식회사 비즈모델라인 | 생체 인식과 연동하는 이중 코드 생성 방식의 오티피 운영 방법 및 시스템과 이를 위한 기록매체 |
CN105303090A (zh) * | 2015-10-19 | 2016-02-03 | 广东欧珀移动通信有限公司 | 一种指纹解锁的方法、装置和终端 |
CN105740682A (zh) * | 2016-01-12 | 2016-07-06 | 黑河学院 | 一种计算机系统及其用户的身份识别方法和系统 |
CN107580114A (zh) * | 2017-08-24 | 2018-01-12 | 广东欧珀移动通信有限公司 | 生物识别方法、移动终端以及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108776753A (zh) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951884B (zh) | 采集指纹的方法、装置及电子设备 | |
EP3133528B1 (en) | Method and apparatus for fingerprint identification | |
CN107025419B (zh) | 指纹模板录入方法及装置 | |
CN105847243B (zh) | 访问智能摄像头的方法及装置 | |
US20160352661A1 (en) | Video communication method and apparatus | |
US20180238748A1 (en) | Pressure detection method and apparatus, and storage medium | |
CN105100074A (zh) | 数据操作处理方法、装置以及终端设备 | |
CN112667984A (zh) | 一种身份认证方法及装置、电子设备和存储介质 | |
CN108874450B (zh) | 唤醒语音助手的方法及装置 | |
US10671827B2 (en) | Method and device for fingerprint verification | |
CN110764847B (zh) | 用户信息处理方法、装置、电子设备及存储介质 | |
CN110515623B (zh) | 图形操作实现方法、装置、电子设备及存储介质 | |
CN107133551B (zh) | 指纹验证方法及装置 | |
CN108829532B (zh) | 指纹检测的方法、装置和可读存储介质 | |
CN109873823B (zh) | 验证方法及装置、电子设备和存储介质 | |
CN107885464B (zh) | 数据存储方法、装置及计算机可读存储介质 | |
CN107357643B (zh) | 应用调用方法、装置及计算机可读存储介质 | |
CN107484233B (zh) | 终端振动方法、终端及计算机可读存储介质 | |
US10558973B2 (en) | Method and apparatus for card activation | |
CN108776753B (zh) | 生物识别方法及装置 | |
CN112351131B (zh) | 电子设备的控制方法、装置、电子设备及存储介质 | |
US20170300921A1 (en) | Method and device for preventing account from being stolen | |
CN116208350A (zh) | 数字车钥匙注册方法、装置及存储介质 | |
CN114612287A (zh) | 图像处理方法、装置及存储介质 | |
CN111079112B (zh) | 应用控制方法、应用控制装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |