Print

发布时间: 2019-01-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.180430
2019 | Volume 24 | Number 1




    图像理解和计算机视觉    




  <<上一篇 




  下一篇>> 





结合Faster R-CNN的多类型火焰检测
expand article info 回天, 哈力旦·阿布都热依木, 杜晗
新疆大学电气工程学院, 乌鲁木齐 830047

摘要

目的 火焰检测可有效防止火灾的发生。针对目前火焰检测方法,传统图像处理技术的抗干扰能力差、泛化性不强,检测效果对数据波动比较敏感;机器学习方法需要根据不同的场景设定并提取合适火焰的特征,过程比较繁琐。为此提出一种基于Faster R-CNN的多类型火焰检测方法,避免复杂的人工特征提取工作,在面对复杂背景、光照强度变化和形态多样的火焰图像时依然保证较好的检测精度。方法 基于深度学习的思想,利用卷积神经网络自动学习获取图像特征。首先,利用自建数据集构建视觉任务。根据火焰的尖角特性、直观形态和烟雾量等,将火焰类数据划分为单尖角火焰、多尖角火焰和无规则火焰3类。此外,通过深度网络特征可视化实验发现,人造光源与火焰在轮廓上具有一定的相似性,为此建立了人造光源圆形和方形两个数据集作为干扰项来保证检测模型的稳定性;然后,细化训练参数并调整预训练的卷积神经网络结构,改动分类层以满足特定视觉任务。将经过深度卷积神经网络中卷积层和池化层抽象得到的图像特征送入区域生成网络进行回归计算,利用迁移学习的策略得到每一类目标物体相应的探测器;最后,得到与视觉任务相关的目标检测模型,保存权重和偏置参数。并联各类目标物体的子探测器作为整体探测器使用,检测时输出各类探测器的分数,得分最高的视为正确检测项。结果 首先,利用训练好的各探测器与相应测试集样本进行测试,然后,再利用各类目标物的测试集来测试其他类探测器的检测效果,以此证明各探测器之间的互异性。实验结果表明,各类探测器都具有较高的专一性,大大降低了误判的可能性,对于形变剧烈和复杂背景的火焰图像也具有良好的检测准确率。训练得到的检测模型在应对小目标、多目标、形态多样、复杂背景和光照变化等检测难度较大的情况时,均能获得很好的效果,测试集结果表明各类探测器的平均准确率提高了3.03% 8.78%不等。结论 本文提出的火焰检测方法,通过挖掘火焰的直观形态特征,细分火焰类别,再利用深度卷积神经网络代替手动特征设置和提取过程,结合自建数据集和根据视觉任务修改的网络模型训练得到了检测效果良好的多类型火焰检测模型。利用深度学习的思想,避免了繁琐的人工特征提取工作,在得到较好的检测效果的同时,也保证了模型具有较强的抗干扰能力。本文为解决火焰检测问题提供了更加泛化和简洁的解决思路。

关键词

火焰; 深度学习; 区域卷积神经网络; 视觉任务; 目标检测

Multi-type flame detection combined with Faster R-CNN
expand article info Hui Tian, Halidan·Abudureyimu, Du Han
School of Electrical Engineering, Xinjiang University, Urumqi 830047, China
Supported by: Natural Science Foundation of Xinjiang Uygur Autonomous Region, China(2016D01C048)

Abstract

Objective Flame detection can effectively prevent the occurrence of fire. Traditional image processing techniques for current flame detection methods have low anti-interference ability and generalization, and the detection effect is highly sensitive to data fluctuations. Machine learning must set and extract the characteristics of a suitable flame on the basis of different scenarios, and this process is complex. To avoid complex artificial feature extraction and ensure good detection accuracy in the presence of complex backgrounds, lighting changes, and various forms of flame images, a multi-type flame detection method based on Faster R-CNN was proposed. Method This method is based on deep learning and uses convolutional neural networks to automatically learn to acquire image features. First, visual tasks were established using self-built datasets. According to the sharp angle characteristics of the fire, the visual shape, and the amount of smoke, the flame data were divided into three types, namely, single point, multi-point, and shapeless flames. In addition, in-depth network feature visualization experiments revealed that the artificial light source and the flame have similarities in contour. Thus, two datasets of artificial light sources (circular and square) were established as interference items to ensure the stability of the detection model. Then, the training parameters were refined, and the pre-trained convolutional neural network structure was adjusted. The classification layer was modified to satisfy specific visual tasks. The image features abstracted by the convolutional and pooling layers in the deep convolutional neural network were sent to the region proposal network for regression calculation, and the corresponding detectors for each type of target object were obtained by transfer learning strategy. Finally, the target detection model based on the visual tasks was obtained, and the weights and bias parameters were saved. The sub-detectors of various target objects in parallel were used as the overall detector. The scores of various detectors were output during the detection, and the highest score was considered the correct detection item. Result First, the trained detectors and the corresponding test dataset were used for testing. Then, the test sets of various targets were utilized to test the detection effect of other types of detectors to prove the mutuality between detectors. The experiments demonstrated that all kinds of detectors had a high specificity, which greatly reduced the possibility of misjudgment, and good detection accuracy for flame images with sharp deformations and complex backgrounds. The detection model obtained through training achieved good results when dealing with difficult situations, such as small targets, multiple targets, various forms, complex backgrounds, and lighting changes. The results showed that the average accuracy of various types of detectors increased between 3.03% and 8.78%. Conclusion The proposed flame detection method subdivided the flame category by excavating the visual morphological characteristics of the flame and using the deep convolutional neural network instead of manual feature setting and extraction process. By combining self-built datasets and network models that were modified based on visual tasks, a multi-type flame detection model with good detection results was obtained. By using the concept of deep learning, the tedious artificial feature extraction is avoided, and a good detection effect, is achieved. In addition, the model has a strong anti-interference ability. This article provides a more general and concise solution to the problem of flame detection.

