CN111860066B - 人脸识别方法和装置 - Google Patents

人脸识别方法和装置 Download PDF

Info

Publication number
CN111860066B
CN111860066B CN201910360704.2A CN201910360704A CN111860066B CN 111860066 B CN111860066 B CN 111860066B CN 201910360704 A CN201910360704 A CN 201910360704A CN 111860066 B CN111860066 B CN 111860066B
Authority
CN
China
Prior art keywords
face
image
memory
information
identified
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
Application number
CN201910360704.2A
Other languages
English (en)
Other versions
CN111860066A (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.)
Baidu com Times Technology Beijing Co Ltd
Baidu USA LLC
Original Assignee
Baidu com Times Technology Beijing Co Ltd
Baidu USA LLC
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 Baidu com Times Technology Beijing Co Ltd, Baidu USA LLC filed Critical Baidu com Times Technology Beijing Co Ltd
Priority to CN201910360704.2A priority Critical patent/CN111860066B/zh
Publication of CN111860066A publication Critical patent/CN111860066A/zh
Application granted granted Critical
Publication of CN111860066B publication Critical patent/CN111860066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/161Detection; Localisation; Normalisation
    • G06V40/166Detection; Localisation; Normalisation using acquisition arrangements
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Collating Specific Patterns (AREA)
  • Image Analysis (AREA)

Abstract

本申请实施例公开了人脸识别方法和装置,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个数字信号处理DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,该方法的一具体实施方式通过利用系统级芯片中快速内存的快速读取能力实现为人脸识别过程中快速提供所需数据,以及减少人脸识别各个过程中所需相同数据的多次搬运,最大限度地提高并行性,继而在端设备上实现低功耗、快速的人脸识别。

Description

