基于改进深度学习算法的危废库火灾智能识别方法*
2022-10-10程思嘉
程思嘉
(1. 中石化安全工程研究院有限公司,山东青岛 266104 2. 中石化管理体系认证(青岛)有限公司,山东青岛 266071)
0 前言
石油化工行业生产中会产生固态、液态等多种危废。当危废库存在违规堆叠、超负荷用电等危险行为时,极易造成火灾事故。且危废库普遍位于厂区边缘,储存危废数量较大,一旦发生火灾,无法被及时发现及预警,容易造成严重后果。现有的危废库火灾管控措施主要有加强对危废管理人员培训、强化安全监督工作等管理措施以及加装烟雾探测器计算烟尘密度等技术措施。但烟雾探测方法精度较低[1]、误报过多。针对露天开阔的危废建筑物或面积较大的危废区域,仍缺乏有效的管理手段。
随着厂区视频监控区域的全覆盖,摄像头精度的提升以及计算机处理器性能的增强,视频智能分析方法和技术[2-6]为危废库火灾管控提出新的解决方案。本文针对传统的基于特定特征判断的火灾识别模型存在的检测准确率低[7]、对火灾等变化较大的识别对象适应性较差[8]、运算时间较长等问题[9-11],结合石化行业危废场景,利用图像、视频素材训练模型并优化报警阈值,改进神经网络模型,设计了一套基于改进深度学习方法的危废库火灾识别系统。
1 技术思路
通过调研石化企业危废管理相关需求,结合厂区视频点位设置及网络传输条件,以火焰、烟雾两类典型环境异常场景进行分析,危废库火灾识别报警流程如图1所示。
图1 危废库火灾检测流程
经调研,危废库现已配备视频监控设备,使用视频识别方式能够最大限度利用现有设备,实现危废库24 h无间断自动火灾识别,具有较高的效率。其具体技术为:①视频接入:选择角度合理,且画质清晰的视频作为基本输入数据,可以接入固定式、移动式监控设备视频流,同时兼容多种视频信号的接入,包括1/4CIF、CIF、D1、720P、1080P等;②模型训练:通过改进深度学习模型结构和算法调参迭代,调整模型输出情况,修改权重,验证其泛化能能力,并将训练成熟的模型用于目标检测并判定是否报警;③报警提示:当系统模型检测到可疑区域并判定明火可能性大于设定阈值后,则认为具有火灾风险,截取对应关键帧,并将视频流传输给显示终端;④报警确认:准确记录危废库火灾发生的位置、算法反应时间、工作人员响应时间、对应区域危废管理人员等具体信息。
通过火灾监控系统对以往报警数据进行统一监管、数据分析,可方便管理人员对其查看、追责,更可以明确管理薄弱环节,提升危废库管理效率。
2 基于改进深度学习算法的图像识别方法
2.1 深度学习模型建立
深度学习是基于人工神经网络[12]的最新概念之一。在数字图像训练集的帮助下,将学习过程封装在一个黑盒中,以识别火灾火焰或烟雾,从而提高火灾探测的准确性。在深度学习中,检测过程不依赖于视觉特征和浅层学习等分类器。基于深度学习的物体检测算法大致分为 2 类:①基于区域建议的目标检测算法,如RCNN (Regions with CNN features,循环卷积神经网络) ;②基于回归的目标检测算法,如 YOLO(You Only Look Once)[12-15]。
YOLO是一种快速的目标检测算法模型。其核心是为识别图像创建一个S×S网格单元格,每个单元格将负责评估单元格中的对象。每个单元格预测边界框和边界框的置信分数。由于YOLO模型只需要对局部图片信息进行推理,具有识别速度快、框架简单等优势,本文选择YOLO模型进行火焰识别。
原始YOLO使用了24个卷积层和2个全连接层,用于多类别的目标检测。在火焰/烟雾检测中,只需要检测到一个类别。由于本研究中的目标检测物体较为单一,针对该类检测,对YOLO网络进行简化,只使用9个卷积层进行预训练,再添加1个全连接层。每个卷积层之后增加最大池化层和一个激活函数ReLU。卷积层用于提取全图特征,池化层用于提取候选区域的特征,且输出固定维度大小的特征向量。模型结构如图2所示。
图2 YOLO模型基本结构
2.2 模型训练过程
训练过程是将标注好的火焰/烟雾图片输入到YOLO深度学习的框架中,多次迭代,更新模型的普通参数,并增强特征识别能力。对于训练数据集,准备了4 620张火灾图像,图像来自公开数据集及危废库收集图片,将每462张图像设置为一个单元并进行训练。
前9个卷积网络输出一个7×7×1 024特征向量;通过再一次卷积convpre将其转为49维的向量;在网格中心中定位的可能性被设为y=(y1,y2,y3,…,y49);通过Softmax分类器使其归一化之后,得到p=(p1,p2,p3,…,p49);pi的归一化表达式见式(1)。
(1)
预训练阶段的损失函数见式(2)。
(2)
预训练阶段旨在利用最小化损失函数Lpre并提高预测的准确性,正式训练的损失函数L见式(3)。
L=(w-w′)2+(h-h′)2+Lpre
(3)
式中:w——输入图像像素宽度;
h——输入图像像素高度;
w′——输入图像真实像素宽度;
h′——输入图像真实像素高度。
训练过程主要包括以下步骤:
a) 数据增强。由于危废库火灾视频图像数据较少,因此本文使用了翻转、调整亮度和饱和度等图像处理功能,从每个图像中额外创建10个样本。由于其在像素级上有微小的区别,边界框的位置也不同,可以作为训练数据,同时显著降低训练数据的时间成本,进一步提升神经网络的泛化能力。
b) 对所有数据进行验证和训练集分配。验证集在训练过程中的作用是确定模型和修改超参数,反向递归修改权重,验证模型的泛化能力,使得模型在验证集上达到最优。将数据集按训练集和验证集4∶1进行分配,以得到更好的训练结果。
2.3 模型性能评价
为了测试模型的性能,引入了准确率(AR)、检出率(DR)、精度率(PR)和误报率(FAR)[16]。
准确率(AR)代表正样本所占比例,计算如式(4)所示。
(4)
式中:Tp——正确预测的正样本;
Tn——错误预测的正样本;
Fp——正确预测的负样本;
Fn——错误预测的负样本。
检出率(DR)也被称为召回率,它被定义为真实数据除以被准确标记为火灾的样本总数。它反映了模型识别火灾的能力,计算如式(5)所示 。
(5)
精度率(PR)也被称为正预测值,它反映的是火灾报警的可信度,计算如式(6)所示。
(6)
在火灾检测中,误报率(FAR)也是检测系统的一个重要指标,因为在大多数情况下,在各种监测环境下都没有火灾,误报信息过多会影响管理人员的正常工作秩序。误报率(FAR)计算如式(7)所示。
(7)
3 测试结果与软件实现
本文提出的模型使用TensorFlow框架进行训练,Tensorflow是谷歌开发的基于数据流编程的深度学习训练框架,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算。实验在一个NVIDIA GTX1080GPU和一个Intel-i7四核CPU中运行的。
首先计算YOLO模型在验证数据集中的准确率、检出率、精度率和误报率,结果见表1。
表1 YOLO算法准确率、检出率、精度率和误报率 %
之后,使用大量数据对模型进行持续训练,持续调整其参数不断迭代,改进后再次验证其准确率、检出率、精度率和误报率,结果见表2。
表2 训练改进后YOLO算法准确率、检出率、精度率和误报率 %
将改进后的YOLO模型与深度学习中的卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent Neural Network,RNN)、区域生成神经网络网络(Fast Regions with CNN features,FastRCNN)、单激发探测算法(Single Shot MultiBox Detector,SSD)和循环卷积神经网络(Regions with CNN features,RCNN)[17-20]进行对比,准确率见表3,算法运行时间见表4。
表3 深度学习算法准确率(AR)对比结果 %
表4 深度学习算法运算时间对比结果 s
数据集选择公开UCI(University of California Irvine)数据集,该数据集是美国加州大学欧文分校提出的一种适合模式识别和机器学习方向的开源数据集,选择数据集中标签为火焰和烟雾的部分数据进行验证。
与其他算法相比,YOLO方法在Ionosphere数据集中表现最好,经过迭代训练后,其准确率能够达到99.335%。在Australia数据集中有89.657%的预测准确率,仅低于RNN方法中的89.775%。运算速度方面,相较于其他5类视觉特征识训练模型,该方法也能够大幅降低训练速度,在4个数据集中,YOLO方法都具有更良好的表现。实验中,当火焰具有与训练集完全不同的特征时(如发青或火焰较小时),浅层学习难以检测,使检测准确率在迭代训练后期提升较慢。但深度学习方法不受火焰变化的影响,在识别该类情况时仍能显示出其优越的性能。
为解决危废库监管过程中巡检人员工作量大、无法24 h全面监控火灾等异常事件以及现有视频监控数据未得到充分利用等问题,基于深度学习算法及模型,采用Python语言,基于 B/S模式和风险管控理念,开发危废库火灾视频智能监控平台。平台支持视频点位查看,识别任务配置,声光报警,报警推送,报警确认以及统计分析等多重功能。能够实现对于危废库全方位的智能监控。目前平台基本功能已完成测试,使用过程中能够协助危废库管理人员监控危废库的火灾风险,提升危废库管控水平。
4 结论及下一步工作
a) 在YOLO基本模型架构上,针对危废库火灾、烟雾算法模型,通过改进优化网络结构、提升数据质量,进行模型迭代,提升算法准确性。
b) 根据误报等相关数据信息,修正报警阈值,提升预警准确性。
c) 进行算法测试,对改进算法进行试验,火焰、烟雾识别准确率达到87.300%和91.885%,基于模型开发的系统平台,能够在实际环境中发挥作用,达到较好预警效果。
d) 后续会进一步收集企业需求,配合相应管理手段,构建违规堆放、泄漏等其他异常事件识别模型,同时进一步增强系统数据分析能力,更好地协助危废库管理人员监控危废库突发事件,提升危废库智能管控水平。