Key words

fire; deep learning; region convolutional neural network; vision tasks; object detection

0 引言

火灾会对人类的生命健康和财产安全造成严重威胁。火焰的快速识别和预警可以很大程度上减少其对人民生命健康及财产安全的损害。早期人们使用传感器来判断火灾是否发生,然而其信息单一且易受物理因素影响,检测的可靠性和持续性都有待提高。随着计算机技术的发展,人们开始利用图像处理技术和机器学习算法实现火焰的检测,该类方法主要针对图像通道、火焰边缘和火焰物理特征等特点来进行检测,这些解决方案都取得了一定的效果,但是传统图像处理技术的抗干扰性不强,对图像质量和图像背景要求较高,而且机器学习方法依赖人工特征提取,虽然可以在有限的数据集上实现较好的准确度,但是依然存在特征提取过程比较繁琐和泛化性不强等问题,在面对复杂背景以及多类型的火焰数据时,问题尤为明显。这些问题使得目前的火焰检测方法不够完善,所以本文的主要目标是利用深度学习方法实现对多类型火焰的检测,摆脱复杂的人工特征提取工作,并使检测模型在面对复杂背景以及形态多样的火焰时,都能保证较高的准确率和泛化性。随着2012年深度卷积神经网络AlexNet[1]的首次提出及其在物体识别上的良好表现,越来越多的研究人员开始投入到深度学习的研究中,卷积神经网络在图像处理领域的应用也越来越广泛。针对目标检测问题,Girshick等人[2]提出了Faster R-CNN,该网络模型也是目前用于图像目标检测最有效的模型之一。本文将自建火焰数据集并利用Faster R-CNN进行火焰检测,具体工作为以下3点:

1) 自建火焰数据集。通过人工拍摄和互联网资源自建一个火焰数据集,填补目前火焰检测方面的数据空缺;

2) 多类型火焰划分标注。分析火焰形态特征并挖掘其特点,将火焰划分为单尖角火焰、多尖角火焰和无规则火焰3个类型,同时为了提高模型检测的稳定性,还增加了人造光源作为干扰项;

3) 多探测器训练。根据具体的视觉任务细化训练参数,利用Faster R-CNN算法将划分过的数据集训练出多个探测器,提高模型检测的专一度和准确度,为火焰检测问题提供更简洁、更准确和更高泛化性的解决思路。

1 相关工作

在近期的火焰检测研究中,火焰特征多为人工设定并提取。耿庆田等人[3-4]提出了基于颜色空间和基于运动特征的火焰检测方法。王腾等人[5]提出了将火焰颜色分量的离散度作为研究对象,通过绘制大样本数据的ROC(receiver operating characteristic curve)曲线来确定判断火焰。陈嘉卿等人[6]提出了基于RGB统计模型的火焰识别算法,结合区域生长及帧差法提取疑似火焰区域,并利用BP神经网络进行火焰的判断。张霞等人[7]提出了结合LBP(local binary patterns)直方图来提取疑似火焰的区域,之后将特征向量送入预训练好的SVM(support vector machine)中进行判断。毛文涛等人[8]提出了将颜色空间信息引入尺度不变特征的变换算法,建立局部特征过滤和极限学习机的快速火焰识别模型。文献[9-10]提出了将火焰的面积增加率、圆形度、火焰尖角数作为特征向量输入到BP神经网络和动态模糊神经网络,识别出复杂环境中的火焰。席廷宇等人[11]提出了根据火焰的色度特征进行图像分割,再通过运动目标与图像差分运算获取火焰候选区域,通过提取候选区域的面积变化率、圆形度、尖角个数以及质心位移等特征量建立火焰的对数回归快速识别模型。

通过分析文献可以发现近期火焰识别、检测方法存在以下问题:

1) 利用图像通道、颜色直方图及帧差法等图像处理技术进行火焰识别检测,当图像背景复杂、目标形变较大时,该类方法的抗干扰能力较低,容易出现误差;

2) 利用支持向量机和BP神经网络等机器学习方法进行火焰识别检测,需要对火焰设定大量的物理特征并进行提取,过程较为繁琐且火焰形态多变,对于不同的特征关注点,在不同数据集上所得的准确度可能会降低。