人脸识别方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及人脸识别方法和装置。
背景技术
人脸识别问题是计算机视觉领域的一个关键问题,其涉及计算机视觉中的多个关键技术,包括但不限于以下技术:人脸检测、人脸跟踪、人脸特征提取、人脸特征比对等等。
由于人脸识别过程中所涉及的各个关键技术都需要进行大量的计算,目前的人脸识别大都将大部分计算放到云服务器中进行。为此,为了实现人脸识别,往往需要网络连接到云服务器。
发明内容
本申请实施例提出了人脸识别方法和装置。
第一方面,本申请实施例提供了一种人脸识别方法,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个(Digital Signal Processing,数字信号处理)DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,该方法包括:CPU将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
在一些实施例中,在将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储之后,所述方法还包括:CPU将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸特征提取指令,从所述快速内存中获取各所述待识别人脸图像,对各所述待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从所述快速内存存储到所述内存中且和对应的待识别人脸图像、人脸区域信息对应存储;以及所述CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息,包括:CPU从快速内存中获取各所述人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息,其中,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。
在一些实施例中,所述CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息,包括:CPU将快速内存中存储的各所述待识别人脸图像发送给云服务器,以供所述云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息;CPU从所述云服务器接收与快速内存中存储的各所述待识别人脸图像对应的人脸身份信息。
在一些实施例中,在提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像之前,所述方法还包括:DSP硬件计算单元将所确定的各概率值经DMA从所述快速内存存储到所述内存且和对应的人脸区域信息对应存储。
在一些实施例中,在CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息之前,所述方法还包括:CPU发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸区域标记指令,从所述快速内存获取所述预处理图像和各所述人脸区域信息对应的概率值,以及在所述预处理图像中添加各所述人脸区域信息中对应的概率值大于所述预设概率值阈值的人脸区域信息所指示的区域的边界。
在一些实施例中,在CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元之前,所述方法还包括:CPU发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸跟踪指令,根据从所述快速内存获取的所述预处理图像和所述至少一个人脸区域信息以及从所述内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,其中,人脸跟踪信息包括人脸身份标识和人脸区域信息,确定与所述预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从所述快速内存存储到所述内存且和所述预处理图像对应存储。
第二方面,本申请实施例提供了一种人脸识别装置,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,该装置包括:第一发送单元,设置于CPU中,被配置成将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;图像大小调整单元,设置于硬件加速器中,被配置成响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;第二发送单元,设置于CPU中,被配置成发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;人脸检测单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;第三发送单元,设置于CPU中,被配置成将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;人脸图像提取单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;人脸识别单元,设置于CPU中,被配置成对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
在一些实施例中,所述装置还包括:第四发送单元,设置于CPU中,被配置成在将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储之后,将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元;特征提取单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸特征提取指令,从所述快速内存中获取各所述待识别人脸图像,对各所述待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从所述快速内存存储到所述内存中且和对应的待识别人脸图像、人脸区域信息对应存储;以及所述人脸识别单元进一步被配置成:从快速内存中获取各所述人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息,其中,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。
在一些实施例中,所述人脸识别单元进一步被配置成:将快速内存中存储的各所述待识别人脸图像发送给云服务器,以供所述云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息;从所述云服务器接收与快速内存中存储的各所述待识别人脸图像对应的人脸身份信息。
在一些实施例中,所述装置还包括:概率值存储单元,设置于DSP硬件计算单元中,被配置成在提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像之前,将所确定的各概率值经DMA从所述快速内存存储到所述内存且和对应的人脸区域信息对应存储。
在一些实施例中,所述装置还包括:第五发送单元,设置于CPU中,被配置成在对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息之前,发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元;人脸区域边界标记单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸区域标记指令,从所述快速内存获取所述预处理图像和各所述人脸区域信息对应的概率值,以及在所述预处理图像中添加各所述人脸区域信息中对应的概率值大于所述预设概率值阈值的人脸区域信息所指示的区域的边界。
在一些实施例中,所述装置还包括:第六发送单元,设置于CPU中,被配置成在将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元之前,发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元;人脸跟踪单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸跟踪指令,根据从所述快速内存获取的所述预处理图像和所述至少一个人脸区域信息以及从所述内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,其中,人脸跟踪信息包括人脸身份标识和人脸区域信息,确定与所述预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从所述快速内存存储到所述内存且和所述预处理图像对应存储。
第三方面,本申请实施例提供了一种端设备,包括:系统级芯片,所述系统级芯片包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述系统级芯片执行时,使得所述系统级芯片实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被一个或多个系统级芯片执行时实现如第一方面中任一实现方式描述的方法。
第五方面,本申请实施例提供了另一种端设备,包括:接口;存储器,其上存储有一个或多个程序;以及一个或多个系统级芯片,系统级芯片包括至少一个CPU,至少一个数字信号处理DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,所述一个或多个系统级芯片在操作上连接到所述接口和所述存储器,其中,CPU用于:将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器用于:响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU用于:发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元用于:响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU用于:将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元用于:响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;以及CPU用于:对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
第六方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其中,当上述计算机程序被一个或多个系统级芯片执行时,使得上述系统级芯片中:CPU将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
目前,人脸识别的大量计算都是在云服务器进行的,这就对网络通信提出了较高要求。如果端设备无法连接到云服务器或者与云服务器的网络连接质量不高,则会降低人脸识别的效果。本申请实施例提供的人脸识别方法和装置,通过在端设备上引入系统级芯片,其中,系统级芯片包括至少一个CPU,至少一个DSP(数字信号处理,Digital SignalProcessing)硬件计算单元、至少一个硬件加速器和快速内存,系统级芯片运行有硬实时操作系统,以及利用系统级芯片中快速内存的快速读取能力实现为人脸识别过程中快速提供所需数据,以及减少人脸识别各个过程中所需相同数据的多次搬运,最大限度地提高并行性,继而在端设备上实现低功耗、快速的人脸识别。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的人脸识别方法的一个实施例的流程图;
图3是根据本申请的人脸识别方法的一个数据处理流程的示意图;
图4是根据本申请的人脸识别方法的又一个实施例的流程图;
图5是根据本申请的人脸识别装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的端设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的人脸识别方法或人脸识别装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括端设备(edge device)101、102、103,网络104和服务器105。网络104用以在端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。端设备101、102、103上可以安装有各种通讯客户端应用,例如照片采集类应用、人脸识别类应用、会议签到类应用、员工签到类应用、地铁闸机入口验证类应用、银行账户管理类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
端设备101、102、103中可以设置有系统级芯片(SoC,System-on-a-Chip)。这里,系统级芯片可以包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,且系统级芯片运行有硬实时操作系统。作为示例,这里SoC可以是Intel MovidiusMyriad 2芯片(Movidius Myriad 2是一个视觉处理单元,可在不同目标应用中提供低功耗、高性能的视觉处理解决方案,其中包括嵌入式深度神经网络、位姿估计、3D深度感应、视觉惯性测距,以及手势/眼部跟踪。)。当SoC是Intel Movidius Myriad 2芯片时,IntelMovidius Myriad 2芯片中可以包括2个RISC核作为CPU,12个SHAVE(Streaming HybridArchitecture Vector Engine)向量处理器作为12个DSP硬件计算单元,SIPP(StreamingInline Processing Pipeline filters)硬件加速器作为硬件加速器,2兆字节(2MB)大小的CMX内存作为SoC芯片中的快速内存,且Intel Movidius Myriad 2芯片中运行的硬实时操作系统可以是RTEMS(实时多处理器系统,Real Time Executive for MultiprocessorSystems)。
服务器105可以是提供各种服务的服务器,例如对端设备101、102、103所提取的待识别人脸图像提供人脸识别服务的后台服务器。后台服务器可以对接收到的待识别人脸图像等数据进行分析等处理,并将处理结果(例如,对应的人脸身份信息)反馈给端设备101、102、103。
需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供人脸识别服务),也可以实现成单个软件或软件模块,在此不做具体限定。
需要说明的是,本申请实施例所提供的人脸识别方法一般由端设备101、102、103执行,相应地,人脸识别装置一般设置于端设备101、102、103中。
需要指出的是,端设备101、102、103可以本地存储有人脸信息库,这样,端设备101、102、103可以本地实现人脸识别,并最终得到待识别人脸图像对应的人脸身份信息,此时,示例性系统架构100可以不包括服务器105和网络104。
还需要指出的是,端设备101、102、103也可以将待识别人脸图像发送给服务器105,由服务器105执行人脸识别操作并反馈对应的人脸身份信息。此时,示例性系统架构100可以包括服务器105和网络104。
应该理解,图1中的端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的端设备、网络和服务器。
继续参考图2,其示出了根据本申请的人脸识别方法的一个实施例的流程200。该人脸识别方法,包括以下步骤:
步骤201,CPU将从端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器。
在本实施例中,人脸识别方法应用于其上的端设备中可以设置有系统级芯片。这里,系统级芯片可以包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,系统级芯片可以运行有硬实时操作系统(hardware realtime operatingsystem)。
在本实施例中,SoC中的任一CPU可以将从端设备的内存中获取的待识别图像和图像大小调整指令发送给SoC中的硬件加速器。
这里,待识别图像可以是任何图像。例如,端设备可以设置有图像采集设备(例如,摄像头),这样,端设备可以在图像采集设备采集到图像或者采集到视频中的新的图像帧的情况下,将所采集到的图像或者图像帧存储到内存中。这样,SoC中的任一CPU可以获取内存中存入的图像或者图像帧作为待识别图像。
这里,图像大小调整指令用于指示硬件加速器将所收到的待识别图像大小调整为预设图像大小。
步骤202,硬件加速器响应于接收到待识别图像和图像大小调整指令,将待识别图像调整为预设图像大小,以及将调整后的待识别图像作为预处理图像经DMA从快速内存存储到内存中。
在本实施例中,SoC中的硬件加速器可以在收到SoC中的CPU发送的待识别图像和图像大小调整指令的情况下,采用各种实现方式将所收到的待识别图像调整为预设图像大小,以及将调整后的待识别图像作为预处理图像经DMA(Direct Memory Access,直接存储器访问)从SoC中的快速内存存储到端设备的内存中。
作为示例,可以采用像素点上采样或者像素点下采样,或者像素点插值等方法将所收到的待识别图像调整为预设图像大小。
经过步骤202,SoC中的快速内存中和端设备的内存中可以存储有图像大小为预设图像大小的预处理图像。
步骤203,CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元。
在本实施例中,SoC中的任一CPU可以在检测到硬件加速器执行完步骤202后,即,SoC中的快速内存中和端设备的内存中已经存储有图像大小为预设图像大小的预处理图像后,发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元。
在本实施例的一些可选的实现方式中,执行人脸检测操作的DSP硬件计算单元可以是SoC中所包括的至少一个DSP硬件计算单元中的预先指定的DSP硬件计算单元,即,执行人脸检测操作的DSP硬件计算单元可以是固定不变的。
在本实施例的一些可选的实现方式中,执行人脸检测操作的DSP硬件计算单元也可以是由SoC中的任一CPU根据SoC中的各个DSP硬件计算单元中的当前工作状态以及人脸检测指令的计算复杂度实时确定的。
需要说明的是,执行人脸检测操作的DSP硬件计算单元可以是一个DSP硬件计算单元,也可以是多于一个DSP硬件计算单元。
步骤204,DSP硬件计算单元响应于接收到人脸检测指令,从快速内存中获取预处理图像,检测预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从快速内存存储到内存中。
在本实施例中,SoC中的DSP硬件计算单元可以在收到SoC中的CPU发送的人脸检测指令的情况下,首先从SoC中的快速内存中获取预处理图像,然后检测所获取的预处理图像中的人脸区域,最后将检测得到的至少一个人脸区域信息经DMA从快速内存存储到内存中。
其中,人脸区域信息用于表征预处理图像中可能存在人脸对象的图像区域。这里,人脸区域信息可以是各种形式的用于表示图像中的区域的信息。实践中,人脸区域信息可以包括矩形区域的左上角顶点坐标以及矩形的长度和宽度。当然,人脸区域信息还可以表示图像中的其他形状的区域,例如,椭圆形、凸多边形等等。
这里,如果SoC中的快速内存中存储有预处理图像,那么DSP硬件计算单元可以直接从快速内存中获取预处理图像。当SoC中的快速内存因存储空间限制而没有存储有预处理图像时,为了保证步骤204中DSP硬件计算单元可以及时获取到预处理图像,DMA会在执行步骤204之前将预处理图像从端设备的内存中存储到SoC的快速内存中。这样,在执行步骤204时,SoC中的DSP硬件计算单元可以从SoC中的快速内存中获取到预处理图像。
这里,DSP硬件计算单元可以采用各种实现方式检测预处理图像中的人脸区域,并得到至少一个人脸区域信息。例如,可以采用特征脸、卷积神经网络、支持向量机、Haar分类器等实现人脸检测。
经过步骤204,SoC中的快速内存中和端设备的内存中可以存储有图像大小为预设图像大小的预处理图像和步骤203中所得到的至少一个人脸区域信息。
可以理解的是,实践中,由于SoC中的快速内存存储容量往往很小(例如,在IntelMovidius Myriad 2芯片中快速内存的容量仅为2兆字节),较晚时间存储到SoC中的快速内存中的数据可能会将较早时间存储到SoC中的快速内存中的数据覆盖掉。
步骤205,CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元。
在本实施例中,SoC中的任一CPU可以在检测到DSP硬件计算单元执行完步骤204后,即,SoC中的快速内存中和端设备的内存中已经存储有用于表征预处理图像中可能存在人脸对象的区域的至少一个人脸区域信息后,发送人脸图像提取指令给执行人脸图像提取操作的DSP硬件计算单元。
在本实施例的一些可选的实现方式中,执行人脸图像提取操作的DSP硬件计算单元可以是SoC中所包括的至少一个DSP硬件计算单元中的预先指定的DSP硬件计算单元,即,执行人脸图像提取操作的DSP硬件计算单元可以是固定不变的。
在本实施例的一些可选的实现方式中,执行人脸图像提取操作的DSP硬件计算单元也可以是由SoC中的任一CPU根据SoC中的各个DSP硬件计算单元中的当前工作状态以及人脸图像提取图像提取指令的计算复杂度实时确定的。
需要说明的是,执行人脸图像提取操作的DSP硬件计算单元可以是一个DSP硬件计算单元,也可以是多于一个DSP硬件计算单元。
步骤206,DSP硬件计算单元响应于接收到人脸图像提取指令,从快速内存中获取预处理图像和至少一个人脸区域信息。
在本实施例中,SoC中的DSP硬件计算单元可以在收到SoC中的CPU发送的人脸图像提取指令的情况下,从快速内存中获取预处理图像和至少一个人脸区域信息。
这里,如果SoC中的快速内存中存储有预处理图像和至少一个人脸区域信息,那么DSP硬件计算单元可以直接从快速内存中获取预处理图像和至少一个人脸区域信息。当SoC中的快速内存因存储空间限制而没有存储有预处理图像或者至少一个人脸区域信息时,为了保证步骤206中DSP硬件计算单元可以及时获取到预处理图像和至少一个人脸区域信息,DMA会在执行步骤206之前,将预处理图像和至少一个人脸区域信息中没有存储在SoC的快速内存中的数据从端设备的内存中存储到SoC的快速内存中。这样,在执行步骤206时,SoC中的DSP硬件计算单元可以从SoC中的快速内存中获取到预处理图像和至少一个人脸区域信息。
步骤207,DSP硬件计算单元对于至少一个人脸区域信息中的每个人脸区域信息,确定预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值。
在本实施例中,SoC中的DSP硬件计算单元可以对于步骤206中所获取的至少一个人脸区域信息中的每个人脸区域信息,采用各种实现方式确定所获取的预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值。作为示例,可以利用大量的样本图像和对应的用于表征该样本图像包括人脸对象的概率值标注结果,对带有回归分析的卷积神经网络进行有监督训练,然后将预处理图像中该人脸区域信息所指示的区域内的图像输入训练完成后得到的卷积神经网络,可以得到预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值。
步骤208,DSP硬件计算单元提取预处理图像中各人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像。
在步骤207中,DSP硬件计算单元已经对于至少一个人脸区域信息中的每个人脸区域信息,确定了预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值。那么,这里,DSP硬件计算单元可以提取预处理图像中各人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像。
步骤209,DSP硬件计算单元将各所提取的图像作为待识别人脸图像经DMA从快速内存存储到内存中且与对应的人脸区域信息对应存储。
在本实施例中,DSP硬件计算单元可以将步骤208中所提取的各个图像作为待识别人脸图像经DMA从快速内存存储到内存中且与对应的人脸区域信息对应存储。
经过步骤209,SoC中的快速内存中和端设备的内存中可以存储有图像大小为预设图像大小的预处理图像、步骤203中所得到的至少一个人脸区域信息,以及步骤208提取到的各个待识别人脸图像。
可以理解的是,实践中,由于SoC中的快速内存存储容量往往很小,较晚时间存储到SoC中的快速内存中的数据可能会将较早时间存储到SoC中的快速内存中的数据覆盖掉。
步骤210,CPU对快速内存中存储的各待识别人脸图像进行人脸识别,分别得到与各待识别人脸图像对应的人脸身份信息。
在本实施例中,SoC中的任一CPU可以在检测到DSP硬件计算单元将各所提取的图像作为待识别人脸图像经DMA从快速内存存储到内存中且与对应的人脸区域信息对应存储之后,首先获取快速内存中存储的每个待识别人脸图像,然后再对所获取的待识别人脸图像进行人脸识别,进而得到与所获取的待识别人脸图像对应的人脸身份信息。
在本实施例的一些可选的实现方式中,上述人脸识别方法的流程200还可以在步骤209之后,以及步骤210之前包括以下步骤:
首先,CPU将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元。
这里,SoC中的任一CPU可以在检测到DSP硬件计算单元将各所提取的图像作为待识别人脸图像经DMA从快速内存存储到内存中且与对应的人脸区域信息对应存储之后,发送人脸特征提取指令给执行人脸特征提取操作的DSP硬件计算单元。其中,执行人脸特征提取操作的DSP硬件计算单元可以是SoC中所包括的至少一个DSP硬件计算单元中的预先指定的DSP硬件计算单元,即,执行人脸特征提取操作的DSP硬件计算单元可以是固定不变的。执行人脸特征提取操作的DSP硬件计算单元也可以是由SoC中的任一CPU根据SoC中的各个DSP硬件计算单元中的当前工作状态以及人脸特征提取指令的计算复杂度实时确定的。需要说明的是,执行人脸特征提取操作的DSP硬件计算单元可以是一个DSP硬件计算单元,也可以是多于一个DSP硬件计算单元。
然后,DSP硬件计算单元响应于接收到人脸特征提取指令,从快速内存中获取各待识别人脸图像,对各待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从快速内存存储到内存中且和对应的待识别人脸图像、人脸区域信息对应存储。
这里,如果SoC中的快速内存中存储有各待识别人脸图像,那么DSP硬件计算单元可以直接从快速内存中获取各待识别人脸图像。当SoC中的快速内存因存储空间限制而没有存储有各待识别人脸图像时,为了保证DSP硬件计算单元可以及时获取到各待识别人脸图像,DMA会在执行上述操作之前将各待识别人脸图像从端设备的内存中存储到SoC的快速内存中。这样,在执行上述操作时,SoC中的DSP硬件计算单元可以从SoC中的快速内存中获取到各待识别人脸图像。
这里,DSP硬件计算单元可以采用各种实现方式对待识别人脸图像进行特征提取。作为示例,可以采用包括但不限于以下方法:基于统计学习模型的特征点提取算法(比如,ASM(Active Shape Model)算法,AAM(Active Appearance Models)),线性判别分析(Linear Discriminant Analysis,LDA),卷积神经网络等等。
基于上述两个可选步骤,步骤210可以如下进行:
CPU从快速内存中获取各人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息。
这里,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。即,人脸信息库可以存储在上述人脸识别方法所应用于的端设备本地,这样,端设备中的系统级芯片中的CPU可以本地获取人脸信息库。这里,上述人脸识别方法可以用于识别封闭人群。比如,用于识别某公司员工,那么针对封闭人群的人脸信息库所需存储空间较小,可以存储在端设备本地,那么就可以按照上述可选实现方式在端设备本地完成人脸识别操作。
在本实施例的一些可选的实现方式中,步骤210也可以如下进行:
首先,CPU将快速内存中存储的各待识别人脸图像发送给云服务器,以供云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息。
其次,CPU从云服务器接收与快速内存中存储的各待识别人脸图像对应的人脸身份信息。
这里,该可选实现方式是在云服务器实现人脸识别操作。例如,上述人脸识别方法可以用于识别开放人群。比如,银行系统或者电信系统中用于识别前来办理业务的客户,而银行系统或者电信系统并不具有识别相对开放的人群中每个人的人脸信息库,那么银行系统或者电信系统中用于人脸识别的端设备中也不会存储有相对开放的人群中每个人的人脸信息库。这时,银行系统或者电信系统中用于人脸识别的端设备可以将待识别人脸图像发送给国家权威机构的云服务器,由国家权威机构的云服务器来远程地执行人脸识别操作。
继续参见图3,图3是根据本申请的人脸识别方法的一个数据处理流程的示意图。在图3的数据处理流程中,端设备中设置有系统级芯片301和内存302,系统级芯片301包括两个CPU 3011和3012,4个DSP硬件计算单元3013到3016,一个硬件加速器3017和一个快速内存3018。首先,CPU 3011将从端设备的内存302获取的待识别图像303和图像大小调整指令304发送给硬件加速器3017;然后,硬件加速器3017响应于接收到待识别图像303和图像大小调整指令304,将待识别图像303调整为预设图像大小,以及将调整后的待识别图像303作为预处理图像305经DMA从快速内存3018存储到内存302中;接着,CPU 3011发送人脸检测指令306给执行人脸检测操作的DSP硬件计算单元3013;之后,DSP硬件计算单元3013接收到人脸检测指令306,从快速内存3018中获取预处理图像305,检测预处理图像305中的人脸区域,以及将检测得到的至少一个人脸区域信息307经DMA从快速内存3018存储到内存302中;而后,CPU 3011将人脸图像提取指令308发送给执行人脸图像提取操作的DSP硬件计算单元3014;DSP硬件计算单元3014接收到人脸图像提取指令308,从快速内存3018中获取预处理图像305和至少一个人脸区域信息307;对于至少一个人脸区域信息307中的每个人脸区域信息,确定预处理图像305中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取预处理图像305中各人脸区域信息307中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像309经DMA从快速内存3018存储到内存302中且与对应的人脸区域信息307对应存储;最后,CPU 3011对快速内存3018中存储的各待识别人脸图像309进行人脸识别,分别得到与各待识别人脸图像309对应的人脸身份信息310。
本申请的上述实施例提供的人脸识别方法通过在端设备上引入系统级芯片,其中,系统级芯片包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,系统级芯片运行有硬实时操作系统,以及利用系统级芯片中快速内存的快速读取能力实现为人脸识别过程中快速提供所需数据,以及减少人脸识别各个过程中所需相同数据的多次搬运,最大限度地提高并行性,继而在端设备上实现低功耗、快速的人脸识别。
进一步参考图4,其示出了人脸识别方法的又一个实施例的流程400。该人脸识别方法的流程400,包括以下步骤:
在本实施例中,人脸识别方法应用于其上的端设备中可以设置有系统级芯片。这里,系统级芯片可以包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,系统级芯片可以运行有硬实时操作系统。
步骤401,CPU将从端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器。
步骤402,硬件加速器响应于接收到待识别图像和图像大小调整指令,将待识别图像调整为预设图像大小,以及将调整后的待识别图像作为预处理图像经DMA从快速内存存储到内存中。
步骤403,CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元。
步骤404,DSP硬件计算单元响应于接收到人脸检测指令,从快速内存中获取预处理图像,检测预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从快速内存存储到内存中。
在本实施例中,步骤401、步骤402、步骤403和步骤404的具体操作与图2所示的实施例中步骤201、步骤202、步骤203和步骤204的操作基本相同,在此不再赘述。
步骤405,CPU发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元。
在本实施例中,SoC中的任一CPU可以发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元。
在本实施例的一些可选的实现方式中,执行人脸跟踪操作的DSP硬件计算单元可以是SoC中所包括的至少一个DSP硬件计算单元中的预先指定的DSP硬件计算单元,即,执行人脸跟踪操作的DSP硬件计算单元可以是固定不变的。
在本实施例的一些可选的实现方式中,执行人脸跟踪操作的DSP硬件计算单元也可以是由SoC中的任一CPU根据SoC中的各个DSP硬件计算单元中的当前工作状态以及人脸跟踪指令的计算复杂度实时确定的。
需要说明的是,执行人脸跟踪操作的DSP硬件计算单元可以是一个DSP硬件计算单元,也可以是多于一个DSP硬件计算单元。
步骤406,DSP硬件计算单元响应于接收到人脸跟踪指令,根据从快速内存获取的预处理图像和至少一个人脸区域信息以及从内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,确定与预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从快速内存存储到内存且和预处理图像对应存储。
在本实施例中,SoC中的DSP硬件计算单元可以在收到SoC中的CPU发送的人脸跟踪指令的情况下,首先从SoC的快速内存中获取预处理图像和至少一个人脸区域信息,以及从端设备的内存中获取与预处理图像的生成时间最接近的预设数目帧跟踪图像,以及每个跟踪图像对应的至少一个人脸跟踪信息,其中,人脸跟踪信息可以包括人脸身份标识和人脸区域信息。这里,跟踪图像可以是对由采集待识别图像的图像采集设备在采集待识别图像之前所采集的图像进行调整图像大小为预设图像大小所得到的图像。
然后,SoC中的DSP硬件计算单元可以采用各种实现方式根据所获取的预处理图像和至少一个人脸区域信息以及最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,确定与预处理图像对应的至少一个人脸跟踪信息。例如,可以采用角点检测、运动预测、自适应均值漂移(Cam-Shift)算法、卡尔曼滤波器与粒子滤波器等。
最后,SoC中的DSP硬件计算单元可以将所确定的至少一个人脸跟踪信息经DMA从快速内存存储到内存且和预处理图像对应存储。继而,可以实现对采集待识别图像的图像采集设备所针对的场景中各个人脸进行实时跟踪。
步骤407,CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元。
步骤408,DSP硬件计算单元响应于接收到人脸图像提取指令,从快速内存中获取预处理图像和至少一个人脸区域信息。
步骤409,DSP硬件计算单元对于至少一个人脸区域信息中的每个人脸区域信息,确定预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值。
在本实施例中,步骤407、步骤408和步骤409的具体操作与图2所示的实施例中步骤205、步骤206和步骤207的操作基本相同,在此不再赘述。
步骤410,DSP硬件计算单元将所确定的各概率值经DMA从快速内存存储到内存且和对应的人脸区域信息对应存储。
在本实施例中,SoC中的DSP硬件计算单元可以将步骤409中所确定的各个概率值经DMA从快速内存存储到内存且和对应的人脸区域信息对应存储。这样,人脸识别方法所应用于的端设备内存中可以对应存储有预处理图像、至少一个人脸区域信息和每个人脸区域信息对应的用于表征预处理图像中该人脸区域信息所指示的区域存在人脸对象的概率值。
步骤411,DSP硬件计算单元提取预处理图像中各人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像。
步骤412,DSP硬件计算单元将各所提取的图像作为待识别人脸图像经DMA从快速内存存储到内存中且与对应的人脸区域信息对应存储。
在本实施例中,步骤411和步骤412的具体操作与图2所示的实施例中步骤208和步骤209的操作基本相同,在此不再赘述。
步骤413,CPU发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元。
在本实施例中,SoC中的任一CPU可以在步骤410之后,或者步骤411之后,或者步骤412之后,发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元。
在本实施例的一些可选的实现方式中,执行人脸区域标记操作的DSP硬件计算单元可以是SoC中所包括的至少一个DSP硬件计算单元中的预先指定的DSP硬件计算单元,即,执行人脸区域标记操作的DSP硬件计算单元可以是固定不变的。
在本实施例的一些可选的实现方式中,执行人脸区域标记操作的DSP硬件计算单元也可以是由SoC中的任一CPU根据SoC中的各个DSP硬件计算单元中的当前工作状态以及人脸区域标记指令的计算复杂度实时确定的。
需要说明的是,执行人脸区域标记操作的DSP硬件计算单元可以是一个DSP硬件计算单元,也可以是多于一个DSP硬件计算单元。
步骤414,DSP硬件计算单元响应于接收到人脸区域标记指令,从快速内存获取预处理图像和各人脸区域信息对应的概率值,以及在预处理图像中添加各人脸区域信息中对应的概率值大于预设概率值阈值的人脸区域信息所指示的区域的边界。
在本实施例中,SoC中的DSP硬件计算单元可以在收到SoC中的CPU发送的人脸检测指令的情况下,首先从SoC中的快速内存中获取预处理图像和各人脸区域信息对应的概率值。然后,DSP硬件计算单元可以在预处理图像中添加各人脸区域信息中对应的概率值大于预设概率值阈值的人脸区域信息所指示的区域的边界。即,在预处理图像中标记出可能存储人脸对象的区域的区域边界。实践中,可以用矩形来表征人脸区域信息所指示的区域,那么这里可以在预处理图像中画出存在人脸对象的矩形框。
步骤415,CPU对快速内存中存储的各待识别人脸图像进行人脸识别,分别得到与各待识别人脸图像对应的人脸身份信息。
在本实施例中,步骤415的具体操作与图2所示的实施例中步骤210的操作基本相同,在此不再赘述。
从图4中可以看出,与图2对应的实施例相比,本实施例中的人脸识别方法的流程400多出了人脸跟踪以及在预处理图像中画出可能存在人脸对象的区域边界的步骤。由此,本实施例描述的方案可以实现更全面的人脸跟踪、定位和识别。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种人脸识别装置的一个实施例,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统。该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的人脸识别装置500包括:第一发送单元501、图像大小调整单元502、第二发送单元503、人脸检测单元504、第三发送单元505、人脸图像提取单元506和人脸识别单元507。其中,第一发送单元501,设置于CPU中,被配置成将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;图像大小调整单元502,设置于硬件加速器中,被配置成响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;第二发送单元503,设置于CPU中,被配置成发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;人脸检测单元504,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;第三发送单元505,设置于CPU中,被配置成将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;人脸图像提取单元506,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;而人脸识别单元507,设置于CPU中,被配置成对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
在本实施例中,人脸识别装置500的第一发送单元501、图像大小调整单元502、第二发送单元503、人脸检测单元504、第三发送单元505、人脸图像提取单元506和人脸识别单元507的具体处理及其所带来的技术效果可分别参考图2对应实施例中步骤201、步骤202、步骤203、步骤204、步骤205、步骤206、步骤207、步骤208、步骤209和步骤210的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,所述装置500还可以包括:第四发送单元(图5中未示出),设置于CPU中,被配置成在将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储之后,将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元;特征提取单元(图5中未示出),设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸特征提取指令,从所述快速内存中获取各所述待识别人脸图像,对各所述待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从所述快速内存存储到所述内存中且和对应的待识别人脸图像、人脸区域信息对应存储;以及所述人脸识别单元507可以进一步被配置成:从快速内存中获取各所述人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息,其中,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。
在本实施例的一些可选的实现方式中,所述人脸识别单元507可以进一步被配置成:将快速内存中存储的各所述待识别人脸图像发送给云服务器,以供所述云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息;从所述云服务器接收与快速内存中存储的各所述待识别人脸图像对应的人脸身份信息。
在本实施例的一些可选的实现方式中,所述装置500还可以包括:概率值存储单元(图5中未示出),设置于DSP硬件计算单元中,被配置成在提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像之前,将所确定的各概率值经DMA从所述快速内存存储到所述内存且和对应的人脸区域信息对应存储。
在本实施例的一些可选的实现方式中,所述装置500还可以包括:第五发送单元(图5中未示出),设置于CPU中,被配置成在对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息之前,发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元;人脸区域边界标记单元(图5中未示出),设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸区域标记指令,从所述快速内存获取所述预处理图像和各所述人脸区域信息对应的概率值,以及在所述预处理图像中添加各所述人脸区域信息中对应的概率值大于所述预设概率值阈值的人脸区域信息所指示的区域的边界。
在本实施例的一些可选的实现方式中,所述装置500还可以包括:第六发送单元(图5中未示出),设置于CPU中,被配置成在将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元之前,发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元;人脸跟踪单元(图5中未示出),设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸跟踪指令,根据从所述快速内存获取的所述预处理图像和所述至少一个人脸区域信息以及从所述内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,其中,人脸跟踪信息包括人脸身份标识和人脸区域信息,确定与所述预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从所述快速内存存储到所述内存且和所述预处理图像对应存储。
需要说明的是,本申请实施例提供的人脸识别装置中各单元的实现细节和技术效果可以参考本申请中其它实施例的说明,在此不再赘述。
下面参考图6,其示出了适于用来实现本申请实施例的端设备的计算机系统600的结构示意图。图6示出的端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括一个或多个系统级芯片601,其可以根据存储在只读存储器(ROM,Read Only Memory)602中的程序或者从存储部分608加载到随机访问存储器(RAM,Random Access Memory)603中的程序而执行各种适当的动作和处理。系统级芯片601中可以包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,系统级芯片601运行有硬实时操作系统。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O,Input/Output)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT,Cathode Ray Tube)、液晶显示器(LCD,Liquid Crystal Display)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN(局域网,Local AreaNetwork)卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被系统级芯片(SoC)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在系统级芯片的各个部分中,例如,可以描述为:一种系统级芯片包括第一发送单元、图像大小调整单元、第二发送单元、人脸检测单元、第三发送单元、人脸图像提取单元和人脸识别单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一发送单元还可以被描述为“将从端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的系统级芯片中所包含的;也可以是单独存在,而未装配入该系统级芯片中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该系统级芯片执行时,使得该系统级芯片中:CPU将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
作为又一方面,本申请实施例还提供了另一种端设备,包括:接口;存储器,其上存储有一个或多个程序;以及一个或多个系统级芯片,上述系统级芯片包括至少一个CPU,至少一个DSP硬件计算单元、至少一个硬件加速器和快速内存,上述系统级芯片运行有硬实时操作系统,所述一个或多个系统级芯片在操作上连接到上述接口和上述存储器,其中,CPU用于:将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器用于:响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU用于:发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元用于:响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU用于:将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元用于:响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;以及CPU用于:对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
作为又一方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其中,当上述计算机程序被一个或多个系统级芯片执行时,使得上述系统级芯片中:CPU将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;硬件加速器响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;DSP硬件计算单元响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (15)

