基于Fsater R-CNN的超像素定位引导的图像火焰检测方法

2020-03-10 01:02:04柳同军年福东蒋鹏飞
合肥师范学院学报 2020年6期
关键词:候选框火焰像素

柳同军,年福东,吕 刚,蒋鹏飞,吴 超

(合肥学院 先进制造工程学院,安徽 合肥 230601)

火灾是人类社会生产活动中最普遍的灾害之一,火灾发生突然不易控制,并且会对社会生产造成严重的阻碍,对人们的生命财产安全构成严重的威胁。因此,实时的火灾监测系统对维持社会稳定,保障人类的生命财产安全有着至关重要的作用,图像火焰检测技术是一种基于图像的火灾检测方法,具有检测精度高,效率快等优点,被越来越多的用于火灾检测和早期预警[1-4]。火焰有多种颜色,它的形状和轮廓会随着时间变化而变化,它具有闪烁和动态纹理特征,火焰的形状、轮廓、运动和纹理特征不可预测。传统的火焰检测方法,包括通过传感器检测温度的方法[5-7],但是由于技术缺陷,存在误检、漏检、检测延时等问题[8-11],很难达到实时监测并进行预警的目的。随着图像处理技术和计算机视觉的发展,图像火焰检测技术得到了大量的研究[12-14]。目前,图像火焰检测方法主要有基于人工设计的图像特征和基于卷积神经网络 (CNN) 提取的图像的深度特征。在基于图像的深度特征的方法中,一般将火焰检测看作分类任务,将卷积神经网络作为分类器,这种方法一般准确率较低,且无法定位火焰准确位置[15]。我们提出一种基于超像素定位火焰区域引导的Faster R-CNN的模型,结合掩膜卷积技术,在超像素定位的火焰区域中的超像素的聚类中心设置锚点,使得仅在超像素定位的火焰区域附近生成锚,大大减少了锚的数量,减少了Faster R-CNN火焰检测的计算量,提高了检测效率,并提高了图像火焰检测的性能。

1 材料与方法

1.1 实验环境

实验使用的硬件平台均为Inter(R) Xeon(R) W-2123 CPU @3.6GHz和32G显存的NVIDIA Quadro P4000 GPU,软件开发环境为python,搭建模型使用的框架为TensorFlow,所使用的操作系统为Ubuntu16.0.4。实验过程中,Faster R-CNN使用的网络为ResNet50。此外,还使用到了opencv 3.4.4库。模型训练过程中,动量参数(momentum)设定为0.9,学习率(learning rate)设定为0.001,批处理大小(batch size)设定为64。

1.2 超像素定位火焰区域及抛锚策略

超像素是具有相似纹理、颜色、亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块,它利用像素之间特征的相似性将像素分组,用少量的超像素代替大量的像素来表达图片特征,很大程度上降低了图像处理的复杂程度。简单的线性迭代聚类(SLIC)是实现超像素分割的一种算法,它将彩色图像转化为CIELAB颜色空间和XY坐标下的5维特征向量,然后对5维特征向量构造距离度量标准,对图像像素进行局部聚类。原始图像和SLIC算法处理后的图像如下图1和图2所示。

图1 原始图像

图2 SLIC算法处理后图像

为了通过超像素定位火焰区域,我们通过Santos等[16]提出的标注超像素的方法,在数据集中选取一部分图片进行超像素真实标签的标注,其中包含火焰的图片为823张,不包含火焰的图片为1084张,供后续模型的训练、验证和测试。通过超像素火焰区域检测产生的不规则轮廓均被转换为边界矩形,并判断它与真实标签的交集,若相交比例大于0.5,则判定对应的超像素为火焰区域;若不大于0.5,则判定为非火焰区域。通过这种方法,结合Inception网络,训练出模型,即达到通过超像素对火焰区域进行初步定位的目的。通过超像素定位火焰区域模型定位火焰区域的效果如下图3所示,其中灰色框代表非火焰区域超像素,白色框代表火焰区域模型。

图3 超像素定位火焰区域效果图

Faster R-CNN进行目标检测的过程中,对于非特定目标的检测任务,为了保证整个图像被合适的锚覆盖,要求锚点广泛地分布在图像的每个区域。但对于火焰检测任务,图像区域的种类只有火焰和背景,密集的抛锚策略会使得锚生成在很多没有火焰的图像区域,严重影响检测效率。本文中,我们通过超像素目标定位方法训练模型,来检测图像中的候选火焰区域,受到Wang等[17]提出的引导性抛锚策略的启发,提出了基于超像素定位火焰区域模型引导的稀疏的抛锚策略,仅在超像素定位的候选火焰区域的聚类中心设置锚点,对应图中绿色框表示的火焰区域的聚类中心设为锚点。每个锚点生成9种不同形状大小的锚,从而提升火焰检测的效率与准确性。

1.3 模型结构