利用深度学习进行目标检测已经广泛应用于其他领域。冯小雨等人[12]将基于深度学习的目标检测框架Faster R-CNN用于空中目标检测。曹诗雨等人[13]提出了一种基于快速区域卷积神经网络的车辆检测方法。王林等人[14]提出了一种基于改进Faster R-CNN的车辆检测方法。吴晓凤等人[15]提出了一种基于Faster R-CNN的手势识别方法。

深度卷积神经网络提取的是图像的颜色、边缘和轮廓等特征,所以针对火焰这种颜色、边缘和轮廓特征比较突出的目标,其算法的优越性可以得到充分发挥。本文提出基于Faster R-CNN的火焰检测方法,并针对小样本利用迁移学习策略实现高效学习[16],可有效降低复杂背景、光照变化以及目标形态多变等因素对于检测的影响,进一步提高火焰检测的稳定性和准确性。

2 数据集的建立

目标检测结果的好坏与数据集有很大的关系。目前,网络上尚无体量较大、类型较全面的火焰数据集。本文根据自然场景下多类型的火焰检测任务,利用人工拍摄和互联网资源建立了火焰数据集,并对每一幅图像进行标注。数据集中每幅图像对应一个标签注明火焰类型,每幅图中还对应了一个或者多个目标矩形的坐标和长宽。卷积神经网络可以提取多层数据特征和表示复杂的数据分布,学习到的多层抽象表示更有助于了解形状等数据的信息[17],其浅层部分主要提取的是物体的颜色和边缘信息,经过层层向前计算,网络深层部分则主要提取的是物体的轮廓信息,可视化效果如图 1所示。对比火焰图像与室内吸顶灯的深层特征可视化结果可以看出,经过网络对图像特征的不断抽象,对于某些角度的灯具,其轮廓容易与火焰形状产生混淆。为了降低这种情况对于检测结果的影响,数据集中还收集了人造光源作为干扰项来使用,不仅可以使数据更为多元化,还可以增强检测模型的稳定性。

图 1 卷积神经网络深层特征可视化
Fig. 1 Visualization of deep features of CNN
((a)original images; (b) feature visualization results)

本文自建的数据集一共包含5类子集:

1) 单尖角火焰。主要为尖角只有一个且尖角明显的火焰,如烛火和打火机火焰等。

2) 多尖角火焰。主要为尖角有两个及以上,火焰有一定的形变且烟雾量较少的火焰,如柴火、篝火和家用电器火焰等。

3) 无规则火焰。主要为无明显尖角、火焰形变明显且烟雾量较大的火焰,如爆炸形式的火焰及大型可燃物的火焰等。

4) 人造光源(方形)。主要为方形日光灯和路灯,作为干扰项使用。

5) 人造光源(圆形)。主要为圆形日光灯、路灯和车灯,作为干扰项使用。

其中,火焰数据按照火焰的尖角特性、直观形态以及烟雾量等划分为3类,人造光源按照大体形状划分为方形、圆形两类。

数据集的具体构成如表 1所示,每个子集包含600幅图像,其中500幅作为训练集,100幅作为测试集。数据集中的所有图像统一为宽500像素,长按比例自动调节。部分数据展示如图 2所示。

表 1 火焰数据集
Table 1 Flame data set

下载CSV
类别 数量/幅 分辨率/像素
单尖角火焰 600 宽为500像素,长按原图比例自动调节
多尖角火焰 600
无规则火焰 600
人造光源(方形) 600
人造光源(圆形) 600
图 2 部分数据集展示
Fig. 2 Partial dataset
((a) single point flames; (b) multi-point flames; (c) shapeless flames; (d) artificial light source(square); (e) artificial light source(circular))

数据集主要有以下特点:

1) 图像背景多样。数据集包括街道、自然场景和室内等多种场景,这样既增加了检测难度也对检测模型的实用性提出了更高的要求。

2) 以不相同的静态图像为主。数据集中通过视频截取所获得的图像数据占比约为20%,视频截取的方法虽然可以快速获取大量图像资料,但是前期实验表明,利用视频截取的数据训练出的探测器,其泛化性不好。这是因为视频相邻帧的目标形变不够明显,尽管数据量很大,但是背景单一,数据的内部结构相似性太大,当测试数据与训练数据相差较大时,检测的准确度就会下降。形态多样的静态图像更能提高数据的多样性和检测模型的泛化能力。

3) 部分标注策略。通常用于标注物体位置的矩形框会包含整个目标物体,但是火焰形状总是不规则的,尤其是多尖角的火焰图像。对于一些飘动比较剧烈的火焰图像,为了包含整个火焰区域,往往需要将矩形框画的很大,这样不仅增加了无用的计算,还有可能出现目标区域噪声过多和网络学习不到火焰特征等问题,为了提高检测精度,借鉴可变形部件模型[18]的思想,对火焰形状过于稀疏的图像拆分为几个目标进行标注。这一方法主要在多尖角火焰数据中使用,例如图 2(c),可标注为左右两个火焰目标。部分标注策略虽然将火焰主体拆分,但是这与火焰检测的目的并不冲突,不仅降低了矩形框内背景噪声对于检测的影响,同时也保证了检测精度。