1.一种人脸识别方法,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个数字信号处理DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,所述方法包括:
CPU将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;
硬件加速器响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;
CPU发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;
DSP硬件计算单元响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;
CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;
DSP硬件计算单元响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;
CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
2.根据权利要求1所述的方法,其中,在将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储之后,所述方法还包括:
CPU将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元;
DSP硬件计算单元响应于接收到所述人脸特征提取指令,从所述快速内存中获取各所述待识别人脸图像,对各所述待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从所述快速内存存储到所述内存中且和对应的待识别人脸图像、人脸区域信息对应存储;以及
所述CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息,包括:
CPU从快速内存中获取各所述人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息,其中,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。
3.根据权利要求1所述的方法,其中,所述CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息,包括:
CPU将快速内存中存储的各所述待识别人脸图像发送给云服务器,以供所述云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息;
CPU从所述云服务器接收与快速内存中存储的各所述待识别人脸图像对应的人脸身份信息。
4.根据权利要求1所述的方法,其中,在提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像之前,所述方法还包括:
DSP硬件计算单元将所确定的各概率值经DMA从所述快速内存存储到所述内存且和对应的人脸区域信息对应存储。
5.根据权利要求4所述的方法,其中,在CPU对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息之前,所述方法还包括:
CPU发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元;
DSP硬件计算单元响应于接收到所述人脸区域标记指令,从所述快速内存获取所述预处理图像和各所述人脸区域信息对应的概率值,以及在所述预处理图像中添加各所述人脸区域信息中对应的概率值大于所述预设概率值阈值的人脸区域信息所指示的区域的边界。
6.根据权利要求1所述的方法,其中,在CPU将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元之前,所述方法还包括:
CPU发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元;
DSP硬件计算单元响应于接收到所述人脸跟踪指令,根据从所述快速内存获取的所述预处理图像和所述至少一个人脸区域信息以及从所述内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,其中,人脸跟踪信息包括人脸身份标识和人脸区域信息,确定与所述预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从所述快速内存存储到所述内存且和所述预处理图像对应存储。
7.一种人脸识别装置,应用于设置有系统级芯片的端设备,所述系统级芯片包括至少一个CPU,至少一个数字信号处理DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统,所述装置包括:
第一发送单元,设置于CPU中,被配置成将从所述端设备的内存获取的待识别图像和图像大小调整指令发送给硬件加速器;
图像大小调整单元,设置于硬件加速器中,被配置成响应于接收到所述待识别图像和所述图像大小调整指令,将所述待识别图像调整为预设图像大小,以及将调整后的所述待识别图像作为预处理图像经直接存储器访问DMA从所述快速内存存储到所述内存中;
第二发送单元,设置于CPU中,被配置成发送人脸检测指令给执行人脸检测操作的DSP硬件计算单元;
人脸检测单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸检测指令,从所述快速内存中获取所述预处理图像,检测所述预处理图像中的人脸区域,以及将检测得到的至少一个人脸区域信息经DMA从所述快速内存存储到所述内存中;
第三发送单元,设置于CPU中,被配置成将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元;
人脸图像提取单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸图像提取指令,从所述快速内存中获取所述预处理图像和所述至少一个人脸区域信息;对于所述至少一个人脸区域信息中的每个人脸区域信息,确定所述预处理图像中该人脸区域信息所指示的区域内存在人脸对象的概率值;以及提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像;将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储;
人脸识别单元,设置于CPU中,被配置成对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息。
8.根据权利要求7所述的装置,其中,所述装置还包括:
第四发送单元,设置于CPU中,被配置成在将各所提取的图像作为待识别人脸图像经DMA从所述快速内存存储到内存中且与对应的人脸区域信息对应存储之后,将人脸特征提取指令发送给执行人脸特征提取操作的DSP硬件计算单元;
特征提取单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸特征提取指令,从所述快速内存中获取各所述待识别人脸图像,对各所述待识别人脸图像进行人脸特征提取,以及将提取到的人脸特征经DMA从所述快速内存存储到所述内存中且和对应的待识别人脸图像、人脸区域信息对应存储;以及
所述人脸识别单元进一步被配置成:
从快速内存中获取各所述人脸特征,以及对于所获取的每个人脸特征,将预先从内存中获取的人脸信息库中与该人脸特征的匹配度最高的人脸特征模板对应的身份信息确定为该人脸特征对应的人脸身份信息,其中,人脸信息库用于表征人脸特征模板与人脸身份信息之间的对应关系。
9.根据权利要求7所述的装置,其中,所述人脸识别单元进一步被配置成:
将快速内存中存储的各所述待识别人脸图像发送给云服务器,以供所述云服务器对所收到的待识别人脸图像进行识别并反馈对应的人脸身份信息;
从所述云服务器接收与快速内存中存储的各所述待识别人脸图像对应的人脸身份信息。
10.根据权利要求7所述的装置,其中,所述装置还包括:
概率值存储单元,设置于DSP硬件计算单元中,被配置成在提取所述预处理图像中各所述人脸区域信息中所指示的区域内对应的存在人脸对象的概率值大于预设概率值阈值的图像之前,将所确定的各概率值经DMA从所述快速内存存储到所述内存且和对应的人脸区域信息对应存储。
11.根据权利要求10所述的装置,其中,所述装置还包括:
第五发送单元,设置于CPU中,被配置成在对快速内存中存储的各所述待识别人脸图像进行人脸识别,分别得到与各所述待识别人脸图像对应的人脸身份信息之前,发送人脸区域标记指令给执行人脸区域标记操作的DSP硬件计算单元;
人脸区域边界标记单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸区域标记指令,从所述快速内存获取所述预处理图像和各所述人脸区域信息对应的概率值,以及在所述预处理图像中添加各所述人脸区域信息中对应的概率值大于所述预设概率值阈值的人脸区域信息所指示的区域的边界。
12.根据权利要求7所述的装置,其中,所述装置还包括:
第六发送单元,设置于CPU中,被配置成在将人脸图像提取指令发送给执行人脸图像提取操作的DSP硬件计算单元之前,发送人脸跟踪指令给执行人脸跟踪操作的DSP硬件计算单元;
人脸跟踪单元,设置于DSP硬件计算单元中,被配置成响应于接收到所述人脸跟踪指令,根据从所述快速内存获取的所述预处理图像和所述至少一个人脸区域信息以及从所述内存获取的最近时间预设数目帧跟踪图像和对应的至少一个人脸跟踪信息,其中,人脸跟踪信息包括人脸身份标识和人脸区域信息,确定与所述预处理图像对应的至少一个人脸跟踪信息,以及将所确定的至少一个人脸跟踪信息经DMA从所述快速内存存储到所述内存且和所述预处理图像对应存储。
13.一种端设备,包括:
系统级芯片,所述系统级芯片包括至少一个CPU,至少一个数字信号处理DSP硬件计算单元、至少一个硬件加速器和快速内存,所述系统级芯片运行有硬实时操作系统;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述系统级芯片执行时,使得所述系统级芯片实现如权利要求1-6中任一所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被系统级芯片执行时实现如权利要求1-6中任一所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6中任一项所述的方法。
CN201910360704.2A 2019-04-30 2019-04-30 人脸识别方法和装置 Active CN111860066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910360704.2A CN111860066B (zh) 2019-04-30 2019-04-30 人脸识别方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910360704.2A CN111860066B (zh) 2019-04-30 2019-04-30 人脸识别方法和装置

