CN112699826B - 人脸检测方法、装置、计算机设备和存储介质 - Google Patents
人脸检测方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112699826B CN112699826B CN202110009932.2A CN202110009932A CN112699826B CN 112699826 B CN112699826 B CN 112699826B CN 202110009932 A CN202110009932 A CN 202110009932A CN 112699826 B CN112699826 B CN 112699826B
- Authority
- CN
- China
- Prior art keywords
- target
- face
- scale
- feature
- deconvolution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 208
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000012549 training Methods 0.000 claims description 99
- 238000012545 processing Methods 0.000 claims description 74
- 238000004590 computer program Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 23
- 238000000605 extraction Methods 0.000 claims description 13
- 230000004927 fusion Effects 0.000 claims description 11
- 238000007499 fusion processing Methods 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 4
- 238000012886 linear function Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及计算机技术领域,特别是涉及一种人脸检测方法、装置、计算机设备和存储介质。所述方法包括:获取待检测图像,待检测图像中包括待检测人脸;通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;对人脸特征进行回归预测,得到待检测人脸的检测结果。采用本方法能够提升边缘设备人脸检测的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种人脸检测方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,人脸检测广泛应用于各行各业,例如,银行***的远程核身、微信的人脸支付、出租车司机远程认证、小区门禁***等。
在传统方式中,为了保障人脸检测的准确性,检测模型需要占用几百M的内存,即需要图形处理器(Graphics Processing Unit,GPU)的支持。在没有GPU的边缘设备上,常规的检测模型根本无法正常运行。从而使得人脸检测的准确性较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升边缘设备人脸检测准确性的人脸检测方法、装置、计算机设备和存储介质。
一种人脸检测方法,所述方法包括:
获取待检测图像,待检测图像中包括待检测人脸;
通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;
对人脸特征进行回归预测,得到待检测人脸的检测结果。
在其中一个实施例中,通过检测模型对待检测图像进行特征的提取,得到人脸特征,包括:
通过检测模型的各卷积模块对待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;
从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;
通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征。
在其中一个实施例中,通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征,包括:
根据目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;
通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;
对第一目标尺度对应的目标特征以及第一目标尺度对应的目标初始特征进行融合处理,得到对应第一目标尺度的人脸特征;
将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。
在其中一个实施例中,通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征,包括:
通过通用卷积层对目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;
通过反卷积层对第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,第一比例小于第二比例;
通过可分离卷积对第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
在其中一个实施例中,对人脸特征进行回归预测,得到待检测人脸的检测结果,包括:
确定对应各目标尺度的目标锚点框,目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,相邻目标尺度的尺度与当前目标尺度最接近且大于当前目标尺度;
根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
在其中一个实施例中,检测模型为预先训练的检测模型,检测模型的训练方式包括:
获取训练集图像;
对训练集图像中各人脸进行标定,得到标定后的训练集图像;
将训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸检测,并生成对应的检测结果;
根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失;
基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;
基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在其中一个实施例中,对训练集图像中各人脸进行标定,得到标定后的训练集图像,包括:
确定训练集图像中各人脸的图像面积占比;
通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
一种人脸检测装置,所述装置包括:
待检测图像获取模块,用于获取待检测图像,待检测图像中包括待检测人脸;
特征提取模块,用于通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;
回归预测模块,用于对人脸特征进行回归预测,得到待检测人脸的检测结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法的步骤。
上述人脸检测方法、装置、计算机设备和存储介质,通过获取待检测图像,并通过检测模型对待检测图像进行特征的提取,得到人脸特征,待检测图像中包括待检测人脸,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层,然后对人脸特征进行回归预测,得到待检测人脸的检测结果。从而,在获取到待检测图像后,可以根据包括轻量级的反卷积模块的检测模型进行特征的提取以及回归预测,可以减少模型对内存的占用,使用于边缘设备进行人脸检测,进而可以提升边缘识别人脸检测的准确性。并且,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层,模型结构简单,相比于传统的反卷积网络,参数计算量较少,可以减少检测过程中的计算量,进而可以提升处理效率。
附图说明
图1为一个实施例中人脸检测方法的应用场景图;
图2为一个实施例中人脸检测方法的流程示意图;
图3为一个实施例中SeparableBlock和LightDeConv2DBlock的示意图;
图4为一个实施例中检测模型的示意图;
图5为一个实施例中模型进行人脸检测的示意图;
图6为一个实施例中人脸检测装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本实施例中,边缘设备可以通过图像采集装置采集待检测图像,待检测图像中包括待检测人脸,使得边缘设备获取到待检测图像。进一步,边缘设备在获取到待检测图像后,可以通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层。进一步,边缘设备可以对人脸特征进行回归预测,得到待检测人脸的检测结果。其中,边缘设备可以但不限于是各种携带有图像采集功能的个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等终端。
在一个实施例中,如图1所示,提供了一种人脸检测方法,以该方法应用于前述边缘设备,即终端为例进行说明,包括以下步骤:
步骤S102,获取待检测图像,待检测图像中包括待检测人脸。
其中,待检测图像是指包括待检测人脸的图像,待检测图像中可以包括单个或者是多个的待检测人脸。
在本实施例中,用户可以通过终端上的图像采集装置,例如,手机上的摄像头,或者是笔记本上的摄像头等,进行待检测图像的采集,从而使得终端,即边缘设备可以获取到待检测图像。
在其中一个实施例中,用户也可以通过采集视频流的方式获取到视频数据,然后从视频流中截取出各帧图像,并作为待检测图像,以便于终端进行后续的处理。
步骤S104,通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层。
在本实施例中,检测模型是用于对待检测图像进行人脸检测的模型,模型输入为待检测图像,输出对应待检测图像的检测结果。
在本实施例中,检测模型中可以包括卷积模块以及反卷积模块,卷积模型用于对待检测图像进行不断的卷积处理,将大尺度的图像不断进行卷积,并输出小尺度的图像,以得到对应不同尺度的特征图,即人脸特征。而反卷积模块则是对小尺度的图像进行反卷积处理,以得到大尺度的图像。
在本实施例中,反卷积模块为轻量级的反卷积模块(Light DeConv2D Block),轻量级的反卷积模块可以包括一个通用卷积层、一个反卷积层以及一个可分离卷积层。
在本实施例中,参考图2,展示了一种可分离卷积模块SeparableBlock和一种轻量级的反卷积模块LightDeConv2DBlock的结构示意图。和直接使用普通的深度可分离卷积SeparableConv2D不同,本申请提出的LightDeConv2DBlock包括一个通用卷积层Conv2D、一个反卷积层Conv2DTranpose和一个可分离卷积层SeparableBlock。同时在LightDeConv2DBlock中,不同的卷积层之间我们采用BN层进行归一化。
在本实施例中,继续参考图2(b),Conv2D的卷积核为3*3,步长为1,激活函数为线性函数;Conv2DTranspose的卷积核为3*3,步长为1,激活函数为线性函数;SeparableBlock的卷积核为3*3,步长为1,激活函数为relu函数,不带残差连接。由于SeparableBlock不采用残差连接,所以此时相当于SeparableConv2D。在其他实施例中,SeparableBlock也可以包括残差连接,即如图2(a)所示。
在本实施例中,Conv2D、Conv2DTranspose均采用线性激活,可以使得这两层网络可以充当特征的压缩和扩张的作用,线性激活函数可以最大程度的保留特征信息,而relu则会过滤掉一部分值小于0的信息。
进一步,在LightDeConv2DBlock中,不同的卷积层之间可以采用BN层进行归一化,以对结果进行归一化处理。
以下将对本申请方案中轻量级的反卷积模块LightDeConv2DBlock的参数量进行分析,具体如下。
在本实施例中,通过Hout表示卷积中输入特征图的通道数,Hin和Win分别表示输入特征图的高和宽,Cout表示卷积中输出特征图的通道数,Hout和Wout分别表示输出特征图的高和宽。用k表示卷积核的大小(只考虑k×k的情形),步长为1,并且不考虑偏置(bias)。则普通卷积、反卷积和深度可分离卷积的参数量以及运算量可按照以下方式(1)~(5)进行计算,即普通卷积(Conv2D)的参数量计算公式如下公式(1)所示,普通卷积(Conv2D)的运算量计算公式如下公式(2)所示,反卷积的(Conv2DTranpose)的参数量计算公式如下公式(3)所示,反卷积的(Conv2DTranpose)的运算量计算公式如下公式(4)所示,深度可分离卷积(SeparableConv2D)的参数量计算公式如下公式(5)所示,深度可分离卷积(SeparableConv2D)的运算量计算公式如下公式(6)所示。
Cout×k2×Cin (1)
Cin×k2×Cout×Hout×Wout (2)
Cout×k2×Cin (3)
Cin×k2×Cout×Hout×Wout (4)
Cout×k2+Cout×Cin (5)
Cout×k2×Hout×Wout+k2×Cin×Hout×Wout (6)
在本实施例中,轻量级的反卷积模块LightDeConv2DBlock由1x1的Conv2D、3x3的Conv2DTranpose和3x3的SperableConv2D组成,则可以确定各模块层的输入输出如下表1所示。
表1 LightDeConv2DBlock不同部分的输入输出
进一步,可以根据不同卷积结构的参数量和运算量计算公式可以得到各模块层的参数量和运算量如表2所示。
表2 LightDeConv2DBlock不同部分的参数量和运算量
进一步,可以得到轻量级的反卷积模块LightDeConv2DBlock总的参数量为
即可以得到对应的结果为
进一步,可以得到轻量级的反卷积模块LightDeConv2DBlock和普通反卷积模块(Conv2DTranspose)的参数量在不同条件下的对比,如表3所示。
表3 LightDeConv2DBlock和Conv2DTranspose参数量对比
在本实施例中,由表3可以看到,当Cout较大时,如Cout大于128时,1/Cout可以忽略不计。并且,在不同情况下,轻量级的反卷积模块LightDeConv2DBlock的参数量约为普通反卷积模块Conv2DTranpose的1/23至1/14。而在Cin=Cout和Cin=2×Cout这两种情况下,轻量级的反卷积模块LightDeConv2DBlock的参数量约为普通反卷积模块Conv2DTranpose的1/23和1/14。
进一步,对于运算量,如果只考虑反卷积最常见的情况,即Hout=Wout=2×Hin=2×Win=2h,则轻量级的反卷积模块LightDeConv2DBlock的运算量为而普通Conv2DTranpose的运算量为9×Cout×Cin×h2。
因此,可以得到轻量级的反卷积模块LightDeConv2DBlock和普通反卷积模块Conv2DTranpose的运算量对比结果,如表4所示。
表4 LightDeConv2DBlock和Conv2DTranpose的运算量对比
由表4可以看到,当Cout较大时,如Cout大于128时,4/Cout可以忽略不计。并且,在不同情况下,轻量级的反卷积模块LightDeConv2DBlock的运算量约为普通反卷积模块Conv2DTranpose的1/12至1/3。而在Cin=Cout和Cin=2×Cout这两种情况下,轻量级的反卷积模块LightDeConv2DBlock的运算量约为普通反卷积模块Conv2DTranpose的1/12和1/6。
由上可知,本申请方案中轻量级的反卷积模块的运算量和参数量原小于普通反卷积模块。
在本实施例中,服务器可以通过检测模型对待检测图像进行卷积处理以及反卷积处理,以得到对应待检测图像的特征数据,即人脸特征。
步骤S106,对人脸特征进行回归预测,得到待检测人脸的检测结果。
在本实施例中,服务器在得到待检测图像中待检测人脸的人脸特征后,可以对人脸特征进行回归预测,以得到对应的检测结构。
具体地,检测结果可以参考图3所示,检测结果可以是通过人脸框对待检测图像中人脸进行框选标识的结果。
上述人脸检测方法中,通过获取待检测图像,并通过检测模型对待检测图像进行特征的提取,得到人脸特征,待检测图像中包括待检测人脸,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层,然后对人脸特征进行回归预测,得到待检测人脸的检测结果。从而,在获取到待检测图像后,可以根据包括轻量级的反卷积模块的检测模型进行特征的提取以及回归预测,可以减少模型对内存的占用,使用于边缘设备进行人脸检测,进而可以提升边缘识别人脸检测的准确性。并且,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层,模型结构简单,相比于传统的反卷积网络,参数计算量较少,可以减少检测过程中的计算量,进而可以提升处理效率。
在其中一个实施例中,通过检测模型对待检测图像进行特征的提取,得到人脸特征,可以包括:通过检测模型的各卷积模块对待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征。
在本实施例中,检测模型的模型结构可以如图4所示,命名为TFFD-FPN,可以包括对应不同尺度的卷积模块和前文所述的轻量级的反卷积模块,例如,128*128,64*64,…,4*4等,模型具体参数可以如下表5所示。
表5 TFFD-FPN模型结构
在本实施例中,终端在获取到待检测图像后,可以将待检测图像输入检测模型,通过检测模型进行多次卷积处理,得到对应不同尺度的初始特征,即对应128*128的初始特征,对应64*64的初始特征,对应32*32的初始特征,对应16*16的初始特征,对应8*8的初始特征,以及对应4*4的初始特征等。
进一步,终端可以从多个尺度中确定目标尺度。具体地,服务器可以根据输出的需要确定目标尺度,继续参考图4,服务器可以确定尺度最小多个尺度为目标尺度,即16*16、8*8以及4*4。
进一步,终端可以基于确定的目标尺度,确定对应各目标尺度的各初始特征为目标初始特征,继续结合前例,即确定对应16*16的初始特征,对应8*8的初始特征,以及对应4*4的初始特征为目标初始特征。
在本实施例中,终端可以通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,以生成对应各目标尺度的人脸特征,即分别得到对应16*16、8*8以及4*4的人脸特征。
在其中一个实施例中,通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征,可以包括:根据目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;对第一目标尺度对应的目标特征以及第一目标尺度对应的目标初始特征进行融合处理,得到对应第一目标尺度的人脸特征;将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。
具体地,继续参考图4,最小尺度为4*4,则终端可以根据获取的最小尺度4*4的目标初始特征,直接得到对应最小目标尺度的人脸特征,即得到4*4的人脸特征。
进一步,终端可以通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,即对4*4的人脸特征进行反卷积处理,生成对应第一目标尺度的目标特征,即对应8*8的目标特征。
在本实施例中,第一目标尺度为尺度大于最小尺度且与最小尺度相邻的尺度,对于4*4,对应的第一目标尺度为8*8,对于8*8,对应的第一目标尺度为16*16。
在本实施例中,服务器可以获取第一目标尺度多对应的目标初始特征,并和计算反卷积得到的第一目标尺度对应的目标特征进行融合处理,得到对应第一目标尺度的人脸特征,即终端可以将8*8的目标特征和8*8的目标初始特征进行特征融合,得到融合后的特征,即得到对应8*8的人脸特征。
进一步,终端可以将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。继续沿用前例,则终端可以将8*8的目标初始特征作为最小尺度的目标初始特征,然后通过前文所述的轻量级的反卷积模块进行反卷积处理,的殴打对应尺度16*16的目标特征,然后在对16*16的目标特征与目标初始特征进行融合处理,得到对应16*16的人脸特征。
本领域技术人员可以理解的是,此处仅为举例说明,在其他实施例中,目标尺度也可以多余或者少于3个尺度,最小尺度也可以大于4*4或者小于4*4,本申请对此不作限制。
在其中一个实施例中,通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征,可以包括:通过通用卷积层对目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;通过反卷积层对第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,第一比例小于第二比例;通过可分离卷积对第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
继续参考图2,在本实施例中,终端可以通过通用卷积层Conv2D对目标初始特征进行第一反卷积处理,对目标初始特征进行对应第一目标尺度的1/8输出通道(1/8filters)的反卷积处理,得到对应的第一特征。
进一步,终端可以通过反卷积层Conv2DTranpose对第一特征进行第二反卷积处理,即对第一特征进行对应第一目标尺度的1/4输出通道(1/4filters)的反卷积处理,得到对应的第二特征。
进一步,终端可以通过可分离卷积SeparableBlock对第二特征进行第三反卷积处理,即对第二特征进行对应第一目标尺度输出通道(1.0filters)的反卷积处理,生成满足第一目标尺度输出通道的目标初始特征。
上述实施例中,通过对目标初始特征进行多次反卷积处理,得到最终的目标特征,相比于传统方式中通过依次卷积得到最终的目标特诊,可以减少计算量,可以提升数据处理速度以及处理效率。
在其中一个实施例中,对人脸特征进行回归预测,得到待检测人脸的检测结果,可以包括:确定对应各目标尺度的目标锚点框,目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,相邻目标尺度的尺度与当前目标尺度最接近且大于当前目标尺度;根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
在本实施例中,终端通过将大尺度特征层的锚点框anchor,复制一份,并将其嵌套下移至小尺度特征层,即,若16*16的特征层对应于(16,24)的anchor,则8*8的特征层不仅包含它本身对应的锚点框anchor(32,48),并且包含16*16的锚点框anchor(16,24)。同理,4*4的特征层则对应于(32,48,54,86)。从而可以使得在锚点框anchor总量较少时,如图3中,8832个,可以更容易产生正样本。
并且,参考图5,对于8*8,宽高为32的锚点框anchor,人脸刚好落在几个锚点框的交汇处,则人脸与其交汇的任意的锚点框anchor的重叠程度都达不到成为正样本的要求,此时会有
因此,本申请方案中,通过将大尺度特征层对应的锚点框anchor复制到小尺度特征层,可以使得检测模型能够更好地区分正负样本的边界。
并且,通过将大尺度特征层对应的锚点框anchor复制到小尺度特征层,继续参考图5,在4*4的特征上会出现比4*4对应的锚点框anchor的宽高更大的锚点框anchor,从而使得该人脸能够匹配到一个锚点框。
进一步,通过将大尺度特征层对应的锚点框anchor复制到小尺度特征层,还可以缓解不同特征层的锚点框anchor的数量不平衡问题。例如,传统的方式,不同尺度特征层的锚点框anchor比例为16:4:1,而采用本申请方案后,比例为8:4:1。表7示出了本申请一个实施例中锚点框anchor的数量。
表7 Nested Down Anchor策略表
Feature | Stride | Anchors | Numbers |
16x16 | 8 | 16,24 | 512 |
8x8 | 16 | 16,24,32,48 | 256 |
4x4 | 32 | 32,48,54,86 | 64 |
在其中一个实施例中,检测模型为预先训练的检测模型,检测模型的训练方式可以包括:获取训练集图像;对训练集图像中各人脸进行标定,得到标定后的训练集图像;将训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸检测,并生成对应的检测结果;根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失;基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在本实施例中,由于目前缺少专门用于前置摄像头等终端采集到的人脸检测训练的开源数据集,因此,从WIDER Face上,通过裁剪的方式获得近似前置摄像头的数据。
进一步,对获取的训练集图像进行人脸的标定,标定出训练集图像中的各人脸,得到标定后的训练集图像。
在本实施例中,终端可以将标定后的训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸特征提取,并对提取的人脸特征进行回归预测,生成对应的检测结果。检测结果中可以包括对各人脸的检测框。
进一步,终端可以根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失,例如,计算标定的人脸框与检测得到的检测框之间的差距,进而进行损失值的计算。
在本实施例中,终端可以采用多种不同的损失函数进行损失计算,例如,L1或者是L2损失函数等。
在本实施例中,损失可以分为分类损失和回归损失,终端可以设置不同的损失权重,以对模型进行训练,例如,分类损失和回归损失的权重分别为0.1和1.0,设置回归采用smooth-l1损失,分类采用交叉熵损失等。
进一步,终端可以基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型,并基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在本实施例中,终端可以通过设置对应的训练配置进行模型的训练,例如,在模型训练的时候,可以采用旋转、镜像、随机mask等常规的数据增强方法,模型也可以使用Aadm优化器,初始学习率为0.001,batch-size为4,iou(intersect over union,交并比)阈值分别为0.4和0.2,大于0.4的认为是正样本,小于0.2的认为是负样本等进行训练。
在其中一个实施例中,对训练集图像中各人脸进行标定,得到标定后的训练集图像,可以包括:确定训练集图像中各人脸的图像面积占比;通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
如前所述,本申请方案通过从WIDER Face上,通过裁剪的方式获得近似前置摄像头的数据。
具体地,可以先裁剪一个人脸相对较多的数据集,最小的人脸面积为图像面积的0.0351562。对于小于这个比例的人脸,采用图片像素均值mask。如果不mask,相当于这个数据集告诉模型,这个稍微大一点的脸是“人脸”,那个小一点的脸不是“人脸”,模型不容易收敛。
在本实施例中,终端可以确定训练集图像中各人脸的图像面积占比,然后通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
在本实施例中,模型可以基于得到的训练集图像数据集进行预训练,收敛后,从新重WIDER Face中裁剪人脸面积占比不小于0.0625的人脸数据,进行微调。从而完成模型的训练。
以下对于本申请发明的试验效果进行详细分析说明。
首先,对于模型准确度。在LFW、FDDB和IPNFace上评估了TFFD-SSD和本申请的检测模型TFFD-FPN,结果如表8所示。
表8 TFFD模型结果对比
Model | Dataset | AP |
MobileNetV2-SSD | 2k | 97.95% |
BlazeFace | 2k | 98.61% |
ACF | FDDB 3k | 85.20% |
CasCNN | FDDB 3k | 85.70% |
FaceCraft | FDDB 3k | 90.80% |
STN | FDDB 3k | 91.50% |
MTCNN | FDDB 3k | 94.40% |
FaceBoxes | FDDB 3k | 96.00% |
TFFD-FPN | FDDB 3k | 98.34% |
TFFD-SSD | FDDB 3k | 95.68% |
TFFD-FPN | LFW 13k | 99.56% |
TFFD-SSD | LFW 13k | 98.11% |
TFFD-FPN | IPNFace 10k | 99.52% |
TFFD-SSD | IPNFace 10k | 98.08% |
从表8中可知,TFFD-FPN在FDDB上的AP为98.34%,要优于FaceBoxes、ACF、CasCNN、FaceCraft、STN、MTCNN等模型。同时,在不同的数据集上也表现出较高的准确率,TFFD-FPN在LFW和IPNFace上的AP分别为99.56%和99.52%,这说明TFFD-FPN在复杂的现实场景下能够很好地检测出人脸。
另一方面,TFFD-SSD在FDDB、LFW和IPNFace上的AP分别为95.68%、98.11%和98.08%,均比TFFD-FPN低,这说明本发明提出的LightDeConv2DBlock在降低参数量的同时还能较好地利用到特征的上下文信息。
其次,对于模型推理性能的分析。
表9 TFFD与其他模型的cpu推理性能对比
Model | CPU | FPS |
ACF | [email protected] | 20 |
CasCNN | [email protected] | 14 |
FaceCraft | N/A | 10 |
STN | [email protected] | 10 |
MTCNN | N/[email protected] | 16 |
FaceBoxes | [email protected] | 20 |
TFFD-FPN | [email protected] | 140 |
从表9可知,TFFD-FPN在CPU上的推理速度可达到140fps,即大约7ms。要远远优于FaceBoxes、ACF、CasCNN、FaceCraft、STN、MTCNN等模型。并且TFFD-FPN只占1.3Mb,在模型量化后约400Kb,可对场景复杂、多人脸的前置摄像头拍摄的图片进行检测。因此,可移植到大部分与前置摄像头场景相关的设备,如手机、平板电脑、笔记本电脑等。
进一步,继续参考图3,本申请方案中的TFFD-FPN模型在多人脸、复杂场景的情况下也有非常好的表现,能满足移动端、客户端等大部分有前置摄像头设备的实际需求。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种人脸检测装置,包括:待检测图像获取模块100、特征提取模块200和回归预测模块300,其中:
待检测图像获取模块100,用于获取待检测图像,待检测图像中包括待检测人脸。
特征提取模块200,用于通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层。
回归预测模块300,用于对人脸特征进行回归预测,得到待检测人脸的检测结果。
在其中一个实施例中,特征提取模块200可以包括:
特征提取子模块,用于通过检测模型的各卷积模块对待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征。
目标尺度确定子模块,用于从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征。
反卷积处理子模块,用于通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征。
在其中一个实施例中,反卷积处理子模块可以包括:
最小目标尺度人脸特征确定单元,用于根据目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征。
反卷积处理单元,用于通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征。
特征融合单元,用于对第一目标尺度对应的目标特征以及第一目标尺度对应的目标初始特征进行融合处理,得到对应第一目标尺度的人脸特征。
重复处理单元,用于将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。
在其中一个实施例中,反卷积处理单元可以包括:
第一反卷积处理子单元,用于通过通用卷积层对目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征。
第二反卷积处理子单元,用于通过反卷积层对第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,第一比例小于第二比例。
第三反卷积处理子单元,用于通过可分离卷积对第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
在其中一个实施例中,回归预测模块300可以包括:
目标锚点框确定子模块,用于确定对应各目标尺度的目标锚点框,目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,相邻目标尺度的尺度与当前目标尺度最接近且大于当前目标尺度。
回归预测子模块,用于根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
在其中一个实施例中,检测模型为预先训练的检测模型,上述装置还可以包括:
训练集图像获取模块,用于获取训练集图像。
标定模块,用于对训练集图像中各人脸进行标定,得到标定后的训练集图像。
检测模块,用于将训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸检测,并生成对应的检测结果。
模型损失计算模块,用于根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失。
参数调整模块,用于基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型。
迭代训练模块,用于基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在其中一个实施例中,标定模块可以包括:
图像面积占比确定子模块,用于确定训练集图像中各人脸的图像面积占比。
标定子模块,用于通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
关于人脸检测装置的具体限定可以参见上文中对于人脸检测方法的限定,在此不再赘述。上述人脸检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储待检测图像、人脸特征以及检测结果等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种人脸检测方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待检测图像,待检测图像中包括待检测人脸;通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;对人脸特征进行回归预测,得到待检测人脸的检测结果。
在其中一个实施例中,处理器执行计算机程序时实现通过检测模型对待检测图像进行特征的提取,得到人脸特征,可以包括:通过检测模型的各卷积模块对待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征。
在其中一个实施例中,处理器执行计算机程序时实现通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征,可以包括:根据目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;对第一目标尺度对应的目标特征以及第一目标尺度对应的目标初始特征进行融合处理,得到对应第一目标尺度的人脸特征;将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。
在其中一个实施例中,处理器执行计算机程序时实现通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征,可以包括:通过通用卷积层对目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;通过反卷积层对第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,第一比例小于第二比例;通过可分离卷积对第二特征进行第三反卷积处理,生成满足第一目标尺度引输出通道的目标特征。
在其中一个实施例中,处理器执行计算机程序时实现对人脸特征进行回归预测,得到待检测人脸的检测结果,可以包括:确定对应各目标尺度的目标锚点框,目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,相邻目标尺度的尺度与当前目标尺度最接近且大于当前目标尺度;根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
在其中一个实施例中,处理器执行计算机程序时实现检测模型为预先训练的检测模型,检测模型的训练方式可以包括:获取训练集图像;对训练集图像中各人脸进行标定,得到标定后的训练集图像;将训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸检测,并生成对应的检测结果;根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失;基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在其中一个实施例中,处理器执行计算机程序时实现对训练集图像中各人脸进行标定,得到标定后的训练集图像,可以包括:确定训练集图像中各人脸的图像面积占比;通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待检测图像,待检测图像中包括待检测人脸;通过检测模型对待检测图像进行特征的提取,得到人脸特征,检测模型包括轻量级的反卷积模块,轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;对人脸特征进行回归预测,得到待检测人脸的检测结果。
在其中一个实施例中,计算机程序被处理器执行时实现通过检测模型对待检测图像进行特征的提取,得到人脸特征,可以包括:通过检测模型的各卷积模块对待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征。
在其中一个实施例中,计算机程序被处理器执行时实现通过轻量级的反卷积模块对各目标初始特征进行反卷积处理,生成对应各目标尺度的人脸特征,可以包括:根据目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;对第一目标尺度对应的目标特征以及第一目标尺度对应的目标初始特征进行融合处理,得到对应第一目标尺度的人脸特征;将第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征。
在其中一个实施例中,计算机程序被处理器执行时实现通过轻量级的反卷积模块对最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征,可以包括:通过通用卷积层对目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;通过反卷积层对第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,第一比例小于第二比例;通过可分离卷积对第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
在其中一个实施例中,计算机程序被处理器执行时实现对人脸特征进行回归预测,得到待检测人脸的检测结果,可以包括:确定对应各目标尺度的目标锚点框,目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,相邻目标尺度的尺度与当前目标尺度最接近且大于当前目标尺度;根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
在其中一个实施例中,计算机程序被处理器执行时实现检测模型为预先训练的检测模型,检测模型的训练方式可以包括:获取训练集图像;对训练集图像中各人脸进行标定,得到标定后的训练集图像;将训练集图像输入构建的初始检测模型中,通过初始检测模型对进行人脸检测,并生成对应的检测结果;根据检测结果以及标定后的训练集数据,计算初始检测模型的模型损失;基于模型损失,对初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;基于预设的训练参数,对参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
在其中一个实施例中,计算机程序被处理器执行时实现对训练集图像中各人脸进行标定,得到标定后的训练集图像,可以包括:确定训练集图像中各人脸的图像面积占比;通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于图像占比阈值的人脸,得到标定后的训练集图像。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种人脸检测方法,其特征在于,所述方法包括:
获取待检测图像,所述待检测图像中包括待检测人脸;
通过检测模型对所述待检测图像进行特征的提取,得到人脸特征,所述检测模型包括轻量级的反卷积模块,所述轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;
对所述人脸特征进行回归预测,得到所述待检测人脸的检测结果;
所述通过检测模型对所述待检测图像进行特征的提取,得到人脸特征,包括:
通过所述检测模型的各卷积模块对所述待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;
从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;
通过所述轻量级的反卷积模块对各所述目标初始特征进行反卷积处理,生成对应各所述目标尺度的人脸特征;
所述通过所述轻量级的反卷积模块对各所述目标初始特征进行反卷积处理,生成对应各所述目标尺度的人脸特征,包括:
根据所述目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;
通过所述轻量级的反卷积模块对所述最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;
对所述第一目标尺度对应的目标特征以及所述第一目标尺度对应的目标初始特征进行融合处理,得到对应所述第一目标尺度的人脸特征;
将所述第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征;
所述通过所述轻量级的反卷积模块对所述最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征,包括:
通过所述通用卷积层对所述目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;
通过所述反卷积层对所述第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,所述第一比例小于所述第二比例;
通过所述可分离卷积对所述第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
2.根据权利要求1所述的方法,其特征在于,所述对所述人脸特征进行回归预测,得到所述待检测人脸的检测结果,包括:
确定对应各目标尺度的目标锚点框,所述目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,所述相邻目标尺度的尺度与所述当前目标尺度最接近且大于所述当前目标尺度;
根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
3.根据权利要求1所述的方法,其特征在于,所述检测模型为预先训练的检测模型,所述检测模型的训练方式包括:
获取训练集图像;
对所述训练集图像中各人脸进行标定,得到标定后的训练集图像;
将所述训练集图像输入构建的初始检测模型中,通过所述初始检测模型对进行人脸检测,并生成对应的检测结果;
根据所述检测结果以及所述标定后的训练集数据,计算所述初始检测模型的模型损失;
基于所述模型损失,对所述初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;
基于预设的训练参数,对所述参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
4.根据权利要求3所述的方法,其特征在于,所述对所述训练集图像中各人脸进行标定,得到标定后的训练集图像,包括:
确定所述训练集图像中各人脸的图像面积占比;
通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于所述图像占比阈值的人脸,得到标定后的训练集图像。
5.一种人脸检测装置,其特征在于,所述装置包括:
待检测图像获取模块,用于获取待检测图像,所述待检测图像中包括待检测人脸;
特征提取模块,用于通过检测模型对所述待检测图像进行特征的提取,得到人脸特征,所述检测模型包括轻量级的反卷积模块,所述轻量级的反卷积模块包括一个通用卷积层、一个反卷积层以及一个可分离卷积层;
回归预测模块,用于对所述人脸特征进行回归预测,得到所述待检测人脸的检测结果;
所述特征提取模块包括:
特征提取子模块,用于通过所述检测模型的各卷积模块对所述待检测图像进行多尺度特征的提取,得到对应各尺度的初始特征;
目标尺度确定子模块,用于从多个尺度中确定目标尺度,并确定对应各目标尺度的各初始特征为目标初始特征;
反卷积处理子模块,用于通过所述轻量级的反卷积模块对各所述目标初始特征进行反卷积处理,生成对应各所述目标尺度的人脸特征;
所述反卷积处理子模块包括:
最小目标尺度人脸特征确定单元,用于根据所述目标尺度中最小尺度的目标初始特征,得到对应最小目标尺度的人脸特征;
反卷积处理单元,用于通过所述轻量级的反卷积模块对所述最小尺度的目标初始特征进行反卷积处理,生成对应第一目标尺度的目标特征;
特征融合单元,用于对所述第一目标尺度对应的目标特征以及所述第一目标尺度对应的目标初始特征进行融合处理,得到对应所述第一目标尺度的人脸特征;
重复处理单元,用于将所述第一目标尺度对应的目标初始特征作为最小尺度的目标初始特征,并继续进行反卷积处理以及融合处理,直至得到对应所有目标尺度的人脸特征;
所述反卷积处理单元包括:
第一反卷积处理子单元,用于通过所述通用卷积层对所述目标初始特征进行第一反卷积处理,得到满足第一目标尺度的第一比例输出通道的第一特征;
第二反卷积处理子单元,用于通过所述反卷积层对所述第一特征进行第二反卷积处理,得到满足第一目标尺度的第二比例输出通道的第二特征,所述第一比例小于所述第二比例;
第三反卷积处理子单元,用于通过所述可分离卷积对所述第二特征进行第三反卷积处理,生成满足第一目标尺度对应输出通道的目标特征。
6.根据权利要求5所述的装置,其特征在于,所述回归预测模块包括:
目标锚点框确定子模块,用于确定对应各目标尺度的目标锚点框,所述目标锚点框包括当前目标尺度的锚点框以及相邻目标尺度的锚点框,所述相邻目标尺度的尺度与所述当前目标尺度最接近且大于所述当前目标尺度;
回归预测子模块,用于根据各目标尺度对应的目标锚点框,对各目标尺度的人脸特征进行回归预测,得到对应不同目标尺度的待检测人脸的检测结果。
7.根据权利要求5所述的装置,其特征在于,所述检测模型为预先训练的检测模型,所述装置还包括:
训练集图像获取模块,用于获取训练集图像;
标定模块,用于对所述训练集图像中各人脸进行标定,得到标定后的训练集图像;
检测模块,用于将所述训练集图像输入构建的初始检测模型中,通过所述初始检测模型对进行人脸检测,并生成对应的检测结果;
模型损失计算模块,用于根据所述检测结果以及所述标定后的训练集数据,计算所述初始检测模型的模型损失;
参数调整模块,用于基于所述模型损失,对所述初始检测模型进行模型参数的调整,得到参数调整后的初始检测模型;
迭代训练模块,用于基于预设的训练参数,对所述参数调整后的初始检测模型进行迭代训练,得到训练后的检测模型。
8.根据权利要求7所述的装置,其特征在于,所述标定模块包括:
图像面积占比确定子模块,用于确定所述训练集图像中各人脸的图像面积占比;
标定子模块,用于通过预设的掩膜模板去除图像面积占比小于图像占比阈值的人脸,并通过标定框对图像面积占比大于或等于所述图像占比阈值的人脸,得到标定后的训练集图像。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110009932.2A CN112699826B (zh) | 2021-01-05 | 2021-01-05 | 人脸检测方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110009932.2A CN112699826B (zh) | 2021-01-05 | 2021-01-05 | 人脸检测方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112699826A CN112699826A (zh) | 2021-04-23 |
CN112699826B true CN112699826B (zh) | 2024-05-28 |
Family
ID=75514766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110009932.2A Active CN112699826B (zh) | 2021-01-05 | 2021-01-05 | 人脸检测方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699826B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106910247A (zh) * | 2017-03-20 | 2017-06-30 | 厦门幻世网络科技有限公司 | 用于生成三维头像模型的方法和装置 |
CN110263731A (zh) * | 2019-06-24 | 2019-09-20 | 电子科技大学 | 一种单步人脸检测*** |
CN110427821A (zh) * | 2019-06-27 | 2019-11-08 | 高新兴科技集团股份有限公司 | 一种基于轻量级卷积神经网络的人脸检测方法及*** |
WO2019223254A1 (zh) * | 2018-05-21 | 2019-11-28 | 北京亮亮视野科技有限公司 | 多尺度轻量级人脸检测模型的构建方法及基于该模型的人脸检测方法 |
WO2020029572A1 (zh) * | 2018-08-10 | 2020-02-13 | 浙江宇视科技有限公司 | 人脸特征点检测方法及装置、设备及存储介质 |
CN111325781A (zh) * | 2020-02-17 | 2020-06-23 | 合肥工业大学 | 一种基于轻量化网络的位深度提升方法及其*** |
CN111400535A (zh) * | 2020-03-11 | 2020-07-10 | 广东宜教通教育有限公司 | 轻量级人脸识别方法、***、计算机设备及存储介质 |
WO2020151489A1 (zh) * | 2019-01-25 | 2020-07-30 | 杭州海康威视数字技术股份有限公司 | 基于面部识别的活体检测的方法、电子设备和存储介质 |
CN112132164A (zh) * | 2020-11-20 | 2020-12-25 | 北京易真学思教育科技有限公司 | 目标检测方法、***、计算机装置及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10354159B2 (en) * | 2016-09-06 | 2019-07-16 | Carnegie Mellon University | Methods and software for detecting objects in an image using a contextual multiscale fast region-based convolutional neural network |
US10628705B2 (en) * | 2018-03-29 | 2020-04-21 | Qualcomm Incorporated | Combining convolution and deconvolution for object detection |
-
2021
- 2021-01-05 CN CN202110009932.2A patent/CN112699826B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106910247A (zh) * | 2017-03-20 | 2017-06-30 | 厦门幻世网络科技有限公司 | 用于生成三维头像模型的方法和装置 |
WO2019223254A1 (zh) * | 2018-05-21 | 2019-11-28 | 北京亮亮视野科技有限公司 | 多尺度轻量级人脸检测模型的构建方法及基于该模型的人脸检测方法 |
WO2020029572A1 (zh) * | 2018-08-10 | 2020-02-13 | 浙江宇视科技有限公司 | 人脸特征点检测方法及装置、设备及存储介质 |
WO2020151489A1 (zh) * | 2019-01-25 | 2020-07-30 | 杭州海康威视数字技术股份有限公司 | 基于面部识别的活体检测的方法、电子设备和存储介质 |
CN110263731A (zh) * | 2019-06-24 | 2019-09-20 | 电子科技大学 | 一种单步人脸检测*** |
CN110427821A (zh) * | 2019-06-27 | 2019-11-08 | 高新兴科技集团股份有限公司 | 一种基于轻量级卷积神经网络的人脸检测方法及*** |
CN111325781A (zh) * | 2020-02-17 | 2020-06-23 | 合肥工业大学 | 一种基于轻量化网络的位深度提升方法及其*** |
CN111400535A (zh) * | 2020-03-11 | 2020-07-10 | 广东宜教通教育有限公司 | 轻量级人脸识别方法、***、计算机设备及存储介质 |
CN112132164A (zh) * | 2020-11-20 | 2020-12-25 | 北京易真学思教育科技有限公司 | 目标检测方法、***、计算机装置及存储介质 |
Non-Patent Citations (2)
Title |
---|
一种轻量级的多尺度特征人脸检测方法;朱鹏;陈虎;李科;程宾洋;;计算机技术与发展(04);全文 * |
基于编解码残差的人体关键点匹配网络;杨连平;孙玉波;张红良;李封;张祥德;;计算机科学(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112699826A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109493350B (zh) | 人像分割方法及装置 | |
CN110473137B (zh) | 图像处理方法和装置 | |
CN106778928B (zh) | 图像处理方法及装置 | |
US9405960B2 (en) | Face hallucination using convolutional neural networks | |
WO2021017261A1 (zh) | 识别模型训练方法、图像识别方法、装置、设备及介质 | |
CN109829506B (zh) | 图像处理方法、装置、电子设备和计算机存储介质 | |
CN111047516A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
WO2018018470A1 (zh) | 一种去除图像噪声的方法、装置、设备及卷积神经网络 | |
CN111461170A (zh) | 车辆图像检测方法、装置、计算机设备及存储介质 | |
CN111968134B (zh) | 目标分割方法、装置、计算机可读存储介质及计算机设备 | |
CN114549913B (zh) | 一种语义分割方法、装置、计算机设备和存储介质 | |
CN111524145A (zh) | 图片智能裁剪方法、***、计算机设备及存储介质 | |
Lu et al. | Rethinking prior-guided face super-resolution: A new paradigm with facial component prior | |
CN113269149B (zh) | 活体人脸图像的检测方法、装置、计算机设备及存储介质 | |
WO2021174940A1 (zh) | 人脸检测方法与*** | |
CN110399826B (zh) | 一种端到端人脸检测和识别方法 | |
CN112883983B (zh) | 特征提取方法、装置和电子*** | |
CN113421276A (zh) | 一种图像处理方法、装置及存储介质 | |
WO2022063321A1 (zh) | 图像处理方法、装置、设备及存储介质 | |
CN112699826B (zh) | 人脸检测方法、装置、计算机设备和存储介质 | |
CN112348008A (zh) | 证件信息的识别方法、装置、终端设备及存储介质 | |
CN109871814B (zh) | 年龄的估计方法、装置、电子设备和计算机存储介质 | |
CN113723375B (zh) | 一种基于特征抽取的双帧人脸跟踪方法和*** | |
WO2022206679A1 (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN114445916A (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 |