3 基于Faster R-CNN的多探测器训练

3.1 Faster R-CNN概述

Faster R-CNN是在Fast R-CNN的基础上将生成候选区域的任务交给区域生成网络(RPN)来完成,并将这两个部分整合为一个完整的网络模型,既保证了精度又提高了检测速度。

区域生成网络在最终用来预测的特征图上采用滑动窗口的机制。该网络在特征图上的每次滑动,都会在滑动窗的中心点产生多个锚点(anchors),即候选框。生成候选框的具体做法如下:

1) 把每个窗口的中心点当成一个基准点;

2) 围绕基准点选取$ k$个不同面积、不同比例的候选框,之后再接上一个二分类的全连接层,该层有两个输出,即边框回归层(box-regression layer)和边框分类层(box-classification layer)。第1个用以表示当前区域是目标还是背景的概率,第2个输出代表了当前候选区矩形框的4个坐标位置。

对于候选框的选择,以IoU(intersection over union)为分类指标把候选框分为正负样本两类,即

$ {F_{{\rm{IoU}}}} = \frac{{{S_{\rm{A}}} \cap {S_{\rm{g}}}}}{{{S_{\rm{A}}} \cup {S_{\rm{g}}}}} $ (1)

式中,${S_{\rm{A}}} $表示预测框(AnchorBox),${S_{\rm{g}}} $表示标记框(gTruthBox),$ {F_{{\rm{IoU}}}}$表示二者的重叠率。

对于正负样本的选择:

1) 如果${F_{{\rm{IoU}}}} $值最大(可以不大于0.7), 标记为正样本;

2) 如果${F_{{\rm{IoU}}}} $>0.7, 标记为正样本;

3) 如果${F_{{\rm{IoU}}}} $ < 0.3, 标记为负样本。其余样本以及跨越图像边界的候选框都抛弃不用。

区域生成网络的总体损失函数可以定义为

$ \begin{array}{l} L\left( {\left\{ {{p_i}} \right\}\left\{ {{t_i}} \right\}} \right) = \frac{1}{{{N_{{\rm{cls}}}}}}\sum\limits_i {} {L_{{\rm{cls}}}}\left( {{p_i}, p_i^ * } \right) + \\ \lambda \frac{1}{{{N_{{\rm{reg}}}}}}\sum\limits_i {} p_i^ * \cdot {L_{{\rm{reg}}}}\left( {{t_i}, t_i^ * } \right) \end{array} $ (2)

式中,$ N$为归一化参数,$ L$为损失函数,cls表示边框分类层,reg表示边框回归层;$\lambda $为平衡因子,通常为1;$ i$表示每批次训练中候选框的索引;$ {p_i}$表示候选区内有检测目标的概率;$p_i^ * $表示类别的标签,正样本为1,负样本为0;${t_i} \in \left\{ {{t_x}, {t_y}, {t_w}, {t_h}} \right\} $表示预测框相对于候选框的偏移,$t_i^ * \in \left\{ {t_x^ * , t_y^ * , t_w^ * , t_h^ * } \right\} $表示标记框相对于候选框的偏移。回归过程即让$ {t_i}$接近$ t_i^ * $,计算为

$ \left\{ \begin{array}{l} {t_x} = \frac{{{x_{\rm{A}}} - {x_{\rm{P}}}}}{{{w_{\rm{P}}}}}, \;\;\;\;{t_y} = \frac{{{y_{\rm{A}}} - {y_{\rm{P}}}}}{{{h_{\rm{P}}}}}\\ {t_{\rm{w}}} = \log \left( {\frac{{{w_{\rm{A}}}}}{{{w_{\rm{P}}}}}} \right), \;\;\;\;{t_h} = \log \left( {\frac{{{h_{\rm{A}}}}}{{{h_{\rm{P}}}}}} \right)\\ t_x^ * = \frac{{{x_{\rm{g}}} - {x_{\rm{P}}}}}{{{x_{\rm{P}}}}}, \;\;\;\;t_y^ * = \frac{{{y_{\rm{g}}} - {y_{\rm{P}}}}}{{{y_{\rm{P}}}}}\\ t_w^ * = \log \left( {\frac{{{w_{\rm{g}}}}}{{{w_{\rm{P}}}}}} \right), \;\;\;\;t_h^ * = \log \left( {\frac{{{h_{\rm{g}}}}}{{{h_{\rm{P}}}}}} \right) \end{array} \right. $ (3)

式中,下标A、P、g分别代表预测框(AnchorBox)、候选框(ProposalBox)和标记框(gTruthBox),$ x、y、w、h$分别表示3种框的中心坐标、宽和高。边框回归过程如图 3所示。

图 3 边框回归过程
Fig. 3 Box-regression process

检测的分类损失定义为

$ \begin{array}{l} {L_{{\rm{cls}}}}\left( {{p_i}, p_i^ * } \right) = \\ - \log \left[ {{p_i}, p_i^ * + \left( {1 - {p_i}} \right)\left( {1 - p_i^ * } \right)} \right] \end{array} $ (4)

边框的回归损失定义为

$ {L_{{\rm{reg}}}}\left( {{t_i}, t_i^ * } \right) = \sum\limits_{i \in \left\{ {x, y, w, h} \right\}} {} {s_{L1}}\left( {{t_i}, t_i^ * } \right) $ (5)

式中,${s_{L1}}\left( x \right) $为回归损失函数

$ {s_{L1}}\left( x \right) = \left\{ \begin{array}{l} 0.5\;\;{x^2}\;\;\;\;|x| \le 0\\ |x| - 0.5\;\;\;\;其他 \end{array} \right. $ (6)

3.2 针对本文研究问题的训练策略

为了使得Faster R-CNN目标检测算法能够更好地应用于火焰检测,本文通过在实验中多次对比,总结出以下参数的修改:

1) 网络改动。本文选取预训练的AlexNet作为Faster R-CNN的基准网络,针对网络结构只改动分类层,原网络的第8层全连接层是针对1 000种物体的分类层,而本文的每个探测器只做2分类,所以需要将原网络的分类层去掉,改为输出为2的新分类层,并将权重影响因子改为10;

2) 训练参数。采用随机梯度下降法迭代更新权重参数,并采用L2正则化减少过拟合,最大迭代轮次为100轮,迭代次数为55 000次,学习率为0.000 1,动量因子为0.9;

