基于迁移学习的火灾图像检测方法研究

2020-11-18 14:00陈照悦张红梅张向利
现代计算机 2020年28期
关键词:火焰火灾图像

陈照悦,张红梅,张向利

(桂林电子科技大学信息与通信学院,桂林541004)

0 引言

现有的自动火灾报警系统是利用新型的感烟、感温等探测器进行火灾检测,但受多种因素影响,存在响应时间慢,不能及时报警,漏报误报等问题。视频火灾检测技术可以实现快速准确的探测火灾,对环境的适应性强,误报率低,得到了广泛的关注和应用。国内外学者对视频火灾检测进行了大量的研究,取得了重大的进展。视频火灾检测主要有两种检测方法,一是基于特征的检测方法,二是基于深度学习的检测方法。视频火灾图像有动态和静态两大特征,静态特征主要有颜色、纹理等特征,动态特征主要包括整体运动、频闪等特性。Chen 等人[1]根据火焰的颜色和像素变化特征,通过RGB 模型和火焰动态特征得到异常像素点数目,并通过重复计算决策函数判断是否超过自适应阈值,来判定是否发出报警信号,但容易将类似火焰的物体检测为火焰,虚警率较高;Celik 等人[2]提出了一种基于规则的火焰像素分类通用颜色模型,使用YCbCr 颜色空间,更好地将火焰的亮度与色度区分开,实现了较高的火焰检测率,但误报率仍然较高,无法应用到实际环境中。文献[3]使用帧差法实现火焰的前景分割,再通过动静态特征识别火焰,但是帧差法对背景的判断只是前后两帧,对变化很快的物体检验效果明显,没有更多的时序信息,检测前景区域不完整。文献[4]使用了改进的ViBe 算法,通过引入切换变量控制模型每两帧更新一次,并使用快速更新策略提高适应力,能够准确检测出森林火灾烟雾,但只考虑了运动特征,不能提取出完整特征,虚警率高。文献[5]使用3D 卷积神经网络进行火焰识别,从时间和空间维度上提取特征,但是很难定位烟雾火焰位置,并且数据集较少,只检测红色火灾,对蓝色等火灾并不能准确检测。文献[6]提出基于深度学习模型的迁移学习来识别烟雾的方式,利用预训练CNN 模型进行特征迁移,只训练全连接层得到识别模型,但训练集较少,鲁棒性较低。文献[7]提出一种基于多通道CNN 的方法,对多场景数据构造CNN,由低到高逐层提取空间特征,训练通用火焰识别模型,提高了火焰识别精度。文献[8]提出一种基于Faster RCNN 模型的火焰检测算法,可以动态提取分析火焰特征,提升了在复杂条件下识别火焰的准确率,但是输入图像是固定尺寸,数据集较小,容易陷入过拟合。Bingo等人[9]对迁移学习解释为模型可以把从其他数据集学习而来的知识,转移应用到当前所需的目标数据集中,这样就可以让模型在数据较少的场景下依旧可以较好的学习样本特征并进行泛化。

为此,针对当前存在标注数据不足、识别效果差的问题,本文提出了基于迁移学习的火灾图像检测方法,首先获取不同场景下的火灾视频图像作为数据集,然后利用数据增强技术,对火灾图像进行翻转、裁剪等操作来扩充数据集。通过在这四个不同网络模型的实验分 析,发 现 DenseNet121[10]相 比 于 InceptionV3、ResNet18、ResNet50 模型在检测准确率和实时性方面性能更佳。

1 迁移学习检测方法

本文提出的基于迁移学习的火灾图像检测方法框架如图1 所示,首先,进行数据的预处理操作,然后进行模型的迁移学习。具体操作步骤如Step 1 和Step 2所示。

图1 基于迁移学习的检测方法框架

Step 1:数据预处理:

(1)将所有的图像数据缩放到224×224;

(2)将所有的数据做数据增强;

(3)将所有数据进行归一化。

Step 2:模型迁移学习:

(1)加载预训练的网络模型;

(2)重新添加一层全连接层,并随机初始化权重;

(3)微调隐藏层中的卷积层与池化层参数或者冻结前面全部层,只训练全连接层;

(4)使用视频帧图像小数据集执行训练,微调网络全部参数;

(5)得到深度迁移学习CNN 火焰检测模型进行预测。

2 迁移学习模型

2.1 GoogLeNet

GoogLeNet 提出Inception 网络结构,其目标是搭建稀疏且高计算性能的网络结构,Inception 网络在V1-V4 版本的发展之后渐入佳境,效果越发强大。Inception 的初始结构如图2 所示。

图2 Inception网络结构

该结构将CNN 中常用的1×1、3×3、5×5 卷积和3×3 池化操作组合在一起,不仅增加了网络宽度,也增加了网络的适应性,其中1×1 卷积可以用来减少维度和降低运算量。InceptionV3 引入了分解,将7×7 卷积转换成7×1 和1×7 卷积,既加速了计算,又进一步增加了网络深度和非线性,提高了网络的表现能力,它的网络结构如下表1 所示。

