轨道交通视频中乘客口罩佩戴检测算法研究*

2022-12-10 06:34李永玲曹志威谢征宇吴志宇
城市轨道交通研究 2022年12期
关键词:人脸轨道交通口罩

李永玲 秦 勇 曹志威 谢征宇 吴志宇,3

(1.北京交通大学轨道交通控制与安全国家重点实验室,100044,北京;2.北京交通大学交通运输学院,100044,北京;3.北京交通大学软件学院,100044,北京∥第一作者, 硕士研究生)

新冠病毒(COVID-19)的爆发给社会经济带来了巨大的影响。轨道交通作为复工复产的主要交通工具,其空间密闭、人员密集且流动性广的特点有利于病毒的传播。为了降低人们在公共场所感染新冠肺炎的概率,我国疾病控制和预防中心要求乘客乘坐轨道交通(地铁、火车)时须佩戴口罩[1]。但是轨道交通防疫人员有限,因此需要口罩智能识别算法来检测安检口、闸机口及大厅等场所的乘客是否佩戴口罩,并设置自动语音提醒。这可以提高进站速度,减轻轨道交通防疫人员的工作压力[2-3]。

佩戴口罩检测研究属于人脸检测的范畴。基于深度学习的人脸检测算法表现较好[4]。文献[5]提出了一种单步多尺度目标检测器(Single Shot MultiBox Detector,简为SSD)[6]的口罩检测模型,其通过K-Means聚类的方法确定标注数据集中人脸框的长宽比分布,修改SSD算法的锚框(anchor)比例。该检测算法符合实时性要求,但是没有针对轨道交通场景做适配。文献[7]在RetinaNet模型的基础上提出了口罩检测模型,以ResNet为特征提取骨干网络,增加了卷积块注意力机制(Convolutional Block Attention Module,简为CBAM)来调整感受野的大小使其关注感兴趣的检测区域。由于深度学习算法的训练需要大量的数据集,文献[8]提出了口罩遮挡人脸检测数据集,包括模拟口罩人脸数据集和真实口罩人脸数据集。在数据集中,人脸目标较大,且不包含复杂的现实背景场景。本文提出了一种针对轨道交通场景的轻量化口罩检测算法。该算法可以部署在不具有图形处理器(Graphics Processing Unit,简为GPU)的设备上,实时检测乘客是否佩戴口罩。

1 轻量化口罩佩戴检测Mask-Det算法

为满足在轨道交通场景现有的中央处理器(Central Processing Unit,简为CPU)部署的要求,本文提出了一种轻量化口罩检测Mask-Det算法。图1为其网络结构图。该算法主要包括轻量化特征提取网络EfficientNet-B3、轻量化特征融合模块及损失函数模块。为了提高该算法在轨道交通场景的检测效果,本文收集整理了轨道交通口罩检测数据集,并使用迁移学习的方法提高该算法对轨道交通场景乘客是否佩戴口罩的适配性。

注:图中数值运算表示特定分辨率及通道数的特征图;例如,38×38×48 表示 38 像素×38 像素,且通道数为 48 层的特征图;MBconv 为深度可分离卷积的倒置线性瓶颈层;con1×1表示卷积核为 1×1 的卷积操作。

1.1 轻量化骨干网络EfficientNet

本文使用EfficientNet模型[9]作为特征提取网络模型。卷积神经网络通常采用扩展模型的深度、通道数或图像输入分辨率的方法来提高准确率。EfficientNet模型提出了一个复合的网络缩放方法,在节省计算资源的同时可获得更高的准确率。即:

(1)

式中:

d——网络深度;

w——通道数;

r——输入图像的分辨率;

α——分配给网络深度的计算资源参数,α≥1;

β——分配给网络通道数的计算资源参数,β≥1;

γ——分配给图像分辨率的计算资源参数,γ≥1;

φ——复合缩放系数,φ=1,2,…,7。

