一种改进的多任务级联卷积神经网络人脸检测算法

来源:优秀文章 发布时间:2023-03-27 点击:

李艳灵,王莎莎,杨志鹏

(信阳师范学院 a. 计算机与信息技术学院; b. 图书馆, 河南 信阳 464000)

人脸识别作为计算机视觉领域的关键技术之一,已经被广泛应用于档案管理系统、安全验证系统、小区安防等多个领域。近年来,随着深度神经网络在目标监测领域的兴起,学者们提出了很多基于深度学习的人脸检测方法。例如,LI等[1]提出了Cascade CNN人脸检测方法,该方法在检测过程中出现了因增加校正网络致使计算时长增加的问题。REDMON等[2]提出了占据速度优势的YOLO算法,但不能很好地满足小群体检测准确率的实际要求。

采用区域选取网络(Region Proposal Network, RPN)来提取候选区域的R-CNN[3]是目标检测中经典的算法之一,但因提取多个候选区域的原因致使运算速度变得缓慢。相比于采用RPN网络的R-CNN, FAST-RCNN[4]采用卷积神经网络选取区域的方式大大提高了检测速度。

ZHANG等[5]提出的MTCNN算法在一些场景的检测过程中平衡了检测速度与准确率。相关学者在此基础上提出了基于MTCNN改进的人脸检测算法[6-7],但大多都是针对简单场景中的人脸检测任务,而面对一些复杂人脸检测任务时,该算法的实时性与准确性仍达不到实际要求。因此,本文提出一种改进的非极大值抑制(non-maximum suppression, NMS)算法来优化MTCNN人脸检测算法。实验结果表明:改进的算法在不损耗其鲁棒性的同时提高了人脸检测的准确率。

MTCNN算法中人脸检测的实质就是筛选人脸候选框的过程,在这个过程中使用的筛选算法是NMS算法。该算法在目标检测领域被广泛应用,其主要目的是更好地排除冗余的检测框,保留精准度更高的回归窗口。

在传统的NMS算法中,交并比(Intersection over Union, IOU)阈值的设置会直接影响到候选框的保留或者删除,若阈值过高则达不到过滤的作用,而阈值设置过低则会删除掉大量的候选框,难以实现分类平衡。因此,在实际应用的过程中找到一个合适的阈值是困难的。

IOU是判断人脸框扰动程度的指标,判断的对象为正样本、局部样本和负样本,各自对应的阈值分别为IOU>0.65、0.4

图1 两个区域的交与并Fig. 1 Intersection and union of two regions

IOU的计算公式为:

(1)

其中:A表示人脸候选框的面积,B表示训练数据集标定框的面积,∩表示两者的交,∪表示两者的并,最终输出候选框的精度可根据这个比值的大小去判断。

本文提出一种改进的NMS算法,该算法没有选择直接删除IOU大于预设阈值的候选框,而是将其保留,同时降低它的置信度,重新定义规则,再次比较。该算法的数学表达式如公式(2)所示。改进的NMS算法流程如算法1所示。

(2)

其中:Nt为阈值,M表示置信度打分最高的候选框,bi表示人脸候选框,si表示相应回归框。本文采用的是线性加权的计算方式,该计算方式仅包含了1次比较、1次乘法和1次减法,计算量较小,并且可以缓解分类不平衡问题。

算法1改进后的Better-NMS算法

输入:

T={(s1,score1),(s2,score2),…,(sN,scoreN)},其中si表示第i个窗口,scorei∈[0,1]表示第i个窗口的置信度打分。

输出:

result[1,2,…,N],result[i]用来表示窗口是否被删除,为1表示被删除,为0表示不被删除。

(1)将输入的置信度打分按照score从大到小排序,result[1,2,…,N]←0,Nt表示窗口是否被删除的阈值。

(2) fori←1 toNdo

(3) forj←i+1 toNdo

(4) if (result[i=1]) then

(5) continue

(6) end

(7) if (result[j=0]) then

(8) if (IOU(si,sj)>Nt) then

(9)si=si(1-IOU(M,bi))

(10) end