表1 InceptionV3 模型结构

上述网络中3 个Inception 部分。第一个Inception部分是使用两个3×3 卷积代替了5×5 卷积,第二个In⁃ception 减少了feature,增多了filters,而第三个Incep⁃tion 增多了filter 并使用卷积池化并行结构,通过这种方式虽增加了网络的层数,但参数量少了,训练起来并不会比改变之前慢多少。

2.2 ResNet

在深度学习中,深度网络都伴随着梯度消失等问题,进而导致性能下降,而微软研究院的Kaiming He[11]提出的ResNet 成功训练了152 层的神经网络,有效解决了梯度消失问题,其中解决梯度消失问题的关键结构是残差块(ResNet Unit)。残差块通过在网络中加入跳跃连接结构,进而可以让梯度在反向传播过程中通过这个结构传递到更深层的网络,残差块的结构如图3所示:

图3 残差块结构

图3 将输入设为X,残差结构的输出设为H(X),F(X)来表示残差函数,则有:

网络的训练目标就是将这条新的学习路径损失降为0,从而确保模型层数增多的同时,梯度不会消失,保证模型识别准确率。

2.3 DenseNet

DenseNet(Densely Connected Convolutional Net⁃works)是一种密集型连接网络,其后的层都与前面的每一层相连接,对于一个L层CNN,存在L(L+1)/2 条连接。

假设传统的网络在l 层的输出为:

式(2)中网络的第l层只有一个输入,即xl-1,而对于DenseNet,前面所有层都作为l层的输入:

其中Hl指的是一系列非线性运算,包括BN、Re⁃LU、Pooling 及3*3Conv 运算。

DenseNet 的网络特性:

(1)特征图大小一致。DenseNet 进行运算必须要求所有特征图大小一致,而一般的神经网络要经过pooling 操作等来降低特征图的大小。

(2)采用DenseBlock + Transition 结构,如图4所示。

图4 可以看出该结构由3 个DenseBlock 和2 个Transition 组成,每个DenseBlock 模块可能包含很多的Conv、Pooling、ReLU、BN 运算、Transition 结构用来进行降维操作。(3)生长率。生长率指的是每层特征的映射数,假设为k,对于第i 层输入有ki 个特征映射为:

式中K0表示输入层的通道数。一般较小的k 值就可以获得较好的效果,随着层数的增加,相应的特征图的输入也逐渐增多。但每个层仅有自己独有的k 个特征,而k 就是生长率。

DenseNet 网络在图像分类性能表现出很大的优势,由于密集连接方式,DenseNet 提升了梯度的反向传播,使得网络更容易训练。由于每层可以直达最后的误差信号,实现了隐式的“deep supervision”;参数更小且计算更高效,这有点违反直觉,由于DenseNet 是通过concat 特征来实现短路连接,实现了特征重用,并且采用较小的growth rate,每个层所独有的特征图是比较小的;由于特征复用,最后的分类器使用了低级特征。

图4 DenseBlock+Transition结构

3 实验结果与分析

3.1 数据集获取

目前基于深度学习的火灾检测研究还处于初期阶段,在火灾研究领域的公共的数据集比较少,常用的方式即通过摄像头捕获一些火焰、烟雾图片或者视频数据。考虑是既要获取火灾的空间特征,又要获取时间特征,如果使用一般毫无关联的火灾图像,很难学习全部特征,因此使用多个场景下的连续帧图像模型进行训练。数据集为网上获取的不同场景下的连续视频帧图像,其中训练集火图像数为12550 张,非火图像为10850 张;测试集火图像数为1716 张,测试非火图像数为1223 张。

3.2 图片数据预处理

火灾数据集都是一些不标准的数据集,不能直接送到网络中训练,虽然有些网络可以直接对原始数据集处理,但每次训练都需要重新处理数据集,则会浪费大量训练时间,因此预先处理出适用于预训练模型的数据集是非常必要的。

许多CNN 需要输入标准尺寸的图像,而摄像头采集到的数据往往不能满足这样的要求,所以必须要对这些数据集剪切到指定尺寸,同时使用数据集增强技术扩充数据集,数据增强方法非常适用于图像识别与目标检测,即使图片进行一些几何变换(翻转、裁剪等),其类别信息与特征也不变,可以使神经网络的泛化误差大大降低。

3.3 实验环境及超参数设置

本文实验采用GPU 是NVIDIA GeForce GTX 1080Ti,CPU 为Intel Xeon ES-260,32G 内 存,128G SSD;Windows10 64bit 操作系统,环境配置CUDA9.0,PyCharm 编译软件,PyTorch 深度学习框架的软硬件平台。

深度学习算法包含许多超参数,它们分别控制算法的不同表现,也会对算法的运行时间、推断能力等造成影响。超参数可以手动选择,也可以让机器自动选择,手选超参要对超参数的作用以及模型有着较高的认知,自动选择超参数算法则是建立在超强的算力基础上面。本文采取手动调整超参数方式设置如下超参数:学习率(learning-rate)为0.001,迭代次数为25 次,优化器(optimizer)为SGD 优化器,批大小(batch_size)为16。

