CN110163155A - 人脸数据的处理方法、装置、电子设备及可读存储介质 - Google Patents

人脸数据的处理方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN110163155A
CN110163155A CN201910436450.8A CN201910436450A CN110163155A CN 110163155 A CN110163155 A CN 110163155A CN 201910436450 A CN201910436450 A CN 201910436450A CN 110163155 A CN110163155 A CN 110163155A
Authority
CN
China
Prior art keywords
human face
face data
handler
queue
processing
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
CN201910436450.8A
Other languages
English (en)
Other versions
CN110163155B (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.)
Beijing Megvii Technology Co Ltd
Original Assignee
Beijing Megvii Technology 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 Beijing Megvii Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN201910436450.8A priority Critical patent/CN110163155B/zh
Publication of CN110163155A publication Critical patent/CN110163155A/zh
Application granted granted Critical
Publication of CN110163155B publication Critical patent/CN110163155B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请提供了一种人脸数据的处理方法、装置、电子设备及计算机可读存储介质,涉及人脸识别领域。该方法包括:当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;若否,则将所述新的人脸数据存储至所述人脸数据队列;采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。本申请既可以提高人脸数据的处理能力,又可以合理的占用系统资源,达到双条件优化。

Description

人脸数据的处理方法、装置、电子设备及可读存储介质
技术领域
本申请涉及人脸识别技术领域,具体而言,本申请涉及一种人脸数据的处理方法、装置、电子设备及计算机可读存储介质。
背景技术
现在的社会是一个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据就是这个高科技时代的产物。如今已经有很多行业开始使用大数据了,比如公安机关的人脸识别。
人脸检测、抓拍、比对是人脸识别应用中最常见的几个关键点,基于目前的AI生态来说,高清的摄像头、精妙的算法、强大的运算能力和科学的处理策略是提升人脸识别应用竞争力的几个环节。一般来说,检测速度快、跟踪实时、精度高、流畅性好、比对结果准确等等都是现在人脸识别场景中需要密切关注的。
由于比对需要的时间最长最耗时,而人脸比对中,又主要以抽取人脸特征耗时最大,所以一般抽取特征都会与人脸检测、抓拍等流程形成异步关系,双方各自分工。重点是:检测视频帧数据的时间间隔很短,一般在于30ms-90ms之间,而抽取特征的耗时在300ms左右,再者一次抓拍必然会对应一次比对,如果将人脸检测抓拍比作生产者的话,抽取检测到的人脸的特征就可以看成消费者,如果在高密的人流中,生产者的生产速度便远远大于消费者的消费速度,如果一味的采用缓存队列来缓存未抽取特征的人脸,这样长时间下去,必然会导致运算带来的内存问题和场景中报警产生的延时性问题。有时候为了避免上述情况,只能是舍弃一部分未抽取特征的人脸,但是这样就明显的降低了比对精度。
针对上述情况,现有的策略是采取人脸跟踪性(track)来降低人脸抓拍密度,达到如果是相同的人脸,则只采取其中一张质量合格的脸,进行抽取(track去重),这样确实降低了消费者的压力,但是这只是很基础的处理策略,如果在高度人流中并且是移动视角的话,就算是track去重后,也会有大量的人脸周期性产生,增大人脸积压。
发明内容
本申请提供了一种人脸数据的处理的方法、装置、电子设备及计算机可读存储介质,可以解决现有人脸识别延时较高的问题。所述技术方案如下:
第一方面,提供了一种人脸数据的处理的方法,该方法包括:
当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
若否,则将所述新的人脸数据存储至所述人脸数据队列;
采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
优选地,采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理之前,还包括:
定义handler并为每一个handler分配一个中央处理器内核。
优选地,采用与人脸数据队列的当前长度对应数量的中央处理器内核对所述人脸数据队列中的人脸数据进行数据处理,包括:
当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量。
优选地,采用与人脸数据队列的当前长度对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理,包括:
当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,对未丢弃的人脸数据进行处理。
优选地,所述第一阈值小于所述第二阈值。
优选地,采用与人脸数据队列的当前长度对应数量的handler/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理,包括:
从人脸数据队列中取出一个人脸数据;
根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
若否,则从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
优选地,从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理,包括:
判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler;
若存在,则采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;
若不存在,则等待出现处于空闲状态的handler。
优选地,从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理,包括:
从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
第二方面,提供了一种人脸数据的处理的装置,该装置包括:
判断模块,用于当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
存储模块,用于将所述新的人脸数据存储至所述人脸数据队列;
处理模块,用于采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
优选地,还包括:
分配模块,用于定义handler并为每一个handler分配一个中央处理器内核。
优选地,处理模块包括:
第一处理子模块,用于当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;
第二处理子模块,用于当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量。
优选地,处理模块包括:
处理子模块,用于当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;
丢弃子模块,用于当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,并调用处理子模块对未丢弃的人脸数据进行处理。
优选地,所述第一阈值小于所述第二阈值。
优选地,处理模块包括:
提取子模块,用于从人脸数据队列中取出一个人脸数据;
判断子模块,用于根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
分配子模块,用于从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
优选地,分配子模块包括:
判断单元,用于判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler;
调用单元,用于采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;若不存在,则等待出现处于空闲状态的handler。
优选地,分配子模块包括:
handler获取单元,用于从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
第三方面,提供了一种电子设备,该电子设备包括:
处理器、存储器和总线;
所述总线,用于连接所述处理器和所述存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所述操作指令,可执行指令使处理器执行如本申请的第一方面所示的人脸数据的处理的方法对应的操作。
第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面所示的人脸数据的处理的方法。
本申请提供的技术方案带来的有益效果是:
本申请的技术方案以实时的待处理人脸数据量为标准弹性控制中央处理器(CPU)内核的使用数量,在待处理人脸数据量较小的情况下限制CPU的使用率,为其他应用预留资源,在待处理人脸数据量较大的情况下加大CPU的使用率,以保证处理能力。如果待处理人脸数据量超过了处理能力的限度,则选择性的进行间隔性丢弃人脸数据,以控制比对的延迟,实现根据实时任务量对内核进行科学的占用,从而既可以提高人脸数据的处理能力,又可以合理的占用系统资源,达到双条件优化。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请一个实施例提供的一种人脸数据的处理方法的流程示意图;
图2为本申请中全额处理人脸数据的交互示意图;
图3为本申请中采用丢弃策略处理人脸数据的交互示意图;
图4为本申请又一实施例提供的一种人脸数据的处理装置的结构示意图;
图5为本申请又一实施例提供的一种人脸数据的处理的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请提供的人脸数据的处理方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
在一个实施例中提供了一种人脸数据的处理的方法,如图1所示,该方法包括:
步骤S101,当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
步骤S102,若否,则将所述新的人脸数据存储至所述人脸数据队列。
当人脸数据队列已满时,说明人脸数据积压严重,为避免进一步积压,将新的人脸数据直接丢弃。
步骤S103,采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
在人脸检测任务检测到人脸数据之后,就把人脸数据交给特征提取任务进行特征提取。在一个具体的实施方式中,对人脸数据进行的数据处理为特征提取处理,人脸数据队列中存放的是已被人脸检测任务检测到的等待进行特征提取的人脸数据,handler是用于对人脸数据进行特征提取的人脸数据处理单元。
当人脸数据队列的当前长度较长时,说明实时的待处理人脸数据量较大,需要用较多数量的handler对人脸数据进行处理,并配合一定的人脸数据丢弃策略,才能保证特征抽取的实时性,避免待处理人脸数据的积压。
本实施例以实时的待处理人脸数据量为标准弹性控制中央处理器内核(CPU)的使用数量,在待处理人脸数据量较小的情况下限制CPU的使用率,为其他应用预留资源,在待处理人脸数据量较大的情况下加大CPU的使用率,以保证处理能力。如果待处理人脸数据量超过了处理能力的限度,则选择性的进行间隔性丢弃人脸数据,以控制比对的延迟。
在一个具体的实施方式中,采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理之前,人脸数据的处理的方法还包括:还包括:
定义handler并为每一个handler分配一个中央处理器内核。
为一个handler分配了一个中央处理器内核之后,在执行数据处理任务时,handler始终运行在为其分配的中央处理器内核上。在一个具体的实施方式中,一个CPU上只运行一个handler。
定义的handler的数量由CPU数量和所要预留的资源量而定,例如,处理器包含4个CPU,希望为其他应用预留一个CPU,则可定义3个handler。定义的handler的数量大于等于数据处理过程中可能用到的handler的最大数量。例如,人脸数据队列长度对应handler的数量最大为3,则可以定义3个handler。
在一个具体的实施方式中,步骤s103包括:
当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量;
和/或,
当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,对未丢弃的人脸数据进行处理。
第一数量小于定义的handler数量,当采用第一数量的handler进行数据处理时,有些handler虽然已经定义好了但是并未开启,不占用CPU资源。例如,定义了3个handler:handler01、handler02、handler03,采用第一数量的handler进行数据处理时,handler01、handler02处于开启状态,handler03不处于开启状态,不占用CPU资源。
在一个具体实施方式中所述第一阈值小于所述第二阈值。
在待处理的人脸数据较多时,首先考虑增加handler的数量,其次考虑丢弃人脸,因此设置所述第一阈值小于所述第二阈值。
例如,定义的handler数量为3个,第一阈值为人脸数据队列总长度的1/4,第二阈值为人脸数据队列总长度的3/4,第一数量为2,第二数量为3,预设规则为间隔丢弃规则。
当人脸数据队列的当前长度小于人脸数据队列总长度的1/4时,2个handler参与数据处理,人脸数据全额处理,不丢弃。
当人脸数据队列的当前长度小于人脸数据队列总长度的1/4且小于3/4时,3个handler参与数据处理,人脸数据全额处理,不丢弃。
当人脸数据队列的当前长度大于3/4时,3个handler参与数据处理,此时间隔性丢弃人脸数据,例如将人脸数据队列中的01、03、05号人脸数据丢弃。
在一个具体的实施方式中,步骤s103包括:
S1031:从人脸数据队列中取出一个人脸数据;
S1032:根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
若是,则执行S1033:丢弃取出的人脸数据,返回从人脸数据队列中取出一个人脸数据的步骤;
若否,则执行S1034:从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
在一个具体的实施方式中,步骤S1034包括:
判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler,
若存在,则执行S1035:采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;
若不存在,则执行S1036:等待出现处于空闲状态的handler。
续举前例,当前人脸队列长度为人脸队列总长度的4/5,步骤s103包括:
从人脸数据队列中取出一个人脸数据;
根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断不需要丢弃这个取出的人脸数据;
判断3个handler中是否有空闲状态的handler;
若存在,则使用一个空闲状态的handler对这个取出的人脸数据进行数据处理;若不存在,则等待出现处于空闲状态的handler。
在一个具体的实施方式中,步骤s1034包括:
从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
例如,定义的handler数量为3个,handler01、handler02和handler03分别运行在CPU01、CPU02或CPU03上。第一阈值为人脸数据队列总长度的1/4,第二阈值为人脸数据队列总长度的3/4,第一数量为2,第二数量为3,预设丢弃规则为将编号为偶数的人脸丢弃。人脸数据队列的当前长度为2(人脸数据队列中有face01和face02),总长度为10,空闲handler队列中有handler01和handler02。具体过程如图2所示。
从人脸数据队列中取出一个人脸数据face01;
根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断不需要丢弃face01;
与人脸数据队列的当前长度对应的handler数量为2,即handler01和handler02开启,handler03虽然被定义了但不开启,当前开启了的handler02和handler03均处于空闲状态,位于从空闲handler队列;
从空闲handler队列中取出一个队头handler01,分配线程将handler01分配给face01,用handler01对face01进行数据处理;
handler01对face01的数据处理进行完毕后,handler01返回空闲handler队列。
再例如,定义的handler数量为3个,handler01、handler02和handler03分别运行在CPU01、CPU02或CPU03上。第一阈值为人脸数据队列总长度的1/4,第二阈值为人脸数据队列总长度的3/4,第一数量为2,第二数量为3,预设丢弃规则为将编号为偶数的人脸丢弃。人脸数据队列的当前长度为4(人脸数据队列中有face999、face1000、face1001、face1002),总长度为5,空闲handler队列中有handler01、handler02和handler03。具体过程如图3所示。
从人脸数据队列中取出一个人脸数据face999;
判断人脸数据编号不是偶数,无需丢弃;
与人脸数据队列的当前长度对应的handler数量为3,即handler01、handler02和handler03都开启了并处于空闲状态,位于空闲handler队列;
从空闲handler队列中取出一个队头handler01,分配线程将handler01分配给face999,用handler01对face01进行数据处理;
handler01对face999的数据处理进行完毕后,handler01返回空闲handler队列;
从人脸数据队列中取出下一个人脸数据face1000;
判断该人脸数据编号是偶数,需要丢弃;
从人脸数据队列中取出下一个人脸数据face1001;
判断人脸数据编号不是偶数,无需丢弃,继续执行步骤s1034,如此循环。
本申请的技术方案以实时的待处理人脸数据量为标准弹性控制中央处理器(CPU)内核的使用数量,在待处理人脸数据量较小的情况下限制CPU的使用率,为其他应用预留资源,在待处理人脸数据量较大的情况下加大CPU的使用率,以保证处理能力。如果待处理人脸数据量超过了处理能力的限度,则选择性的进行间隔性丢弃人脸数据,以控制比对的延迟,实现根据实时任务量对内核进行科学的占用,从而既可以提高人脸数据的处理能力,又可以合理的占用系统资源,达到双条件优化。
图4为本申请又一实施例提供的一种人脸数据的处理装置的结构示意图,如图4所示,本实施例的装置可以包括:
判断模块401,用于当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
存储模块402,用于将所述新的人脸数据存储至所述人脸数据队列;
处理模块403,用于采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
在本发明一种优选实施例中,该装置还包括:
分配模块,用于定义handler并为每一个handler分配一个中央处理器内核。
在本发明一种优选实施例中,处理模块包括:
第一处理子模块,用于当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;
第二处理子模块,用于当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量。
在本发明一种优选实施例中,处理模块包括:
处理子模块,用于当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;
丢弃子模块,用于当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,并调用处理子模块对未丢弃的人脸数据进行处理。
在本发明一种优选实施例中,所述第一阈值小于所述第二阈值。
在本发明一种优选实施例中,处理模块包括:
提取子模块,用于从人脸数据队列中取出一个人脸数据;
判断子模块,用于根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
分配子模块,用于从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
在本发明一种优选实施例中,分配子模块包括:
判断单元,用于判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler;
调用单元,用于采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;若不存在,则等待出现处于空闲状态的handler。
在本发明一种优选实施例中,分配子模块包括:
handler获取单元,用于从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
本实施例的人脸数据的处理装置可执行本申请第一个实施例所示的人脸数据的处理方法,其实现原理相类似,此处不再赘述。
本申请的又一实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:以实时的待处理人脸数据量为标准弹性控制中央处理器(CPU)内核的使用数量,在待处理人脸数据量较小的情况下限制CPU的使用率,为其他应用预留资源,在待处理人脸数据量较大的情况下加大CPU的使用率,以保证处理能力。如果待处理人脸数据量超过了处理能力的限度,则选择性的进行间隔性丢弃人脸数据,以控制比对的延迟,实现根据实时任务量对内核进行科学的占用,从而既可以提高人脸数据的处理能力,又可以合理的占用系统资源,达到双条件优化。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备5000包括:处理器5001和存储器5003。其中,处理器5001和存储器5003相连,如通过总线5002相连。可选地,电子设备5000还可以包括收发器5004。需要说明的是,实际应用中收发器5004不限于一个,该电子设备5000的结构并不构成对本申请实施例的限定。
处理器5001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器5001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线5002可包括一通路,在上述组件之间传送信息。总线5002可以是PCI总线或EISA总线等。总线5002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器5003可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器5003用于存储执行本申请方案的应用程序代码,并由处理器5001来控制执行。处理器5001用于执行存储器5003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。
本申请的又一实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,以实时的待处理人脸数据量为标准弹性控制中央处理器(CPU)内核的使用数量,在待处理人脸数据量较小的情况下限制CPU的使用率,为其他应用预留资源,在待处理人脸数据量较大的情况下加大CPU的使用率,以保证处理能力。如果待处理人脸数据量超过了处理能力的限度,则选择性的进行间隔性丢弃人脸数据,以控制比对的延迟,实现根据实时任务量对内核进行科学的占用,从而既可以提高人脸数据的处理能力,又可以合理的占用系统资源,达到双条件优化。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (18)

