Smoke Recognition of Highway Surveillance Scenes Based on YOLOX Light-weight Network

  • DU Jian , 1 ,
  • SONG Jian-bin 1 ,
  • HU Hong-yi 2 ,
  • FU Xin-sha , 2
Expand
  • 1. China Merchants Xinzhi Technology Co., Ltd., Beijing 100073, China
  • 2. School of Civil Engineering and Transportation, South China University of Technology, Guangzhou 510640, China

Received date: 2022-05-18

  Online published: 2022-09-06

Abstract

Aiming at the low accuracy of smoke recognition in highway monitoring scene and high hardware device requirements in traditional convolutional neural network, a smoke recognition system in highway scene was constructed based on the new object detection network YOLOX. Firstly, smoke images with Smoke 100K datasets in multi-road monitoring scenes were collected and labeled. Then 4 kinds of YOLOX networks with different layers were built and trained. The depthwise separable convolution was used to simplify and optimize the main structure of YOLOX network, build the nano network. Based on this, Mosaic data enhancement method was used to expand the datasets during training process. Finally, by importing the test datasets, 4 kinds of YOLOX networks with different sizes were systematically tested and compared from the network detection accuracy, model size and total number of parameters. The results show that YOLOX series models can implement the smoke detection task well. The accuracy of nano network is 90.29 % and the total number of parameters is only 1/25 of m network, which means that using data enhancement method to improve the scene diversity of datasets can effectively advance the generalization and recognition accuracy of the network. In addition, depthwise separable convolution can effectively compress the size of the network and reduce the amount of calculation, retaining the feature extraction ability of the network.

Cite this article

DU Jian , SONG Jian-bin , HU Hong-yi , FU Xin-sha . Smoke Recognition of Highway Surveillance Scenes Based on YOLOX Light-weight Network[J]. Transport Research, 2022 , 8(4) : 118 -125 . DOI: 10.16503/j.cnki.2095-9931.2022.04.011

0 引言

截至2020年末,我国公路总里程已达到519.81万km[1]。公路运营安全受到全社会的广泛关注,高速公路特别是隧道路段一旦发生火灾,若不能第一时间发现险情,往往容易演变成重特大交通事故,给人民群众生命财产安全造成极大的威胁[2]。因此,火灾烟雾的及时识别与报警对于道路运营管理非常重要。随着我国高速公路的监控系统由初期的重点路段监控逐步发展为全路段无盲点的视频监控覆盖,基于监控视频图像对公路火灾事件进行识别研究非常重要。
早期多采用传统图像处理方式提取图像特征,建立烟雾识别模型。胡燕等[3]根据烟雾运动特征,通过Harris检测算法寻找特征点,计算运动矢量信息,实现多特征烟雾识别。刘鹏[4]融合背景差分法和RGB颜色特征检测获取图像中的疑似烟雾区域,并采用Adaboost分类器检测烟雾面积与边界。类似地,袁雯雯等[5]提出基于改进高斯混合模型(Gaussian Mixture Model, GMM)的林火烟雾识别算法,融合背景差分法提取场景光照特征,检测场景中相对完整的动态烟雾区域。然而传统图像处理方法的特征提取能力有限,建立的模型泛化能力不强,对于不同的场景,模型的检测效果往往差别很大。随着深度学习的发展,卷积神经网络(Convolutional Neural Networks, CNN)[6]在目标检测领域中发展出Faster R-CNN[7], YOLO[8]等识别网络,不少学者也在烟雾识别研究中应用了深度学习方法。杨明潇[9]通过人工采集和公开林火烟雾数据集训练Faster R-CNN, SSD和VGG神经网络,基于神经网络构建了烟雾识别可视化平台,识别准确率达到75%。冯路佳等[10]提出了一种基于目标区域的卷积神经网络火灾烟雾识别方法,构建2层的火灾烟雾识别模型,提取烟雾目标区域并输入识别层,通过卷积神经网络精细提取烟雾的深层特征后进行分类,完成火灾烟雾的识别。Saponara等[11]基于YOLOv2网络构建了室内火灾识别系统对固定场景火灾进行识别报警。卷积神经网络特别是深度卷积神经网络,由于具有多层线性与非线性映射参数,对图像数据的特征提取能力相较于传统手工特征提取方法有了很大提高,但由于网络层数多,造成网络参数量大,计算复杂度高,网络参数和中间层输出占用大量计算资源和显存,导致深度卷积神经网络在边缘端需要布设多台设备才能同时处理多台公路监控摄像机的图像输入,同时为训练出精度满足实际识别要求的卷积神经网络而需要导入大量图像数据,故对训练样本的标注质量也有较高要求。
针对公路场景烟雾识别的精度问题,本文基于目前目标检测领域的新型网络YOLOX[12]进行研究,深入分析其结构与特征提取优势,同时人工收集公路场景烟雾图像结合部分Smoke100K数据集作为训练数据集,采用数据增强方法对数据集进行扩充,提高训练集的多样性,从而提高网络在不同场景下的识别能力。针对深层卷积网络计算资源占用过多的问题,利用深度可分离卷积方法压缩网络主体结构,实验阶段构建并对比分析不同结构网络的烟雾识别精确度,旨在搭建满足精确度要求且计算资源占用尽量小的模型,实现基于视频图像的公路场景火灾烟雾智能识别及工程应用。