3) 锚点(anchors)参数。对于单尖角火焰,因为数据中含有不少小目标,为了提高训练时收敛速度和测试阶段的检测精度,将基准面积大小设为10×10像素,而对于其他类的数据,保持原始基准面积16×16像素不变。

3.3 实验流程

训练过程如图 4所示。通过前期实验发现,如果将整个火焰数据集在一个探测器上进行训练,其检测效果不尽人意,所以本文的实验部分提出针对每种类型的火焰数据子集,分别训练各自的子探测器。

图 4 模型训练过程
Fig. 4 Model training process

具体过程如下:

1) 定义视觉任务。将自建的火焰数据集拆分为需要训练的几个类别,对每一幅图像进行标注。

2) 调整预训练网络。实验中使用在ImageNet上预训练的AlexNet,并根据自己的视觉任务对网络的分类层做出调整。

3) 训练阶段。结合调整过的网络和分类后的数据集,用每个类别的训练集训练一个探测器;

4) 测试阶段。对于步骤3)中的探测器,分别用各类的测试集进行测试,得到相应的测试结果,然后针对每个探测器,再用其他类的测试集进行测试,考察各探测器之间的互异性。

5) 检测阶段。输入一幅图像的同时,通过5个探测器输出得分最高的视为检测到的类别。

4 实验结果与分析

本文使用Caffe框架,在英伟达GTX 1060(3 GB显存)GPU下加速训练。由于硬件条件限制,使用的预训练卷积神经网络模型为AlexNet,根据自己的视觉任务对网络进行了调整,经过约35 h的训练,得到了各个类别的火焰探测器。模型测试阶段需要并联训练好的5个探测器,在输入1幅图像的时候同时输出5个探测器的输出值,得分最高的视为正确检测项。模型测试过程如图 5所示。

图 5 模型测试过程
Fig. 5 Model testing process

4.1 各探测器测试结果与分析

使用召回率(recall)和精确度(precision)来衡量每个探测器的性能,然后再通过对比各探测器在测试集上的平均准确率(AP)和整个模型对于所有类别的平均准确率(mAP)来评价模型的好坏。AP利用召回率和准确率两个值来衡量检测算法的准确性,它可以作为评价检测模型准确性的直观标准,也可以用来分析单类别的检测效果。mAP是各个类别AP的平均值,mAP越高表示检测模型在全类别中的检测性能越好。实验结果见表 2表 3

表 2 各探测器精确度和召回率
Table 2 Precision and recall of each detector

下载CSV
/%
类别 精确度 召回率
Faster R-CNN 本文 Faster R-CNN 本文
单尖角火焰 86.09 96.40 90.83 98.17
多尖角火焰 90.38 94.17 92.16 95.15
无规则火焰 90.10 98.02 92.08 98.02
人造光源(方形) 92.31 98.00 96.00 98.00
人造光源(圆形) 83.58 95.00 96.55 98.28
注:加粗字体为最优结果。

表 3 各探测器AP和mAP值
Table 3 AP and mAP values of each detector

下载CSV
/%
类别 AP mAP
Faster R-CNN 本文 Faster R-CNN 本文
单尖角火焰 88.24 97.02 92.56 97.05
多尖角火焰 91.61 94.64
无规则火焰 91.05 97.55
人造光源(方形) 95.96 97.91
人造光源(圆形) 95.92 98.16
注:加粗字体为最优结果。