1.一种人脸数据的处理方法,其特征在于,包括:
当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
若否,则将所述新的人脸数据存储至所述人脸数据队列;
采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
2.根据权利要求1所述的人脸数据的处理方法,其特征在于,采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理之前,还包括:
定义handler并为每一个handler分配一个中央处理器内核。
3.根据权利要求1所述的人脸数据的处理方法,其特征在于,采用与人脸数据队列的当前长度对应数量的中央处理器内核对所述人脸数据队列中的人脸数据进行数据处理,包括:
当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量。
4.根据权利要求1或2所述的人脸数据的处理方法,其特征在于,采用与人脸数据队列的当前长度对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理,包括:
当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,对未丢弃的人脸数据进行处理。
5.根据权利要求3所述的人脸数据的处理方法,其特征在于,所述第一阈值小于所述第二阈值。
6.根据权利要求1至5任一所述的人脸数据的处理方法,其特征在于,采用与人脸数据队列的当前长度对应数量的handler/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理,包括:
从人脸数据队列中取出一个人脸数据;
根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
若否,则从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
7.根据权利要求6所述的人脸数据的处理方法,其特征在于,从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理,包括:
判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler;
若存在,则采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;
若不存在,则等待出现处于空闲状态的handler。
8.根据权利要求6所述的人脸数据的处理方法,其特征在于,从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理,包括:
从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
9.一种人脸数据的处理装置,其特征在于,包括:
判断模块,用于当检测到新的人脸数据时,判断预置的人脸数据队列是否已满;
存储模块,用于将所述新的人脸数据存储至所述人脸数据队列;
处理模块,用于采用与人脸数据队列的当前长度对应数量的handler和/或对应的人脸数据丢弃策略,对所述人脸数据队列中的人脸数据进行数据处理。
10.根据权利要求9所述的人脸数据的处理装置,其特征在于,还包括:
分配模块,用于定义handler并为每一个handler分配一个中央处理器内核。
11.根据权利要求9所述的人脸数据的处理装置,其特征在于,处理模块包括:
第一处理子模块,用于当人脸数据队列的当前长度小于第一阈值时,采用第一数量的handler对所述人脸数据队列中的人脸数据进行数据处理;
第二处理子模块,用于当人脸数据队列的当前长度大于等于第一阈值时,采用第二数量的handler对所述人脸数据队列中的人脸数据进行数据处理,所述第二数量大于所述第一数量。
12.根据权利要求9至11任一项所述的人脸数据的处理装置,其特征在于,处理模块包括:
处理子模块,用于当人脸数据队列的当前长度小于第二阈值时,对人脸数据进行全额处理;
丢弃子模块,用于当人脸数据队列的当前长度大于等于第二阈值时,用预设规则丢弃部分人脸数据,并调用处理子模块对未丢弃的人脸数据进行处理。
13.根据权利要求12所述的人脸数据的处理装置,其特征在于,所述第一阈值小于所述第二阈值。
14.根据权利要求9至13任一所述的人脸数据的处理装置,其特征在于,处理模块包括:
提取子模块,用于从人脸数据队列中取出一个人脸数据;
判断子模块,用于根据与人脸数据队列的当前长度对应的人脸数据丢弃策略,判断是否需要丢弃取出的人脸数据;
分配子模块,用于从与人脸数据队列的当前长度对应数量的handler中分配一个处于空闲状态的handler对取出的人脸数据进行数据处理。
15.根据权利要求14所述的人脸数据的处理装置,其特征在于,分配子模块包括:
判断单元,用于判断与人脸数据队列的当前长度对应数量的handler中是否存在处于空闲状态的handler;
调用单元,用于采用一个空闲状态的hanlder对取出的人脸数据进行数据处理,并返回从人脸数据队列中取出一个人脸数据的步骤;若不存在,则等待出现处于空闲状态的handler。
16.根据权利要求14所述的人脸数据的处理装置,其特征在于,分配子模块包括:
handler获取单元,用于从空闲handler队列中取出一个handler,对取出的人脸数据进行数据处理,处理完毕后该handler返回空闲handler队列。
17.一种电子设备,其特征在于,其包括:
处理器、存储器和总线;
所述总线,用于连接所述处理器和所述存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所述操作指令,执行上述权利要求1-8中任一项所述的人脸数据的处理方法。
18.一种计算机可读存储介质,其特征在于,所述计算机存储介质用于存储计算机指令,当其在计算机上运行时,使得计算机可以执行上述权利要求1-8中任一项所述的人脸数据的处理方法。
CN201910436450.8A 2019-05-23 2019-05-23 人脸数据的处理方法、装置、电子设备及可读存储介质 Active CN110163155B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910436450.8A CN110163155B (zh) 2019-05-23 2019-05-23 人脸数据的处理方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910436450.8A CN110163155B (zh) 2019-05-23 2019-05-23 人脸数据的处理方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110163155A true CN110163155A (zh) 2019-08-23
CN110163155B CN110163155B (zh) 2021-07-09