1 研究方法

近年来,目标识别网络在交通行业的应用越来越普遍,YOLO系列识别网络在车辆识别[13]、行人识别[14]、交通标志检测[15]等任务中取得了较好的效果。然而对于公路场景下的烟雾识别,由于烟雾的形状不固定,公开的训练数据集较少,传统的目标识别网络对烟雾的识别效果一般,因此在烟雾识别任务中对目标识别网络的特征提取能力有更高的要求。同时,由于公路场景一般由多摄像头同时监控,若模型参数过于庞大,对硬件算力和存储需求较高,将直接导致计算成本大幅增加,因此追求模型精度的同时必须尽量减少网络的参数量与中间层输出。
YOLOX网络在YOLOv5[16]的基础上对模型网络作了优化,在特征提取部分采用了CSPDarknet网络[17],获取特定特征层作特征融合后,在分类回归层中采用了YOLOHead[12]方法,对传统YOLO网络的分类回归层结构作了优化调整。本文针对公路场景下的烟雾识别问题,构建了小型烟雾图像数据集,网络训练过程中在图像预处理上采用Mosaic数据增强方法[17],提升了数据的多样性,同时为了实现网络轻量化,采用深度可分离卷积的方法压缩主干网络,构建nano网络,降低了部分精度但大大精简了网络结构的总参数量。本文就YOLOX主干网络、模型轻量化方法进行分析。

1.1 主干网络

YOLOX的主干网络包括3部分,分别是特征提取层CSPDarknet网络、特征融合层以及分类回归层YOLOHead。

1.1.1 特征提取

CSPDarknet网络是通过堆叠多个Resblock body模块对图像特征进行提取,具体结构见表1。首先输入640×640的RGB三通道图像并通过Focus对图像尺寸和通道数进行调整。利用4个堆叠的Resblock body模块作特征提取。Resblock body模块由卷积层与CSPlayer层组成,其中CSPlayer层优化了参数数量并保留了较好的特征提取能力。最终CSPDarknet的输出是第2, 3, 4个Resblock body模块的输出特征图。
表1 CSPDarknet结构
模块 各层结构 输出 有效输出
Inputs Inputs 640×640×3
Focus Focus 320×320×12
Conv2D-BN-SiLU Conv2D-BN-SiLU 320×320×64
Resblock body1 Conv2D-BN-SiLU 160×160×128
CSPlayer 160×160×128
Resblock body2 Conv2D-BN-SiLU 80×80×256
CSPlayer 80×80×256 输出特征图1
Resblock body3 Conv2D-BN-SiLU 40×40×512
CSPlayer 40×40×512 输出特征图2
Resblock body4 Conv2D-BN-SiLU 20×20×1024
SPPBottleneck 20×20×1024
CSPlayer 20×20×1024 输出特征图3

1.1.2 特征融合

CSPDarknet输出的3个特征图会输入至特征融合层,用作特征融合与加强特征提取。特征融合层采用YOLOv4的Panet结构[17],输入特征图通过卷积层调整尺寸,通过上、下采样层(UpSampling2D, DownSampling2D)作特征融合。特征融合层的有效输出是部分CSPlayer层的输出特征图,特征融合层的具体结构见图1。最终用于分类回归层的有效特征图为输出特征图6, 7, 8
图1 特征融合层结构

1.1.3 分类回归