Publications (2)

Publication Number Publication Date
CN111860066A CN111860066A (zh) 2020-10-30
CN111860066B true CN111860066B (zh) 2023-10-27

Family

ID=72965590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910360704.2A Active CN111860066B (zh) 2019-04-30 2019-04-30 人脸识别方法和装置

Country Status (1)

Country Link
CN (1) CN111860066B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106203333A (zh) * 2016-07-08 2016-12-07 乐视控股(北京)有限公司 人脸识别方法及系统
WO2017181769A1 (zh) * 2016-04-21 2017-10-26 腾讯科技(深圳)有限公司 一种人脸识别方法、装置和系统、设备、存储介质
WO2018133666A1 (zh) * 2017-01-17 2018-07-26 腾讯科技(深圳)有限公司 视频目标跟踪方法和装置
CN108509915A (zh) * 2018-04-03 2018-09-07 百度在线网络技术(北京)有限公司 人脸识别模型的生成方法和装置
CN109117801A (zh) * 2018-08-20 2019-01-01 深圳壹账通智能科技有限公司 人脸识别的方法、装置、终端及计算机可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017181769A1 (zh) * 2016-04-21 2017-10-26 腾讯科技(深圳)有限公司 一种人脸识别方法、装置和系统、设备、存储介质
CN106203333A (zh) * 2016-07-08 2016-12-07 乐视控股(北京)有限公司 人脸识别方法及系统
WO2018133666A1 (zh) * 2017-01-17 2018-07-26 腾讯科技(深圳)有限公司 视频目标跟踪方法和装置
CN108509915A (zh) * 2018-04-03 2018-09-07 百度在线网络技术(北京)有限公司 人脸识别模型的生成方法和装置
CN109117801A (zh) * 2018-08-20 2019-01-01 深圳壹账通智能科技有限公司 人脸识别的方法、装置、终端及计算机可读存储介质