Family

ID=67632503

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910436450.8A Active CN110163155B (zh) 2019-05-23 2019-05-23 人脸数据的处理方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110163155B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114140924A (zh) * 2021-09-30 2022-03-04 湖南省烟草公司娄底市公司 一种基于区域终端的智慧考勤系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040149358A1 (en) * 2001-03-02 2004-08-05 Ford Motor Company Method of manufacturing a chromed bumper
CN101414957A (zh) * 2007-10-17 2009-04-22 北京中电华大电子设计有限责任公司 一种用于无线局域网的缓冲队列管理方法
US20120131159A1 (en) * 2010-11-18 2012-05-24 International Business Machines Corporation Method and system for reducing message passing for contention detection in distributed sip server environments
CN105049906A (zh) * 2015-08-07 2015-11-11 虎扑(上海)文化传播股份有限公司 一种数据处理方法及电子设备
CN107615250A (zh) * 2016-03-14 2018-01-19 华为技术有限公司 一种针对应用的处理方法、装置及智能终端
CN109086132A (zh) * 2018-06-26 2018-12-25 深圳市买买提信息科技有限公司 一种人脸识别任务均衡调用方法、装置及终端设备
CN112232287A (zh) * 2020-11-06 2021-01-15 苏州思必驰信息科技有限公司 人脸识别方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040149358A1 (en) * 2001-03-02 2004-08-05 Ford Motor Company Method of manufacturing a chromed bumper
CN101414957A (zh) * 2007-10-17 2009-04-22 北京中电华大电子设计有限责任公司 一种用于无线局域网的缓冲队列管理方法
US20120131159A1 (en) * 2010-11-18 2012-05-24 International Business Machines Corporation Method and system for reducing message passing for contention detection in distributed sip server environments
CN105049906A (zh) * 2015-08-07 2015-11-11 虎扑(上海)文化传播股份有限公司 一种数据处理方法及电子设备
CN107615250A (zh) * 2016-03-14 2018-01-19 华为技术有限公司 一种针对应用的处理方法、装置及智能终端
CN109086132A (zh) * 2018-06-26 2018-12-25 深圳市买买提信息科技有限公司 一种人脸识别任务均衡调用方法、装置及终端设备
CN112232287A (zh) * 2020-11-06 2021-01-15 苏州思必驰信息科技有限公司 人脸识别方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114140924A (zh) * 2021-09-30 2022-03-04 湖南省烟草公司娄底市公司 一种基于区域终端的智慧考勤系统