(11) result[j=1]

(12) end

(13) end

(14) end

MTCNN人脸检测算法使用改进的NMS算法在筛选人脸候选框时,能够避免一刀切的情况发生。根据公式(2)对图像候选框的分类置信度进行修改,若该候选框的新置信度低于预设阈值,则删除;否则在维持新置信度的情况下保留该框;循环迭代至所有候选框都被标记为保留或删除时,结束迭代,最终输出检测结果。改进的MTCNN算法能够更好地排除冗余的图像候选框,有效缓解了分类不平衡问题,同时保留了精准度更高的回归窗口,进而确保输出的检测结果更加准确。

MTCNN模型训练的实质是一个为了实现人脸分类、人脸回归以及人脸关键点定位等多种任务的学习过程。MTCNN模型在训练之前要先依据IOU将训练集分为正样本、负样本、局部样本和关键点样本4个部分,4个部分的比例大约为1∶3∶1∶2。不同任务的学习所利用的训练集样本不同:可以利用正样本和负样本的数据训练和学习人脸分类任务;
可以利用局部样本和正样本的数据训练和学习人脸回归任务;
可以利用关键点样本进行训练和学习人脸关键点定位任务。

MTCNN模型的3个子网络在训练过程中主要实现人脸分类、人脸回归以及人脸关键点定位,所以损失函数也包含3个部分。每个部分损失函数都使用梯度下降法进行系数调整。

(1)人脸分类任务

人脸分类任务属于一个二分类问题,网络的输入结果为人脸图像的概率值,因此可以在网络的训练过程中采用交叉熵损失函数进行二分类任务的学习,具体的计算公式如式(3):

(3)

(2)人脸回归任务

人脸回归反映的是真实人脸与训练得到的候选框之间的偏移,最终输出的值是人脸候选框的位置信息,这些信息主要由两部分组成:一部分为人脸候选框的左上角的二维坐标,另一部分是候选框窗口的高度和宽度。可以采用均方差损失函数对边框进行修正学习,其计算公式如式(4):

(4)

(3)人脸关键点定位任务

人脸关键点定位任务与人脸回归任务都是回归问题,均可利用均方差损失函数进行关键点的定位,两者都是将网络训练得到的预测值与数据集中的真实值之间的差值最小化。同样采用均方差损失函数去对边框进行修正学习,具体损失值的计算公式如式(5):

(5)

最后,针对一个样本集中不同类型训练子样本与不同损失函数之间的关系,以及各个损失之间的偏重,级联卷积神经网络最终的损失函数如公式(6)所示。

(6)

3.1 数据集构建

WIDER Face[8]数据集共有32 203张人脸图像,而带有人脸标注的图片有393 703张。该数据集提供了多种环境的人脸图像,并且随机按照4∶1∶5的比例划分为训练集、验证集和测试集。这些人脸图像不仅规模较大,而且拍摄的场景也比较复杂。也正因该数据集呈现出极端的复杂性,所以标注和评价的信息更为准确。因此,本算法选用该数据集进行实验。WIDER Face数据集的部分样本如图2(a)所示。

图2 数据集样本示例Fig. 2 Data set sample example

FDDB[9]数据集是在自然环境下拍摄的,共计2845张,包括彩色图像和灰度图像,有5171张标注了详细人脸坐标和标签的人脸。数据集中包含了不同的姿态、阴影、低分辨率和失焦等情况下的人脸图片,是一个难度较大的人脸测试数据集。FDDB数据集的部分样本如图2(b)所示。

3.2 实验环境

实验是在配置为i7-6700处理器,8 G内存,GTX1060显卡,Windows操作系统下进行的。

3.3 检测性能对比

为了验证改进的MTCNN算法在人脸检测任务上的性能,实验选择VJ[10]算法、PICO[11]算法、Faster RCNN[12]算法以及传统的MTCNN算法与改进的算法在WIDER Face和FDDB数据集上进行了训练和评估测试。