其中:α,β和γ是通过网格搜索(Grid Search)方法获得的常量;φ的值越大,需要的计算资源越多。每秒运算的浮点数(FLOPS)为卷积神经网络的卷积运算量,由于卷积运算在神经网络中占主导地位,故使用式(1)缩放卷积神经网络使FLOPS总量增加约(αβ2γ2)φ倍。而EfficientNet模型约束αβ2γ2≈2,因此,对于任意的缩放系数φ,运算量为原来的2φ倍。EfficientNet模型采用MnasNet结构[10]进行多目标神经网络结构搜索,构建了FLOPS为400 M的EfficientNet-B0骨干神经网络,其网络结构如表1所示。

表1 EfficientNet-B0骨干神经网络

EfficientNet-B3网络能较好地实现检测速度和准确率的平衡,因此本文选用EfficientNet-B3网络作为轻量化的特征提取网络模型[11]。从Efficient-Net-B0网络得到EfficientNet-B3网络需要经过两个步骤:第一步,设φ=1,通过网格搜索得到α=1.2,β=1,γ=1.15;第二步,令式(1)中φ=3,缩放EfficientNet-B0网络的深度、通道数和所输入图片的分辨率,即得到EfficientNet-B3网络,其结构见图2。

图2 轻量化特征提取网络EfficientNet-B3

本文将输入的图像调整为300像素×300像素,从EfficientNet-B3中提取第7、17、25层特征图,并在第25层特征图的基础上新增三层特征图。图1所示上述6层特征图的大小依次为38像素×38像素、19像素×19像素、10像素×10像素、5像素×5像素、3像素×3像素和1像素×1像素。为了与最终添加特征融合的Mask-Det网络对比,称该网络为Efficient-Mask网络。

1.2 高效的特征融合模块

浅层特征图包含更多的位置、细节信息,适用于检测小目标;但由于经过的卷积运算次数少,用于识别的语义信息不够丰富[12]。本文提出一种轻量化的特征融合方法,为浅层特征图融合高层特征图的语义信息,从而在没有降低算法实时性的同时,提高算法对于小人脸的检测准确率。

对38×38、19×19、10×10的3层特征图的信息进行融合。如图1所示,首先,采用1×1的卷积将上述3层特征图的通道数变为128;然后,对19×19、10×10的2张特征图做双线性差值上采样,得到3张相同维度的特征图;接着,对这3张特征图采用concatenate级联;最后,引入 L2Norm算法[6]归一化将级联后的特征图中每个位置的特征范数缩放到5。最终可得融合了高层语义信息和低层局部信息的38×38特征图,提高了算法对小目标人脸的检测效果。

1.3 损失函数

Mask-Det口罩检测算法的损失函数是分类损失Lconf和定位损失Lloc的加权,其中,Lconf是多个类别分类置信度c上的softmax损失[6],Lloc为预测值l和真实值g之间的Smooth L1损失。即:

θLloc(x,l,g))[6]

(2)

式中:

N——匹配的默认框数量,如果N=0,则L(x,c,l,g)=0;

x——指示参数;x=1表示t与g匹配,x=0表示t与g不匹配;

θ——定位损失Lloc的权重。

1.4 口罩佩戴检测数据集

基于深度学习的人脸检测算法需要大量的数据样本来进行训练。考虑到轨道交通运营的特殊性,难以获取大量的训练图像,故本文分别创建了公共场景和轨道交通场景的口罩检测数据集。2个数据集的示例图如表2所示。

表2 公开场景和轨道交通场景的口罩检测数据集示例图

公共场景的口罩检测数据集由WIDER Face[13]数据集、MAFA[14]遮挡人脸数据集及公共场景佩戴口罩人脸数据集组成,其中训练集包含22 631张图像,测试集包含3 000张图像。轨道交通场景的口罩检测数据集包含2 500张图像,其中训练集和测试集的图像数分别为2 200张与300张。

