CN113780090A - 数据处理方法及装置 - Google Patents

数据处理方法及装置 Download PDF

Info

Publication number
CN113780090A
CN113780090A CN202110924492.3A CN202110924492A CN113780090A CN 113780090 A CN113780090 A CN 113780090A CN 202110924492 A CN202110924492 A CN 202110924492A CN 113780090 A CN113780090 A CN 113780090A
Authority
CN
China
Prior art keywords
tof
frame
data
face
image
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.)
Granted
Application number
CN202110924492.3A
Other languages
English (en)
Other versions
CN113780090B (zh
Inventor
袁江峰
李志超
张依潮
周俊伟
吕建明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202110924492.3A priority Critical patent/CN113780090B/zh
Priority to CN202310851465.7A priority patent/CN116935467A/zh
Publication of CN113780090A publication Critical patent/CN113780090A/zh
Priority to PCT/CN2022/092042 priority patent/WO2023015995A1/zh
Priority to EP22797611.5A priority patent/EP4156019A4/en
Priority to US17/983,650 priority patent/US20230064281A1/en
Application granted granted Critical
Publication of CN113780090B publication Critical patent/CN113780090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/169Holistic features and representations, i.e. based on the facial image taken as a whole
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/483Details of pulse systems
    • G01S7/486Receivers
    • G01S7/4868Controlling received signal intensity or exposure of sensor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Radar, Positioning & Navigation (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Collating Specific Patterns (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供了一种数据处理方法及装置,获取第一帧TOF数据,将第一帧TOF数据处理为TOF图像,使用第一帧TOF图像进行面部识别,得到识别结果。将TOF数据用于面部识别,具有更高的安全性,并且,得到第一帧TOF图像后即使用第一帧TOF图像进行面部识别,所以具有较高的执行速度,又因为TOF数据受光线的影响较小,所以即使是第一帧TOF数据,也能得到质量较高的TOF图像,所以具有较高的识别准确性。

Description

数据处理方法及装置
技术领域
本申请涉及电子信息领域,尤其涉及一种数据处理方法及装置。
背景技术
面部识别被广泛用于电子设备对授权用户的识别。例如,对于人脸解锁功能,依据面部识别是否通过,判决是否解锁屏幕。
鉴于上述场景,在安全性方面,需要考虑恶意攻击问题。在准确性方面,需要考虑因图像质量不高而导致识别结果不准确的问题,在用户体验方面,需要考虑时延问题。
可见,需要解决的问题是如何安全、准确、以及快速地实现面部识别。
发明内容
本申请提供了一种数据处理方法及装置,目的在于解决如何安全、准确、以及快速地实现面部识别的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请的第一方面提供一种数据处理方法,包括:获取第一帧飞行时间TOF数据;将所述第一帧TOF数据处理为第一帧TOF图像;使用所述第一帧TOF图像进行面部识别,得到第一识别结果。将TOF数据用于面部识别,具有更高的安全性,并且,将第一帧TOF数据生成的第一帧TOF图像用于面部识别,能够更快地得到识别结果,又因为TOF数据受光线的影响较小,所以即使是第一帧TOF数据,也能得到质量较高的TOF图像,所以具有较高的识别准确性。
可选的,所述采集第一帧TOF数据,包括:使用预设的固定曝光参数采集第一帧TOF数据。
可选的,仅通过一个处理器串行执行:所述将所述第一帧TOF数据处理为第一帧TOF图像,以及使用所述第一帧TOF图像进行面部识别,得到第一识别结果。因为第一帧TOF图像就被用于面部识别,所以即使使用一个处理器串行实现数据处理以及识别,也能够具有较快的速度。
可选的,还包括:使用所述第一识别结果执行任务,以基于TOF数据的面部识别响应应用的特定功能。
可选的,所述使用所述第一识别结果执行任务,包括:所述第一识别结果指示识别通过,执行第一任务。
可选的,所述使用所述第一识别结果执行任务,还包括:所述第一识别结果指示识别不通过且满足预设的结束条件,执行第二任务,所述结束条件包括执行所述任务的时长达到预设时长门限。结束条件的设定,有利于在保证识别准确性的前提下,减小任务的响应时延。
可选的,所述使用所述第一识别结果执行任务,还包括:所述第一识别结果指示识别不通过且不满足预设的结束条件,获取并使用另一帧TOF数据的识别结果响应所述任务。不满足预设条件,继续进行面部识别,有利于进一步提高识别的准确性。
可选的,所述方法还包括:在所述采集第一帧TOF数据之后,获取所述第一AE结果。所述另一帧TOF数据使用第一AE结果调整的曝光参数采集得到,所以能够提高另一帧TOF数据的质量,有利于得到更为准确的识别结果
可选的,所述使用所述第一帧TOF图像进行面部识别,得到第一识别结果,包括:通过可信执行环境TEE的面部可信应用,接收所述第一帧TOF图像的存储信息后,通过所述面部可信应用,向所述面部识别模块传输所述第一帧TOF图像的存储信息;通过所述面部识别模块,依据所述第一帧TOF图像的存储信息,读取所述第一帧TOF图像;通过所述面部识别模块,对所述第一帧TOF图像进行面部识别,得到所述第一识别结果。通过TEE中实现数据处理以及面部识别,能够进一步提高安全性。
可选的,所述将所述第一帧TOF数据处理为第一帧TOF图像包括:通过所述面部可信应用,接收所述第一帧TOF数据的存储信息后,通过所述面部可信应用,向所述数据处理模块传输所述第一帧TOF数据的存储信息;通过所述数据处理模块,依据所述第一帧TOF数据的存储信息,读取所述第一帧TOF数据;通过所述数据处理模块,将所述第一帧TOF数据为所述第一帧TOF图像。传递TOF数据的存储信息,而非TOF数据,有利于进一步提高TOF数据的安全性,并且节省传输带宽资源。
可选的,还包括:通过所述数据处理模块,存储所述第一帧TOF图像,并将所述第一帧TOF图像的存储信息向所述面部可信应用传输。传递TOF图像的存储信息,有利于提高TOF图像的安全性,并且节省传输带宽资源。
可选的,所述使用所述第一帧TOF图像进行面部识别,得到第一识别结果,包括:通过硬件抽象层的面部应用客户端生成所述第一帧TOF图像后,使用所述第一帧TOF图像进行面部识别,得到第一识别结果。基于安卓操作系统的软件框架实现,具有较高的兼容性和可实施性。
可选的,所述将所述第一帧TOF数据处理为第一帧TOF图像,包括:通过所述面部应用客户端接收所述第一帧TOF数据,并将所述第一帧TOF数据处理为第一帧TOF图像。基于安卓操作系统的软件框架实现,具有较高的兼容性和可实施性。
本申请的第二方面提供一种数据处理方法,包括:获取第一帧TOF数据;使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果;在获取到第m帧TOF数据后,使用所述第m帧TOF数据得到第m帧TOF图像,所述第m帧TOF数据为基于所述第一AE结果最早采集的TOF数据;所述m为大于1的整数;至少使用第m帧TOF图像进行面部识别,得到识别结果。因为至少使用第m帧TOF图像进行面部识别,且第m帧TOF数据为基于所述第一AE结果最早采集的TOF数据,所以,在第一帧TOF数据识别不通过的情况下,能够以较小的时延得到准确的识别结果。
可选的,所述采集第一帧TOF数据,包括:使用预设的固定曝光参数采集第一帧TOF数据。
可选的,仅通过一个处理器串行执行:所述使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果,所述使用所述第m帧TOF数据得到第m帧TOF图像,以及所述至少使用第m帧TOF图像进行面部识别,得到识别结果,以兼容一个处理器的场景。
可选的,还包括:使用所述识别结果执行任务,以基于TOF数据的面部识别结果响应应用的特定功能。
可选的,所述使用所述识别结果执行任务,包括:所述识别结果指示识别通过,执行第一任务。
可选的,所述使用所述识别结果执行任务,还包括:所述识别结果指示识别不通过且满足预设的结束条件,执行第二任务,所述结束条件包括执行所述任务的时长达到预设时长门限。结束条件的设定,有利于在保证识别准确性的前提下,减小任务的响应时延。
可选的,所述使用所述识别结果执行任务,还包括:所述识别结果指示识别不通过且不满足预设的结束条件,获取并使用另外三帧TOF数据的识别结果响应所述任务,以提高识别结果的准确性。
可选的,所述至少使用第m帧TOF图像进行面部识别,得到识别结果包括:使用第m帧TOF图像进行面部识别,得到第m识别结果;所述第m识别结果指示识别不通过,使用所述第一帧TOF图像进行面部识别,得到第一识别结果。因为第m帧TOF图像使用基于第一AE结果调整后的TOF数据生成,所以质量较高,先使用第m帧TOF图像进行面部识别,有利于尽快获得较为准确的识别结果。
可选的,所述至少使用第m帧TOF图像进行面部识别,得到识别结果包括:通过可信执行环境TEE的面部可信应用,接收至少第m帧TOF图像的存储信息后,通过所述面部可信应用,向所述面部识别模块传输所述至少第m帧TOF图像的存储信息;通过所述面部识别模块,依据至少第m帧TOF图像的存储信息,读取至少第m帧TOF图像;通过所述面部识别模块,对至少第m帧TOF图像进行面部识别,得到所述识别结果。在TEE进行数据处理以及面部识别,具有更高的安全性。
可选的,所述将所述第一帧TOF数据处理为第一帧TOF图像包括:通过所述面部可信应用,接收所述第一帧TOF数据的存储信息后,通过所述面部可信应用,向所述数据处理模块传输所述第一帧TOF数据的存储信息;通过所述数据处理模块,依据所述第一帧TOF数据的存储信息,读取所述第一帧TOF数据;通过所述数据处理模块,将所述第一帧TOF数据处理为所述第一帧TOF图像。仅传输TOF数据的存储信息而非TOF数据,有利于进一步提高安全性,并且接收传输带宽资源。
可选的,还包括:通过所述数据处理模块,存储所述第一帧TOF图像,并将所述第一帧TOF图像的存储信息向所述面部可信应用传输。仅传输TOF图像的存储信息而非TOF图像,有利于进一步提高安全性,并且接收传输带宽资源。
可选的,所述至少使用第m帧TOF图像进行面部识别,得到识别结果,包括:通过硬件抽象层的面部应用客户端,至少使用第m帧TOF图像进行面部识别,得到识别结果。
可选的,所述使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果,包括:通过所述面部应用客户端,接收所述第一帧TOF数据,并将所述第一帧TOF数据处理为第一帧TOF图像。所述使用所述第m帧TOF数据得到第m帧TOF图像,包括:通过所述面部应用客户端,接收所述第m帧TOF数据,并将所述第m帧TOF数据处理为第m帧TOF图像。基于安卓操作系统的软件框架实现,具有较高的兼容性和可实施性。
本申请的第三方面提供一种数据处理方法,包括:获取环境光的强度值;
所述环境光的强度值不大于预设的第一强度阈值,使用本申请的第一方面提供的数据处理方法,所述环境光的强度值大于所述第一强度阈值,使用本申请的第二方面提供的数据处理方法。根据环境光的强度值选用不同的数据处理方法,能够使得选用的方法更加适配于外部环境,从而在实现安全性和准确性的前提下,能够获得更快的执行速度。
本申请的第四方面提供一种电子设备,包括:TOF相机、存储器以及处理器。TOF相机用于采集TOF数据。存储器用于存储程序代码。处理器用于运行所述程序代码,实现本申请的第一方面、第二方面或者第三方面提供的数据处理方法。
本申请的第五方面提供一种芯片系统,包括:至少一个处理器以及接口,所述接口用于接收代码指令,并传输至所述至少一个处理器;所述至少一个处理器运行所述代码指令,以实现本申请的第一方面、第二方面或者第三方面提供的数据处理方法。
本申请的第六方面提供一种可读存储介质,其上存储有程序,在所述程序被计算设备读取并运行时,实现本申请的第一方面、第二方面或者第三方面提供的数据处理方法。
附图说明
图1a为使用电子设备进行面部识别的场景示例图;
图1b为强光下使用电子设备进行面部识别的场景示例图;
图2为本申请实施例公开的一种电子设备的结构示意图;
图3为本申请实施例公开的电子设备实现面部识别的软件框架示意图;
图4为本申请实施例公开的一种面部识别方法的流程图;
图5为本申请实施例公开的又一种面部识别方法的流程图;
图6为本申请实施例公开的又一种面部识别方法的流程图;
图7为本申请实施例公开的一种数据处理方法的流程图;
图8为本申请实施例公开的又一种数据处理方法的流程图;
图9为图8中S819的具体实现流程图;
图10为本申请实施例公开的一种数据获取方法的流程图;
图11为本申请实施例公开的又一种数据获取方法的流程图;
图12为本申请实施例公开的又一种数据获取方法的流程图;
图13为电子设备实现面部识别的又一种软件框架示意图。
具体实施方式
图1a为面部识别应用在电子设备的场景,用户在使用电子设备例如手机实现某项需要用户授权的功能时,用户自发或依据电子设备发出的提示信息,将电子设备的摄像头对准面部。电子设备目前通常配置RGB(Red Green Blue)相机。电子设备通过RGB相机采集到图像后,将图像进行面部识别,面部识别包括但不限于与已存储的面部模板进行比对以及防伪识别,得到识别结果后,依据识别结果执行任务。
例如,用户预期使用人脸解锁屏幕,将手机屏幕朝向人脸,以使得手机的前置相机采集面部图像。手机在采集图像后,将图像进行面部识别,如果识别通过则解锁屏幕,如果识别不通过,则保持锁屏状态。
发明人在研究的过程中发现,电子设备在使用识别结果识别授权用户时,安全性有待提高:目前对于面部的恶意攻击主要可划分为平面攻击(如用照片冒充真实人脸)、头模面具攻击(如用3D模型冒充真实人脸)以及相似面部仿冒。
发明人在研究的过程中还发现,将飞行时间(Time-of-Flight,TOF)数据用于面部识别,具有如下特点:1、TOF数据可以生成深度图像以及红外图像,所以具有较好的防伪性能(即防止平面攻击和头模面具攻击)。2、TOF数据受光线的影响较小,所以TOF数据的质量较高,因此人脸比对可以使用较高的门限值,从而降低了相似面部的仿冒的可能性。可见,将TOF数据用于面部识别可以提高安全性。
然而,目前主流的硬件平台仅支持RGB数据的处理,而不支持TOF数据的处理,例如,目前主流的处理器中的图像信号处理器(image signal processor,ISP)仅支持将RGB相机采集的RGB相机原始数据(Camera Raw Data)数据处理为RGB原始数据(Raw Data),而无法对TOF相机采集的TOF数据(如TOF Camera Data)进行处理。而为了处理TOF相机采集的TOF数据重新设计硬件平台的代价过大。所以,需要借助软件框架处理TOF相机采集的TOF数据,而与硬件相比,软件更易受到攻击,在这种情况下,即使将TOF数据用于面部识别,仍然有安全漏洞。
本申请的以下实施例提供了一种面部识别方法,应用于电子设备,目的在于提高面部识别的安全性。
图2为电子设备的示例图,包括:TOF相机1,处理器2、存储器3、以及I/O子系统4。
TOF相机1用于采集TOF数据。在某些实现方式中,TOF相机1被设置为电子设备的前置相机,用于采集电子设备的显示屏(图2中未画出)前方的TOF数据。例如,采集位于电子设备的显示屏之前的人脸的TOF数据。
TOF相机1包括TOF传感器11、TOF传感器控制器12、TOF光源13以及TOF光源控制器14。
在某些实施方式中,TOF光源控制器14受TOF传感器控制器12的控制,实现对TOF光源13的控制。TOF光源13在TOF光源控制器14的控制下,发射红外(IR)光。TOF传感器11用于感应红外(IR)光在物体例如人脸反射的光线,以采集TOF数据。
TOF传感器控制器12以及TOF光源控制器14设置在I/O子系统4中,通过I/O子系统4与处理器2通信。
存储器3可以用于存储计算机可执行的程序代码。具体的,存储器3可以包括程序存储区和数据存储区。其中,程序存储区可存储用于实现操作系统、软件系统、至少一个功能所需的程序代码等。数据存储区可存储电子设备使用过程中所获取、生成以及使用的数据等。
在某些实现方式中,存储器3的全部或一部分,可以集成在处理器2中,作为处理器2的内部存储器。在某些实现方式中,存储器3为相对于处理器2的外部存储器,通过处理器2的外部存储器接口与处理器2通信。
在某些实现方式中,存储器3可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flashstorage,UFS)等。
处理器2可以包括一个或多个处理单元,例如:处理器2可以包括应用处理器(application processor,AP),图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP)等。
在某些实现方式中,处理器2可以包括安全区域处理器21,面部识别涉及的数据可以存放在安全区域处理器21中,并由安全区域处理器21通过调用存储器3中的程序代码执行对这些数据的处理流程,以提高面部识别的安全性。
在某些实现方式中,安全区域处理器21用于存储TOF相机1采集的TOF数据,并使用TOF数据生成TOF图像,使用TOF图像进行面部识别处理,得到识别结果。处理器2可使用识别结果执行人脸解锁或人脸支付等任务。
可选的,电子设备还可以包括环境光传感器(图2中未画出),用于感应环境电子设备所处的环境的光线强度。可以理解的是,环境光传感器通过设置在I/O子系统4中的环境光传感器控制器(图2中未画出)与处理器2通信。
可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。
可以理解的是,处理器2通过运行存储器3中存储的代码,实现的操作系统可以为iOS操作系统、Android开源操作系统、Windows操作系统、鸿蒙操作系统等。在以下实施例中,将以Android开源操作系统为例进行说明。
电子设备的处理器2运行存储器3中存储的程序代码,可以实现图3所示的基于Android开源操作系统的软件框架:
软件框架包括可信执行环境(Trusted Execution Environment,TEE)以及可以执行富指令的通用执行环境(Rich Execution Environment,REE)。TEE可由处理器2中的安全区域处理器21通过运行程序代码实现。
REE中包括Android开源操作系统的各层,包括但不限于:应用程序层、应用程序框架层、硬件抽象层以及内核层。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括支付应用以及锁屏应用。各个应用可以在不同场景下发起任务请求,以触发面部识别。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图3所示,应用程序框架层可以包括相机服务(Camera service)以及面部服务(Faceservice)。Camera service用于实现相机功能。Face service用于实现面部识别功能。
硬件抽象层用于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。硬件抽象层中的相机硬件抽象层(Camera HAL3)用于响应Camera service的指令,对相机进行控制。面部应用客户端(Face Client application,Face CA,又称为面部客户应用)通过调用位于REE的TEE客户端的API(Application Programming Interface,应用编程接口)去访问TEE的可信应用,从而使用TEE及可信应用提供的安全功能。
内核层是硬件与软件之间的层。硬件的驱动软件通常设置在内核层。图3中,内核层中的ISP-Lite的作用之一为驱动处理器中的ISP-Lite(ISP的一部分),将TOF传感器采集的TOF数据(如TOF camera Raw Data)转换为图像处理常用的数据格式,例如TOF原始数据(Raw Data)。在以下实施例中,将ISP-Lite处理得到的数据以及TOF相机采集的TOF数据,统称为TOF数据。内核层中的TOF相机驱动用于驱动TOF相机。TEE中包括用于基于TOF数据进行面部识别的各个应用、模块以及单元。其中,面部可信应用(Face Trusted Application,Face TA)的作用为调度TEE中的各个模块以及单元,并与REE通信。数据处理模块用于处理Raw Data等数据。面部识别模块用于实现使用面部模板进行面部识别、以及面部模板管理等功能。
基于图3所示的框架,电子设备能够在TEE将TOF数据处理为TOF图像,并在TEE使用TOF图像进行面部识别,得到识别结果,即在使用TOF数据进行面部识别以提高安全性的基础上,数据处理以及识别均在TEE中实现,能够进一步提高安全性。
下面将结合图3,对本申请实施例公开的面部识别方法进行详细说明,如图4所示,本申请实施例公开的电子设备执行的面部识别方法包括以下步骤:
S401、通过应用程序层的应用,向应用程序框架层的面部服务(Face service)传输任务请求。
可以理解的是,应用可以响应于至少一种指令、用户的至少一种操作、或至少一种传感器信号等,或周期性地,发起任务,并向面部服务发送任务请求。以锁屏应用为例,用户按下电源键,触发解锁任务,解锁应用向Face service发送解锁请求。
S402、通过Face service向硬件抽象层的面部应用客户端(Face Clientapplication,Face CA)传输任务请求。
S403、通过Face CA向应用程序框架层的相机服务(Camera service)传输图像请求,以响应任务请求。
S404、通过Camera service向硬件抽象层的相机硬件抽象层(Camera HAL3)传输图像请求。
S405、通过Camera HAL3响应图像请求,向内核层的TOF相机驱动传输出图指令,以驱动TOF相机采集TOF数据。
S406、内核层的ISP-Lite将接收并处理后的TOF数据,以第一存储信息存储在TEE的第一安全缓冲存储单元(Secure Buffer)。第一存储信息指示存储地址。
由ISP-Lite将接收并处理后的TOF数据存入TEE,相当于TOF数据从硬件(处理器的ISP)直接被存入安全区,所以,降低了被攻击的可能性。
S407、通过内核层的ISP-Lite向硬件抽象层的Camera HAL3传输第一存储信息。
因为第一存储信息在REE中传输,所以,为了保证第一存储信息的安全性,可选的,第一存储信息可以为加密信息,即密文。本步骤中,加密信息的一种示例为文件描述符(File Descriptor,FD),用于描述存储位置以及读取方式。
为了便于描述,将第一存储信息的密文简称为FD1。
S408、通过Camera HAL3,向应用程序框架层的Camera service传输FD1以及标定数据。
因为后续TOF图像的生成需要用到标定数据,所以,Camera HAL3获取预先配置在REE中的标定数据,并跟FD1一并向TEE传输。
可选的,Camera HAL3可以从REE的存储单元获取一部分标定数据,可以从TOF相机获取另一部分标定数据。
S409、通过Camera service,向硬件抽象层的Face CA传输FD1以及标定数据。
S410、通过Face CA向TEE的面部可信应用(Face Trusted Application,Face TA)传输FD1以及标定数据。
可以理解的是,上述REE中各层的模块之间的信息交互,均可以遵循各层之间的通信协议。
基于现有的操作系统的框架,将TOF数据的存储信息传输至TEE,为在TEE中处理TOF数据奠定了基础。并且,由ISP-Lite将接收并处理后的TOF数据存入TEE,保证了TOF数据的安全。
S411、通过TEE的Face TA,将FD1向TEE的数据处理模块传输,并将标定数据存储至TEE的标定数据存储单元。
S412、通过数据处理模块,依据FD1从第一安全缓冲存储单元中读取TOF数据,并从标定数据存储单元读取标定数据。
S413、通过数据处理模块,使用TOF数据和TOF相机的标定数据,生成深度图像和红外图像。
S414、通过数据处理模块,以第二存储信息,将TOF图像存储在TEE的第二安全缓冲存储单元。
因为均在TEE实现,所以,第二存储信息可以不加密。
S415、通过数据处理模块,向Face TA传输第二存储信息。
S416、通过Face TA,向面部识别模块传输第二存储信息。
S417、通过面部识别模块,依据第二存储信息从第二安全缓冲存储单元读取TOF图像。
S418、通过面部识别模块对读取的TOF图像进行面部识别,得到识别结果。
具体的,面部识别模块通过调用预先配置的面部模板,对TOF图像进行面部比对,得到比对结果,并且,使用TOF图像进行防伪识别,得到防伪结果。识别结果可以依据比对结果和防伪结果确定,例如,比对结果为比对通过,防伪结果为防伪通过,则识别结果为通过。
如前所述,因为TOF图像包括深度图像和红外图像,所以,将红外图像与人脸模块进行比对时可以使用较高的比对门限值,因此,准确性较高,从而能够降低相似面部仿冒的可能性。又因为深度图像和红外图像可同时被用于防伪识别,所以具有较高的防伪性能(即防止平面攻击和头模面具攻击的性能较高)。
S419、通过面部识别模块将识别结果向Face TA传输。
S420、通过TEE的Face TA,将识别结果向REE的Face CA传输。
S421、通过Face CA,将识别结果向应用程序框架层的Face service传输。
S422、通过Face service,将识别结果向应用程序层中发起任务请求的应用传输。
以应用程序层的锁屏应用为例,锁屏应用发起解锁请求后,接收到识别结果,并基于识别结果指示识别通过,执行解锁任务,基于识别结果指示识别不通过,执行保持锁屏状态的任务。
可以理解的是,应用程序层的其它应用发起任务请求,获得面部识别结果的流程类似,这里不再赘述。
本实施例所述的面部识别方法,使用TOF数据进行面部识别,所以具有较高的安全性。进一步的,在TEE实现基于TOF数据的面部识别,所以能够保障TOF数据、数据处理过程以及识别过程的安全,从而进一步提高面部识别的安全性。
并且,基于安卓操作系统的各层,实现数据的存储信息、识别结果以及标定数据等在REE与TEE之间的传输,具有较好的兼容性。
可以理解的是,因为标定数据属于相机域的数据,而非面部域的数据,所以,在某些实现方式中,标定数据还可以从Camera service经由Face service中转至Face CA。
可以理解的是,在标定数据被存储在TEE的标定数据存储单元后,只要处理器不掉电,则TEE的标定数据存储单元中的标定数据不会丢失,所以,不必再重新加载标定数据。当然,也可以重新加载标定数据,这里不做限定。标定数据与FD1一并传输仅为一种实现方式,也可以分开传输,传输路径如前所述。
可以理解的是,TOF相机曝光一次采集到一组TOF数据,连续曝光多次,采集到多组TOF数据后,停止第一时长,再次连续曝光多次,再停止第一时长,以此类推……。将连续采集的多组TOF数据称为一帧TOF数据,间隔第一时长后再次采集的多组TOF数据为另一帧TOF数据。在不考虑其它模块自身的处理时延以及传输时延的前提下,ISP-Lite也以第一时长间隔,依次将每帧TOF数据存储至第一安全缓冲存储单元,并也以第一时长间隔,依次将各帧TOF数据的存储信息传输至Face CA。Face CA也以第一时长间隔,依次将每帧TOF数据的存储信息传输至Face TA。因此,Face TA也以第一时长间隔依次接收每帧TOF数据的存储信息。图4中的S406可以为存储任意一帧TOF数据,S407-S411可以为传输任意一帧TOF数据的FD,S413-S419为针对这一帧TOF数据的处理流程。S420-S422可以为针对这一帧TOF数据的识别结果的处理流程,也可以为针对多帧TOF数据的识别结果的处理流程。
因为TOF相机通过投射红外光采集TOF数据,所以,有必要关注在采集过程中人眼的安全性。又因为TOF图像的质量关系到识别结果的准确性,而TOF相机的曝光参数又直接关系TOF图像的质量,所以,有必要对TOF相机的曝光参数进行调优。
本申请的实施例中,将图4所示的流程进一步改进,数据处理模块可以依据接收到的TOF数据的类型,生成不同的用于调整TOF相机的参数。
图5所示为生成并反馈自动曝光(Automatic Exposure,AE)结果、以及依据AE结果控制相机的流程,这里仅说明图5与图4的区别:
S413a、通过TEE的数据处理模块,响应于TOF数据为面部识别帧,生成深度图像和红外图像以及AE结果。
本申请的实施例中,TOF相机将采集的TOF数据划分为安全指示帧和面部识别帧。安全指示帧中携带人眼安全标志位,用于指示TOF相机发射的红外光对于人眼是否安全。面部识别帧是用于进行面部识别的TOF数据帧。在一些实现方式中,通过TOF数据帧中的某个数值、字符、字符串的至少一项,指示TOF数据帧的类型。
在一些实现方式中,TOF数据采集的TOF数据中,第一帧至第四帧TOF数据为安全指示帧,后续帧TOF数据为面部识别帧。在安全指示帧中包括人眼安全标志位。
AE结果用于调整TOF相机的曝光参数。可选的,AE结果包括但不限于曝光时长以及TOF传感器的物理增益。生成AE结果的一种方式为:提取TOF原始数据(Raw Data)即原始图像中的面部区域,计算面部区域的亮度值,并与预先配置的目标亮度值相比,得到曝光时长以及TOF传感器的物理增益。可以每帧TOF数据生成一个AE结果,也可以多帧TOF数据生成一个AE结果。
S415a、通过TEE的数据处理模块,将第二存储信息以及AE结果,向TEE的Face TA传输。
可以理解的是,在上一帧TOF数据的AE结果与最新得到的AE结果相同的情况下,可以不传输最新得到的AE结果,以节省TEE的资源。
S420a、通过TEE的Face TA,将识别结果以及AE结果,向REE的硬件抽象层的FaceCA传输。
S423a、通过Face CA,将AE结果,向REE的应用程序框架层的Camera service传输。
S424a、通过Camera service,将AE结果,向硬件抽象层的Camera HAL3传输。
S425a、通过Camera HAL3,依据AE结果,通过TOF相机驱动调整TOF相机。
Camera HAL3可以通过TOF相机驱动向TOF传感器控制器发送AE结果,由TOF传感器控制器控制TOF传感器按照AE结果采集TOF数据。
图6所示为生成并反馈安全标识、以及依据安全标识控制相机的流程,这里仅说明图6与图4的区别:
S413b、通过TEE的数据处理模块,响应于TOF数据为安全指示帧,生成安全标识。
安全标识用于指示TOF光源对人眼是否安全。
可选的,安全标识的生成方式为:在接收到携带人眼安全标志位的TOF数据帧(即安全指示帧)后,提取人眼安全标志位,并依据提取的人眼标志位判断人眼是否安全,生成安全标识。人眼安全标志位指示安全,则得到指示安全的安全标识。如果人眼安全标志位指示不安全,则得到指示不安全的安全标识。
S415b、通过TEE的数据处理模块,将第二存储信息、以及安全标识,向TEE的FaceTA传输。
一般情况下,在TOF相机从启动采集到结束采集的过程中,各安全指示帧携带的人眼安全标志位相同,例如,第一帧安全指示帧至第四帧安全指示帧中,人眼安全标志位均指示人眼安全,或均指示人眼不安全。在此情况下,得到的多个安全标识相同,因此,还可以仅传输一个安全标识,以节省TEE的资源。
但不排除有些情况下,多帧安全指示帧中的人眼标志位不相同。因此,还可以仅传输最后一个安全标识,即依据最后接收到的安全指示帧确定的安全标识,以节省TEE的资源。
S420b、通过TEE的Face TA,将识别结果、以及安全标识,向REE的硬件抽象层的Face CA传输。
S423b、通过Face CA,将安全标识,向REE的应用程序框架层的Camera service传输。
S424b、通过Camera service,将安全标识,向硬件抽象层的Camera HAL3传输。
S425b、通过Camera HAL3,依据安全标识,通过TOF相机驱动调整TOF相机。
调整TOF相机包括但不限于:安全标识指示人眼不安全,则关闭TOF相机,或者,降低TOF光源的发射强度。安全标识指示人眼安全,则采集TOF数据帧,并标识为用于面部识别的TOF数据帧(即面部识别帧)。
基于图2,可选的,Camera HAL3可以通过TOF相机驱动向TOF传感器控制器发送关闭指令,以关闭TOF相机。
综上所述,电子设备通过处理器获得TOF Raw Data之后,将TOF Raw Data,在TEE中处理为TOF图像,并使用TOF图像进行面部识别,所以使得面部识别具有更高的安全性。
并且,结合安卓系统的各层,实现了TOF数据的存储信息向TEE的传输,不仅为TEE中的处理奠定了基础,还实现了与安卓系统的兼容。
可见,即使电子设备的处理器不支持TOF图像的生成,本实施例所述的上述框架以及流程,也能够实现使用TOF数据实现面部识别,从而提高安全性的目的。
进一步的,还能实现人眼安全保障以及曝光参数的调整,从而在提高面部识别安全性的基础上,使得电子设备具有更优的性能。
可以理解的是,以上图4-图6虽然以安卓操作系统为例进行说明,但本申请实施例所述的面部识别方法,并不限于安卓操作系统。例如,TEE的运行不限于安卓操作系统,所以,TEE中的各个应用、模块以及单元的功能,在其它操作系统也能够实现。REE的运行也不限于安卓操作系统,所以,TOF数据、标定数据传输至TEE的传输通路,以及任务请求的传输通路、识别结果的反馈通路等,均能够适应于不同的操作系统而调整,只要能够实现TOF数据、标定数据从REE传输至TEE,以及任务请求触发TOF数据的采集、识别结果用于执行任务即可。
发明人发现,除了安全性之外,面部识别的准确性和执行速度也有提升空间,即面部识别还存在以下问题:
图像质量不高导致的识别结果不准确:因为环境光的影响,相机采集的数据可能存在过度曝光、模糊、亮度不够等质量缺陷,而面部识别以相机采集的数据为基础,所以,有可能出现比对结果错误的问题,例如原本是同一人,但人脸识别结果不通过。
时延过大导致用户体验不好:结合图1a所示的场景,如果面部识别的速度太慢,用户需要等待的时长过长,则会降低用户的使用舒适度。图像质量不高通常是导致时延过大的原因。
提高图像质量和提高执行速度是一对矛盾体:要提高图像质量,就要对图像进行迭代、降噪等处理使得图像收敛,处理的手段越多,则处理速度越慢。
发明人在研究的过程中还发现,TOF成像具有以下特点:
(1)TOF相机采集的TOF数据受环境光的影响较小,所以大多数场景下,TOF相机采集的首帧TOF数据(如首帧面部识别帧)的质量能够满足识别准确性的需求。因此,在大多数场景下,使用首帧TOF数据即可得到准确性较高的面部识别结果。
还以人脸解锁业务为例:假设尝试解锁的人脸即为电子设备中已录入的人脸,也就是说,尝试解锁的人脸能够解锁屏幕,在此情况下,首帧TOF数据就可以实现解锁。
(2)在反馈调整机制(反馈调整机制是指,使用先采集的数据以及相机的标定数据,调整后续采集数据的曝光参数以提升图像质量)生效的情况下,TOF数据的收敛(收敛是指不再变化)速度快,大概3-4帧TOF数据即收敛。
接上例,假设采集的首帧TOF数据没有实现解锁,那么在使用反馈调整机制调整曝光参数的情况下,采集的第3帧或第4帧TOF数据实现收敛(即后续即使再调整曝光参数,TOF数据也不再变化),则采集的第3帧或第4帧TOF数据即可实现解锁。
基于上述TOF成像的特点,在使用TOF数据进行面部识别以提高安全性的前提下,为兼顾准确性和速度提供了可能性。
在以下实施例中,基于前述以第一时长间隔依次将每一帧TOF数据存储至TEE,并将每一帧TOF数据的存储信息传输至TEE的方式,结合TOF成像的上述特点,通过Face TA对数据处理模块以及面部识别模块的调度,实现准确且快速地获取识别结果的目的。
图7为本申请实施例公开的一种数据处理方法,与图4、图5或图6相比,改进在于TEE中的应用以及模块,REE中的各个模块的功能以及数据传输方式均与图4、图5或图6相同,不再赘述。图7中所示的流程,从Face TA接收到FD1以及标定数据后开始,包括以下步骤:
S701、Face TA接收到第一帧TOF数据的FD(简称为FD1)后,将FD1传输至数据处理模块。
在一些实现方式中,第一帧TOF数据为Camera HAL3响应图像请求,控制TOF相机驱动,驱动TOF相机采集的第一帧TOF数据。
在另一些实现方式中,TOF相机采集的TOF数据帧分别标识为安全指示帧和面部识别帧。安全指示帧中携带人眼安全标志位,用于指示TOF相机发射的红外光对于人眼是否安全。面部识别帧是用于进行面部识别TOF数据帧。在此情况下,本步骤中的第一帧TOF数据,为第一帧面部识别帧。
S702、数据处理模块使用FD1,从第一安全缓冲存储单元读取第一帧TOF数据,并从标定数据存储单元读取标定数据。
本实施例中,假设标定数据已经被存储至标定数据存储单元。
S703、数据处理模块使用第一帧TOF数据以及标定数据,生成TOF图像,并生成自动曝光(Automatic Exposure,AE)结果。
如前所述,TOF图像包括深度图像和红外图像。
AE结果用于TOF相机调整采集TOF数据的曝光参数。AE结果包括但不限于曝光时长以及TOF传感器的物理增益。生成AE结果的一种方式为:提取TOF原始图像(Raw Data)中的面部区域,计算面部区域的亮度值,并与预先配置的目标亮度值相比,得到曝光时长以及TOF传感器的物理增益。
为了便于描述,将第一帧TOF数据处理得到的TOF图像称为第一帧TOF图像。将第一帧TOF数据得到的AE结果称为第一AE结果。
S704、数据处理模块将第一帧TOF图像存储在第二安全缓冲存储单元。
S705、数据处理模块将第一帧TOF图像的存储信息以及第一AE结果向Face TA传输。
可以理解的是,因为第一帧TOF图像的存储信息仅在TEE传输,所以可以使用明文形式传输。
S706、Face TA将第一AE结果向TOF相机传输。
第一AE结果向TOF相机传输的通路,结合图4、图5或图6所示的示例为:Face TA、Face CA、Camera service、Camera HAL3、以及TOF相机的TOF传感器控制器,再由TOF传感器控制器使用第一AE结果调整TOF相机的参数,包括但不限于曝光时长。
可以理解的是,第一AE结果能够作用的TOF数据帧,与处理器处理TOF数据的时长相关。以TOF相机30ms的采集间隔为例,假设处理器生成第一TOF图像以及第一AE结果的总耗时也为30ms,则第一AE结果最早能够作用于TOF相机采集的第三帧TOF数据。
生成以及传输AE结果为可选步骤。目的在于,改善后续采集的TOF数据的质量,进而得到质量更好的TOF图像,以及更准确的识别结果。
第一帧TOF数据可以使用预先配置的固定曝光参数采集。
S707、Face TA将第一帧TOF图像的存储信息向面部识别模块传输,以触发面部识别模块进行面部识别。
可以理解的是,S706以及S707的执行顺序不做限定。
S708、面部识别模块使用第一帧TOF图像的存储信息,从第二安全缓冲存储单元读取第一帧TOF图像。
S709、面部识别模块使用第一帧TOF图像进行面部识别,得到第一识别结果。
结合图3,面部识别模块调用面部模板,对第一帧TOF图像进行面部比对。除了面部比对之外,还可以使用深度图和红外图进行防伪识别。因此,面部识别包括面部比对和防伪识别。面部比对和防伪识别均通过,则面部识别的识别结果指示通过。
S710、面部识别模块将第一识别结果向Face TA传输。
S711、Face TA判断第一识别结果是否指示识别通过,如果是,执行S712,如果否,执行S713。
S712、Face TA向Face CA传输第一识别结果。
如前所述,Face CA将第一识别结果传输至任务的发起方,例如解锁应用。
S713、Face TA判断是否满足结束条件,如果是,执行S712、如果否,执行S714。
结束条件可以预先设置,本步骤中,结束条件包括:执行任务的时长达到第二时长门限。第二时长门限的一个示例为5秒。结束条件为可选,也可以不判断是否满足结束条件,在第一识别结果指示识别不通过的情况下,执行S714。
可见,设置结束条件的目的为避免任务执行过程中不必要的耗时:如果经历一定的时长后,面部识别还是不通过,则基本可以确定面部识别结果确定为不通过,例如,尝试解锁的人脸没有被预先存储在电子设备中。所以没有必要再继续面部识别。而应该尽快向任务反馈面部识别结果,以减小任务执行的时延,从而保证较好的用户体验。
S714、Face TA再次从TOF相机接收一帧TOF数据。
还以TOF相机30ms的采集间隔,生成第一帧TOF图像以及第一AE结果的耗时也为30ms为例,在此情况下,再次从TOF相机接收的一帧TOF数据为TOF相机采集到的第七帧TOF数据。
可以理解的是,因为第一AE最早可以作用于第三帧TOF数据,所以,第七帧TOF数据是使用第一AE结果调整曝光参数后采集的TOF数据帧。
再次接收到TOF数据帧后,Face TA要执行的后续流程,可以参见S701-S714,即将S701-S714中的作为处理对象的第一帧TOF数据,替换为再次接收的一帧TOF数据如第七帧TOF数据,将第一帧TOF数据的处理结果,适应性替换为再次接收的一帧TOF数据的处理结果(例如将第一帧TOF图像替换为第二帧TOF图像)即可,这里不再赘述。
图7所示的流程,与现有的面部识别流程相比,至少具有以下区别:现有技术的图像数据的处理流程中包括迭代处理图像数据,以获取到收敛的图像数据的步骤,目的在于获得质量满足识别准确性需求的图像。
以RGB数据为例,因为RGB数据很容易受到环境光的影响,所以采集的首帧RGB数据的质量通常不能满足识别准确性的需求,因此,需要对RGB数据进行迭代处理,以获取到收敛的RGB数据,再使用收敛的RGB数据执行面部识别,以保证识别结果的准确性。通常,RGB数据基于迭代算法的不同,较快能够10帧左右收敛,较慢则需30-40帧收敛。所以,本领域技术人员的共识为,首帧RGB数据大概率因为环境光的影响质量很差,直接用于面部识别没有意义。
而本实施例中,基于上述TOF成像原理(1)大多数场景下,首帧TOF数据即收敛,可知,第一帧TOF数据大概率可以得到较为准确的识别结果。因此,在电子设备采集到首帧TOF数据后,即使用首帧TOF数据生成的首帧TOF图像得到面部识别结果,所以,能够在保证识别结果具有较高的准确性的前提下,获得更小的处理时延。也就是说,基于TOF成像的上述原理,省略了迭代图像数据以期望获得收敛的图像数据的步骤,以换取图像数据处理速度的提升。
进一步的,发明人在研究中发现,TOF相机采集TOF数据的间隔以及一个处理器生成TOF图像的时长通常均为30ms,人脸识别的时长通常为150ms,所以,使用TOF数据得到识别结果的时长为:30ms+150ms=180ms。在其他条件等同的情况下,该数值能够说明本实施例所述的方法能够使用户明显感受到解锁速度的加快,所以能够改善用户体验。
因为再次接收的一帧TOF数据使用第一AE结果确定的曝光参数采集,所以收敛的概率更大,因此,即使首帧TOF数据因为质量问题没有识别通过,那么,再次接收到的一帧TOF数据也能够识别成功,耗时为:(30ms+150ms)*2=360ms,跟RGB数据收敛的时长相比,仍然具有优势。
本实施例应用的一种更为具体的场景示例为:
受限于手机的硬件条件,仅有一个处理器(如图2所示的安全区域处理器21)能够被用于实现面部识别。
假设尝试解锁的人脸即为电子设备中已录入的人脸,用户将人脸对准手机屏幕后,TOF相机以30ms的间隔采集TOF数据,并向处理器传输,处理器在接收到第一帧TOF数据后,按照本实施例所述的流程,将第一帧TOF数据处理为第一帧深度图像和第一帧红外图像,并使用为第一帧深度图像和第一帧红外图像得到第一识别结果,在处理器生成第一帧TOF图像并计算识别结果的过程中,因为处理器被占用,所以虽然TOF相机还在向处理器传输TOF数据帧,但处理器不能再接收后续的TOF数据帧,也就是说,除了接收到的第一帧TOF数据,其它TOF数据帧被丢弃。
可见,本实施例不考虑TOF数据迭代过程的流程,恰好能够契合上述一个处理器的场景。也就是说,在仅有一个处理器被用于TOF数据处理和面部识别的场景下,如果既要实现识别处理,还要执行TOF数据的迭代以等待TOF数据的收敛,则必须由处理器串行处理,所以耗时过长。而本实施例所述的方法,因为不执行TOF数据的迭代步骤,所以,能够缩短耗时,又因为TOF数据在绝大多数情况下首帧即收敛的特性,在缩短面部识别耗时的情况下,还能够保证识别结果较为准确。
综上所述,本实施例所述的数据方法,基于TOF数据大概率首帧收敛的特性,保证了绝大多数情况下能够准确且快速地进行面部识别,又因为TOF数据被用于面部识别的安全性较高,因此能够实现安全、准确、以及快速地实现面部识别的目的。
发明人在研究的过程中进一步发现,在室外场景下,因为自然光中也存在与TOF光源发射的红外光的波长接近的光,所以,采集的首帧TOF数据可能会过曝,在此情况下,首帧TOF数据的质量不足以获得准确的识别结果。如前述示例,在首帧不能解锁的情况下,所需的解锁时延至少为360ms,这个时延还有进一步缩小的空间。
本申请实施例公开的又一种数据处理方法,如图8所示:
S801-S806与S701-S706相同,具体可参见图8,这里不再赘述。
S807-S812为接收到第二帧TOF数据的存储信息后,对第二帧TOF数据的处理流程,与对第一帧TOF数据处理的处理流程相同,具体可参见图8,这里不再赘述。
可以理解的是,第二帧TOF数据可能为TOF相机使用基于第一AE结果调整的曝光参数采集的TOF数据帧,也可能与第一帧TOF数据的曝光参数相同。具体是以上哪种情况,取决于TOF相机采集TOF数据帧的间隔(如前述第一时长间隔)以及处理器从接收到TOF数据帧至反馈AE结果的时长。
假设TOF相机采集以及传输数据的间隔为30ms,处理器将TOF数据处理为TOF图像并获得AE结果的时长也为30ms,则第一AE结果不能作用于第二帧TOF数据的采集。
S813-S818为接收到第三帧TOF数据的存储信息后,对第三帧TOF数据的处理流程,与对第一帧TOF数据处理的处理流程相同,具体可参见图8,这里不再赘述。
从上述流程可以看出,本实施例与上述实施例的不同在于,接收并处理前三帧TOF数据。
S819、Face TA调用面部识别模块进行面部识别。
S819的一种可选的实现方式如图9所示:
S901、Face TA将第三帧TOF图像的存储信息向面部识别模块传输。
S902、面部识别模块使用第三帧TOF图像的存储信息读取第三帧TOF图像后,使用第三帧TOF图像进行面部识别,得到第三帧TOF图像的识别结果。
可以理解的是,面部识别模块从第二安全缓冲存储单元读取第三帧TOF图像,图9中不再赘述。
为了便于区别,第三帧图像的识别结果称为第三识别结果。
S903、面部识别模块将第三识别结果向Face TA传输。
S904、Face TA判断第三识别结果是否指示识别通过,如果是,执行S905,如果否,执行S906。
S905、Face TA将第三识别结果向Face CA传输。
因为第三帧TOF数据最有可能是使用AE结果调整曝光参数后采集的数据,所以,质量最有可能最优,因此,先使用第三帧TOF图像进行面部识别,可以进一步减少耗时。
S906、Face TA将第一帧TOF图像的存储信息以及第二帧TOF图像的存储信息向面部识别模块传输。
S907、面部识别模块得到第一识别结果和第二识别结果。
第一识别结果为第一帧TOF图像进行面部识别的结果。第二识别结果为第二帧TOF图像进行面部识别的结果。
可以理解的是,使用第一帧TOF图像以及第二帧TOF图像进行面部识别的顺序不限定。
S908、面部识别模块将第一识别结果和第二识别结果向Face TA传输。
S909、如果第一识别结果和第二识别结果的至少一个指示通过,Face TA将识别通过的识别结果向TOF CA传输。
S910、如果第一识别结果和第二识别结果均指示识别不通过,Face TA判断是否满足结束条件,如果是,执行S911,如果否,再次执行图8所示的流程。
结束条件的定义可参见上述实施例。本步骤中,结束条件中的时长门限可以比上述实施例中的结束条件的时长门限短,原因在于,本实施例中,已经采集并处理了多帧TOF数据。本步骤中,时长门限的一个示例为3秒。
需要说明的是,再次执行图8所示的流程时,“第N帧TOF数据”,N不再是TOF相机采集的数据帧的序列,N=1,2,3,是指处理器在本次执行图8所示的流程时,接收到的TOF数据帧的排序。例如,S801再次被执行时,TOF相机采集到的可能是第9帧TOF数据,但在本次执行图8所示的流程中,处理器接收的是第一帧TOF数据。因此,S801所述“第一帧TOF数据”是指本次执行图8所示的流程中的第一帧TOF数据,而非TOF相机实际采集的第一帧TOF数据。
S911、Face TA将识别不通过的识别结果向TOF CA传输。
可以理解的是,除了图9所示之外,还可以使用另外的方式实现S819,例如依次使用第一帧TOF图像、第二帧TOF图像以及第三帧TOF图像进行面部识别等,又或者,仅使用第三帧TOF图像进行识别,如果识别结果指示不通过,重新执行图8所示的流程,以节省内存等资源。其它实现方式这里不再一一列举。本实施例所述的方法,基于上述TOF成像的原理(2)TOF数据2-3帧即收敛,连续处理3帧TOF数据,并得到识别结果,对于室外场景,能够获得比上述实施例更小的处理时延。
图8所示的流程的应用场景示例为:
假设尝试解锁的人脸即为电子设备中已录入的人脸,用户在室外环境下将人脸对准屏幕,TOF相机以30ms的间隔采集TOF数据,并向处理器传输,处理器在接收到第一帧TOF数据后,对接收的TOF数据进行处理,生成第一TOF图像以及第一AE结果。
因为电子设备处于室外环境,所以大概率依据首帧TOF数据不会被解锁,所以处理器在生成第一TOF图像并传输第一AE结果后,不会进行面部识别,而是继续接收并处理TOF数据帧。因为生成TOF图像以及AE结果的时长为30ms,与TOF相机采集并传输TOF数据的时长相当,所以,在处理完第一帧TOF数据后,可以继续接收并处理第二帧TOF数据,在处理完第二帧TOF数据后,可以继续接收并处理第三帧TOF数据。
基于上述时长,第一帧TOF数据生成的第一AE结果,最快能够作用于第三帧TOF数据,因此,第三帧TOF数据大概率会解锁成功。
通过第三帧TOF数据得到识别结果消耗的最短时长为:30ms*3+150ms,相比于上述实施例,在首帧TOF数据解锁不成功的情况下,从第七帧解锁变化为第三帧解锁,所以能够提高速度,减小时延。
可见,如果首帧TOF数据可以解锁,则与上述实施例相比,增加了两个TOF数据的处理(生成TOF图像以及AE结果)的时长即60ms。因此本实施例所述的数据处理方法,通过牺牲首帧TOF数据解锁的速度,提高室外强光场景下的解锁速度。
可以理解的是,因为第一AE结果作用于第三帧TOF数据,所以,可选的,在图8中,可以不处理第二帧TOF数据以及第二帧TOF数据的AE结果,即不执行S807-S812,以节省资源。相适应的,获得识别结果也不再有第二帧TOF图像的参与。
综上所述,第二帧TOF数据可以仅被接收,而不做处理。或者,第二帧TOF数据也可以不被接收而被丢弃。
本实施例中,以一个流程中连续处理三帧TOF数据为例,实际上,连续处理的TOF数据帧的数量,与生成并反馈结果AE结果的耗时,以及TOF相机采集数据帧的第一时长间隔相关。
基于上述实施例分别适用的场景,可以理解的是,以上图7或图8所述的方法,可以使用判断条件,择优使用,基于图3所示的软件框架,本申请实施例公开的又一种数据处理方法包括以下步骤:
1、Face CA获取环境光的强度值。
基于图3所示的软件框架,Face CA接收到任务请求后,还可以发送光线强度请求,以获取环境光的强度值。可以理解的是,可以通过应用程序框架层、以及硬件抽象层相应模块,向内核层的相应驱动发送光线强度请求,内核层的相应驱动,驱动光线传感器感应环境光的强度值,并反馈至Face CA。
2、Face CA将环境光的强度值向Face TA传输。
3、Face TA判断环境光的强度值是否大于预设的第一强度阈值,如果是,执行图7所示的数据处理流程,如果否,执行图8所示的数据处理流程。
本实施例中,使用光线的强度值判断电子设备所处的环境,并使用与环境更适配的流程获得面部识别结果,所以在提高安全性的基础上,还能够最大程度地提高获得面部识别结果的准确性和速度。
发明人在研究的过程中还进一步发现,无论是室外还是室内场景,在环境光极强且TOF相机的传感器面对强光源的情况下,首帧TOF数据的质量不能支持得到准确的面部识别结果,所以,还需要对TOF数据进行收敛,从而增加面部识别的时长。
例如图1b中,用户位于太阳光极强的室外,且用户背对太阳。在这种情况下,用户将手机的前置相机对准人脸,以预期进行人脸解锁(假设用户的人脸已经作为人脸模块存储在手机中),与室内环境相比,需要花费更多的时间才能解锁。
本申请实施例针对以上问题,提供一种数据获取方法,目的在于获取更高质量的首帧TOF数据,以在使用TOF数据进行面部识别以获得更高安全性的前提下,提高首帧TOF数据的识别结果的准确性,从而进一步实现快速完成面部识别的目的。
图10为本申请实施例公开的一种数据获取方法,由上述电子设备执行,结合图2-图6所示,图10所述流程从Camera HAL3通过TOF相机驱动,驱动TOF相机采集数据开始执行,包括以下步骤:
S1001、Camera HAL3响应于图像请求,向TOF相机传输出图指令。
结合图2以及图3,可以理解的是,Camera HAL3可以通过内核层的TOF相机驱动,向TOF相机传输出图指令。
S1002、TOF相机响应于出图指令,采集包括深度数据、投射关闭数据以及红外数据的第一帧TOF数据。
深度数据为用于生成深度图像的数据。投射关闭数据为TOF相机在关闭TOF光源的情况下采集的TOF数据。红外数据为用于生成红外图像的数据。
深度数据以及红外数据均为TOF相机在开启TOF光源的情况下采集的TOF数据。
TOF相机(上电)启动时,默认开启TOF光源。在某些实现方式中,TOF相机的TOF传感器控制器向TOF传感器传输出图指令,TOF传感器响应于出图指令,采集深度数据,并向TOF光源控制器传输关闭指令。TOF光源控制器响应于关闭指令,关闭TOF光源,TOF传感器采集投射关闭数据。TOF传感器向TOF光源控制器传输开启指令,TOF光源控制器响应于开启指令,开启TOF光源,TOF传感器采集红外数据。
在一些实现方式中,第一帧TOF数据的一种示例为:4组深度数据、一组投射关闭数据、以及一组红外数据。“一组数据”可以理解为一个二维数组。
TOF传感器先以第一曝光时长,依次采集每一组深度数据,以第二曝光时长采集红外数据,以第一曝光时长或第二曝光时长采集投射关闭数据。第一曝光时长和第二曝光时长,可以由Camera HAL3携带在出图指令中或单独向TOF相机传输,也可以由其它模块向TOF相机传输,还可以由TOF相机预先从存储模块获取。
可以理解的是,TOF传感器向TOF光源控制器发送关闭指令的时机,与第一曝光时长相关,TOF传感器向TOF光源控制器发送开启指令的时机,与投射关闭数据的曝光时长相关。
在一些实现方式中,TOF传感器可以将第一时间范围内采集到的TOF数据标记为投射关闭数据。第一时间范围可以依据TOF传感器发出关闭指令的时间与发出开启指令的时间之间的间隔时长确定。TOF传感器可以将第一时间范围之前采集的TOF数据标记为深度数据,将第一时间范围之后采集的TOF数据标记为红外数据。
可以理解的是,上述TOF相机采集深度数据、投射关闭数据以及红外数据的顺序不作为限定。例如,也可以按照投射关闭数据、红外数据、深度数据的顺序采集,还可以按照红外数据、深度数据、投射关闭数据的顺序采集。TOF传感器向TOF光源控制器传输关闭指令以及开启指令的时机,依据顺序调整。
本步骤中,使用TOF传感器控制TOF光源的开启或关闭TOF光源,具有更高的执行速度。
S1003、数据处理模块获取第一帧TOF数据后,判断第一帧TOF数据中的红外数据中是否包含目标数据块,如果是,执行S1004,如果否,执行S1005。
数据处理模块获取第一帧TOF数据的具体方式,如图4、图5或图6所示,不再赘述。
红外数据为二维数组,可以理解的是,二维数组中包括一些排列成行和列的数值,每个数值可以看作一个数据点,目标数据块为满足以下预设条件的数据块:数值大于第一阈值的数据点的数量大于第二阈值。
如前所述,TOF传感器采集的红外数据为二维数组,在经过ISP-Lite处理为红外原始数据,即红外原始图像。因此,可以理解的是,目标数据块为红外原始图像中的目标区域,目标数据块中的各个数值为目标区域中的对应像素点的亮度值,因此,对于红外原始图像而言,目标区域为:亮度值大于第一阈值的像素的数量大于第二阈值的区域。
在环境光极强且TOF相机面对强光源的情况下,TOF相机采集的TOF数据,通常会因为强光产生过曝,所以,TOF数据生成的红外原始图像中的过曝区域的大部分像素值的亮度太高,而影响识别,本步骤中的目标区域(数据块)的条件,基于这一原理设置。
S1004、使用第一帧TOF数据中的红外数据,减去第一帧TOF数据中的投射关闭数据,得到处理后的第一帧TOF数据,并将处理后的第一帧TOF数据处理为TOF图像。
S1005、将第一帧TOF数据处理为TOF图像。
可以理解的是,将第一帧TOF数据处理为TOF图像是指,将第一帧TOF数据中的深度数据处理为深度图像,将第一帧TOF数据中的红外数据处理为红外图像。
本实施例所述的方法,在首帧TOF数据中的红外数据过曝的情况下,通过将首帧TOF数据中的红外数据减去投射关闭数据的方式,去除环境光对于红外数据的影响,从而提高首帧TOF数据的质量,进一步得到较高质量的TOF图像,有利于提高面部识别的准确性和速度。
图11为本申请实施例公开的又一种数据获取方法,由图3中所示的Camera HAL3执行,包括以下步骤:
S1101、响应于图像请求,判断间隔时长是否在预设范围内,如果是,执行S1102,如果否,执行S1103。
间隔时长为最后一次采集TOF数据的时刻(简称为第一时刻)与将要采集第一帧TOF数据的时刻(简称为第二时刻)之间的间隔时长。
可以理解的是,因为Camera HAL3通过内核层的TOF相机驱动,驱动TOF相机采集TOF数据,所以,Camera HAL3可以依据向TOF相机驱动发送出图指令的时间,选择第二时刻,例如,将向TOF相机驱动发送出图指令的时刻,增加一定的时延后的时刻,作为第二时刻。又例如,为了简化流程,Camera HAL3可以直接将系统的当前时刻,作为第二时刻。
本实施例中,第一帧TOF数据是指,如图4、图5、或图6所示,应用发出一次任务请求,而触发TOF相机采集的第一帧TOF数据。最后一次可以为,应用上一次发出的任务请求触发的TOF相机采集的最后一帧TOF数据。
S1102、指示TOF相机使用最后一次采集TOF数据使用的曝光参数,在第二时刻采集第一帧TOF数据。
如前所述,因为可以使用AE结果调整TOF相机的参数,所以,最后一次采集TOF数据使用的曝光参数,很大可能性是调整后的曝光参数,又因为第一时刻与第二时刻的间隔时长在预设范围内,所以,很有可能与最后一次采集处于相同的环境,所以,最后一次采集TOF数据使用的曝光参数,有很大可能性也适用于当前环境,所以有利于得到较高质量的TOF数据,从而有利于得到较高质量的TOF图像。
S1103、指示TOF相机使用预先配置的曝光参数采集第一帧TOF数据。
因为如果第一时刻与第二时刻的间隔时长较长,说明距离最后一次采集TOF数据已经过去较长的时间,所以,很有可能电子设备所处的环境已经发生改变,因此,最后一次采集TOF数据使用的曝光参数已经不适用于当前环境,所以再使用最后一次采集TOF数据使用的曝光参数的意义不大,因此使用预先配置的曝光参数。
本实施例所述的数据获取方法,充分利用AE调整机制调整后的曝光参数,提高首帧TOF数据的质量,进一步得到较高质量的TOF图像,有利于提高面部识别的准确性和速度。
可以理解的是,上述步骤中,最后一次采集TOF数据使用的曝光参数仅为一种实现方式,因为最后一次采集TOF数据的时刻,是距离第二时刻最晚的时刻,所以与最后一次采集TOF数据进行比较的目的在于节省算力资源。
但本实施例中,并不限定于与最后一次采集TOF数据进行比较,只要是第二时刻之前的任意一次采集,均可与第二时刻进行比较。所以,第一时刻满足的条件可概括为:早于第二时刻且与第二时刻的间隔时长在预设范围内。
图12为本申请实施例公开的又一种数据获取方法,由图3中所示的Camera HAL3执行,包括以下步骤:
S1201、响应于图像请求,获取光线强度。
本步骤中,可以使用电子设备上的环境光传感器获取电子设备所处的环境的光线强度。
S1202、指示TOF相机使用光线强度对应的曝光时长采集第一帧TOF数据。
本实施例中,预先配置多个光线强度区间与曝光时长的对应关系,对应关系满足以下原则:
1、光线强度区间包括室内光线强度区间以及室外光线强度区间。
预先配置的固定曝光时长可能不适用于室外环境,所以,室内环境与室外环境使用的曝光时长不同,因此,需要使用光线强度区间体现这种不同。
进一步的,因为在室外环境下,光线强度的变化范围很大,所以有必要进一步区分室外环境下的不同光线强度区间使用的曝光参数。
2、各个光线强度区间中的数值越大,对应的曝光时长越短。
因为曝光时长越长则图像的亮度越高,所以,在室外环境下,要缩短曝光时长才有可能避免图像的亮度太高而降低清晰度的问题。
基于以上原则配置的对应关系的一种示例为:
L<=500lux,t=1ms(默认的固定值);
500lux<L<=3000lux,t=0.7ms;
3000lux<L<=30000lux,t=0.5ms;
L>30000lux,t=0.3ms。
在上述示例中,L表示光线的强度值,t表示曝光时长,L<=500lux为室内光线强度区间,即:小于500lux可认为电子设备处于室内环境,在此情况下,使用默认的固定曝光时长即可。
500lux<L<=3000lux,3000lux<L<=30000lux,以及L>30000lux为针对室外环境进一步划分的是区间,可见三个区间中,数值越大的区间,对应的曝光时长越短。
可以理解的是,上述示例中的室外环境的强度区间的颗粒度可以调整,颗粒度越小,则对曝光时间的控制越精细,越有利于提高图像的质量,从而越有利于提高图像处理的速度。
可以理解的是,Camera HAL3可通过TOF相机驱动,将光线强度对应的曝光时长传输至TOF相机的TOF传感器控制器。
可见,本实施例中,以电子设备所处环境的光线强度作为依据,获取采集TOF数据的曝光时长,所以,有利于在首帧采集到亮度满足面部识别要求的TOF数据,从而有利于提高面部识别的准确性和速度。
需要说明的是,图7-图12所示的流程,并不限于图3所示的软件框架,还可以应用在图13所示的软件框架中。
图13中,不设置TEE,也就是说,TOF数据的处理以及面部识别均在REE中执行,具体的,可以在Face CA中执行。因此,各个模块之间可以直接传输TOF数据,而非TOF数据的存储信息。即图13与图3的区别为:ISP-Lite接收到TOF相机采集的TOF数据后,经由Camera HAL3以及Camera service向Face CA传输的是TOF数据。Face CA将TOF数据处理为TOF图像,并使用TOF图像进行面部识别。
基于图13,图7所示的流程中,各个步骤均由Face CA执行:Face CA接收到第一帧TOF数据后,将第一帧TOF数据处理为第一帧TOF图像,并得到第一AE结果,将第一AE结果向Camera HAL3传输,并使用第一帧TOF图像进行面部识别,得到第一识别结果,第一识别结果指示识别通过,则将第一识别结果向Face service传输,第一识别结果指示不通过,再次接收第七帧TOF数据。
基于图13,图8所示的流程中的,各个步骤均由Face CA执行,这里不再赘述。
基于图13,图10所示的流程,将数据处理模块替换为Face CA即可,不再赘述。
图11-图12所示的流程,适用于图13。
可以理解的是,图7-图12所示的流程,也不限定于安卓操作系统。其它操作系统中,与数据模块具有相同功能的模块可以实现上述数据模块执行的步骤,与Camera HAL3具有相同功能的模块,可以实现上述Camera HAL3执行的步骤。
可以理解的是,图3所示的软件框架中的各个模块,可以基于功能进行拆分或合并,以实现变形。例如,在TEE增加TOF TA,用于实现Face TA调度数据处理模块以及传输AE结果或安全标识的功能,而Face TA仅用于调度面部识别模块。相应地,REE增加与TOF TA通信的TOF CA等模块,并可适应性地调整REE中的数据传输通路。
图7-图12所示的流程,也适用于进行上述变形后的软件框架,一些功能的实现可以适应性调整执行模块。
本申请实施例还公开了一种芯片系统,包括:至少一个处理器以及接口,所述接口用于接收代码指令,并传输至至少一个处理器,至少一个处理器运行代码指令,实现上述面部识别方法、数据获取方法、以及数据处理方法的至少一种。
处理器实现上述功能的具体流程,可以参见上述实施例,这里不再赘述。
本申请实施例还公开了一种计算机可读存储介质,其上存储有程序代码,所述程序代码被计算机设备执行时,实现上述实施例所述的面部识别方法、数据获取方法、以及数据处理方法的至少一种。

Claims (30)

1.一种数据处理方法,其特征在于,包括:
获取第一帧飞行时间TOF数据;
将所述第一帧TOF数据处理为第一帧TOF图像;
使用所述第一帧TOF图像进行面部识别,得到第一识别结果。
2.根据权利要求1所述的方法,其特征在于,所述采集第一帧TOF数据,包括:
使用预设的固定曝光参数采集第一帧TOF数据。
3.根据权利要求1-2任一项所述的方法,其特征在于,仅通过一个处理器串行执行:所述将所述第一帧TOF数据处理为第一帧TOF图像,以及使用所述第一帧TOF图像进行面部识别,得到第一识别结果。
4.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
使用所述第一识别结果执行任务。
5.根据权利要求4所述的方法,其特征在于,所述使用所述第一识别结果执行任务,包括:
所述第一识别结果指示识别通过,执行第一任务。
6.根据权利要求5所述的方法,其特征在于,所述使用所述第一识别结果执行任务,还包括:
所述第一识别结果指示识别不通过且满足预设的结束条件,执行第二任务,所述结束条件包括执行所述任务的时长达到预设时长门限。
7.根据权利要求5或6所述的方法,其特征在于,所述使用所述第一识别结果执行任务,还包括:
所述第一识别结果指示识别不通过且不满足预设的结束条件,获取并使用另一帧TOF数据的识别结果响应所述任务。
8.根据权利要求7所述的方法,其特征在于,所述另一帧TOF数据使用第一AE结果调整的曝光参数采集得到;
所述方法还包括:
在所述采集第一帧TOF数据之后,获取所述第一AE结果。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述使用所述第一帧TOF图像进行面部识别,得到第一识别结果,包括:
通过可信执行环境TEE的面部可信应用,接收所述第一帧TOF图像的存储信息后,通过所述面部可信应用,向所述面部识别模块传输所述第一帧TOF图像的存储信息;
通过所述面部识别模块,依据所述第一帧TOF图像的存储信息,读取所述第一帧TOF图像;
通过所述面部识别模块,对所述第一帧TOF图像进行面部识别,得到所述第一识别结果。
10.根据权利要求9所述的方法,其特征在于,所述将所述第一帧TOF数据处理为第一帧TOF图像包括:
通过所述面部可信应用,接收所述第一帧TOF数据的存储信息后,通过所述面部可信应用,向所述数据处理模块传输所述第一帧TOF数据的存储信息;
通过所述数据处理模块,依据所述第一帧TOF数据的存储信息,读取所述第一帧TOF数据;
通过所述数据处理模块,将所述第一帧TOF数据为所述第一帧TOF图像。
11.根据权利要求10所述的方法,其特征在于,还包括:
通过所述数据处理模块,存储所述第一帧TOF图像,并将所述第一帧TOF图像的存储信息向所述面部可信应用传输。
12.根据权利要求1-8任一项所述的方法,其特征在于,所述使用所述第一帧TOF图像进行面部识别,得到第一识别结果,包括:
通过硬件抽象层的面部应用客户端生成所述第一帧TOF图像后,使用所述第一帧TOF图像进行面部识别,得到第一识别结果。
13.根据权利要求12所述的方法,其特征在于,所述将所述第一帧TOF数据处理为第一帧TOF图像,包括:
通过所述面部应用客户端接收所述第一帧TOF数据,并将所述第一帧TOF数据处理为第一帧TOF图像。
14.一种数据处理方法,其特征在于,包括:
获取第一帧TOF数据;
使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果;
在获取到第m帧TOF数据后,使用所述第m帧TOF数据得到第m帧TOF图像,所述第m帧TOF数据为基于所述第一AE结果最早采集的TOF数据;所述m为大于1的整数;
至少使用第m帧TOF图像进行面部识别,得到识别结果。
15.根据权利要求8所述的方法,其特征在于,所述采集第一帧TOF数据,包括:
使用预设的固定曝光参数采集第一帧TOF数据。
16.根据权利要求14或15所述的方法,其特征在于,仅通过一个处理器串行执行:所述使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果,所述使用所述第m帧TOF数据得到第m帧TOF图像,以及所述至少使用第m帧TOF图像进行面部识别,得到识别结果。
17.根据权利要求8-10任一项所述的方法,其特征在于,还包括:
使用所述识别结果执行任务。
18.根据权利要求17所述的方法,其特征在于,所述使用所述识别结果执行任务,包括:
所述识别结果指示识别通过,执行第一任务。
19.根据权利要求18所述的方法,其特征在于,所述使用所述识别结果执行任务,还包括:
所述识别结果指示识别不通过且满足预设的结束条件,执行第二任务,所述结束条件包括执行所述任务的时长达到预设时长门限。
20.根据权利要求18或19所述的方法,其特征在于,所述使用所述识别结果执行任务,还包括:
所述识别结果指示识别不通过且不满足预设的结束条件,获取并使用另外三帧TOF数据的识别结果响应所述任务。
21.根据权利要求14-20任一项所述的方法,其特征在于,所述至少使用第m帧TOF图像进行面部识别,得到识别结果包括:
使用第m帧TOF图像进行面部识别,得到第m识别结果;
所述第m识别结果指示识别不通过,使用所述第一帧TOF图像进行面部识别,得到第一识别结果。
22.根据权利要求14-21任一项所述的方法,其特征在于,所述至少使用第m帧TOF图像进行面部识别,得到识别结果包括:
通过可信执行环境TEE的面部可信应用,接收至少第m帧TOF图像的存储信息后,通过所述面部可信应用,向所述面部识别模块传输所述至少第m帧TOF图像的存储信息;
通过所述面部识别模块,依据至少第m帧TOF图像的存储信息,读取至少第m帧TOF图像;
通过所述面部识别模块,对至少第m帧TOF图像进行面部识别,得到所述识别结果。
23.根据权利要求22所述的方法,其特征在于,所述将所述第一帧TOF数据处理为第一帧TOF图像包括:
通过所述面部可信应用,接收所述第一帧TOF数据的存储信息后,通过所述面部可信应用,向所述数据处理模块传输所述第一帧TOF数据的存储信息;
通过所述数据处理模块,依据所述第一帧TOF数据的存储信息,读取所述第一帧TOF数据;
通过所述数据处理模块,将所述第一帧TOF数据处理为所述第一帧TOF图像。
24.根据权利要求23所述的方法,其特征在于,还包括:
通过所述数据处理模块,存储所述第一帧TOF图像,并将所述第一帧TOF图像的存储信息向所述面部可信应用传输。
25.根据权利要求14-21任一项所述的方法,其特征在于,所述至少使用第m帧TOF图像进行面部识别,得到识别结果,包括:
通过硬件抽象层的面部应用客户端,至少使用第m帧TOF图像进行面部识别,得到识别结果。
26.根据权利要求25所述的方法,其特征在于,所述使用所述第一帧TOF数据得到第一帧TOF图像以及第一AE结果,包括:
通过所述面部应用客户端,接收所述第一帧TOF数据,并将所述第一帧TOF数据处理为第一帧TOF图像;
所述使用所述第m帧TOF数据得到第m帧TOF图像,包括:
通过所述面部应用客户端,接收所述第m帧TOF数据,并将所述第m帧TOF数据处理为第m帧TOF图像。
27.一种数据处理方法,其特征在于,包括:
获取环境光的强度值;
所述环境光的强度值不大于预设的第一强度阈值,使用权利要求1-13任一项所述的数据处理方法;
所述环境光的强度值大于所述第一强度阈值,使用权利要求14-26任一项所述的数据处理方法。
28.一种电子设备,其特征在于,包括:
TOF相机,用于采集TOF数据;
存储器,用于存储程序代码;
处理器,用于运行所述程序代码,实现权利要求1-26任一项所述的数据处理方法。
29.一种芯片系统,其特征在于,包括:
至少一个处理器以及接口,所述接口用于接收代码指令,并传输至所述至少一个处理器;所述至少一个处理器运行所述代码指令,以实现权利要求1-26任一项所述的数据处理方法。
30.一种可读存储介质,其上存储有程序,其特征在于,在所述程序被计算设备读取并运行时,实现权利要求1-26任一项所述的数据处理方法。
CN202110924492.3A 2021-08-12 2021-08-12 数据处理方法及装置 Active CN113780090B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202110924492.3A CN113780090B (zh) 2021-08-12 2021-08-12 数据处理方法及装置
CN202310851465.7A CN116935467A (zh) 2021-08-12 2021-08-12 数据处理方法及装置
PCT/CN2022/092042 WO2023015995A1 (zh) 2021-08-12 2022-05-10 数据处理方法及装置
EP22797611.5A EP4156019A4 (en) 2021-08-12 2022-05-10 DATA PROCESSING METHOD AND APPARATUS
US17/983,650 US20230064281A1 (en) 2021-08-12 2022-11-09 Data processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110924492.3A CN113780090B (zh) 2021-08-12 2021-08-12 数据处理方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202310851465.7A Division CN116935467A (zh) 2021-08-12 2021-08-12 数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN113780090A true CN113780090A (zh) 2021-12-10
CN113780090B CN113780090B (zh) 2023-07-28

Family

ID=78837454

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310851465.7A Pending CN116935467A (zh) 2021-08-12 2021-08-12 数据处理方法及装置
CN202110924492.3A Active CN113780090B (zh) 2021-08-12 2021-08-12 数据处理方法及装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202310851465.7A Pending CN116935467A (zh) 2021-08-12 2021-08-12 数据处理方法及装置

Country Status (4)

Country Link
US (1) US20230064281A1 (zh)
EP (1) EP4156019A4 (zh)
CN (2) CN116935467A (zh)
WO (1) WO2023015995A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023015995A1 (zh) * 2021-08-12 2023-02-16 荣耀终端有限公司 数据处理方法及装置
WO2023016005A1 (zh) * 2021-08-12 2023-02-16 荣耀终端有限公司 数据获取方法及装置

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224932A (zh) * 2015-10-21 2016-01-06 北京旷视科技有限公司 一种人脸识别方法和系统
CN107808127A (zh) * 2017-10-11 2018-03-16 广东欧珀移动通信有限公司 人脸识别方法及相关产品
CN108288044A (zh) * 2018-01-31 2018-07-17 广东欧珀移动通信有限公司 电子装置、人脸识别方法及相关产品
CN108734001A (zh) * 2018-04-26 2018-11-02 维沃移动通信有限公司 一种用户身份的认证方法、移动终端
CN108769542A (zh) * 2018-05-30 2018-11-06 北京图森未来科技有限公司 一种曝光参数确定方法、装置和可读介质
CN108965732A (zh) * 2018-08-22 2018-12-07 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备
CN109040591A (zh) * 2018-08-22 2018-12-18 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备
CN109587407A (zh) * 2018-12-14 2019-04-05 广州华多网络科技有限公司 图像拍摄的曝光量调整方法、装置及计算机设备
CN109975821A (zh) * 2019-03-25 2019-07-05 Oppo广东移动通信有限公司 控制方法及装置、飞行时间组件、存储介质和计算机设备
CN110324521A (zh) * 2018-04-28 2019-10-11 Oppo广东移动通信有限公司 控制摄像头的方法、装置、电子设备及存储介质
CN110463183A (zh) * 2019-06-28 2019-11-15 深圳市汇顶科技股份有限公司 识别装置及方法
CN110555706A (zh) * 2019-08-30 2019-12-10 北京银联金卡科技有限公司 基于安全单元和可信执行环境的人脸支付安全方法及平台
CN110933307A (zh) * 2019-11-29 2020-03-27 维沃移动通信有限公司 一种电子设备及图像处理方法
US20200125832A1 (en) * 2018-05-29 2020-04-23 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Verification System, Electronic Device, and Verification Method
CN112330846A (zh) * 2019-07-31 2021-02-05 比亚迪股份有限公司 车辆控制的方法、装置、存储介质及电子设备和车辆
CN113194226A (zh) * 2021-04-13 2021-07-30 中山大学 一种可自动调节曝光时间的tof成像系统及其自动曝光方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014014838A2 (en) * 2012-07-15 2014-01-23 2R1Y Interactive illumination for gesture and/or object recognition
CN110619200B (zh) * 2018-06-19 2022-04-08 Oppo广东移动通信有限公司 验证系统和电子装置
CN109635539B (zh) * 2018-10-30 2022-10-14 荣耀终端有限公司 一种人脸识别方法及电子设备
CN210691384U (zh) * 2019-08-30 2020-06-05 北京银联金卡科技有限公司 基于安全单元和可信执行环境的人脸识别支付终端平台
CN114902074A (zh) * 2019-12-23 2022-08-12 索尼半导体解决方案公司 飞行时间物体检测电路及飞行时间物体检测方法
CN112232324B (zh) * 2020-12-15 2021-08-03 杭州宇泛智能科技有限公司 人脸验伪方法、装置、计算机设备和存储介质
CN115937922B (zh) * 2021-08-11 2023-11-07 荣耀终端有限公司 一种人脸识别方法和装置
CN116935467A (zh) * 2021-08-12 2023-10-24 荣耀终端有限公司 数据处理方法及装置

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224932A (zh) * 2015-10-21 2016-01-06 北京旷视科技有限公司 一种人脸识别方法和系统
CN107808127A (zh) * 2017-10-11 2018-03-16 广东欧珀移动通信有限公司 人脸识别方法及相关产品
CN108288044A (zh) * 2018-01-31 2018-07-17 广东欧珀移动通信有限公司 电子装置、人脸识别方法及相关产品
CN108734001A (zh) * 2018-04-26 2018-11-02 维沃移动通信有限公司 一种用户身份的认证方法、移动终端
CN110324521A (zh) * 2018-04-28 2019-10-11 Oppo广东移动通信有限公司 控制摄像头的方法、装置、电子设备及存储介质
US20200125832A1 (en) * 2018-05-29 2020-04-23 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Verification System, Electronic Device, and Verification Method
CN108769542A (zh) * 2018-05-30 2018-11-06 北京图森未来科技有限公司 一种曝光参数确定方法、装置和可读介质
CN108965732A (zh) * 2018-08-22 2018-12-07 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备
CN109040591A (zh) * 2018-08-22 2018-12-18 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备
CN109587407A (zh) * 2018-12-14 2019-04-05 广州华多网络科技有限公司 图像拍摄的曝光量调整方法、装置及计算机设备
CN109975821A (zh) * 2019-03-25 2019-07-05 Oppo广东移动通信有限公司 控制方法及装置、飞行时间组件、存储介质和计算机设备
CN110463183A (zh) * 2019-06-28 2019-11-15 深圳市汇顶科技股份有限公司 识别装置及方法
CN112330846A (zh) * 2019-07-31 2021-02-05 比亚迪股份有限公司 车辆控制的方法、装置、存储介质及电子设备和车辆
CN110555706A (zh) * 2019-08-30 2019-12-10 北京银联金卡科技有限公司 基于安全单元和可信执行环境的人脸支付安全方法及平台
CN110933307A (zh) * 2019-11-29 2020-03-27 维沃移动通信有限公司 一种电子设备及图像处理方法
CN113194226A (zh) * 2021-04-13 2021-07-30 中山大学 一种可自动调节曝光时间的tof成像系统及其自动曝光方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOONGROCK KIM DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING, BIOMETRICS ENGINEERING RESEARCH CENTER, YONSEI UNIVERSITY, SEOU: "Registration method between ToF and color cameras for face recognition" *
童晶;向学勤;田洪波;潘志庚;张明敏;: "利用飞行时间三维相机的非刚体形状三维重建" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023015995A1 (zh) * 2021-08-12 2023-02-16 荣耀终端有限公司 数据处理方法及装置
WO2023016005A1 (zh) * 2021-08-12 2023-02-16 荣耀终端有限公司 数据获取方法及装置

Also Published As

Publication number Publication date
US20230064281A1 (en) 2023-03-02
CN116935467A (zh) 2023-10-24
EP4156019A1 (en) 2023-03-29
WO2023015995A1 (zh) 2023-02-16
EP4156019A4 (en) 2023-12-13
CN113780090B (zh) 2023-07-28

Similar Documents

Publication Publication Date Title
CN113779588B (zh) 面部识别方法及装置
US11012626B2 (en) Electronic device for providing quality-customized image based on at least two sets of parameters
WO2023015995A1 (zh) 数据处理方法及装置
CN108965732B (zh) 图像处理方法、装置、计算机可读存储介质和电子设备
CN108769509B (zh) 控制摄像头的方法、装置、电子设备及存储介质
CN109040591B (zh) 图像处理方法、装置、计算机可读存储介质和电子设备
CN108419017B (zh) 控制拍摄的方法、装置、电子设备及计算机可读存储介质
CN110995994B (zh) 图像拍摄方法及相关装置
EP3148184A1 (en) Video telephony system, image display apparatus, driving method of image display apparatus, method for generating realistic image, and non-transitory computer readable recording medium
KR102263537B1 (ko) 전자 장치와, 그의 제어 방법
CN108989606B (zh) 图像处理方法和装置、电子设备、计算机可读存储介质
WO2017096857A1 (zh) 相机拍摄参数调整方法及装置
KR102053945B1 (ko) 감시 카메라의 제어 방법
CN109151303B (zh) 图像处理方法和装置、电子设备、计算机可读存储介质
US11076144B2 (en) Method and apparatus for obtaining image, storage medium and electronic device
EP2911088B1 (en) Method and apparatus for displaying biometric information
TW202139684A (zh) 追焦方法及相關設備
CN108985255B (zh) 数据处理方法、装置、计算机可读存储介质和电子设备
WO2023016005A1 (zh) 数据获取方法及装置
CN110958399A (zh) 高动态范围图像hdr实现方法及相关产品
CN103929585B (zh) 一种偏光片的控制方法、电子设备及系统
EP4156674A1 (en) Data acquisition method and apparatus
CN113869302A (zh) 用于图像处理的控制方法及装置
KR20190018280A (ko) 이동 단말기 및 그의 hdr 영상 획득 방법
CN109145772B (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