对比结果可以看出,各类探测器的AP值提高了3.03%8.78%不等,mAP提高了4.49%,表明本文针对火焰检测问题,训练出的探测器对于火焰的检测准确度更高,修改后的检测算法具有更强的针对性。由于探测器是针对各类火焰和人造光源的训练集单独训练得到的,所以各探测器之间的互异性也需要被验证。表 4列出了每种探测器在其他类火焰和人造光源的测试集上的AP值,通过对比每种探测器对于其他类数据的检测效果,来证明探测器的专一性,同时也可以反映整个模型的稳定性。其中,探测器1、探测器2、探测器3、探测器4和探测器5,分别对应单尖角火焰、多尖角火焰、无规则火焰、人造光源(方形)和人造光源(圆形)。

表 4 各探测器之间互异性
Table 4 Dissimilarity between detectors

下载CSV
/%
类别 AP
探测器1 探测器2 探测器3 探测器4 探测器5
单尖角火焰 97.02 8.28 0.92 8.38 17.38
多尖角火焰 2.28 94.64 1.60 0.12 0
无规则火焰 0.33 6.79 97.55 0 0
人造光源(方形) 6.60 2.33 0 97.91 35.07
人造光源(圆形) 36.96 0.57 0 62.46 98.16
注:加粗字体为最优结果。

表 4的结果可以看出,每种探测器都具有较强的专一性,对于检测其他类数据的AP值都远远低于其目标类的AP值,可以保证检测的精度。其中,探测器1对人造光源(圆形)的AP值为36.96%,相比其他类较高,这是因为某些单尖角火焰的轮廓特征与圆形灯有一定的相似性, 如图 1(b)所示,为了避免特殊个体使得检测结果出现误判,需要设置探测器5实现对人造光源(圆形)的检测,以此来保证整体检测模型的准确度。同理,探测器4的意义也是如此,人造光源圆形和方形也存在一定的内部相似性,将两者区分开并训练两个探测器可以有效避免误判,提高检测精度。

4.2 各探测器的检测时间

针对本文算法,不同的图像分辨率会有不同的检测速度。表 5展示了各探测器在不同分辨率下测试集的检测时间。原始图像为各测试集中的图像,取1.5为图像宽的比例乘数进行放大,并计算单幅图像平均测试时间(原始图像固定宽为500像素,长按比例自动放大。)

表 5 不同分辨率的检测时间
Table 5 Detection time at different resolution

下载CSV
/s
探测器 分辨率(宽)/像素
500 750 1 125
单尖角火焰 0.492 0.674 1.127
多尖角火焰 0.611 0.760 0.758
无规则火焰 0.509 0.584 0.851
人造光源(方形) 0.812 0.904 1.090
人造光源(圆形) 0.796 0.901 0.928

表 5结果可以看出,各探测器的检测时间基本满足实时性要求。实验中还发现,提高图像分辨率,可以直接放大待检测目标的体积,这样间接提高了对小目标检测的精准度,但是会增加每次需要计算的参数量,检测时间也会相应延长,可以改进网络结构或者直接使用运算能力更强的GPU来进一步减少检测时间。

4.3 单尖角火焰检测结果与分析

单尖角火焰的测试数据中包含多目标和小目标,如多个蜡烛火焰以及距离较远的烛火等。图像经过卷积神经网络是个不断抽象的过程,对于本身携带信息很少的小目标来说,其细节信息很容易在层层的卷积和池化中丢失,所以这类样本存在容易漏检、误检的问题,这会给检测的精度带来一定的影响,通过多次对比实验发现,将锚点的基准面积修改至10×10像素时,可有效提高检测的精确度。部分检测结果如图 6所示。

图 6 单尖角火焰的部分检测结果展示
Fig. 6 Partial test results of single point flames
((a) the first multiple goals; (b) the second multiple goals; (c) weak contrast; (d) the first small goal; (e) the second small goal)

虽然图 6(e)的检测得分不高且对于火焰的具体位置有所偏离,但是也基本找到了火焰位置。面对多目标图 6(a)(b)和背景对比不明显的图 6(c)也可以检测出火焰位置。实验表明本文针对单尖角火焰训练出的探测器适用于不同场景和不同目标数量的火焰检测,精确度满足实际要求。

4.4 多尖角火焰检测结果与分析

多尖角火焰形变较为剧烈,形态较为多样且背景复杂。为了降低噪声干扰并提高检测精度,采用部分标注策略对多尖角火焰数据进行标注,将图像中较为稀疏的火焰目标转化为多目标检测。部分检测结果如图 7所示。

图 7 多尖角火焰的部分检测结果展示
Fig. 7 Partial test results of multi-point flames
((a) natural scene; (b) building scene; (c) multiple goals; (d) indoor scene; (e) partial labeling)

图 7(e)的火焰被检测为两个部分,这是因为采用了部分标注策略将火焰拆分为多个个体进行标注和训练,这样虽然增加了计算量,但是却可以减少标注框内的无用计算,提高检测精度。图 7(a)(d)则是在多场景下的火焰检测,证明探测器在复杂背景的情况下依然具有较好的精确度。

4.5 无规则火焰检测结果与分析

无规则火焰的主要特点是火焰形状不突出、烟火分离不明显。对于其他形状相对较简单、结构相对较单一的火焰图像来说,无规则火焰的检测精确度最高。部分检测结果如图 8所示。