完成特征融合与加强特征提取后,3张输出特征图将分别输入至分类回归层YOLOHead,最终输出网络识别结果,包括物体识别的种类和标注框的坐标。传统YOLO系列识别网络的分类回归层通过1×1卷积层实现分类和回归同时处理,但YOLOHead具有2条卷积分支,其中一条卷积分支用于实现物体分类(Cls),输出物体识别类型;另一条卷积分支用于判断特征点中物体是否存在(Obj)和回归标注框坐标(Reg)。YOLOHead的具体结构如图2所示。

1.2 深度可分离卷积

Sifre等[18]提出的深度可分离卷积是网络轻量化的重要方法。该方法将标准卷积操作拆分为深度卷积和逐点卷积两个步骤。通过深度可分离卷积方法,在尽量减少网络精度损失的同时,可大大精简网络参数,减少运算量。
标准卷积过程中,取N组具有相同尺寸(Dk×Dk×C)的卷积核对输入图像进行卷积,假设需要的特征图尺寸为(W×H×N),卷积核参数总量(P)和卷积操作的总运算量即内积运算量(CA)的计算公式分别如式(1)、式(2)所示。
P = D k × D k × C × N
C A = D k × D k × C × N × W × H
标准卷积操作如图3(a)所示,假设输入的图像尺寸为10×10×3,通过3×3×3的卷积核可以卷积获得1个8×8×1的特征图,若堆叠256组具有相同尺寸的卷积核则可以对输入图像卷积获得8×8×256的输出特征图。对于该标准卷积操作,根据式(1)、式(2),该卷积层参数量为3×3×3×256,共6 912;内积运算量为3×3×3×256×8×8,共442 368。
图3 两种卷积方法
深度可分离卷积则包含2个步骤,如图3(b)所示。第1步是深度卷积。深度卷积的卷积核为单通道形式(3×3×1),取3组卷积核对图像进行标准卷积操作,此时获取的特征层尺寸维度为8×8×3,深度卷积的卷积核参数量为3×3×1×3,共27;总运算量为3×3×1×3×8×8,共1 728。第2步是逐点卷积。逐点卷积的卷积核为3通道但尺寸为1×1,采用256组相同的1×1×3的卷积核对深度卷积的输出图像进行标准卷积操作,即可获得与标准卷积方法相同的8×8×256输出特征图,逐点卷积的卷积核参数量为1×1×3×256,共768;总运算量为1×1×3×256×8×8,共49 152。在完整的深度可分离卷积过程中,卷积层总参数量为27+768=795,内积运算量为1728+49152=50880。相较于标准卷积,深度可分离卷积的卷积层总参数量与内积运算量均显著减少。
两种方法各自需要的卷积层参数量、内积运算量如表2所示。深度可分离卷积方法可压缩网络规模和减少运算量,在利用相同宽和高的卷积核获取固定尺寸特征图的过程中,深度可卷积方法的总参数量与内积运算量均为标准卷积方法的1/N+1/Dk2,是实现轻量化的关键。 nano网络是在普通YOLOX网络的基础上运用深度可分离卷积方法精简参数构建的轻量化网络。
表2 两种卷积方法对比
方法 参数量 内积运算量 比例
标准卷积 Dk×Dk×C×N Dk×Dk×C×N×W×H 1
深度可分离卷积 Dk×Dk×C+
C×N
Dk×Dk×C×W×H+
C×N×W×H
1/N+1/Dk2

2 实验

2.1 烟雾数据集

本文搜集了多个高速公路路段不同监控场景、不同摄像机视角下的烟雾图像样本,同时为了增加样本场景的多样性,数据集中加入了公开数据集Smoke100K[19]的部分烟雾数据图像。数据集共有图像5 367张,对图像中的烟雾部分进行了人工标注,按照7∶1∶2划分为训练集、验证集和测试集,部分样本实例及标注形式如图4所示。数据集导入网络训练前,采用Mosaic数据增强方法对数据集进行扩充。
图4 不同场景下的烟雾数据集样本图像部分实例

2.2 数据增强

由于实验收集标注的烟雾数据集为小型数据集,训练样本量较少且存在重复场景,为了增加烟雾样本的多样性,丰富目标的背景,本文在图像数据预处理过程中采用了Mosaic数据增强方法[17],尽量避免网络在训练过程中陷入过拟合,以提高网络的识别精确度与泛化能力。
Mosaic数据增强对训练集的具体操作如图5所示。首先从总的训练数据集中随机抽取一批图像,然后从该批图像中随机选出4张,再对4张图像分别进行随机裁剪、放缩、旋转操作,最后拼接为新的图像并作为网络训练的输入图像。需要注意的是,处理过程中的图像是含有标注框坐标信息的,因此获取的新图像同样含有烟雾标注框的坐标信息。
图5 Mosaic数据增强方法