2 试验

2.1 试验环境与方法

本文试验采用了深度学习框架Pytorch[15],Ubuntu16.04系统,训练所用GPU(图形处理器)型号为NVIDIA P100。测试所用设备为Jeson Nano嵌入式设备、Intel Core i5-6300HQ CPU笔记本、Intel Core i7-8700K CPU台式机。

训练过程中使用的超参数为:批处理大小(batch size)为16,动量为0.9,初始化学习率为0.001;经过42轮(epoch)和52轮公共场景数据集训练,学习率分别下降为0.000 1、0.000 01。整个训练过程包含64轮(大约16万次迭代)。Mask-Det算法在轨道交通数据集上迁移学习4万次迭代,学习率为0.000 01。

为了验证模型的有效性,本文提出的Mask-Det算法将同Faster R-CNN[16]、YOLOv3[17]、SSD[6]等算法进行比较。首先,在公共场景的口罩检测数据集上进行各算法的训练;然后,采用迁移学习的方法,在轨道交通场景的数据集上继续训练Mask-Det算法,增加网络对轨道交通场景的适配性。

2.2 评价指标

本文采用目标检测算法常用评价指标,即平均准确率RAP、类别平均准确率RmAP、刷新帧率RFPS及模型大小(单位Mbit)。

p=t/(t+f)

(3)

re=t/(t+n)

(4)

(5)

(6)

式中:

t——真正例,即正确检测到的目标;

f——假正例,即误报的目标;

n——假负例,即未检测到目标;

p——查准率;

re——查全率;

C——目标检测的类别数;

RAP——平均准确率;

RmAP——类别平均准确率。

RFPS越大代表算法的实时性越高。模型越小代表算法越轻量化,越容易部署到现有的CPU设备上。

在实际应用中,准确率的定义为正确检测到的目标占测试集中所有真实值的比例。式(8)计算的准确率r准确率值与式(5)计算的召回率值相等。

r准确率=t/g

(7)

2.3 试验结果

轨道交通场景的测试集包含300张图像,共计1 027个佩戴口罩的人脸目标和327个未戴口罩的人脸目标,涵盖了进站口、安检口、大厅、电梯、站台、车厢等各场景的乘客。表3对比了本文提出的Efficient-Mask、Mask-Det算法与Faster R-CNN[16]、YOLOv3[18]、SSD[6]等主流目标检测算法在轨道交通数据集上的表现。测试设备均为Intel Corei5-6300HQ CPU笔记本。

由表3可看出:输入图像的分辨率越高、骨干网络模型越大,则检测的精度越高,但计算速度越慢;Faster R-CNN、YOLOv3及SSD等算法的输入图像分辨率分别为600像素×1 000像素、416像素×416像素、300像素×300像素,均大于等于Mask-Det算法的分辨率输入;但是Mask-Det的类别平均准确率为72.77%,明显高于Faster R-CNN和SSD算法。

表3 不同算法在轨道交通测试集上的结果对比

骨干网络用来提取输入图像的特征。表3中只有EfficientNet-B3是轻量化的骨干网络,所以采用该骨干网络的Mask-Det和Efficient-Mask模型较小、检测速度较快。Mask-Det的模型大小约为Faster R-CNN、YOLOv3、SSD算法模型的0.80倍、0.38倍、0.50倍;每秒处理的帧数是上述三种算法的210倍、7倍、2.1倍。Mask-Det算法在普通CPU上每秒处理21帧图像,满足乘客佩戴口罩检测的实时性要求。

