矿井火灾是煤矿的主要灾害之一,“十三五”以来矿井火灾引起的爆炸事故频发。如2020年9月重庆松藻煤矿火灾事故,2020年12月重庆吊水洞煤矿“12·4”重大火灾事故等,都造成了严重的生命财产损失,引起了较大的社会关注。
为了降低矿井火灾的发生率,提高矿井火灾识别准确性,保护矿井工作人员的生命财产安全,许多学者对矿井火灾识别方法进行了大量研究。孙继平等[1]提出了基于可见光和红外图像的矿井外因火灾识别方法,降低了矿灯、车灯等对火焰图像的干扰,通过对火焰进行特征提取,达到火灾识别的目的。苗续芝等[2]提出了一种基于改进果蝇优化算法-支持向量机(FOA-SVM)的火灾图像识别算法,提取火灾图像的多种特征作为输入信息,对火灾进行识别。何晨阳等[3]提出了一种图像处理与BP神经网络相结合的矿井火灾识别方法,通过提取火焰图像的圆形度、面积增长率等特征并输入BP神经网络模型,实现火灾识别。袁庆辉[4]提出了一种基于图像识别的矿井火灾检测方法,利用火焰面积变化率及分布规律作为火灾判据,对火灾进行识别。
上述研究在矿井火灾识别方面取得了较好的研究成果,但由于煤矿井下光照分布不均匀,导致图像像素信息失真,火灾识别精度低,难以发挥算法的优越性。本文在现有研究基础上,提出了一种基于YOLOv5的矿井火灾视频图像智能识别方法。该方法以YOLOv5为识别模型,结合K-means改进的暗通道去雾算法及动态目标提取算法,可解决矿井环境造成的图像特征信息丢失问题,提高矿井火灾特征识别准确率。
YOLOv5算法模型结构如图1所示。模型的Backbone阶段采用 Focus和CSPDarknet53结构,Focus结构对输入目标的维度进行切片操作,减少目标原始特征信息的丢失,并且提高模型计算速度,经过一系列卷积操作得到不同尺寸的特征图像;Neck特征融合结构对不同尺寸的特征图像进行采样,将特征图像处理成相同大小,然后进行特征融合及卷积,得到3个具有更强特征表现能力的特征层;Prediction预测结构通过损失函数进行目标类别概率和位置坐标计算,得到目标预测结果[5]。
图1 YOLOv5算法模型结构
Fig.1 Structure of YOLOv5 algorithm model
YOLOv5算法是一种从端到端的检测算法,其核心是卷积神经网络的特征提取结构,可识别输入目标类别及输出位置,是图像分类与定位相结合的算法[6-7]。火焰目标检测过程如下:
(1) 用YOLOv5算法将输入的火焰图像划分为N×N个单元格,每个单元格针对大、中、小不同尺度的目标生成先验框,识别目标的中心落在某个网格中,则由该网格的先验框负责跟踪识别该目标[8]。YOLOv5用置信度c表示该先验框中目标分类概率及匹配目标的性能。
c=PH
(1)
式中:P为预测框内目标概率,若预测框内无目标为0,否则为1;H为预测框与真实框交并比。
(2) 对划分的火焰图像进行归一化处理,将归一化后的火焰数据集送入下层特征提取网络进行特征提取[9]。
(3) 通过K-means聚类设置预测框,分为不同大小的框,针对不同检测目标,计算预测框位置,即中心点坐标。
(4) 依据预测坐标的偏移值,计算目标中心点位置及预测框宽度、高度[10-11]。
(5) 输出目标识别结果。
通过暗通道去雾算法降低光照分布不均匀及煤粉、水气等因素对火焰图像的影响,增加火焰图像细节信息,提高矿井火灾识别率。暗通道去雾模型公式如下:
(2)
I(x)=J(x)t(x)+A[1-t(x)]
(3)
式中:t(x)为透射率,x为像素值;q为去雾参数,一般取0.95;y为像素索引值;Ω(x)为以x为中心的窗口;I(y)为输入图像;ε为像素通道;A为全球大气光成分;I(x)为待去雾火焰图像;J(x)为处理后无雾火焰图像。
t(x)的求取与A值有关,利用有雾图像求取A。首先在暗通道图中按亮度大小取前0.1%的像素,随后在原始含雾图像中找到其对应位置亮度最高的点,即为A值。
暗通道去雾算法虽然在大部分含雾图像去雾方面取得了不错的效果,但在求取A值时,某些像素点会被遗漏,造成去雾不彻底,影响后期火灾视频图像识别精度。为此,利用K-means改进暗通道去雾算法。
将火焰图像的像素点看作是样本集X={X1,X2,…,Xn},Xi为第i个像素点,1≤i≤n,n为正整数,采用K-means聚类算法将位于相同区域的像素点聚为一类,使得在求取A值时整个图像的像素点均可被取到。K-means改进暗通道去雾算法具体步骤如下:
(1) 根据K与S(样本的聚类误差)的关系将像素集初始化为K个聚类中心,S值与K值关系曲线如图2所示。
(4)
式中:Cj为第j个聚类中心,1≤j≤K;p为Cj中的像素点;Lj为质心。
图2 S值与K值关系曲线
Fig.2 The relationship curve of S values and K values
可看出S值随着K值增大快速下降,在K=5时,出现明显的拐点,S值趋于平缓,即聚类中心K值为5。
(2) 计算每个像素点到各个聚类中心之间的欧氏距离,将每个像素点分配给距离其最近的聚类中心:
(5)
式中:a为像素点的属性,1≤a≤k;Xia为第i个像素点的第a个属性;Cia为第i个聚类中心的第a个属性。
(3) 所有像素点归类后,对每个聚类中的像素值求平均值,得到新聚类中心点。
(4) 重新计算每个像素点到聚类中心点的距离并再次分类,如此循环直到中心点变化很小。
(5) 求取每个聚类中像素值的平均值,得到K个像素值,然后对K个像素值加权平均,即为A值。
K-means改进暗通道去雾算法前后火焰图像去雾效果如图3所示,可看出改进后去雾图像色彩度更显著,特征信息更丰富。
(a) 改进前去雾效果
(b) 改进后去雾效果
图3 K-means改进暗通道去雾算法前后去雾效果
Fig.3 The defogging effect before and after dark channel defogging algorithm improved by K-means
为了减少井下环境中静态非目标物对火灾识别的干扰,采用帧差法与混合高斯模型相结合的算法,提取动态火焰图像轮廓,获取清晰的形态信息进行特征分析[12-15]。
(1) 动态火焰目标提取。采用帧差法截取火焰视频中连续相邻的5帧图像,并以当前帧分别与相邻帧图像进行差分运算,然后对差分图像进行二值运算,得到更显著的火焰图像轮廓。
(2) 背景建模。采用m个高斯模型表示巷道背景图像中各像素点,对m个高斯模型加权组合得到背景图像。
(6)
式中:f(θt)为当前t时刻图像的概率密度函数;θt为t时刻的图像;wl,t为第l个高斯模型在t时刻的权值,1≤l≤m;φ(·)为高斯分布模型的概率密度函数;ul,t为第l个高斯模型在t时刻的均值;δl,t为第l个高斯模型在t时刻的方差。
将火焰图像对应的高斯模型按wl,t+1/δl,t+1大小进行排序,取前B个高斯模型组成该像素点背景的混合高斯模型[7]。对B个模型按照wl,t+1匹配,若满足式(7)和式(8),则该像素点为背景,否则为前景。
(7)
|θl,t+1-ul,t|<λδl,t+1
(8)
式中:T为阈值,一般为0.75;θl,t+1为第l个高斯模型在t+1时刻的图像;λ为前景阈值,取2.5。
(3) 将混合高斯模型与帧差法提取到的火焰图像对应像素值进行与运算,并采用形态学处理算法消除图像中存在的缺口,从而得到更加完整的火焰目标图像。
动态火焰目标提取效果如图4所示。可看出通过提取动态火焰目标,火焰图像的轮廓更加明显,避免了井下复杂静态背景的干扰。
(a) 提取前的火焰图像
(b) 提取后的火焰图像
图4 动态火焰目标提取效果
Fig.4 Dynamic flame target extraction effect
平均精度和损失函数是目标检测中最常用的评价指标,平均精度表示模型的平均检测精度,损失函数表示模型的收敛性。实验中将火焰设为正样本,其他类别(如灯光等)设为负样本。若预测目标为正样本,实际目标为正样本,记为NTP;若预测目标为正样本,实际为负样本,记为NFP;若预测目标为负样本,实际为正样本,记为NTN;若预测目标为负样本,实际为负样本,记为NFN。
(8)
(9)
式中:Pr为精确率;Re为召回率。
(10)
式中:M为平均精度;Q为类别数量。
4.2.1 实验过程
在Windows环境下,采用python及pytorch搭建YOLOv5算法模型,利用网络工具得到与矿井火灾相似的火焰图像。部分实验数据如图5所示。在实验过程中,设迭代次数为300,动量因子为0.8,学习率为0.000 1,训练批次为40。
图5 部分实验数据
Fig.5 Part of experimental data
实验步骤如下:
(1) 采用K-means改进暗通道去雾算法,对火焰图像进行去雾处理,提高图像细节信息并剔除干扰。
(2) 采用帧差法与混合高斯模型融合算法,对动态演化的火焰图像进行特征提取,减少静态背景对火灾识别的影响。
(3) 对处理后的数据集进行标注并命名。标注后生成xml文件,包括标注框的坐标及宽高信息。
(4) 配置YOLOv5算法模型参数,开展模型训练及测试。
4.2.2 结果分析
模型训练结果如图6所示,火灾识别结果如图7所示。
(a) 平均精度曲线
(b) 损失函数曲线
图6 模型训练结果
Fig.6 Model training outcome curve
(a) 火灾识别结果1
(b) 火灾识别结果2
图7 火灾识别结果
Fig.7 Fire identification results
由图6可知,在迭代300次时,基于YOLOv5的矿井火灾视频图像智能识别方法的平均精度为92%,损失函数为0.6,表明该方法检测速度快、精度高。
由图7可看出,本文方法能够精确识别出火焰。
为了验证本文方法的优越性,与Alexnet,VGG16,Inceptionv3等传统目标识别算法进行对比,结果见表1。可看出本文方法的平均精度比Alexnet,VGG16,Inceptionv3的分别高9.6%,13.5%,4.9%,表明本文方法可有效提高火灾识别准确率。
表1 不同算法火灾识别结果对比
Table 1 Comparison of the fire identification results of different algorithms
算法迭代次数训练批次平均精度/%Alexnet3006482.4VGG163006478.5Inceptionv33006487.1本文方法3006492.0
(1) 在迭代300次时,基于YOLOv5的矿井火灾视频图像智能识别方法的平均精度为92%,损失函数为0.6,表明该方法检测速度快、精度高。
(2) 基于YOLOv5的矿井火灾视频图像智能识别方法平均精度比Alexnet,VGG16,Inceptionv3分别高9.6%,13.5%,4.9%,表明该方法可有效提高火灾识别准确率。
[1] 孙继平,孙雁宇,范伟强.基于可见光和红外图像的矿井外因火灾识别方法[J].工矿自动化,2019,45(5):1-5.
SUN Jiping,SUN Yanyu,FAN Weiqiang.Mine exogenous fire identification method based on visible light and infrared image[J].Industry and Mine Automation,2019,45(5):1-5.
[2] 苗续芝,陈伟,毕方明,等.基于改进 FOA-SVM的矿井火灾图像识别[J].计算机工程,2019,45(4):267-274.
MIAO Xuzhi,CHEN Wei,BI Fangming,et al.Mine fire image recognition based on improved FOA-SVM[J].Computer Engineering,2019,45(4):267-274.
[3] 何晨阳,周孟然,闫鹏程,等.图像处理与BP神经网络在矿井火灾隐患识别中的应用[J].桂林理工大学学报,2016,36(3):615-618.
HE Chenyang,ZHOU Mengran,YAN Pengcheng,et al.Application of image processing and BP neural network on mine fire optential hazard identification[J].Journal of Guilin University of Technology,2016,36(3):615-618.
[4] 袁庆辉.基于图像识别的井下早期火灾探测方法的实现[J].煤炭技术,2011,30(1):106-108.
YUAN Qinghui.Implementation of early fire-detection method of mine based on image recognition[J].Coal Technology,2011,30(1):106-108.
[5] 邢宇驰,李大军,叶发茂.基于YOLOv5的遥感图像目标检测[J].江西科学,2021,39(4):725-732.
XING Yuchi,LI Dajun,YE Famao.Remote sensing image target detection based on YOLOv5[J].Jiangxi Science,2021,39(4):725-732.
[6] ZHOU Junchi,JIANG Ping,ZOU Airu,et al.Ship target detection algorithm based on improved YOLOv5[J].Journal of Marine Science and Engineering,2021,9(8):908-922.
[7] KASPEREULAERS M,HAHN N,BERGER S,et al.Short communication:detecting heavy goods vehicles in rest areas in winter conditions using YOLOv5[J].Algorithms,2021,14(4):114-125.
[8] SHINDE S,KOTHARI A,GUPTA V.YOLO based human action recognition and localization[J].Procedia Computer Science,2018,133:831-838.
[9] 周志锋,万旺根,王旭智.基于YOLOv3框架改进的目标检测[J].电子测量技术,2020,43(18):102-106.
ZHOU Zhifeng,WAN Wanggen,WANG Xuzhi.Object detection based on enhanced YOLOv3[J].Electronic Measurement Technology,2020,43(18):102-106.
[10] 刘肯,何姣姣,张永平,等.改进YOLO的车辆检测算法[J].现代电子技术,2019,42(13):47-50.
LIU Ken,HE Jiaojiao,ZHANG Yongping,et al.Improved YOLO vehicle detection algorithm[J].Modern Electronics Technique,2019,42(13):47-50.
[11] ZHENG Zehao,ZHAO Ji,LI Yue.Research on detecting bearing-cover defects based on improved YOLOv3[J].IEEE Access,2021,9:10304-10315.
[12] 许益成,谭文安,陈丽婷.基于改进混合高斯模型的运动目标检测算法[J].控制工程,2018,25(4):630-635.
XU Yicheng,TAN Wen'an,CHEN Liting.Moving object detection algorithm based on improved mixture Gaussian model[J].Control Engineering of China,2018,25(4):630-635.
[13] 李战明,谭向阳.基于混合高斯模型与五帧差分的运动目标检测算法[J].计算机与数字工程,2018,46(2):284-288.
LI Zhanming,TAN Xiangyang.Moving object detection algorithm based on mixed Gaussian model and five frame difference[J].Computer & Digital Engineering,2018,46(2):284-288.
[14] 孙继平,崔佳伟.矿井外因火灾感知方法[J].工矿自动化,2021,47(4):1-5.
SUN Jiping,CUI Jiawei.Mine external fire sensing method[J].Industry and Mine Automation,2021,47(4):1-5.
[15] LIN Mingxiu,CHEN Wenlin,LIU Baosong,et al.An intelligent fire-detection method based on image processing[J].Advanced Engineering Forum,2011,2/3:172-175.
WANG Weifeng,ZHANG Baobao,WANG Zhiqiang,et al.Intelligent identification method of mine fire video images based on YOLOv5[J].Industry and Mine Automation,2021,47(9):53-57.