基于深度学习的实时吸烟检测算法

基于深度学习的实时吸烟检测算法
陈睿龙,罗
磊,蔡志平+,马文涛
国防科技大学计算机学院,长沙410073+通信作者E-mail:************** 摘
要:在公共场所内吸烟,不仅对自身、他人身体健康造成潜在的危害,还存在造成火灾等现象的隐患。因
此,出于健康和安全方面的考虑,为机场、加油站、化工仓库等严禁吸烟的场所,设计了一种基于深度学习的能快速发现和警告吸烟行为的检测模型。该模型使用卷积神经网络对摄像头所拍摄的视频流输入帧进行处理,经过图像特征提取、特征融合、目标分类以及目标定位等过程,定位烟头的位置,进而判断出吸烟行为。常见的目标检测算法针对小目标物体检测效果不甚理想,检测速度亦有待提高。通过设计的一系列卷积神经网络模块,不但减少了模型计算量,加快了推演速度,满足实时性要求,而且提高了小目标物体(烟头)检测准确率。此外,运用了一些模型训练的技巧,提升了模型的鲁棒性。由于缺乏现有数据集,自制了一个与吸烟行为相关的数据集。对比实验证明了提出的算法在本数据集以及一些公开数据集上有着更好的检测效果。关键词:计算机视觉;微型目标检测;实时性;吸烟检测;鲁棒性文献标志码:A
中图分类号:TP391.4
Algorithm for Real-Time Smoking Detection Based on Deep Learning
CHEN Ruilong,LUO Lei,CAI Zhiping +,MA Wentao
College of Computer Science,National University of Defense Technology,Changsha 410073,China
Abstract:In public,smoking behavior not only causes pathological harm to human health,but also exerts danger of fire hazards,etc.For the health and safety considerations,this paper designs a real-time smoking detection model based on deep learning for airports,gas stations,chemical warehouses and other places where smoking is strictly prohibited.This model uses a convolutional neural network to process the input frame from the video stream captured by the webcam.Through the process of image feature extraction,feature fusion,target classification and target posi-tioning,the coordinate of the cigarette is located,and then the smoking behaviors can be found out.Common object detection algorithms are not ideal for small target objects and the detection speed needs to be improved.This paper designs a series of convolutional neural network modules to reduce the amount of model parameters and pick up the inference speed to meet real-time requirements as well as improving the accuracy of small target object (cigarette)detection.This paper also comes up with some training skill
s to make the model more robust.Due to the lack of relevant dataset,this paper produces a dataset related to smoking behaviors.Through comparative experiments,it is proven that the algorithm proposed in this paper has better detection effects on proposed dataset and some public datasets.Key words:computer vision;small object detection;real-time;smoking detection;robustness
计算机科学与探索
1673-9418/2021/15(02)-0327-11doi:10.3778/j.issn.1673-9418.2009069
基金项目:国家自然科学基金(62072465)。
This work was supported by the National Natural Science Foundation of China (62072465).收稿日期:2020-08-12
修回日期:2020-10-10
Journal of Frontiers of Computer Science and Technology
Journal of Frontiers of Computer Science and Technology计算机科学与探索2021,15(2)
随着技术不断地进步,吸烟检测的方法也随之不断地改进。传统吸烟检测的方法通常都是通过烟雾传感器、可穿戴设备等物理方式进行检测。然而,这些方法存在诸多局限:一是室外场景中烟雾浓度被极大地稀释,无法被烟雾传感器所感应;二是可穿戴设备执行检测的成本较高,需要人人拥有。此外,这种方法通过判断肢体多个部位的运动轨迹和速度,与吸烟的动作行为进行模式匹配,进而通过支持向量机(support vector machine,SVM)等机器学习分类方法对匹配度进行判断,故而该类方法的检测的准确率和效率比较低[1-2]。
除了使用物理设备的方法检测吸烟外,还有学者尝试使用传统图形学中目标检测的方法检测吸烟,这类方法主体分为三个步骤[3]:首先设定不同的大小和步长滑动窗口,然后将所有的窗口在图像上每个位置进行滑动。对于每个窗口,通过方向梯度直方图(histogram of oriented gradient,HOG)或尺度不变特征变换(scale-invariant feature transform,SIFT)方法提取出待测物体特征,最后使用分类算法对每个滑动窗口进行分类,比如SVM、Adaboost等方法,选取最高得分的滑窗作为检测结果。但是这类方法存在如下缺陷:首先是检测效果不理想,易受到其他物体干扰,并且定位不准确,依赖预设滑动窗口尺寸与滑动步长;其次该方法计算量也大,需要对每个滑动窗口进行特征处理与分类判断;最后手动提取特征的方式和过程比较复杂,不具备泛化性。
2012年AlexNet网络模型诞生,并在当年获得了ImageNet图像分类比赛的冠军[4],由此,无论是学术界还是工业界,都对深度学习在计算机视觉领域中的运用给予了广泛的关注,如人脸识别、车辆检测
等。本文将吸烟检测问题归为目标检测问题,即通过定位行人与烟头的位置关系来判断是否存在吸烟现象。
本文通过借鉴YOLO(you only look once)[5]高性能检测算法,设计了一种轻量级吸烟检测网络模型,该模型通过融合多层次不同的特征图向量,增加注意力机制模块、残差模块以及SPP(spatial pyramid pooling)模块等改良了原网络结构,提高了小型目标的检测准确率;同时,减少了模型的卷积核参数,进而减少了模型计算量,加快了模型最终的推演速度,达到满足检测实时性要求。针对模型鲁棒性问题,
通过训练数据增强、改变损失函数与激活函数、增加正则化方法、利用上下文信息等方法提高了本文模型的鲁棒性。
椒盐噪声
1相关工作
传统目标检测算法包括VJ(Viola and Jones)级联检测器[6]、HOG检测器[7]以及DPM(deformable parts model)模型[8]等,存在着计算量大、手工提取特征复杂、特征表征性能较弱以及模型的泛化能力较差等问题,很难解决不同场景中的吸烟检测问题。而卷积神经网络中的卷积核作为“天然”的滤波器,具有优越的特征提取能力,这也正是其在计算机视觉领域中取得颠覆性突破的主要因素之一。除此之外,使用多种场景的数据集进行训练,使得卷积神经网络模型具有很强的泛化能力,因此,目前
深度学习已成为目标检测领域的首选解决方案。
通常目标检测所使用的经典特征提取网络如VGG(visual geometry group)[9]、GoogLeNet[10]、ResNet[11]等,之所以使用在图像分类领域里面取得显著成效的预训练网络结构,是因为其具有强大的特征抽取能力,通过提取到的大量特征完成高难度的多图像分类任务。而目标检测同样需要大量的图像特征,因此检测模型的骨干网络(backbone)通常会使用GoogLeNet的Inception结构、ResNet的残差结构等,不仅可以避免神经网络反向传播更新权重时的梯度消失等问题,还能够加速模型收敛。
目标检测算法发展至今,出现了两大流派,双阶段和单阶段检测算法。前者的代表算法主要包括Faster RCNN(region convolutional neural networks)[12]、FPN(feature pyramid networks)[13]、RFCN(region fully convolutional networks)[14]以及Cascade RCNN[15]等。以Faster RCNN为例,这类算法首先通过基础卷积神经网络提取图像特征,输出特征图。再使用RPN (region proposal network)网络,对输入的特征图中的每个位置,使用softmax预测2×k个分数,k为本文预设的锚框(anchor)个数,2表示前景和背景两个类别的得分,同时利用边框回归,对每个特征图的位置预测4×k个坐标回归特征矩阵,使得前景样本的锚框通过变换更加接近真值,之后通过候选网络层(proposal layer)通过非极大值抑制(non maximum suppression,NMS)[16]和得分排序,筛选生成候选区域(region pro-
328
陈睿龙等:基于深度学习的实时吸烟检测算法
posals)。综合候选区域与之前得到的特征图信息,经过ROI(region of interest)池化生成候选特征图(pro-posal feature maps),将其传输至全连接层完成最终的物体分类和边框回归定位。后者的代表算法则包括YOLO、SSD(single shot multibox detector)[17]、RetinaNet[18]以及EfficientDet[19]等。以YOLO为例,这类算法将分类问题转换为回归问题,不需要经过提取候选区域步骤,而是直接通过卷积神经网络得出目标的位置与类别。通过基础卷积神经网络提取图像特征后,直接在每个特征图上执行目标分类与边框回归定位,同样借助锚框加速边框回归,输出向量再经过非极大值抑制得出最终预测结果。两类算法各有优劣,单阶段的算法长于速度,具有较快的模型推演速度,但在预测精度方面稍逊一筹;相比之下,双阶段的检测算法的目标检测准确率较高,但模型推演速度较慢。
基于视觉的吸烟检测易受图像噪声干扰进而产生误检,并且烟头目标较小,难以发现与识别,因此,目前学术界中,基于目标检测的吸烟检测方法较少,相关工作和理论并不完善。本文借助目标检测理论的基本思路,将烟头视为待检目标,通过设计卷积神经网络的结构,在本人制作的数据集中进行训练,与经典的深度学习检测器YOLO、SSD、Faster RCNN等相比,对吸烟行为的检测,具有更高的检测准确率和检测速度。此外,在一些公开数据集中,本文的算法模型也有着更好的表现。
2吸烟检测难点以及解决方案
通过深度学习目标检测来完成吸烟检测的方法,存在着如下难点:
2.1小目标检测
首先,需要对小目标物体给出相关定义。在微软COCO数据集中,存在着对小物体目标的描述,指的是目标面积小于32×32的物体,单位为像素。小目标物体由于分辨率较低,图片拍摄过程中较之于大物体更容易出现模糊、抖动等现象的干扰,并且抗噪能力较弱,即使是常见的图形学噪声如椒盐噪声、高斯噪声等也容易对目标物体造成较大程度的干扰,通过去噪手段也很难完全恢复小物体目标的特征。其次,小目标物体受制于其本身尺寸,携带的图形学信息较少,因此在提取特征的过程中,能提取到的特
征非常少。
针对小目标物体难以发现的问题,可以利用模型浅层的特征图(feature map)向量。特征图是与目标检测相关的基本概念,输入图像经过一个卷积核或者池化核后,输出的二维矩阵向量就是特征图,与特征图息息相关的另一个概念为感受野(receptive field)。所谓感受野,指的是卷积神经网络每一层输出的特征图上每个位置的输出向量在输入图片上映射的区域大小。感受野的大小与原输入图像所经
过的卷积层或者池化层中核的尺寸呈平方正相关关系,感受野越大的特征图,它的每个位置的向量所能“感受”的区域越大,越能够捕捉深层次的高维隐藏特征以及大型物体目标的特征;相反,小感受野的特征图通常捕捉浅层细节特征以及小型物体目标的特征。对于卷积神经网络来说,浅层网络的特征图所具有的感受野较小,可以发现较小的目标物体。同理,如果模型的卷积神经网络层数较多,深层的特征图感受野越大,特征图中的一个向量代表了原图较大区域的特征,则更多地将小物体周围背景或者其他物体的特征纳入特征表示,从而使模型丧失发现小物体的能力。浅层网络通常提取的特征偏向于细节特征,主要包括边缘、形状等方面;而深层网络则提取较为抽象的特征,如图1所示(左图为原图,从左至右特征图所在的卷积层深度依次增加)。对此,可以借鉴FPN网络的思想,将深浅层次的特征图进行融合,既尽可能多地保留小物体的特征,又可以很好地检测不同尺度下的待测物体。这里的融合指的不是特征图对应二维空间位置向量值的相加,而是在维度(channel)层面的扩张,可以理解为多张特征图的“堆叠”。
注意力机制同样能够增强模型检测小物体目标能力。注意力模型最初被应用于机器翻译任务,2017年,SENet(squeeze-and-excitation networks)[20]通过设计的注意力模块,取得了最后一届ImageNet图像分类比赛的冠军,
标志着注意力机制在计算机视觉Fig.1Feature maps of different scales
图1不同尺度特征图
329
Journal of Frontiers of Computer Science and Technology 计算机科学与探索2021,15(2)
领域中的成功运用。2018年,注意力模型CBAM [21](convolutional block attention module )在SENet 的基础上,设计了结合空间位置和特征通道两个维度的注意力模块,取得了更好的效果,如图2所示。
特征通道表示某层特征图的个数,与该层卷积核的个数相等。假设特征图的输入为c (特征通道数)×h (特征图高度)×w (特征图宽度),通过将特征图的h
和w 进行平均池化和最大池化压缩成一维,之后将这两个c ×1×1的输出向量加和,得出c ×1×1的输出向量,将其作用于原输入特征图执行卷积相乘运算,来增强特征通道维度的注意力。空间位置的特征注意力机制则分别将平均池化和最大池化作用于输入特征图,再将二者在特征通道维度进行拼接,此时特征图变为2c ×h ×w ,然后将其输入至一个卷积核个数为c 的卷积层,最后与原特征图进行卷积相乘,完成空间位置的注意力增强。实验证明[20-21],注意力模块能够帮助卷积神经网络提取到更加鲁棒的特征,本文设计了注意力模块来解决小目标物体难以捕捉的问题,它的设计借鉴了CBAM 的设计思想,模块的上半部分通过融合经过最大池化层和平均池化层的特征图向量,增强了空间位置的注意力,下半部分通过加和经过最大池化层和平均池化层的特征图向量,增强了特征通道维度的注意力。
2.2轻量级特征提取网络
吸烟检测需要关注实时性问题,需要及时发现
并警示吸烟行为,由于吸烟动作和过程较为短暂,若不实时地执行检测,及时作出响应,则容易出现漏检的情况。目标检测是两个子任务的结合,即图像分类和边框定位,而两者都需要大量的待检物体的特征。因此,检测模型通常由两部分组成,骨干网络(backbone )和执行检测的头部(heads )。骨干网络通
常使用大量的卷积层提取特征,头部则使用所提取的特征完成目标定位和分类过程,模型推演的时间
损耗主要在于骨干网络。骨干网络的规模之所以越来越庞大,是为了学习更为复杂的非线性映射关系,提取更多潜在的特征,但随着层数和参数量增多,推演计算量也不可避免地增加,因此需要在保证能够提取到充分的目标特征的基础上,设计轻量的特征提取网络。
实际上,在一些场景中部署检测模型,需要考虑硬件资源的计算能力,这也是设计轻量级特征提取网络的另一重要因素。比如将模型部署到Nvidia TX2等开发板上,由于开发板的算力远远达不到深度学习专用显卡的算力,模型的推演速度将进一步被减缓,因此设计轻量型特征提取网络更加具有研究意义。本文设计了残差模块和SPP 模块,并将其与普通卷积层组建形成骨干特征提取网络。与常规的卷积神经网络层组成的骨干特征提取网络相比,本文的骨干网络在不增加参数量的情况下,提高了特征提取能力。
残差模块ResNet 在图像分类任务中取得了显著成效,其具体的结构如图3所示,ResNeXt [22]借鉴继承了ResNet 的残差思想,
并且其通过实验证明了其提
Fig.3
ResNet module (left)and ResNeXt module (right)图3
ResNet 模块(左)与ResNeXt 模块(右
Fig.2Convolutional attention module 图2
卷积注意力模块
330
陈睿龙等:基于深度学习的实时吸烟检测算法
出的分组多基数路径结构可以在不增加参数复杂度的前提下学习更多的特征,提高了分类准确率,同时还减少了模型超参数的数量。因此,本文借鉴了ResNeXt 模块,如图4(a )所示,本文在检测模型的特征提取的骨干网络中设计了残差模块,代替了传统的简单卷积网络层。该模块首先通过卷积步长为2的卷积操作完成特征图的下采样过程,之后参照了ResNeXt 结构,通过建立的32组多路径结构,完成分组卷积,同时使用了两个残差组卷积的堆叠,通过双层残差进一步增强网络的特征学习能力,避免出现梯度爆炸、梯度消失等问题。
SPPNet [23](空间金字塔池化)原本是为了解决卷积层和全连接层相接时,不同尺寸的输入特征图无法产生固定长度的特征表示,从而导致卷积层输出与全连接层输入连接失败的问题。本文则是利用了SPPNet 的潜在特征融合特性,它利用不同步长的最大池化核作用于输入特征图,得到不同大小感受野
的输出特征图,然后通过特征通道维度的向量拼接,融合了多级特征,加强网络对抽象特征、深层语义特征的学习能力。相比于执行多次卷积操作后,再进行向量拼接,取得相同效果的同时,显著减少模型运行复杂度和参数计算量。因此,本文借鉴了SPPNet 模块,在骨干网络的末尾设计了SPP 模块,如图4(b )所示,它包含了四路不同尺寸的池化核模块,输入的特征图分别通过四个池化层后会产生四类感受野面积不同的特征图,其中通过1×1池化核的特征图感受野最小,通过13×13池化核的特征图感受野最大感受野范围正比于池化核的尺寸。SPP 模块通过融合四种不同感受野的特征图向量,
弥补了整体网络下采样次数不足的缺陷,进而有利于发现目标物体整体特征以及深层语义特征。
2.3模型鲁棒性
基于深度学习的目标检测算法模型除了主体是
由卷积神经网络构成,还包括了常规的组件,
如激活
Fig.4Basic network module of detection model 图4
检测模型的基础网络模块
331

本文发布于:2024-09-21 20:34:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/359090.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:特征   检测   目标   模型   卷积   物体   网络   吸烟
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议