表4为Mask-Det算法在轨道交通数据集、不同CPU设备上准确率和速度的测试结果。Mask-Det的检测准确率可以达到96.68%,即在300张轨道交通测试图像(包含1 354个目标(all ground truths))中,能正确识别到1 309个目标。Mask-Det算法在嵌入式设备Jeson Nano、Intel Corei5-6300HQ CPU及Intel Core i7-8700K CPU上的处理速度分别为7帧/s、21帧/s、61帧/s。需要强调的是,由于采用相同的训练权重,算法的准确率和运行设备无关,所以准确率相同,速度不同。用户可以按照进站口、安检口及电梯等位置的客流大小及乘客通行时间的长短来选择不同的设备,以检测乘客是否佩戴口罩。

表4 Mask-Det算法在不同CPU设备上的测试结果

2.4 各算法比较

各算法的检测结果对比如表5所示。FasterR-CNN算法是典型的分类和检测分开的二阶段算法。因此,与其它一阶段算法相比,Faster R-CNN算法的检测速度最慢,无法在普通的CPU设备上实现实时检测。此外,Faster R-CNN算法误报率高,可能误将耳朵或手识别为人脸,导致其平均类别准确率值较低。虽然YOLOv3算法对人脸检测的类别准确率只略低于Mask-Det算法,但该算法需先将输入图像的分辨率调整为416像素×416像素,再送入DarkNet-53特征提取网络,而其模型的参数量为240.1 Mbit,且检测速度仅为3帧/s,故该算法即使部署到轨道交通场景的现有设备上也无法满足实时检测的要求。

表5 不同算法的检测对比图

目前,许多研究通过单独增加卷积神经网络的d、w及r来优化算法。EfficientNet建立了3个维度之间的缩放关系,较好地达到了准确率和检测速度的平衡。本文提出的Efficient-Mask算法采用EfficientNet轻量化骨干网络及300像素×300像素的网络图像输入分辨率,在减少参数量的同时使速度也最快。卷积神经网络因其浅层特征图包含更多的空间细节特征,故常用于检测小目标,但其经过的卷积运算次数少、语义信息少,导致小目标人脸的检测准确率较低。为了解决该问题,本文提出Mask-Det算法,在Efficient-Mask算法的基础上增加了特征融合模块,将深层特征图的语义信息融合到用于检测小目标的浅层特征图上。特征融合模块增加了计算量,所以与Efficient-Mask算法相比,Mask-Det算法的模型参数量有少量增加,算法速度有所降低,但是类别平均准确率显著提高,满足部署到现场的轻量化和实时性、高准确率的要求。

由表5可见:Mask-Det算法的人脸识别框最全,说明其对小目标人脸的漏检率低,检测效果优于其他算法。此外,表5中每张人脸的识别框内均有相应算法对检测到目标的置信度数字评分,其中Mask-Det算法的评分最高。

最后,通过测试Mask-Det算法在3种不同设备上的速度和准确率,确定Mask-Det算法能满足轨道交通辅助不同场景工作人员检测的要求,可部署性强。

3 结语

本文提出了一种基于轨道交通监控视频的轻量化乘客佩戴口罩检测算法。首先,采用轻量化骨干网络EfficientNet提取特征图;然后,将深层特征图的语义信息融合到用于检测小目标的浅层特征图上,提高了该算法对小目标人脸的检测效果;最后,将该算法先后在整理的公共场景和轨道交通场景的数据集训练,提高了对轨道交通场景的适配性。

相比其他主流算法,本文提出的Mask-Det算法检测准确率高(类别平均准确率为72.77%、准确率达96.68%)、模型参数小(仅为90.8 Mbit)、检测速度快(61帧/s),能实时检测轨道交通安检口、闸机口、大厅等场所监控视频中的乘客是否佩戴口罩,有利于减少人员工作量、实现安防监控智能化,从而提高进站速度。

猜你喜欢
人脸轨道交通口罩
轨道交通产品CE认证论述
有特点的人脸
一起学画人脸
高速轨道交通发展趋势
戴口罩的苦与乐
因为一个口罩,我决定离婚了
雾霾口罩
三国漫——人脸解锁
基于CAN的冗余控制及其在轨道交通门禁环网中的应用
长得象人脸的十种动物