Also Published As

Publication number Publication date
CN110163155B (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
CN101685388B (zh) 执行比较运算的方法和装置
Wang Flexible flow shop scheduling: optimum, heuristics and artificial intelligence solutions
CN110231995B (zh) 一种基于Actor模型的任务调度方法、装置及存储介质
CN107360206A (zh) 一种区块链共识方法、设备及系统
CN104978321B (zh) 构造数据队列的方法、装置及从其插入和消费对象的方法
CN103814557A (zh) 排队消息的并发处理
EP2138951B1 (en) Object detection control apparatus, object detecting system, object detection control method, and computer program
CN108021358A (zh) 一种数据处理方法及装置
CN108765159A (zh) 一种基于区块链的上链与状态处理方法、装置及互联系统
CN106504396A (zh) 一种排队方法、装置和业务处理系统
CN109446869B (zh) Rfid系统的防碰撞方法、装置、计算机可读存储介质及设备
CN107015850A (zh) 线程调度方法和装置
CN107818012A (zh) 一种数据处理方法、装置及电子设备
CN110163155A (zh) 人脸数据的处理方法、装置、电子设备及可读存储介质
CN101374109B (zh) 一种报文调度方法和调度装置
CN109726092A (zh) 总线处理效率评估方法、系统和计算机存储介质
CN111913807A (zh) 一种基于多个存储区域的事件处理方法、系统及装置
CN114003370A (zh) 算力调度方法以及相关装置
Lerat et al. Single node deep learning frameworks: Comparative study and CPU/GPU performance analysis
CN103970597B (zh) 读写均衡的阻塞队列实现方法及装置
CN117170886A (zh) 一种面向大连接视频分析的连续学习资源调度方法及装置
CN117193992A (zh) 模型训练方法、任务调度方法、装置以及计算机存储介质
CN108288139B (zh) 资源分配方法及装置
CN103970592B (zh) 交易中间件的单线程多任务处理方法及服务器
CN109067864A (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