CN116704571A - 人脸识别方法、电子设备及可读存储介质 - Google Patents
人脸识别方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN116704571A CN116704571A CN202211209219.3A CN202211209219A CN116704571A CN 116704571 A CN116704571 A CN 116704571A CN 202211209219 A CN202211209219 A CN 202211209219A CN 116704571 A CN116704571 A CN 116704571A
- Authority
- CN
- China
- Prior art keywords
- face recognition
- tof sensor
- sensor
- tof
- camera
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000003860 storage Methods 0.000 title claims abstract description 25
- 230000003287 optical effect Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 11
- 230000037361 pathway Effects 0.000 claims description 2
- 239000010410 layer Substances 0.000 description 32
- 230000006870 function Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 238000003384 imaging method Methods 0.000 description 16
- 230000002159 abnormal effect Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000006378 damage Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 208000014674 injury Diseases 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/18—Eye characteristics, e.g. of the iris
- G06V40/19—Sensors therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/18—Eye characteristics, e.g. of the iris
- G06V40/197—Matching; Classification
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Ophthalmology & Optometry (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本申请涉及终端技术领域,提供一种人脸识别方法、电子设备及可读存储介质,该方法方法应用于电子设备,电子设备包括TOF传感器和摄像头驱动模块,该方法包括:通过第一通路为TOF传感器配置初始配置参数,控制TOF传感器基于初始配置参数运行,通过第二通路从TOF传感器获取运行结果,再根据运行结果确定TOF传感器的目标工作模式并控制TOF传感器在目标工作模式下采集图像数据然后进行人脸识别。相比于现有的人脸识别方式,本申请在为TOF传感器配置初始配置参数时,控制TOF传感器基于初始配置参数运行,然后基于运行结果来选择TOF传感器接下来的工作模式并执行后续的人脸识别操作,优化了人脸识别流程,缩短了人脸识别的耗时。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种人脸识别方法、电子设备及可读存储介质。
背景技术
目前,大部分智能终端都装载了3D TOF进行人脸解锁。3D TOF人脸解锁使用TOF摄像头成像,具体是由一组人眼看不到的红外光(激光脉冲)向外发射,遇到物体后反射,反射到摄像头结束,计算从发射到反射回摄像头的时间差或相位差,并将数据收集起来,形成一组距离深度数据,从而得到一个立体的3D模型的成像技术。
由于TOF图像不受大多数光线的影响,所以将TOF图像应用在解锁业务中能够提高安全性,但由于TOF成像时会主动打光,此时就需要保证人眼安全,因而现有的智能终端在TOF摄像头上电后会将其默认配置为人眼安全模式。在进行3D TOF人脸解锁时,TOF摄像头从人眼安全模式切换到人脸识别模式流程相对复杂,耗费时间过长,用户的人脸识别体验不高。
发明内容
本申请提供一种人脸识别方法、电子设备及可读存储介质,目的在于优化人脸识别过程,降低人脸识别的等待时长。
第一方面,本申请提供了一种人脸识别方法,该方法应用于电子设备,所述电子设备包括TOF传感器和摄像头驱动模块,该方法包括:通过第一通路为TOF传感器配置初始配置参数,第一通路为连接在摄像头驱动模块与TOF传感器之间的第一总线;控制TOF传感器基于初始配置参数运行;通过第二通路从TOF传感器获取运行结果,第二通路为连接在摄像头驱动模块与TOF传感器之间的第二总线,其中,第一总线与第二总线不同;根据运行结果确定TOF传感器的目标工作模式;控制TOF传感器在目标工作模式下采集图像数据;基于图像数据进行人脸识别。
本申请所提供的上述人脸识别方法相比于现有的人脸识别技术中,TOF传感器在完成初始化配置,也即完成人眼安全模式的初始化配置之后再进行图像数据采集,然后根据采集的图像数据对TOF传感器的器件状态进行检查,并基于检查结果进行模式切换和人脸识别的方式,本申请在为TOF传感器配置初始配置参数时,即控制TOF传感器基于初始配置参数运行,然后基于运行结果来选择TOF传感器接下来的工作模式以及执行后续的人脸识别操作,优化了人脸识别的流程,缩短了人脸识别的耗时。
在一种可能的实现方式中,所述第一通路用于所述摄像头驱动模块向所述TOF传感器写入数据,所述第二通路用于所述摄像头驱动模块从所述TOF传感器读取数据。
在另一种可能的实现方式中,所述第一总线和所述第二总线均为I2C总线。
在另一种可能的实现方式中,所述通过第一通路为所述TOF传感器配置初始配置参数,包括:将初始化命令下发至所述摄像头驱动模块,以使所述摄像头驱动模块基于所述初始化命令通过第一通路为所述TOF传感器配置初始配置参数,所述初始配置参数用于控制所述TOF传感器以人眼安全模式运行。
在另一种可能的实现方式中,所述控制所述TOF传感器基于所述初始配置参数运行,包括:读取所述初始配置参数中的第一电流值和曝光值;控制所述TOF传感器基于所述第一电流值和所述曝光值运行预设时长,所述第一电流值小于所述TOF传感器的正常工作电流值。
在另一种可能的实现方式中,所述TOF传感器包括用于发射光信号的发射器,所述控制所述TOF传感器基于所述第一电流值和所述曝光值运行预设时长,包括:控制所述TOF传感器中的所述发射器基于所述第一电流值和所述曝光值以第一光强度运行预设时长。
在另一种可能的实现方式中,所述控制所述TOF传感器基于初始化配置参数进行运行之后,包括:将运行结果通过所述第一通路写入寄存器中,所述寄存器设置在所述TOF传感器内。
在另一种可能的实现方式中,所述通过第一通路为所述TOF传感器配置初始配置参数之前,包括:获取所述TOF传感器对应的传感器参数;从所述传感器参数中读取所述TOF传感器的初始化标识;根据所述初始化标识判断所述TOF传感器是否支持人眼安全模式;在所述TOF传感器支持所述人眼安全模式时,执行所述通过第一通路为所述TOF传感器配置初始配置参数的步骤。
在另一种可能的实现方式中,所述获取所述TOF传感器对应的传感器参数之前,包括:在图像传感器上电时,获取所述图像传感器对应的传感器参数;读取所述传感器参数中的数据流格式字段;根据所述数据流格式字段判断所述图像传感器是否为TOF传感器;若是,则执行所述获取所述TOF传感器对应的传感器参数的步骤。
在另一种可能的实现方式中,所述获取所述TOF传感器在所述目标工作模式下采集的图像数据,包括:获取所述TOF传感器在所述目标工作模式下采集的第一帧图像数据;所述基于所述图像数据进行人脸识别,包括:基于所述第一帧图像数据进行人脸识别。
在另一种可能的实现方式中,所述基于所述第一帧图像数据进行人脸识别,包括:基于所述第一帧图像数据获取灰度图和深度图;基于所述灰度图进行人脸对比,基于所述深度图进行防伪检测,得到人脸识别结果。
在另一种可能的实现方式中,所述基于所述图像数据进行人脸识别之后,包括:根据人脸识别结果确定是否执行解锁;若所述人脸识别结果为识别成功,则执行解锁;若所述人脸识别结果为识别失败,则不执行解锁或显示解锁失败提示。
第二方面,本申请提供了一种电子设备,包括:
一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行如上述第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
第三方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储了计算机程序,当所述计算机程序被处理器执行时,使得处理器执行如上述第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
第四方面,本申请提供了一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
可选的,作为一种可能的实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
附图说明
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种TOF成像技术的原理示意图;
图3为本申请实施例提供的一种软件模块架构示意图;
图4为本申请实施例提供的一种软件模块间的交互示意图;
图5为本申请实施例提供的又一种软件模块间的交互示意图;
图6为本申请实施例提供的一种信号交互示意图;
图7为本申请实施例提供的一种示意性场景图;
图8为本申请实施例提供的另一种信号交互示意图;
图9为本申请实施例提供的一种芯片结构示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了下述各实施例的描述清楚简洁,首先给出相关概念或技术的简要介绍:
通用运行环境(Rich Execution Environment,REE),也可以称为普通执行环境或不可信执行环境,是指移动端的系统运行环境,其中可以运行Android、IOS和Linux等操作系统。REE的开放和扩展性好但安全性不高。
可信执行环境(Trusted Execution Environment,TEE),也可以称安全侧或安全区,是需要授权才能访问的区域。TEE与REE共存于电子设备中的运行环境,其通过硬件的支撑,实现与REE的隔离,具有安全能力并且能够抵御常规REE侧易遭受的软件攻击。TEE有自身的运行空间,定义了严格的保护措施,因此,比REE的安全级别更高,能够保护TEE中的资产(assets),如数据,软件等,免受软件攻击,抵抗特定类型的安全威胁。
REE+TEE架构,是指通过TEE与REE结合共同为应用提供服务的架构。也就是说,TEE与REE共同存在于电子设备中。示例性的,TEE通过硬件的支撑,可实现与REE相隔离的运行机制。TEE有自身的运行空间,比REE的安全级别更高,能够保护TEE中的资产(如数据,软件等)免受软件攻击。只有授权的安全软件才能在TEE中执行,同时它也保护了安全软件的资源和数据的机密性。相比REE,由于其隔离和权限控制等保护机制,TEE能够更好的保护数据和资源的安全性。
TA,即可信应用,是运行在TEE中的应用,能够为运行在TEE之外的CA提供安全服务,如输入密码,生成交易签名,人脸识别等。
CA,即客户端应用。CA通常指运行在REE中的应用。CA可以通过客户端(Client)应用程序编程接口(Application Programming Interface,API)对TA进行调用并指示TA执行相应的安全操作。
软件开发工具包(Software Development Kit,SDK):广义上指辅助开发某一类软件的相关文档、范例和工具的集合。
RAW Data,即原始数据,可以理解为“未经加工和未经压缩的数据”。本申请实施例中,RAW Data可以是指TOF传感器(TOF摄像头)将捕捉到的光源信号转化为数字信号的原始数据。RAW Data中还记录有相机拍摄所产生的一些元数据(Metadata)。
元数据,又可以称为中介数据、中继数据,是用于描述数据的数据(data aboutdata),主要是描述数据属性(property)的信息。本申请实施例中,Metadata可以指示摄像头的工作模式,打光电流值大小,TOF摄像头的器件工作状态、曝光值等信息。
TOF摄像头(TOF摄像头模组、TOF传感器),可以包括发射器(TX)和接收器(RX),TX用于发射红外光或激光脉冲,RX用于接收反射光并成像。由于TX可以自主发射光信号用于成像,因此TOF图像不受环境中大多数光线的影响,这样,将TOF图像应用在解锁业务中,能够提高人脸识别的安全性。
飞行时间(Time Of Flight,TOF)成像技术,是指由一组人眼看不到的红外光(或激光脉冲)向外发射,遇到物体后反射,反射到摄像头结束,计算从发射到反射回摄像头的时间差或相位差,并将数据收集起来,形成一组距离深度数据,从而得到一个立体的3D模型的成像技术。也即,TOF成像技术是在传统的2D XY轴的成像基础上,加入来自Z轴方向的深度信息,最终生成3D的图像信息。
EyeSafe Mode:人眼安全模式,是TOF Tx工作在一个小电流(即下述第一电流值)的模式下,用于检查TOF器件是否有损坏(正常或异常)。
FaceID Mode:人脸识别模式、人脸ID模式,是TOF Tx工作在一个正常电流(即下述正常电流值)的模式下,用于安全人脸解锁和支付的模式。
Tx OFF Mode:TOF Tx不发光模式,检测到TOF传感器的器件损坏(异常)时切换到该模式,其工作电流为0(即下述第二电流值)。
采用TOF成像技术时,需要向人脸投射红外光、激光等,为了人眼的安全,需要对TX发射的光的光功率进行检测,以保证在人眼安全范围内,避免TX发射的光信号伤害人眼。
本申请实施例提供一种人脸识别方法,在TOF传感器进行初始化配置过程中,通过第一通路为TOF传感器配置初始配置参数,然后控制TOF传感器基于初始配置参数运行,若TOF传感器能够正常运行,则表明TX可正常工作,可以正常使用TOF摄像头采集图像;若TOF传感器无法正常运行,则表明TX异常,可以关闭TX,以避免TX发射的光信号伤害人眼。在TOF传感器基于初始配置参数运行一段时间后,即可通过第二通路读取运行结果,然后根据运行结果确定TOF传感器的目标工作模式(FaceID模式或Tx OFF模式),再获取TOF传感器在目标工作模式(FaceID模式或Tx OFF模式)下采集的图像数据,最后再基于该图像数据进行人脸识别。其中,第一通路为连接在摄像头驱动模块与TOF传感器之间的第一总线,第二通路为连接在摄像头驱动模块与TOF传感器之间的第二总线,第一总线与第二总线不同。
如图1所示,图1为本申请提供的一种电子设备的组成示例图,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(Universal SerialBus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(Subscriber Identification Module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本实施例示意的结构并不构成对该电子设备100的具体限定。在另一些实施例中,该电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(Graphics ProcessingUnit,GPU),图像信号处理器(Image Signal Processor,ISP),控制器,视频编解码器,数字信号处理器(Digital Signal Processor,DSP),基带处理器,和/或神经网络处理器(Neural-network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(Pulse Code Modulation,PCM)接口,通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)接口,移动产业处理器接口(Mobile Industry Processor Interface,MIPI),通用输入输出(General-PurposeInput/Output,GPIO)接口,用户标识模块(Subscriber Identity Module,SIM)接口,和/或通用串行总线(Universal Serial Bus,USB)接口等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(Low Noise Amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(WirelessLocal Area Networks,WLAN)(如无线保真(Wireless Fidelity,Wi-Fi)网络),蓝牙(Bluetooth,BT),全球导航卫星系统(Global Navigation Satellite System,GNSS),调频(Frequency Modulation,FM),近距离无线通信技术(Near Field Communication,NFC),红外技术(Infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(Global System for Mobile communications,GSM),通用分组无线服务(General Packet Radio Service,GPRS),码分多址接入(CodeDivision Multiple Access,CDMA),宽带码分多址(Wideband Code Division MultipleAccess,WCDMA),时分码分多址(Time-Division Code Division Multiple Access,TD-SCDMA),长期演进(Long Term Evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(Global Positioning System,GPS),全球导航卫星系统(Global Navigation Satellite System,GLONASS),北斗卫星导航系统(BeidouDavigation Satellite system,BDS),准天顶卫星系统(Quasi-Zenith SatelliteSystem,QZSS)和/或星基增强系统(Satellite Based Augmentation Systems,SBAS)。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(Moving Picture Experts Group,MPEG)1,MPEG2,MPEG3,MPEG4等。
摄像头193可以包括1~N个。例如电子设备可以包括2个前置摄像头和4个后置摄像头。其中,前置摄像头中可以包括TOF摄像头。TOF摄像头包括TX和RX,TX可以用于发射光信号(红外光或激光脉冲),RX可以用于接收成像。TX例如可以为红外光发射器。RX例如可以为互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)或者电荷耦合器件(Charge Coupled Device,CCD)图像感应器。
示例性的,如图2中的(a)所示,可以通过TOF摄像头的光发射器(Tx)向被测目标(例如,用户)连续发送光信号(红外光或激光脉冲),在TOF摄像头的传感器端(Rx)接收被测目标返回的光信号,如图2中的(b)所示,根据发射和接收光信号的相位差(延迟)可以得到被测目标的深度信息。
其中,Tx和Rx可以通过总线进行信息交互。例如,Rx可以通过总线(例如,串行外设接口(Serial Peripheral Interface,SPI)总线)向Tx发送配置参数,该配置参数用于指示Tx对应的寄存器的地址和针对该寄存器的值。例如Tx对应的寄存器的地址可以是0x11,0x11对应的存储空间中可以存储电流值。Tx可以基于相应的配置参数工作在相应电流值下从而发射出相应光强度的光信号。Rx可以基于发射器发出的相应强度的光信号的反射光获取相应的图像数据。
需要说明的是,Tx工作在不同的电流值下,可以发射出不同光强度的光信号。例如,Tx工作在第一电流值下,可以发射出第一光强度的光信号。Tx工作在正常电流值下,可以发射出第二光强度的光信号,正常电流值大于第一电流值,第二光强度大于第一光强度。Rx基于不同强度的光信号的反射光获取的图像数据也是不同的。例如,当Tx工作在第一电流值下,发射出第一光强度的光信时,Rx在相应的曝光时间内获取第一图像数据;Tx工作在正常电流值下,发射出第二光强度的光信号时,Rx在相应的曝光时间内获取第二图像数据;第二图像数据与第一图像数据不同。
Tx运行在相应电流值下时,可以判断自身的工作状态,工作状态(也即运行结果)可以是正常或异常。Rx可以通过I2C总线向Tx请求Tx的工作状态,Tx可以通过I2C总线向Rx反馈自身的工作状态(例如,正常or异常),从而Rx可以获取Tx的工作状态。Rx可以将Tx的工作状态和自身的工作状态以及两者的工作模式打包在第一数据包(例如,Metadata)中。Rx还可以将Metadata和基于反射光获取的图像数据打包在第二数据包(例如,RAW Data)中。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(Liquid Crystal Display,LCD),有机发光二极管(Organic Light-EmittingDiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(Active-MatrixOrganic Light Emitting Diode,AMOLED),柔性发光二极管(Flex Light-EmittingDiode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(Quantum Dot LightEmitting Diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100的显示屏194上可以显示一系列图形用户界面(Graphical UserInterface,GUI),这些GUI都是该电子设备100的主屏幕。一般来说,电子设备100的显示屏194的尺寸是固定的,只能在该电子设备100的显示屏194中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。例如,在本申请实施例中,显示屏191可以显示虚拟按键(一键编排、开始编排、场景编排)。
另外,在上述部件之上,运行有操作系统。例如鸿蒙系统,iOS操作系统,Android开源操作系统,Windows操作系统等。在该操作系统上可以安装运行应用程序。
以下实施例中的方法均可以在具有上述硬件结构的电子设备100中实现。
上述电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过接口通信。在一些实施例中,Android系统可以包括应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,硬件抽象层(Hardware Abstraction Layer,HAL)以及内核层。需要说明的是,本申请实施例以Android系统举例来说明,在其他操作系统中(例如鸿蒙系统,IOS系统等),只要各个功能模块实现的功能和本申请的实施例类似也能实现本申请的方案。
其中,应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息、锁屏应用、设置应用等应用程序。当然,应用程序层还可以包括其他应用程序包,例如支付应用,购物应用、银行应用、聊天应用或理财应用等,本申请不做限定。
其中,设置应用具有录入人脸的功能,该录入的人脸用于人脸解锁。锁屏应用具有响应于用户的解锁操作(例如,按压电源键)进行解锁的功能。锁屏应用可以进行人脸解锁、指纹解锁、密码解锁等解锁处理,本申请实施例主要以人脸解锁为例进行说明。
应用程序框架层为应用程序层的应用程序提供应用编程接口(ApplicationProgramming Interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如可以包括活动管理器、窗口管理器,内容提供器,视图系统,资源管理器,通知管理器,相机服务(Camera Service)和人脸识别服务等,本申请实施例对此不做任何限制。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),OpenGL ES,SGL等。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。OpenGL ES用于实现三维图形绘图,图像渲染,合成,和图层处理等。SGL是2D绘图的绘图引擎。
安卓运行时(Android Runtime)包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
HAL层是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层硬件的实现细节。
HAL层中可以包括Wi-Fi HAL,音频(audio)HAL,相机HAL(Camera HAL)和人脸识别控制模块(Face CA)等。
其中,相机HAL是Camera的核心软件框架,相机HAL中可以包括传感器节点(sensornode)和图像前处理(Image Front End,IFE)节点(IFE node)。传感器节点和IFE节点是相机HAL创建的图像数据和控制指令传输通路(也可以称为传输管道)中的组件(节点)。
人脸识别控制模块是人脸识别的核心软件框架/应用。
人脸可信应用(Face Trusted Application,Face TA):运行在TEE环境下的用于人脸识别的应用。本申请实施例中,将Face TA称为人脸识别TA。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
其中,摄像头驱动是Camera器件的驱动层,主要负责和硬件的交互。
硬件层包括显示器、TOF摄像头、IFE模块和安全内存(Secure Buffer)等。
其中,安全内存是指具有安全保护功能的内存,可以用于存放TOF摄像头采集的RAW Data。
TOF传感器(TOF sensor),也可以称为TOF摄像头,可以包括发射器(TX)和接收器(RX),TX用于发射红外光或激光脉冲,RX用于接收反射光并成像。
IFE模块(IFE-Lite):可以称为图像前处理模块,可以用于转发图像数据,转发过程中不对图像数据进行处理。
下面对本申请实施例提供的人脸识别方法所涉及的软件模块和模块间的交互进行说明。如图4所示,应用层中的锁屏应用可以与人脸识别SDK交互,人脸识别SDK可以通过调用预设的应用程序接口(Application Programming Interface,API)接口与框架层中的人脸识别服务交互,人脸识别服务可以与HAL层中的人脸识别控制模块交互,人脸识别控制模块可以通过框架层中的相机服务与HAL层中的相机HAL交互,或者,人脸识别控制模块可以直接与HAL层中的相机HAL交互。相机HAL中可以包括传感器节点和IFE节点。传感器节点可以与内核层中的摄像头驱动模块交互,摄像头驱动模块可以用于驱动硬件层中的TOF摄像头以默认的工作模式(例如,人眼安全模式)采集图像数据,摄像头驱动模块还可以将IFE模块对应的硬件参数写入到IFE模块,以供其进行硬件初始化和参数配置。摄像头驱动模块还可以通过第一通路将TOF摄像头的初始配置参数配置到TOF sensor的寄存器中,也可以在TOF摄像头基于寄存器中的这些初始配置参数运行一段时间后,通过第二通路读取TOF摄像头的运行结果。相应的,传感器节点也可以通过摄像头驱动模块获取上述运行结果。
另外,IFE模块可以将TOF摄像头采集的图像数据存储至安全内存中。TOF摄像头采集的图像数据在安全内存中的存储位置,可以使用文件描述符(File Descriptor,FD)表示。IFE模块可以将图像数据的FD发送至摄像头驱动模块,摄像头驱动模块可以将FD传递到相机HAL的IFE节点,IFE节点可以将FD传递到相机服务,相机服务可以将FD传递到人脸识别控制模块,人脸识别控制模块可以将FD传递到人脸识别TA,人脸识别TA可以根据FD从安全内存中读取图像数据,对图像数据进行处理,并可以将处理结果发送给人脸识别控制模块,人脸识别控制模块可以继续通过相机服务与相机HAL交互,以切换TOF摄像头的工作模式。相机HAL可以继续与摄像头驱动模块交互,使得摄像头驱动模块可以驱动TOF摄像头以切换后的工作模块(例如,人脸ID模式或Tx OFF模式)采集图像数据,该图像数据对应的FD可以继续通过IFE模块、摄像头驱动模块、IFE节点、相机服务和人脸控制模块传递到人脸识别TA,人脸识别TA可以再次读取图像数据并进行处理,将处理结果(人脸识别成功或人脸识别失败)反馈给人脸识别控制模块。人脸识别控制模块可以通过人脸识别服务、人脸识别SDK将处理结果反馈给锁屏应用,以便锁屏应用确定是否解锁(若人脸识别成功,解锁;若人脸识别失败,不解锁,即解锁失败)。其中,图4中的实线箭头可以用于表示控制流,虚线箭头可以用于表示数据流。
具体的,如图5所示,相机HAL中的传感器节点可以用于在TOF摄像头上电后,判断TOF摄像头是否支持人眼安全模式,若支持,则从内存(或oeminfo)中读取产线标定的电流值(对人眼没有伤害)、曝光值等初始配置参数,然后通过第一通路将这些初始配置参数写入到TOF摄像头的寄存器中(TOF摄像头默认的默认工作模式可以为人眼安全模式,其对应的参数为所述初始配置参数)。之后,TOF摄像头根据寄存器中配置的初始配置参数运行一小段时间(时间很短),在运行过程中TOF传感器即可完成自身器件状态(例如,正常or异常)的检查,且将状态检查结果,也即上述运行结果写入至TOF sensor的寄存器中。然后,传感器节点再通过第二通路从TOF sensor寄存器中读取该运行结果,并基于该运行结果进行TOF sensor接下来工作模式的选取(例如FaceID模式或TxOFF模式)。工作模式选取完毕后,传感器节点将通过摄像头驱动模块来驱动TOF摄像头在所选取的目标工作模式下采集图像数据,然后基于该图像数据进行人脸识别。
由于是在为TOF传感器配置初始配置参数时,即控制TOF传感器基于初始配置参数运行,然后基于运行结果来选择TOF传感器接下来的工作模式以及执行后续的人脸识别操作,相比于现有的人脸识别技术中,TOF传感器在完成初始化配置,(也即完成人眼安全模式的初始化配置)之后再进行图像数据采集,然后根据采集的图像数据对TOF传感器的器件运行状态进行检查,并基于检查结果进行模式切换的方式,本申请上述方式优化了人脸识别的流程,缩短了人脸识别的耗时(大概从140ms缩短到70ms),提高用户的人脸识别体验。
为了便于理解,以下结合附图6~附图8对本申请实施例提供的人脸识别方法进行具体介绍。
如图6所示,本申请实施例提供一种人脸识别方法,具体流程如下:
步骤S8:在图像传感器上电时,获取所述图像传感器对应的传感器参数;
应理解的是,通常情况下,电子设备中集成的图像传感器(摄像头)有多个,而不同的图像传感器的功能或能力或许不同,对于非TOF传感器的其他类型图像传感器,由于它们不包含用于发射红外光或激光脉冲的发射器(TX),即便在器件损坏时,也不会对人眼造成伤害,进而也无需对它们进行人眼安全检测,避免电子设备计算资源的浪费。因此,本实施例传感器节点在电子设备中的图像传感器上电时,将先判断该图像传感器是否为TOF传感器。
需要说明的是,图像传感器的功能或能力可以通过各图像传感器的传感器ID、支持的分辨率大小、数据流格式、深度信息和/或初始化标识等参数(即上述传感器参数)进行表征。这些传感器参数通常存放在相机HAL中,电子设备开机过程中,相机服务将向相机HAL请求查询电子设备支持的图像传感器(例如摄像头)能力,相机HAL接收到请求后,将电子设备支持的图像传感器的图像传感器能力(即上述传感器参数)发送给相机服务进行存储。
步骤S9:读取所述传感器参数中的数据流格式字段;
步骤S10:根据所述数据流格式字段判断所述图像传感器是否为TOF传感器;
步骤S11:若是,则执行步骤S12;
需要说明的是,所述数据流格式字段可以表征图像传感器所支持的数据流格式。示例性的,所述数据流格式字段包括但不限于:YUY或RAW16。
其中,YUV中的“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V”表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。与RGB格式类似,YUV是一种将亮度参量和色度参量分开表示的像素格式。RAW16是指16位的RAW,即16位的原始图像文件格式。
通常情况下,TOF摄像头配置的数据流格式为RAW16,因此传感器节点可从获取到的传感器参数中读取该图像传感器对应的数据流格式字段,然后根据该数据流格式字段是否为RAW16来判断图像传感器是否为TOF传感器。
作为一种可能的实现方式,在一些电子设备中,有些非TOF传感器的其他类型图像传感器对应的数据流格式并不一定为RAW16,但是这些图像传感器与TOF传感器最大的差异在于前者无法采集深度数据,后者则可以通过TOF成像技术采集事物的深度数据。因此,传感器节点还可以从上述传感器参数中读取深度信息,例如Depth:NO或YES,然后根据该深度信息来判断图像传感器是否为TOF传感器。
当然,作为另一种可能的实现方式,传感器节点也可以基于传感器参数中的数据流格式字段和深度信息或者是其他传感器参数一起判断图像传感器是否为TOF传感器。示例性的,若图像传感器A对应的数据流格式为RAW16,且深度信息Depth:YES,则可判定图像传感器A为TOF传感器。
具体实现时,传感器节点在判断出TOF传感器为TOF传感器后,即可进一步判断该图像传感器(即TOF传感器)是否支持人眼安全模式,也即执行下述步骤S12-S14。
步骤S12:从所述传感器参数中读取所述TOF传感器的初始化标识;
需要说明的是,所述初始化标识可以是用来表征TOF传感器是否支持人眼安全模式或是否支持人眼安全模式初始化的标记信息。示例性的,初始化标识可以是Initial:NO或YES。其中,Initial:YES,表明TOF传感器支持人眼安全模式;Initial:NO,表明TOF传感器不支持人眼安全模式。本实施例中,上述初始化标识可以从传感器参数中读取。
步骤S13:根据所述初始化标识判断所述TOF传感器是否支持人眼安全模式;
步骤S14:在所述TOF传感器支持所述人眼安全模式时,执行步骤S15;
具体实现时,传感器节点在获取到初始化标识为Initial:NO,则表明TOF传感器不支持人眼安全模式,此时可停止执行后续的人眼安全初始化配置操作;反之,传感器节点在获取到初始化标识为Initial:YES,则表明TOF传感器支持人眼安全模式,便可接着执行下述步骤S15-S20。
步骤S15:通过第一通路为所述TOF传感器配置初始配置参数,所述第一通路为连接在所述摄像头驱动模块与所述TOF传感器之间的第一总线。
应理解的是,所谓初始化,即将变量赋为默认值,包括将被初始化对象的状态设为默认状态(一般通过设置被初始化对象的参数来实现)。本申请中上述初始配置参数可以是TOF传感器上电后执行人眼安全模式的初始化时需要使用的配置参数。这些初始配置参数用于控制TOF传感器以人眼安全模式运行。示例性的,上述初始配置参数包括电流值、曝光值、曝光时间和/或光强度等。
需要说明的是,如图4所示,第一通路为连接在摄像头驱动模块与TOF传感器之间的第一总线,该第一通路用于在摄像头驱动模块与TOF传感器之间传递数据。示例性的,所传递的数据可以是控制流数据,也即按一定的顺序排列程序元素来决定程序执行的顺序的数据或数据序列。
本实施例中,上述第一总线可以是任何能够双向传递数据或控制流数据的总线,例如I2C总线或SPI总线,具体总线型号的选用可依据实际情况而定,本实施例对此不加以限制。
作为一种可能的实现方式,本实施例上述第一通路用于摄像头驱动模块向TOF传感器写入数据,例如通过第一通路将上述初始配置参数写入至TOF传感器的寄存器中。
作为另一种可能的实现方式,本实施例传感器节点可以将初始化命令下发至摄像头驱动模块,以使摄像头驱动模块基于初始化命令通过第一通路为TOF传感器配置初始配置参数,其中,初始配置参数用于控制TOF传感器以人眼安全模式运行。
需要说明的是,上述初始化命令,可以是用于控制TOF传感器进行人眼安全初始化的指令,该命令中包含初始配置参数和指示TOF传感器基于这些参数进行初始化的一些控制指令。
具体实现时,传感器节点先从电子设备的内存中读取(人眼安全模式)初始配置参数,然后将初始配置参数发送至摄像头驱动模块,摄像头驱动模块通过第一通路将这些初始配置参数集成到初始化命令中写入至TOF传感器的寄存器,然后执行下述步骤S16。
步骤S16:控制所述TOF传感器基于所述初始配置参数运行。
需要说明的是,为了保护人眼不被已损坏的TOF传感器发出的红外光伤害,本实施例中,电子设备在执行人脸识别解锁前,需要先检查TOF传感器的器件状态(正常或者异常),若状态正常,则表明TOF传感器可正常工作,可以工作在FaceID模式;若状态异常,则表明TOF传感器无法正常工作,可以工作在TxOFF模式,避免伤害人眼。因此,OF传感器基于初始配置参数进行运行时的运行结果就成为了接下来TOF传感器基于何种模式进行工作的依据。
应理解的是,控制TOF传感器基于初始配置参数运行,其目的是为了检测TOF传感器在根据这些初始配置参数完成初始化配置后,能否正常运行,并得到运行结果。具体实现时,相机HAL通过传感器节点读取上述初始配置参数(其中的电流值从内存或oeminfo中读取),然后通过第一通路将这些初始配置参数发送到内核层的摄像头驱动模块,摄像头驱动模块将人眼安全模式的初始配置参数更新到TOF传感器的寄存器中(示例性,可通过I2C方式写入)。配置完成后,TOF传感器在接收到传感器节点发送的控制指令时,将基于这些初始配置参数以较小的电流(即第一电流值)运行一小段时间(时间很短),在运行过程中TOF传感器即可完成工作状态(例如,正常or异常)的检查。
作为一种可能的实现方式,传感器节点可以读取初始配置参数中的第一电流值和曝光值;然后控制TOF传感器基于第一电流值和曝光值运行预设时长,其中,第一电流值小于TOF传感器的正常工作电流值。
需要说明的是,上述第一电流值为人眼安全模式下,TOF传感器中的发射器(TX)对应的打光电流值,该打光电流值较小,示例性的,可以为700mA左右,小于TOF传感器中的发射器(TX)的正常工作电流值(2800mA)。当然,本实施例对上述第一电流值的具体数值不作限定,只要是能够保证不伤害人眼且支持TOF传感器完成自身器件状态检查的电流值均可。具体的,传感器节点可以控制TOF传感器中的发射器基于第一电流值和曝光值以第一光强度运行预设时长。需要说明的是,TOF传感器基于第一光强度发射出的红外光是对人眼没有伤害的。同时,上述预设时长的设置不宜过长,能够支持TOF传感器完成自身器件状态检查即可。示例性的,传感器节点可以读取初始配置参数中的第一电流值700mA和曝光值10μs,然后控制TOF传感器在第一电流值700mA和曝光值10μs下工作预设时长。
作为另一种可能的实现方式,传感器节点可以控制TOF传感器中的发射器基于第一电流值和曝光值以第一光强度运行预设时长。需要说明的是,TOF传感器基于第一光强度发射出的红外光是对人眼没有伤害的。
作为另一种可能的实现方式,在基于所述初始配置参数运行完毕后,TOF传感器还可将运行结果通过第一通路写入寄存器中,其中,寄存器可设置在TOF传感器内。由于TOF传感器在基于初始配置参数运行的过程中虽然不会向外输出运行时采集的图像数据,但是这部分图像数据也是涉及用户隐私的数据,本实施例将这些图像数据和运行结果一并存入寄存器中可以保证数据安全。
步骤S17:通过第二通路从所述TOF传感器获取运行结果,所述第二通路为连接在所述摄像头驱动模块与所述TOF传感器之间的第二总线,其中,所述第一总线与所述第二总线不同;
步骤S18:根据所述运行结果确定所述TOF传感器的目标工作模式;
需要说明的是,如图4所示,第二通路为连接在摄像头驱动模块与TOF传感器之间的第二总线,该第二通路用于在摄像头驱动模块与TOF传感器之间传递数据。示例性的,所传递的数据可以是控制流数据。上述第二总线可以是任何能够双向传递数据或控制流数据的总线,例如I2C总线或SPI总线,具体总线型号的选用可依据实际情况而定,本实施例对此不加以限制。本实施例中所述第一总线与所述第二总线可以是不同的总线。
作为一种可能的实现方式,考虑到I2C总线相比其他的双向数据传输总线的物理结构简单(只有SCL、SDA两根线束)。优选的,本实施例所述第一总线和所述第二总线可以为I2C总线。
作为另一种可能的实现方式,本实施例上述第二通路用于摄像头驱动模块从TOF传感器读取数据,例如通过第二通路从TOF传感器的寄存器中读取运行结果。
如上所述,TOF传感器的运行结果将决定TOF传感器接下来的工作模式,当运行结果为正常时,相机HAL将通过传感器节点配置TOF传感器的目标工作模式为人脸ID模式(FaceID Mode)。反之,当状态检查结果为状态异常时,相机HAL将通过传感器节点配置TOF传感器的目标工作模式为TX关闭模式(Tx OFF Mode)。
应理解的是,人脸ID模式(FaceID Mode),是TOF摄像头的Tx工作在一个正常电流值(或其范围内)的模式,人脸ID模式可用于进行安全人脸解锁和安全支付等场景。其中,正常电流值大于第一电流值。TX关闭模式(Tx OFF Mode),是指TOF摄像头的Tx不通电(进而不发光)的模式,TX关闭模式用于检测到TOF摄像头的Tx器件损坏或无法正常工作的情况下。这是由于Tx器件损坏的情况下仍通电使用可能会对人眼产生不利影响,因此当检测到TOF摄像头的Tx器件损坏时,采用TX关闭模式使得Tx器件不通电,从而避免对人眼造成伤害。人眼安全模式(EyeSafe Mode),是指TOF摄像头的Tx工作在一个小电流(也即第一电流值,第一电流值小于正常电流值)下的模式,人眼安全模式用于检查TOF摄像头是否有损坏,也即检测TOF传感器的状态是正常还是异常。当然,摄像头的工作模式还可以包括更多,本申请不做限定。
在另一种可能的实现方式中,在所述运行结果为正常时,确定所述TOF传感器的目标工作模式为第一工作模式,所述第一工作模式用于指示所述TOF传感器工作在正常电流值。其中,所述第一工作模式可以为上述人脸ID模式(FaceID Mode),所述正常电流值,即TOF Tx正常工作时所需的电流值。
在另一种可能的实现方式中,在所述运行结果为异常时,确定所述TOF传感器的目标工作模式为第二工作模式,所述第二工作模式用于指示所述TOF传感器工作在第二电流值,所述第二电流值低于预设电流值。其中,所述第二工作模式可以为上述TX关闭模式(TxOFF Mode),所述预设电流值可以为0或者接近于0,从而使得TOF Tx不发光,保护人眼安全。
步骤S19:控制所述TOF传感器在所述目标工作模式下采集图像数据;
应理解的是,传感器节点中可以存储有TOF传感器的不同工作模式对应的工作参数(配置参数)。示例性的,人眼安全模式对应的工作参数可以是:电流值(第一电流值)为700mA,IR灰度图曝光时间为10μs,depth图曝光时间为10μs。FaceID模式对应的工作参数可以是:电流值(正常电流值)2800mA,IR灰度图曝光时间500μs,depth图曝光时间800μs。TxOFF模式对应的工作参数可以是:电流值(第二电流值)0mA,IR灰度图曝光时间0μs,depth图曝光时间0μs。不同的工作参数下,TOF传感器采集的图像数据存在差异,进而导致最终的人脸识别结果也会不同。
具体实现时,传感器节点将目标工作模式的配置参数发送到摄像头驱动模块,摄像头驱动模块通过第一通路将目标工作模式的配置参数写入TOF传感器的寄存器中,以驱动TOF传感器基于目标工作模式进行图像数据采集。摄像头驱动模块向TOF传感器发送启动(stream on)命令/指令。stream on命令用于驱动TOF传感器进行数据采集。响应于接收到的stream on命令,TOF传感器将基于目标工作模式采集RAW Data(其中包含图像数据)。
具体的,响应于接收到stream on命令,RX可以向TX发送发光信号的请求,TX工作在对应的电流值下发送相应光强度的光信号;RX在相应的曝光时间(曝光值,例如,10us)接收光信号,RX接收到的光信号中包括相应光强度的光信号的反射光。基于接收到的光信号,RX获取图像数据。
作为本步骤的一种实现方式,此处以传感器节点确定的TOF传感器的目标工作模式为FaceID模式(人脸ID模式)为例,对上述步骤S19进行说明。相应的,上述步骤S19可包括步骤S191~S194:
步骤S191:传感器节点将人脸ID模式的配置参数发送至摄像头驱动模块。
步骤S192:摄像头驱动模块将人脸ID模式的配置参数写入TOF传感器的寄存器,以驱动TOF传感器基于人脸ID模式进行图像数据采集。
应理解的是,摄像头驱动模块可以向TOF传感器发送人脸ID模式的配置参数。示例性的,摄像头驱动模块可以通过I2C总线将人脸ID模式的配置参数写入TOF传感器的寄存器。也即,摄像头驱动模块可以通过I2C总线向TOF传感器发送人脸ID模式的配置参数。
步骤S193:TOF传感器基于人脸ID模式采集RAW Data 1。
其中,RAW Data 1可以是TOF传感器的Tx工作在正常电流值(例如,2800mA)向人脸发射光信号时,TOF传感器的Rx接收反射光并成像得到的图像数据(第一图像数据)。TOF传感器的Tx工作在正常电流值时发射的光信号为第二光强度。第二光强度大于Tx工作在第一电流值时发射的光信号,即第一光强度。
其中,RAW Data 1中包含Metadata。示例性的,Metadata保存有当前TOF传感器的工作模式(例如,人脸ID模式),打光电流值大小(例如,2800mA),TOF传感器的器件工作状态(例如,正常)和图曝光时间(例如,800μs)等信息。
步骤S194:TOF传感器将RAW Data 1发送至IFE模块。
示例性的,TOF传感器可以通过MIPI将TOF传感器基于人脸ID模式采集的RAWData1传输到IFE模块。IFE模块将RAW Data 1发送至安全内存中存储。TOF传感器基于人脸ID模式采集的RAW Data 1在安全内存中的存储位置可以使用FD1表示。
作为本步骤的另一种实现方式,此处以传感器节点确定的TOF传感器的目标工作模式为TxOFF模式为例,对上述步骤S19进行说明。相应的,上述步骤S19还可包括步骤S191'~S194':
步骤S191':传感器节点将Tx关闭模式的配置参数发送到摄像头驱动模块。
步骤S192':摄像头驱动模块将Tx关闭模式的配置参数写入(更新)到TOF传感器的寄存器中,以驱动TOF传感器进行数据采集。
也即,摄像头驱动模块可以向TOF传感器发送Tx关闭模式的配置参数。示例性的,摄像头驱动模块可以通过I2C总线将Tx关闭模式的配置参数写入TOF传感器寄存器中。即通过I2C总线向TOF传感器发送Tx关闭模式的配置参数。
步骤S193':TOF传感器基于Tx关闭模式采集RAW Data 2。
其中,RAW Data 2可以是TOF传感器的Tx不通电不发光时,TOF传感器的Rx接收反射光(无发射光或环境发射光)并成像得到的图像数据(第二图像数据),通常是无清晰人脸图像的“黑图”。
其中,RAW Data 2中包含Metadata。示例性的,Metadata保存有当前TOF传感器的工作模式(例如,Tx关闭模式),打光电流值(第二电流值)大小(例如,0mA),TOF传感器的器件工作状态(例如,异常)和图曝光时间(例如,10us)等信息。
步骤S194':TOF传感器将RAW Data 2传输到IFE模块。
示例性的,TOF传感器可以通过MIPI将TOF传感器采集的RAW Data 2传输到IFE模块。IFE模块将RAW Data 2发送至安全内存中存储。TOF传感器基于Tx关闭模式采集的RAWData 2在安全内存中的存储位置可以使用FD2表示。
步骤S20:基于所述图像数据进行人脸识别。
具体实现时,人脸识别TA可从所采集的RAW Data 1或RAW Data 2中的Metadata获取TOF摄像头的工作模式(例如,FaceID模式或TxOFF模式)。然后人脸识别TA可以通过TOF算法对RAW Data 1中的第一图像数据或者RAW Data 2中的第二图像数据进行处理得到灰度图和深度图,再通过人脸ID算法基于灰度图进行人脸识别,基于深度图和防伪检测,得到人脸识别结果。
实际应用中,在执行上述步骤S20之前,IFE模块需要先将FD1或FD2发送至摄像头驱动模块。摄像头驱动模块将FD1或FD2发送给IFE节点。IFE节点通过相机HAL的接口将FD1或FD2发送给相机服务。相机服务将FD1或FD2发送至人脸识别控制模块。人脸识别控制模块将FD1或FD2发送至人脸识别TA。人脸识别TA根据FD1或FD2从安全内存中读取RAW Data 1或RAW Data 2。人脸识别TA根据RAW Data 1或RAW Data 2进行人脸识别,从而得到人脸识别结果。
需要说明的是,人脸识别TA中还存储有用户之前录入的人脸信息,TOF算法可以将用户录入的人脸信息转化成灰度图和深度图。若当前采集的人脸信息(TOF摄像头基于人脸ID模式采集的RAW Data,即RAW Data 1)与之前录入的人脸信息(即用户进行人脸录入操作时电子设备采集到的RAW Data)对应的灰度图匹配,可以认为是同一用户(即进行录入人脸的操作和进行解锁的操作的是同一个用户),并且,若当前采集的人脸信息包括深度信息,可以认为当前用户是真实可信的(非照片、视频等伪装),此时可以认为当前用户的人脸安全,即人脸识别结果为成功。若当前采集的人脸信息与之前录入的人脸信息(即用户进行人脸录入操作时电子设备采集到的RAW Data)对应的灰度图不匹配,或者,若当前采集的人脸信息不包括深度信息(例如通过照片或视频解锁时,人脸信息是不包括深度信息的),认为当前用户的人脸不安全,即人脸识别结果为失败。
此外,若上述图像数据为RAW Data 2中的第二图像数据,则人脸识别TA可以从TOF传感器基于Tx关闭模式采集的RAW Data 2中的Metadata数据获取当前是Tx关闭模式,然后通过TOF算法基于第二图像数据得到灰度图和深度图,再通过人脸ID算法基于灰度图进行人脸识别,基于深度图进行防伪检测,得到人脸识别结果。
需要说明的是,TOF传感器工作在Tx关闭模式下时,人脸识别结果为失败。这是由于TOF传感器在Tx关闭模式下无法发射光线,因此TOF传感器无法采集到清晰的人脸图像,即使当前解锁的用户是认证过的用户(即机主),人脸识别结果仍为失败。
具体实现时,人脸识别TA将人脸识别结果(成功或失败)传递到人脸识别控制模块。即人脸识别TA可以通知人脸识别控制模块人脸识别结果为成功还是失败。人脸识别控制模块将人脸识别结果(成功或失败)传递到人脸识别服务。人脸识别控制模块基于之前人脸识别服务注册的回调,将人脸识别结果(成功或失败)传递到人脸识别服务。即人脸识别控制模块通知人脸识别服务人脸识别结果为(成功或失败)。人脸识别服务将人脸识别结果(成功或失败)传递到人脸识别SDK。人脸识别服务基于之前人脸识别SDK注册的回调,将人脸识别结果(成功或失败)传递到人脸识别SDK。即人脸识别服务可以通知人脸识别SDK人脸识别结果为(成功或失败)。人脸识别SDK将人脸识别结果(成功或失败)传递到锁屏应用。人脸识别SDK基于之前锁屏应用注册的回调,将人脸识别结果(成功或失败)传递到锁屏应用。即人脸识别SDK可以通知锁屏应用人脸识别结果为成功或失败。锁屏应用根据人脸识别结果(成功或失败)决定是否解锁。
相应的,若所述人脸识别结果为识别成功,则执行解锁;若所述人脸识别结果为识别失败,则不执行解锁或显示解锁失败提示。具体的,若人脸识别结果为成功,锁屏应用可以成功解锁,从而电子设备可以显示桌面或者应用(系统应用或第三方应用)的界面。若人脸识别结果为失败,锁屏应用不解锁,即人脸解锁失败。人脸解锁失败后,锁屏应用可以在人脸识别失败的一段时间内(例如,3分钟)禁用人脸识别功能。示例性的,若用户设置了人脸解锁,如图7中的(a)所示,当用户拿起手机进行人脸识别时,响应于用户拿起手机的操作,如图7中的(b)所示,手机可以显示锁屏界面701,手机在进行人脸识别过程中可以在锁屏界面701显示解锁图标702和提示文字“正在识别人脸”703。
本实施例所提供的人脸识别方法,相比于现有技术中TOF传感器在完成初始化配置后,接收启动(stream on)命令/指令进行数据采集,然后将采集的图像数据发送至IFE模块,IFE模块将图像数据的FD通过相机HAL的接口发送至相机服务,相机服务将FD发送至FACE CA,FACE CA将图像数据的FD发送至FACE TA,由FACE TA根据图像数据的FD读取该图像数据后进行人眼安全检测,也即TOF传感器正常或异常的检测,然后再基于检测结果确定TOF传感器接下来的工作模式,最后基于确定的工作模式进行人脸识别的方式,本实施例上述方式通过摄像头驱动模块利用第二通路直接从TOF传感器的寄存器中读取运行结果,然后根据运行结果确定TOF传感器的目标工作模式,再控制TOF传感器在目标工作模式下采集图像数据和人脸识别,大大提高了人脸识别的效率,降低了人脸识别的耗时。
为了进一步提高人脸识别效率,在一种可能的实现方式中,TOF传感器将基于目标工作模式采集到的RAW Data 1或RAW Data 2发送到IFE模块。示例性的,TOF传感器可以通过移动产业处理器接口MIPI将TOF传感器采集的RAW Data 1或RAW Data 2传输到IFE模块。IFE模块将RAW Data 1或RAW Data 2发送至安全内存(Secure Buffer)中存储。IFE模块将FD1或FD2发送至摄像头驱动模块。摄像头驱动模块将FD1或FD2发送至IFE节点。IFE节点通过相机HAL的接口将FD1或FD2发送给相机服务。相机服务将FD1或FD2发送至人脸识别控制模块。人脸识别控制模块将FD1或FD2发送至人脸识别TA(FACE TA)。人脸识别TA根据FD1或FD2从安全内存中读取RAW Data 1或RAW Data 2中包含的第一帧图像数据,然后基于所述第一帧图像数据进行人脸识别。
需要说明的是,上述第一帧图像数据,也即TOF传感器起流(执行stream on命令)后,采集的第一帧图像(FaceID首帧或TxOFF首帧),通过第一帧图像数据进行人脸识别,提前了首帧解锁的时间。
当然,人脸识别TA在根据图像数据进行人脸识别时,并非必须根据第一帧图像数据来进行,也可以根据TOF传感器起流(stream on)后采集的相对靠前的几帧图像中的任意一帧图像进行人脸识别。在实际应用中,人脸识别TA根据哪一帧图像数据进行人脸识别可以取决于最终的人脸识别解锁时长是否小于现有技术所能达到的解锁时长。上述采用第一帧图像数据进行人脸识别,其目的是为了尽可能的缩短人脸识别的时间,提高用户体验,并非对方案进行具体限定。具体的,人脸识别TA可以通过TOF算法基于第一帧图像数据得到灰度图和深度图,再通过人脸ID算法基于灰度图进行人脸识别,基于深度图进行防伪检测,得到人脸识别结果。
如图8所示,在另一种可能的实现方式中,在图像传感器上电之前,本实施例电子设备还将执行下述操作:
步骤S1:锁屏应用调用人脸识别SDK进行人脸识别。
具体实现时,检测到用户的解锁操作(用户拿起手机,或者按下电源键,或者在屏幕上操作(点击、滑动等))时,锁屏应用调用人脸识别SDK进行人脸识别。同时,锁屏应用可以向人脸识别SDK注册一个回调,注册该回调的作用是当人脸识别SDK获得人脸识别结果后,可以向锁屏应用返回该人脸识别结果。
步骤S2:人脸识别SDK向人脸识别服务发送人脸识别的请求。
其中,人脸识别的请求中携带人脸识别类型的标识、图像的分辨率大小和数据流格式。其中,人脸识别类型包括2D人脸识别类型(例如,可以对应标识0)和3D人脸识别类型(例如,可以对应标识1)。示例性的,人脸识别的请求中携带的人脸识别类型可以为1(即3D人脸识别类型),图像的分辨率大小可以为1280x2898像素(pixel),数据流格式可以为原始图像格式RAW。同时,人脸识别SDK可以向人脸识别服务注册一个回调,注册该回调的作用是当人脸识别服务获得人脸比对结果后,可以向人脸识别SDK返回该人脸识别结果。
步骤S3:人脸识别服务向人脸识别控制模块发送人脸识别的请求。
具体实现时,人脸识别SDK可以通过人脸识别服务通知人脸识别控制模块执行人脸识别。人脸识别服务可以将从人脸识别SDK接收到的人脸识别的请求发送给人脸识别控制模块。同时,人脸识别服务可以向人脸识别控制模块注册一个回调,注册该回调的作用是当人脸识别控制模块获得人脸比对结果后,可以向人脸识别服务返回该人脸比对结果。
步骤S4:响应于接收到人脸识别的请求,人脸识别控制模块根据人脸识别的请求匹配摄像头。
具体的,人脸识别控制模块可以从人脸识别的请求中获得人脸识别类型的标识、图像的分辨率大小和数据流格式,通过从相机服务查询摄像头能力确定匹配的摄像头。
应该理解的是,电子设备开机过程中,相机服务可以向相机HAL发送摄像头能力查询请求,摄像头能力查询请求用于请求查询电子设备支持的摄像头能力。相机HAL接收到摄像头能力查询请求后,可以将电子设备支持的摄像头的能力发送给相机服务,相机服务可以将接收到的电子设备支持的摄像头的能力存储起来。其中,电子设备支持的摄像头能力包括各摄像头的摄像头标识ID、支持的最大分辨率大小、数据流的格式和摄像头是否支持采集深度信息(也是是否包括TOF摄像头)等。
人脸识别控制模块可以向相机服务发送摄像头能力查询请求,相机服务可以向将电子设备支持的摄像头的能力发送给人脸识别控制模块,人脸识别控制模块可以根据电子设备支持的摄像头的能力确定匹配的摄像头。
步骤S5:人脸识别控制模块向相机服务发送打开相机(Camera)的请求。
示例性的,人脸识别控制模块可以通过供应商原生开发套件(Vendor NativeDevelopme nt Kit,VNDK)接口向相机服务发送用于打开Camera的请求。其中,用于打开Camera的请求中携带安全标识、摄像头ID、分辨率的大小和数据流格式等信息。其中,安全标识用于指示将数据存储在安全Buffer中。也就是说,安全标识可以用于申请一块安全内存,后续用于存储摄像头采集的数据。例如,安全标识可以为1或0,1表示将数据存储在安全Buffer,0表示将数据存储在非安全Buffer。同时,人脸识别控制模块可以向Camera服务注册一个回调,注册该回调是用于在相机服务完成camera打开后通知人脸识别控制模块Camera打开完成。
步骤S6:响应于接收到打开Camera的请求,相机服务向相机HAL发送打开Camera的请求,打开Camera的请求携带安全标识、摄像头ID、分辨率的大小和数据流格式等信息。
相机服务调用相机HAL的过程中,相机服务可以向相机HAL发送安全标识、摄像头ID、图像的分辨率、数据流格式等信息。相机HAL可以将安全标识、摄像头ID、图像的分辨率、数据流格式等信息缓存预设时间。同时,相机服务可以向相机HAL注册回调,该回调用于相机HAL将创建通路的结果通知相机服务。
步骤S7:相机HAL根据摄像头ID、图像的分辨率和数据流格式创建对应的通路。
相机HAL可以根据摄像头ID、分辨率和数据流格式选择可用的节点,再根据可用的节点创建相应的通路。示例性的,传感器节点对应的通路可以为:传感器节点□摄像头驱动□TOF摄像头□IFE模块□安全内存组成的通路。IFE节点对应的通路可以为:IFE模块(携带FD)□摄像头驱动□IFE节点组成的通路。相机HAL可以在HAL层将传感器节点的输出端口和IFE节点的输入端口进行连接。从而传感器节点对应的通路和IFE节点对应的通路可以组成一条闭环的通路。通路创建完成后,即等待通路中的硬件上电(即硬件电路通电,例如图像传感器上电),等待数据请求。
需要说明的是,上述步骤S1-S7为本实施例提供的人脸识别方法步骤S8-S20的前序步骤,步骤S1-S20构成了用户从拿起电子设备到电子设备进行人脸识别的完整流程,通过上述方式本实施例提供的人脸识别方法提高了人脸识别的效率,降低了人脸识别的耗时。
本申请还提供一种TOF摄像头,该TOF摄像头可以用于实现上述实施例中人眼安全模式、人脸ID模式和TX关闭模式等,安装有该TOF摄像头的电子设备可以执行上述方法实施例中电子设备执行的各个功能或者步骤。
本申请还提供一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行如上述第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
应理解的是,这里的电子设备以功能模块的形式体现。这里的术语“模块”可以通过软件和/或硬件形式实现,对此不作具体限定。例如,“模块”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(applicationspecific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储了计算机程序,当所述计算机程序被处理器执行时,使得处理器执行如上述第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
本申请还提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
如图9所示,该芯片包括至少一个处理器901和至少一个数据接口902。处理器901和数据接口902可通过线路互联。例如,数据接口902可用于从其它装置(例如电子设备的存储器)接收信号。又例如,数据接口902可用于向其它装置(例如处理器901或者电子设备的触摸屏)发送信号。示例性的,数据接口902可读取存储器中存储的指令,并将该指令发送给处理器901。当所述指令被处理器901执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
可选的,该芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第一方面的可能的实现方式中任一项所述的人脸识别方法。
存储器可以是只读存储器(read□only memory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read□only memory,EEPROM)、只读光盘(compact discread-only memory,CD□ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质等。
本申请实施例中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a□b,a□c,b□c,或a□b□c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read□only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种人脸识别方法,所述方法应用于电子设备,所述电子设备包括TOF传感器和摄像头驱动模块,其特征在于,所述方法包括:
通过第一通路为所述TOF传感器配置初始配置参数,所述第一通路为连接在所述摄像头驱动模块与所述TOF传感器之间的第一总线;
控制所述TOF传感器基于所述初始配置参数运行;
通过第二通路从所述TOF传感器获取运行结果,所述第二通路为连接在所述摄像头驱动模块与所述TOF传感器之间的第二总线,其中,所述第一总线与所述第二总线不同;
根据所述运行结果确定所述TOF传感器的目标工作模式;
控制所述TOF传感器在所述目标工作模式下采集图像数据;
基于所述图像数据进行人脸识别。
2.如权利要求1所述的人脸识别方法,其特征在于,所述第一通路用于所述摄像头驱动模块向所述TOF传感器写入数据,所述第二通路用于所述摄像头驱动模块从所述TOF传感器读取数据。
3.如权利要求1所述的人脸识别方法,其特征在于,所述第一总线和所述第二总线均为I2C总线。
4.如权利要求1所述的人脸识别方法,其特征在于,所述通过第一通路为所述TOF传感器配置初始配置参数,包括:
将初始化命令下发至所述摄像头驱动模块,以使所述摄像头驱动模块基于所述初始化命令通过第一通路为所述TOF传感器配置初始配置参数,所述初始配置参数用于控制所述TOF传感器以人眼安全模式运行。
5.如权利要求1所述的人脸识别方法,其特征在于,所述控制所述TOF传感器基于所述初始配置参数运行,包括:
读取所述初始配置参数中的第一电流值和曝光值;
控制所述TOF传感器基于所述第一电流值和所述曝光值运行预设时长,所述第一电流值小于所述TOF传感器的正常工作电流值。
6.如权利要求5所述的人脸识别方法,其特征在于,所述TOF传感器包括用于发射光信号的发射器,所述控制所述TOF传感器基于所述第一电流值和所述曝光值运行预设时长,包括:
控制所述TOF传感器中的所述发射器基于所述第一电流值和所述曝光值以第一光强度运行预设时长。
7.如权利要求1所述的人脸识别方法,其特征在于,所述控制所述TOF传感器基于初始化配置参数进行运行之后,包括:
将运行结果通过所述第一通路写入寄存器中,所述寄存器设置在所述TOF传感器内。
8.如权利要求1所述的人脸识别方法,其特征在于,所述通过第一通路为所述TOF传感器配置初始配置参数之前,包括:
获取所述TOF传感器对应的传感器参数;
从所述传感器参数中读取所述TOF传感器的初始化标识;
根据所述初始化标识判断所述TOF传感器是否支持人眼安全模式;
在所述TOF传感器支持所述人眼安全模式时,执行所述通过第一通路为所述TOF传感器配置初始配置参数的步骤。
9.如权利要求8所述的人脸识别方法,其特征在于,所述获取所述TOF传感器对应的传感器参数之前,包括:
在图像传感器上电时,获取所述图像传感器对应的传感器参数;
读取所述传感器参数中的数据流格式字段;
根据所述数据流格式字段判断所述图像传感器是否为TOF传感器;
若是,则执行所述获取所述TOF传感器对应的传感器参数的步骤。
10.如权利要求1至9任一项所述的人脸识别方法,其特征在于,所述获取所述TOF传感器在所述目标工作模式下采集的图像数据,包括:
获取所述TOF传感器在所述目标工作模式下采集的第一帧图像数据;
所述基于所述图像数据进行人脸识别,包括:
基于所述第一帧图像数据进行人脸识别。
11.如权利要求10所述的人脸识别方法,其特征在于,所述基于所述第一帧图像数据进行人脸识别,包括:
基于所述第一帧图像数据获取灰度图和深度图;
基于所述灰度图进行人脸对比,基于所述深度图进行防伪检测,得到人脸识别结果。
12.如权利要求1至11任一项所述的人脸识别方法,其特征在于,所述基于所述图像数据进行人脸识别之后,包括:
根据人脸识别结果确定是否执行解锁;
若所述人脸识别结果为识别成功,则执行解锁;
若所述人脸识别结果为识别失败,则不执行解锁或显示解锁失败提示。
13.一种电子设备,其特征在于,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行如权利要求1至12中任一项所述的人脸识别方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储了计算机程序,当所述计算机程序被处理器执行时,使得处理器执行权利要求1至12中任一项所述的人脸识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211209219.3A CN116704571A (zh) | 2022-09-30 | 2022-09-30 | 人脸识别方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211209219.3A CN116704571A (zh) | 2022-09-30 | 2022-09-30 | 人脸识别方法、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116704571A true CN116704571A (zh) | 2023-09-05 |
Family
ID=87829924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211209219.3A Pending CN116704571A (zh) | 2022-09-30 | 2022-09-30 | 人脸识别方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116704571A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111587407A (zh) * | 2017-11-10 | 2020-08-25 | 辉达公司 | 用于安全且可靠的自主车辆的系统和方法 |
CN113239828A (zh) * | 2021-05-20 | 2021-08-10 | 清华大学深圳国际研究生院 | 一种基于tof摄像模组的人脸识别方法及装置 |
CN113421358A (zh) * | 2020-03-03 | 2021-09-21 | 比亚迪股份有限公司 | 车锁控制系统、车锁控制方法及车辆 |
CN113561908A (zh) * | 2021-07-27 | 2021-10-29 | 奇瑞新能源汽车股份有限公司 | 车载人脸识别设备的控制方法及装置 |
CN113807172A (zh) * | 2021-08-11 | 2021-12-17 | 荣耀终端有限公司 | 一种人脸识别方法和装置 |
CN114531541A (zh) * | 2022-01-10 | 2022-05-24 | 荣耀终端有限公司 | 一种摄像头模组的控制方法和装置 |
CN114863510A (zh) * | 2022-03-25 | 2022-08-05 | 荣耀终端有限公司 | 一种人脸识别方法和装置 |
US20230108409A1 (en) * | 2021-02-24 | 2023-04-06 | Shrenik Deliwala | Coded led or other light for target imaging or analysis |
-
2022
- 2022-09-30 CN CN202211209219.3A patent/CN116704571A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111587407A (zh) * | 2017-11-10 | 2020-08-25 | 辉达公司 | 用于安全且可靠的自主车辆的系统和方法 |
CN113421358A (zh) * | 2020-03-03 | 2021-09-21 | 比亚迪股份有限公司 | 车锁控制系统、车锁控制方法及车辆 |
US20230108409A1 (en) * | 2021-02-24 | 2023-04-06 | Shrenik Deliwala | Coded led or other light for target imaging or analysis |
CN113239828A (zh) * | 2021-05-20 | 2021-08-10 | 清华大学深圳国际研究生院 | 一种基于tof摄像模组的人脸识别方法及装置 |
CN113561908A (zh) * | 2021-07-27 | 2021-10-29 | 奇瑞新能源汽车股份有限公司 | 车载人脸识别设备的控制方法及装置 |
CN113807172A (zh) * | 2021-08-11 | 2021-12-17 | 荣耀终端有限公司 | 一种人脸识别方法和装置 |
CN114531541A (zh) * | 2022-01-10 | 2022-05-24 | 荣耀终端有限公司 | 一种摄像头模组的控制方法和装置 |
CN114863510A (zh) * | 2022-03-25 | 2022-08-05 | 荣耀终端有限公司 | 一种人脸识别方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115937922B (zh) | 一种人脸识别方法和装置 | |
CN114840825B (zh) | 智能终端的登录方法及电子设备 | |
CN114531541B (zh) | 一种摄像头模组的控制方法和装置 | |
CN114863510B (zh) | 一种人脸识别方法和装置 | |
US20230262065A1 (en) | Atomic Ability Invoking Method and Terminal Device | |
CN110752929B (zh) | 应用程序的处理方法及相关产品 | |
CN113408016B (zh) | 保存密文的方法和装置 | |
US20240031450A1 (en) | Method and apparatus for processing push message | |
CN116074634A (zh) | 一种曝光参数确定方法和装置 | |
WO2023198104A1 (zh) | 异步授权方法、系统、电子设备及计算机可读存储介质 | |
CN116074623B (zh) | 一种摄像头的分辨率选择方法和装置 | |
CN115309547B (zh) | 处理异步binder调用的方法和装置 | |
CN116704571A (zh) | 人脸识别方法、电子设备及可读存储介质 | |
CN115705726A (zh) | 一种人脸识别方法和装置 | |
CN115705749A (zh) | 一种人脸识别方法和装置 | |
CN116703692B (zh) | 一种拍摄性能优化方法和装置 | |
EP4366235A1 (en) | Cross-device authentication method and apparatus | |
CN118296633A (zh) | 一种文件管理方法与电子设备 | |
CN115705663A (zh) | 图像处理方法与电子设备 | |
CN117724772A (zh) | 一种应用程序的退出控制方法和装置 | |
CN117496964A (zh) | 一种登录方法和电子设备 | |
CN115796875A (zh) | 数据处理方法、系统及电子设备 | |
CN117873409A (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 |