图3(a)和(b)分别展示了改进的MTCNN算法在WIDER Face数据集上的部分检测结果和在FDDB数据集上的部分检测结果,识别结果中左上角的标注为人脸检测的置信度。从图中可以看出,改进的MTCNN算法具有较好的检测效果。具体实验结果如表1所示。

图3 数据集上的部分人脸检测结果Fig. 3 Face detection results on the face data set

表1 数据集WIDER Face 上的实验结果Tab. 1 Experimental results on the data set WIDER Face

由表1可知,经过NMS算法优化的MTCNN算法在WIDER Face数据集上表现出很好的检测性能。从实验结果可以看出,VJ和PICO检测算法的召回率极低,而改进的MTCNN算法与Faster RCNN均有较高的召回率,但两者相比,改进的MTCNN算法在召回率上高出后者约12%。这表明改进的MTCNN算法拥有更好的过滤候选框能力,能够很好地解决候选框筛选不均衡的问题。同时,实验结果显示改进的MTCNN算法的检测准确率较改进前的MTCNN算法的检测准确率高,这表明改进的MTCNN算法检测性能得到了提升。

为了测试所提算法在复杂度更高的环境中的检测能力,在FDDB数据集上再次训练评估了5种算法。根据各个算法在FDDB数据集上的实验结果,计算并绘制了受试者工作特征曲线(receiver operating characteristic curve, ROC)。对比ROC曲线如图4所示。

图4 ROC曲线对比图Fig. 4 ROC curve comparison chart

由图4可知,VJ算法与PICO算法较其他3种算法,随机性较弱,特征性分布不够广。在RCO曲线中,若误检率越接近于0,召回率越接近于1,则说明该算法的性能越好;
若ROC曲线与坐标轴围成的面积(Area Under Curve, AUC)越接近1,则说明检测方法真实性越高。从实验结果中可以明显地看出,改进的MTCNN人脸检测算法在误检率为0时,召回率约为0.535,显然高于包括传统MTCNN算法在内的4种对比算法,并且它的AUC值也高于这4种对比算法,所以改进的MTCNN算法泛化能力较强,能够很好地区分出人脸区域和非人脸区域,检测精准度也比较高。

综上所述,改进的MTCNN人脸检测算法与传统的人脸检测算法相比,在两个标准数据集上都有着很好的检测性能。与其他人脸检测方法相比,改进的MTCNN算法具有快速筛除大量非人脸区域,识别更精准等优点。

提出了一种改进的多任务级联卷积神经网络人脸检测算法,该改进算法对图像候选框的分类置信度进行了修改,重新定义了判断人脸框扰动程度的规则,对于IOU大于预设阈值的候选框,没有选择直接删除,而是将其保留的同时降低其置信度,有效地避免了一刀切的情况发生。实验结果表明:该改进方法能够更好地排除冗余的图像候选框,在有效缓解分类不平衡问题的同时保留精准度更高的回归窗口,进而确保输出的检测结果更加准确,算法的检测准确率更高。

猜你喜欢 候选框置信度集上 重定位非极大值抑制算法光学精密工程(2022年13期)2022-08-02一种基于定位置信度预测的二阶段目标检测方法小型微型计算机系统(2022年4期)2022-05-09面向自然场景文本检测的改进NMS算法计算机工程与应用(2022年1期)2022-01-22硼铝复合材料硼含量置信度临界安全分析研究核科学与工程(2021年4期)2022-01-12Cookie-Cutter集上的Gibbs测度数学年刊A辑(中文版)(2020年2期)2020-07-25系统可靠性评估与更新方法机电产品开发与创新(2020年2期)2020-05-07基于深度学习的重叠人脸检测计算机技术与发展(2020年2期)2020-04-15链完备偏序集上广义向量均衡问题解映射的保序性数学物理学报(2019年6期)2020-01-13R语言在统计学教学中的运用唐山师范学院学报(2018年6期)2018-12-25正负关联规则两级置信度阈值设置方法计算机应用(2018年5期)2018-07-25推荐访问:卷积 神经网络 算法
上一篇:区块链技术重塑社会信任的传播学溯源
下一篇:基于自供电调控SERS基底的miRNAs多元分析研究

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有