2.3 实验设置

本实验的机器配置如下:一个 NVIDIA GTX-3060-12G图形处理器(GPU)和一个AMD Ryzen 7 5800X中央处理器(CPU)。基于深度学习框架 Pytorch搭建YOLOX目标检测模型,即根据结构与参数量的不同搭建YOLOX-m, YOLOX-s, YOLOX-tiny和YOLOX-nano共4种目标检测模型。在训练阶段导入烟雾数据集测试之前,为了提高网络的泛化能力,预训练权重采用经由大型数据集COCO[20]训练的模型参数,梯度下降优化策略采用Adam优化器。实验过程中采用两阶段训练法:第1阶段冻结网络主体参数,仅训练网络分类层参数,初始学习率设置为0.00 1;第2阶段训练网络所有参数,初始学习率设置为0.00 01。实验过程中两阶段各训练60个迭代(epoch),共训练120个迭代。需要对原始图像作预处理,压缩为640×640的RGB图像,同时不同参数规模的网络每批次输入的最大图片数量也有所不同:对于YOLOX-m和YOLOX-s,第1阶段每批次输入图像数为64,第2阶段每批次输入图像数为16;对于YOLOX-tiny和YOLOX-nano,第1阶段每批次输入图像数为128,第2阶段每批次输入图像为32。通过实验设置可以发现,网络结构越精简、参数量越少的网络同一批次能处理的图像数量越多。

2.4 实验结果与分析

本节对YOLOX不同规模的目标检测网络(m, s, tiny, nano)进行对比。以精确度(Precision)作为实验结果评价指标,具体网络参数与实验结果如表3所示。识别效果实例见图6
表3 YOLOX不同规模网络的实验结果对比
模型 精确度(%) 模型大小/Mb 总参数量
YOLOX-m 98.64 96.8 2.52×107
YOLOX-s 97.44 34.3 8.94×106
YOLOX-tiny 95.77 19.4 5.03×106
YOLOX-nano 90.29 3.71 0.90×106
图6 烟雾识别效果系统运行实例
由实验结果可知:
(1)4种规模的YOLOX在公路场景下的烟雾识别精确度均达到90%以上。其中,tiny, s, m网络的识别精确度达到了95%以上,可以满足实际运营管理要求。就同系列YOLOX的网络精度与规模而言,本次实验结果符合目标检测网络的一般性结果,即:结构层数越多、参数量越多的卷积神经网络特征提取能力越强,模型的泛化能力越强,识别精确度越高。
(2)4种网络的精确度差异不超过10%。测试过程中每秒识别帧数(Frames Per Second, FPS)均大于30,但网络模型大小与总参数量差异极大,tiny网络和nano网络在普通YOLOX网络基础上作了极大的精简,tiny网络模型大小及总参数量是m网络的1/5,nano网络模型大小及总参数量仅为m网络的1/25,说明在相同硬件条件下轻量化模型tiny和nano能处理更多的输入图像。由于目前高速公路运营管理部门普遍设置多摄像头同时对公路交通状况进行监控,而轻量化网络模型能同时处理多摄像头传输图像,因此能有效减少需要布置的图像处理设备数量,在满足识别精确度的前提下降低设备成本。
综上所述,YOLOX网络模型在烟雾识别精度与速度方面均满足使用要求,轻量化模型tiny网络和nano网络在模型大小和参数量指标上较m网络和s网络有较大改善,能更好地完成多图像并行处理的识别任务,满足对多交通视频流同时进行烟雾识别的工程应用需求。

3 结语