Also Published As

Publication number Publication date
CN111860066A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN108509915B (zh) 人脸识别模型的生成方法和装置
WO2022161286A1 (zh) 图像检测方法、模型训练方法、设备、介质及程序产品
WO2021139324A1 (zh) 图像识别方法、装置、计算机可读存储介质及电子设备
CN109034069B (zh) 用于生成信息的方法和装置
CN113971751A (zh) 训练特征提取模型、检测相似图像的方法和装置
CN108549848B (zh) 用于输出信息的方法和装置
US11087140B2 (en) Information generating method and apparatus applied to terminal device
CN108388889B (zh) 用于分析人脸图像的方法和装置
CN110941978B (zh) 一种未识别身份人员的人脸聚类方法、装置及存储介质
CN108133197B (zh) 用于生成信息的方法和装置
CN108509994B (zh) 人物图像聚类方法和装置
CN108229375B (zh) 用于检测人脸图像的方法和装置
CN111160202A (zh) 基于ar设备的身份核验方法、装置、设备及存储介质
CN112036284B (zh) 图像处理方法、装置、设备及存储介质
CN108615006B (zh) 用于输出信息的方法和装置
CN112241689A (zh) 人脸识别方法、装置、电子设备及计算机可读存储介质
CN114549557A (zh) 一种人像分割网络训练方法、装置、设备及介质
John et al. Real time blink recognition from various head pose using single eye
CN113569707A (zh) 活体检测方法、装置、电子设备以及存储介质
CN112926491A (zh) 用户识别方法、装置、电子设备及存储介质
Mukherjee et al. Energy efficient face recognition in mobile-fog environment
CN111783677A (zh) 人脸识别方法、装置、服务器和计算机可读介质
CN111860066B (zh) 人脸识别方法和装置
CN115497152A (zh) 基于图像识别的客户信息分析方法、装置、系统及介质
CN115984977A (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