设计了一个由超像素定位引导的Faster R-CNN的模型结构,该结构如下图4所示。首先,将图像输入预先训练好的超像素定位火焰模型,获取基于该模型生成的火焰候选区域;然后将超像素定位后的图片输入卷积层,进行特征提取,输出特征图;接着将特征图输入RPN网络,同时通过超像素定位火焰模型进行引导,在候选火焰区域每一个超像素的聚类中心生成锚,得到经过筛选和回归后的火焰区域;最后,将火焰区域输入分类网络,得到最终的分类和精准的检测框。其中RPN网络,经过超像素定位火焰模型的引导,仅在候选火焰区域进行卷积,其他区域置零,从而减少计算量,提高模型的检测效率。

图4 由超像素定位引导的Faster R-CNN的模型结构

1.4 模型训练

对于模型的训练,参考Ren等[18]的训练策略进行训练。模型结构中的RPN网络和分类网络会进行候选框的分类和回归,均会产生计算误差。对于分类误差,本文采用交叉熵损失计算;对于候选框的回归误差,则采用平滑L1损失函数计算。此外,本文利用Aslan等[11]提出的训练策略,以端对端的形式进行训练。训练过程中,将通过超像素定位的候选火焰区域外的候选框滤除,仅火焰区域的候选框参加训练。训练过程中的损失包含上述四个误差,利用交叉熵损失计算RPN和分类网络中的候选框分类误差,利用平滑L1损失函数计算候选框的回归误差,整个模型的损失为四个误差之和,损失函数公式如公式 (1) 所示。

(1)

其中fce为交叉熵损失函数,fsL1为平滑L1损失函数,ci为第i个候选框是否包含火焰的置信度,ci*为该候选框对应真实候选框的置信标签,ri为该候选框的回归的修正量,ri*为该候选框对应真实候选框回归需要的修正量。

2 结果与分析

2.1 检测数据集分析

通过数据挖掘技术抓取图像,以及作者模拟场景采集火焰视频数据形成数据集,图5为部分数据集图片,包括含火焰和不含火焰图片总共32089张,其中含火焰图片17156张,不含火焰图片14933张。在实验过程中我们选择数据集中的一部分图片作为训练集、验证集和测试集,并预先对训练和验证集进行标注,训练集、验证集和测试集中的正负样本数量如表1所示。基于前面提出的实验环境,通过表1中的训练集训练模型,利用验证集进行模型优化,得到基于各方法的检测模型。

表1 训练、验证及测试集的图片数量

2.2 检测模型的测试分析

利用测试集对检测模型进行测试。表2展示了原始Faster R-CNN方法与本文的超像素定位引导的Faster R-CNN的比较。从表2可以看到:通过超像素定位引导的Faster R-CNN方法得到的检测模型检测性能优于原始Faster R-CNN生成的模型,检测效率也优于原始Faster R-CNN生成的模型。

表2 原始Faster R-CNN方法和超像素定位引导的Faster R-CNN的比较

2.3 检测模型的有效性分析

通过表3和表4,我们比较了原始Faster R-CNN方法、黄杰等人[14]的方法和超像素定位引导的Faster R-CNN方法在检测性能和效率方面的差异。由表3和表4可以看出,超像素定位引导的Faster R-CNN方法的生成的模型测试时所需的运行时间更短,模型评估的精准度更好,因此,我们判定超像素定位引导的Faster R-CNN方法生成的模型的检测效率更高,性能更好。

表3 三种Faster R-CNN方法的运行时间的比较

表4 三种Faster R-CNN方法的精准度的比较

此外,图5展示了实验环境下,通过测试集测试的对火焰图像的检测结果,可以看出,图像中的火焰均被正确检出,说明我们的模型是有效的。

图5 检测结果实例

3 结语

本文基于Faster R-CNN的目标检测方法,提出了由超像素定位火焰模型引导的火焰检测方法,仅在火焰区域的超像素的聚类中心生成锚。这种改变提高了Faster R-CNN算法在图像火焰检测上的性能和效率。在本文的数据集下,对现有的几种方法进行比较,对这些模型进行评估后,本文的方法在检测速度方面提升了16%,并且有较好的检测精度。通过实验,验证了该方法生成的模型对图像火焰检测有较好的性能和效率。在未来的方向上,通过优化超像素定位火焰区域模型,进一步提高检测效率,减少计算量。此外,考虑将本文方法应用于实际场景,例如森林火灾检测、工厂火灾监控等存在火灾风险的场景中。

猜你喜欢
候选框火焰像素
赵运哲作品
艺术家(2023年8期)2023-11-02 02:05:28
《火焰》
重定位非极大值抑制算法
像素前线之“幻影”2000
最亮的火焰
面向自然场景文本检测的改进NMS算法
基于Soft-NMS的候选框去冗余加速器设计*
“像素”仙人掌
漂在水上的火焰
一种针对特定目标的提议算法