图 8 无规则火焰的部分检测结果展示
Fig. 8 Partial test results of shapeless flames
((a) the first vehicle flame; (b) the second vehicle flame; (c) explosive form; (d) flame with smoke; (e) aircraft flame; (f) flame separation is not obvious)

对比实验结果,无规则火焰的检测精确度比单尖角火焰高出0.51%,比多尖角火焰高出2.89%。通过分析数据发现,无规则火焰对比其他类火焰,其目标通常较大且常常伴随有浓烟,在标注时为了遵循实际情况,会把浓烟与火焰一起进行标注,这使得该类火焰形态比较突出,相对其他目标较小的火焰更容易检测。但是标注框过大也会出现一些误检情况,如图 8(e)将白色的机身检测为火焰,发生这种情况主要是因为飞机失火的数据资料比较少,在训练集中的占比较低,神经网络无法有效地学习其特征。实验表明本文针对无规则火焰训练出的探测器适用于复杂场景、无明显形状的火焰目标检测,检测精度满足实际要求。

4.6 人造光源(方形和圆形)检测结果与分析

将人造光源的圆形和方形放在一起讨论。收集人造光源的数据主要是为了提高模型的稳定性,降低模型将生活中常见光源识别为火焰的概率。两种光源形态各异,全部为生活中实际光源拍照所得。部分检测结果如图 9所示。

图 9 人造光源(方形和圆形)的部分检测结果展示
Fig. 9 Partial test results of artificial light source(square and circular)
((a) indoor light; (b) car light; (c) traffic light; (d) ceiling light; (e) the first electric light; (f) the second electric light)

人造光源(圆形)主要包括车灯、室内灯、路灯和手电等,可以看出,图 9(a)(c)都基本满足检测要求。而人造光源(方形)的种类较为单一,基本都是室内灯,但其角度多样、形状大小不一,也基本满足检测精度的要求。实验结果表明,人造光源的检测模型可有效检测出生活中常见的光源类别,在保证了检测精确度的同时,可有效提升整体模型对于火焰检测的稳定性。

5 结论

为了提高在自然场景下对火焰检测的精确度,探索出有实用价值的检测方法。首先,本文通过分析火焰的尖角特性、直观形态和烟雾量等直观特征,建立起火焰数据集,并将其分为单尖角火焰、多尖角火焰、无规则火焰、人造光源(方形)和人造光源(圆形),既对火焰进行了细致的分类来提高检测精度,又增加了人造光源的干扰项来保证检测稳定性;然后,结合自建数据集和针对本文视觉问题改进的Faster R-CNN算法训练各火焰类别的探测器,再通过并联的方式将各探测器整合为一个整体,避免了人工设定特征的繁琐过程,降低了复杂环境、形态多样和光照强度变化对于火焰检测的影响;最后,通过实验结果可以看出,检测模型可以得到较好的火焰检测结果,达到预期实验效果。但实验中使用的是预训练的卷积神经网络,该网络虽然在上百万幅图像上训练过,但是对于火焰识别的专一性还有待提高;多探测器并联虽然可有效提高检测精度,但会降低检测速度,无法形成即时检测的过程。在保证检测效果的前提下,解决上述问题是未来需要研究的重点问题。