本文通过收集并标注多公路监控场景下的烟雾图像数据集,结合Smoke100K部分数据集,整理形成公路场景烟雾数据集;搭建并训练了多种结构不同层数的YOLOX目标识别网络,对YOLOX系列网络的主体结构与轻量化方法进行了分析。在训练过程中采用Mosaic数据增强手段对数据集进行扩充,有效地提高了模型的泛化能力。通过导入烟雾图像测试集,从网络识别精度、模型大小及总参数量等指标的角度对4种YOLOX识别网络进行对比分析,结果表明YOLOX系列模型均能较好地完成烟雾识别任务,精确度均达到90%以上,m, s和tiny网络的识别精度达到95%以上,说明YOLOX网络结构具有较强的烟雾特征提取能力,可以满足公路运营监控对火灾烟雾事件的识别精度要求。同时,基于深度可分离卷积方法构建的轻量化网络nano,烟雾识别精度比m网络和s网络略低,但模型规模远小于m网络和s网络;nano网络较m网络的识别精度低8.35%,但模型大小及总参数量仅为m网络的1/25,说明轻量化模型对计算资源的占用较少,在识别精度满足公路运营监控要求的前提下适当压缩模型规模,可以增加同批次输入网络的图像数量,使烟雾识别模型在边缘端得到更好的应用。
此外,受Mosiac数据增强方法的启发,在今后的研究中将从对样本数据集作特征提取的角度进一步探究轻量化模型在样本不足条件下的训练精度问题。同时,注意到由于参数量减少会降低轻量化模型的特征提取能力进而影响识别精度,后续将继续深入研究模型轻量化与识别精度的平衡问题,分析网络各层的特征提取能力,进一步提高公路场景下烟雾识别效率。
[1]
交通运输部. 2020年交通运输行业发展统计公报[J]. 交通财会, 2021(6):92-97.

[2]
康娜. 公路隧道运营火灾风险综合评估模式研究[D]. 徐州: 中国矿业大学, 2019.

[3]
胡燕, 王慧琴, 姚太伟, 等. 基于Harris特征点检测与跟踪的火灾烟雾识别[J]. 计算机工程与应用, 2014, 50(21):180-183,194.

[4]
刘鹏. 结合多种图像特征的烟雾识别时序方法[D]. 昆明: 昆明理工大学, 2019.

[5]
袁雯雯, 姜树海, 史晨辉. 基于改进GMM算法的林火烟雾识别研究[J]. 火灾科学, 2019, 28(3):149-155.

[6]
陈超, 齐峰. 卷积神经网络的发展及其在计算机视觉领域中的应用综述[J]. 计算机科学, 2019, 46(3):63-73.

[7]
REN S Q, HE K M, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6):1137-1149.

[8]
REDMON J, DIVVALA S, GIRSHICK R, et al. You Only Look Once: unified, real-time object detection[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas:IEEE, 2016: 779-788.

[9]
杨明潇. 基于深度学习的林火烟雾识别[D]. 北京: 北京林业大学, 2019.

[10]
冯路佳, 王慧琴, 王可, 等. 基于目标区域的卷积神经网络火灾烟雾识别[J]. 激光与光电子学进展, 2020, 57(16):83-91.

[11]
SAPONAR S, ELHANASHI A, GAGLIARDI A. Real-time video fire/smoke detection based on CNN in antifire surveillance systems[J]. Journal of Real-Time Image Processing, 2021, 18(7553): 1-12.

[12]
GE Z, LIU S T, WANG F, et al. YOLOX: Exceeding YOLO Series in 2021[J]. arXiv preprint, 2021: arXiv: 2107. 08430.

[13]
汪辉, 高尚兵, 周君, 等. 基于YOLOv3的多车道车流量统计及车辆跟踪方法[J]. 国外电子测量技术, 2020, 39(2):42-46.

[14]
方卓琳. 基于YOLOv3的道路交通环境行人检测技术研究[D]. 广州: 华南理工大学, 2019.

[15]
申雷霄, 刘军. 基于机器视觉的公路交通标志自动化巡检系统[J]. 交通运输研究, 2018, 4(5):71-76.

[16]
GLENN J. YOLOv5[DB/OL]. (2020-2-10) [2022-2-12]. https://github.com/ultralytics/yolov5.

[17]
BOCHKOVSKIY A, WANG C Y, LIAO H Y M. YOLOv4: Optimal speed and accuracy of object detection[J]. arXiv preprint, 2020: arXiv: 2004.10934.

[18]
SIFRE L, MALLAT S. Rigid-motion scattering for texture classification[J]. Computer Science, 2014, 3559: 501-515.

[19]
CHENG H Y, YIN J L, CHEN B H, et al. Smoke 100k: a database for smoke detection[C]// 2019 IEEE 8th Global Conference on Consumer Electronics (GCCE). Osaka:IEEE, 2019: 596-597.

[20]
LIN T Y, MAIRE M, BELONGIE S, et al. Microsoft COCO: common objects in context[C]// European Conference on Computer Vision. Cham, Germany: Springer, 2014: 740-755.

Outlines

/