3.4 性能评价指标

实验结果通过TP(True Positive)、FP(False Posi⁃tive)、TN(True Negative)、FN(False Negative)、准确率A、误报率P、敏感度R、漏检率Miss 八个指标评价模型的好坏。

TP、FP、TN、FN 四个概念之间的关系如表2 所示。

表2 预测结果概念定义表

其中:

(1)TP:表示火数据集中被分类为火的图像数量。

(2)FP:表示火数据集中未被分类为火的图像数量。

(3)TN:表示非火数据集中未被分类为火的图像数量。

(4)FN:表示非火数据集中被分类为火的图像数量。

(5)准确率:指真正有火的数据集数量在所有火图像中所占的比例,表示模型发出正确警报的概率。

(6)误报率:指非火图片被分类成火的统计在所有报警图像数量的占比,表示模型发出错误警报的概率。

(7)敏感度:指正确图像数量在所有火焰图像中的比例。表示系统对火图像的敏感程度,敏感程度R 值越大,则代表模型对火图像的识别能力越强。

(8)漏检率:指未检测到的火图片在总测试集中所占的比例。漏检率值Miss 越低,表示模型对火的识别能力越强。

3.5 实验结果与分析

通过对训练集训练得到结果如图5 所示。

图5 可以看出各模型训练开始时loss 值就较小,并且loss 值可以快速收敛,模型在训练20 个epoch后,loss 值趋于稳定。

由图6 可以看出经过一个epoch 的训练,各模型就达到了一个很好的预期效果,精确度最低为84%;第二个epoch 后,训练精度大幅提升,10 个epoch 以后训练精确度明显提高,在98%左右波动。

我们对训练后的模型在测试集上测试,实验结果如表3 所示。

表3 模型实验结果对比

图5 各模型loss 曲线

图6 训练精确度曲线

通过表3 可以看出就训练时间来说,随着网络深度的增加,训练的时间是越长的。DenseNet121 模型由于网路深度的原因,越到后面层学习的特征图越多,占用内存较大,训练时间较长。对于测试时间,我们可以看出DenseNet121 的测试时间较短,检测2900 多张图片仅需要19 秒,检测速度快;InceptionV3 模型的时间检测较长,需要40 多秒,ResNet18 和ResNet50 的检测时间基本都在30 秒左右;对于测试集DenseNet 能表现出很好的检测效果,精确度91.15%,其他三种模型的精确度都在90%以下。对于模型的大小,Incep⁃tionV3 网络训练后模型大小95.3M,ResNet18 模型因其网络层数低有43.7M,ResNet50 网络模型大小89.9M,而DenseNet 网络模型只有31.6M。综合实验我们可以得出虽然DenseNet 训练模型的时间较长,但在检测时间和检测精度上都明显优于其他三种模型,且模型小,更容易在硬件上被使用。

对火图像和非火图像分别在四种模型下预测,得到四种模型的混淆矩阵如表4。

将表4 的数据代入式(5)、式(6)、式(7)、式(8)可求出各模型的准确率、误报率、召回率、漏检率,如表5所示。

表4 4 种模型混淆矩阵

表5 4 种模型准确率、误报率、召回率、漏检率

由表5 可以看出InceptionV3 网络在召回率方面有很大优势达到94.75%,但准确率和精确率都比较低,误报问题比较严重,有23.14%的误报率,但漏检性能较好,漏检率为5.25%;ResNet18 与ResNet50 基本保持相同的性能,准确率分别是88.40%和87.65%,检测效果一般;DenseNet 虽然在召回率方面略低于In⁃ceptionV3 网络,但准确率在92.54%,明显高于其他网络,误报率和漏报率分别是7.46%和7.36%。

通过以上实验我们可以看出,微调后的DenseNet网络模型具有预测时间短、精确度高、漏报率低、误报率低等优势而且模型比较小,能够很好地应用到火灾检测领域,则选取DenseNet121 模型作为最终深度迁移模型。

4 结语

本文基于迁移学习的视频火灾图像检测方法研究,选取了迁移学习模型分别是InceptionV3、ResNet18、ResNet50、以及DenseNet 模型,将数据集放入预训练模型中训练,并对模型做了微调,最终得到了不同的模型,分别对他们的精确度、漏报率、预测时间做了对比,实验表明DenseNet 具有预测时间短、精确度高、漏报率低的优势,我们选取DenseNet 作为最后的模型。下一步准备结合目标检测算法对火灾区域进行定位。

猜你喜欢
火焰火灾图像
最亮的火焰
基于生成对抗网络的CT图像生成
浅析p-V图像中的两个疑难问题
缤纷的火焰
巧用图像中的点、线、面解题
漂在水上的火焰
火焰
掌握火灾逃生知识
趣味数独等4则
离奇的火灾