参考文献

  • [1] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM, 2017, 60(6): 84–90. [DOI:10.1145/3065386]
  • [2] 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 and Machine Intelligence, 2017, 39(6): 1137–1149. [DOI:10.1109/TPAMI.2016.2577031]
  • [3] Geng Q T, Yu F H, Zhao H W, et al. New algorithm of flame detection based on color features[J]. Journal of Jilin University:Engineering and Technology Edition, 2014, 44(6): 1787–1792. [耿庆田, 于繁华, 赵宏伟, 等. 基于颜色特征的火焰检测新算法[J]. 吉林大学学报:工学版, 2014, 44(6): 1787–1792. ] [DOI:10.13229/j.cnki.jdxbgxb201406038]
  • [4] Geng Q T, Zhang J, Zhao H W, et al. Flame detection method based on the feature of motion trajectory[J]. Journal of Changchun Normal University, 2018, 37(2): 35–38. [耿庆田, 张晶, 赵宏伟, 等. 基于运动轨迹特征的火焰检测方法[J]. 长春师范大学学报, 2018, 37(2): 35–38. ] [DOI:10.3969/j.issn.1008-178X.2018.02.011]
  • [5] Wang T, Bu L P, Zhou Q F, et al. A new flame recognition model based on dispersion of color component[J]. Journal of Naval University of Engineering, 2016, 28(5): 107–111. [王腾, 卜乐平, 周清锋, 等. 一种基于颜色分量离散度的火焰识别模型[J]. 海军工程大学学报, 2016, 28(5): 107–111. ] [DOI:10.7495/j.issn.1009-3486.2016.05.021]
  • [6] Chen J Q, Zhang B, Song Y L. Flame recognition based on statistical RGB color model[J]. Journal of Jiangsu University of Science and Technology:Natural Science Edition, 2017, 31(2): 178–184. [陈嘉卿, 张冰, 宋英磊. 基于RGB统计颜色模型的火焰识别[J]. 江苏科技大学学报:自然科学版, 2017, 31(2): 178–184. ] [DOI:10.3969/j.issn.1673-4807.2017.02.011]
  • [7] Zhang X, Huang J F. Detecting flame in video in combination with LBP histogram and SVM[J]. Computer Applications and Software, 2016, 33(8): 216–220. [张霞, 黄继风. 结合LBP直方图和SVM的视频火焰检测[J]. 计算机应用与软件, 2016, 33(8): 216–220. ] [DOI:10.3969/j.issn.1000-386x.2016.08.048]
  • [8] Mao W T, Wang W P, Jiang M X, et al. Fast flame recognition approach based on local feature filtering[J]. Journal of Computer Application, 2016, 36(10): 2907–2911. [毛文涛, 王文朋, 蒋梦雪, 等. 基于局部特征过滤的快速火焰图像识别方法[J]. 计算机应用, 2016, 36(10): 2907–2911. ] [DOI:10.11772/j.issn.1001-9081.2016.10.2907]
  • [9] Duan S L, Gu C L. Rsearch on the detection method based on the optimized BP neural network for the visual fire flame recognition[J]. Journal of Changzhou University:Natural Science Edition, 2017, 29(2): 65–70. [段锁林, 顾川林. 基于BP神经网络视频火灾火焰检测方法[J]. 常州大学学报:自然科学版, 2017, 29(2): 65–70. ] [DOI:10.3969/j.issn.2095-0411.2017.02.012]
  • [10] Duan S L, Mao D. Research on fire flame image detection algorithm[J]. Computer Simulation, 2016, 33(2): 393–398. [段锁林, 毛丹. 关于火灾火焰图像检测算法研究[J]. 计算机仿真, 2016, 33(2): 393–398. ] [DOI:10.3969/j.issn.1006-9348.2016.02.082]
  • [11] Xi T Y, Qiu X B, Sun D Y, et al. Fast fire flame recognition algorithm based on multi-feature logarithmic regression[J]. Journal of Computer Applications, 2017, 37(7): 1989–1993. [席廷宇, 邱选兵, 孙冬远, 等. 多特征量对数回归的火焰快速识别算法[J]. 计算机应用, 2017, 37(7): 1989–1993. ] [DOI:10.11772/j.issn.1001-9081.2017.07.1989]
  • [12] Feng X Y, Mei W, Hu D S. Aerial target detection based on improved Faster R-CNN[J]. Acta Optica Sinica, 2018, 38(6): 250–258. [冯小雨, 梅卫, 胡大帅. 基于改进Faster R-CNN的空中目标检测[J]. 光学学报, 2018, 38(6): 250–258. ] [DOI:10.3788/aos201838.0615004]
  • [13] Cao S Y, Liu Y H, Li X Z. Vehicle detection method based on fast R-CNN[J]. Journal of Image and Graphics, 2017, 22(5): 671–677. [曹诗雨, 刘跃虎, 李辛昭. 基于Fast R-CNN的车辆目标检测[J]. 中国图象图形学报, 2017, 22(5): 671–677. ] [DOI:10.11834/jig.160600]
  • [14] Wang L, Zhang H H. Application of Faster R-CNN model in vehicle detection[J]. Journal of Computer Applications, 2018, 38(3): 666–670. [王林, 张鹤鹤. Faster R-CNN模型在车辆检测中的应用[J]. 计算机应用, 2018, 38(3): 666–670. ] [DOI:10.11772/j.issn.1001-9081.2017082025]
  • [15] Wu X F, Zhang J X, Xu J X. Hand gesture recognition algorithm based on Faster R-CNN[J]. Journal of Computer-Aided Design & Computer Graphics, 2018, 30(3): 468–476. [吴晓凤, 张江鑫, 徐欣晨. 基于Faster R-CNN的手势识别算法[J]. 计算机辅助设计与图形学学报, 2018, 30(3): 468–476. ] [DOI:10.3724/SP.J.1089.2018.16435]
  • [16] Zhou J Y, Zhao Y M. Application of convolution neural network in image classification and object detection[J]. Computer Engineering and Applications, 2017, 53(13): 34–41. [周俊宇, 赵艳明. 卷积神经网络在图像分类和目标检测应用综述[J]. 计算机工程与应用, 2017, 53(13): 34–41. ] [DOI:10.3778/j.issn.1002-8331.1703-0362]
  • [17] Zhang J, Wang X L, Yang J G. Shape modeling method based on deep learning[J]. Chinese Journal of Computers, 2018, 41(1): 132–144. [张娟, 汪西莉, 杨建功. 基于深度学习的形状建模方法[J]. 计算机学报, 2018, 41(1): 132–144. ] [DOI:10.11897/SP.J.1016.2018.00132]
  • [18] Hare S, Golodetz S, Saffari A, et al. Struck:structured output tracking with kernels[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2016, 38(10): 2096–2109. [DOI:10.1109/TPAMI.2015.2509974]