APP下载

基于视频图像检测算法的森林火焰检测

2018-09-25金国伟周立萍

现代制造技术与装备 2018年8期
关键词:像素点烟雾火焰

金国伟 周立萍

(浙江安防职业技术学院,温州 325016)

森林是世界上重要的自然资源之一,当森林中发生火灾时,许多植物将被焚毁,动物将被烧死,进而造成巨大的经济损失。

我国领土广阔,包含了许多的森林资源,但每年却有上万次的火灾发生,损失的森林面积大约占全球总烧毁的5~8‰[1]。新中国成立以来,在大兴安岭发生了一次特大火灾,究其原因是没能及时发现,最终导致火势快速蔓延开来,焚毁了大量的树木,给国家造成了巨大的经济损失。

当前,国家林业局对森林防火还停留在加强宣传、组织防火演练和积极排查隐患等较低的层次。在利用高新科技,准确、快速发现火灾研究方面还存在巨大的创新空间。

图像处理和机器视觉的不断发展,其给火灾检测系统研究带来了新方向。视频监控所能检测到的范围较广,且能获取较直观的信息,使基于视频图像的火灾检测算法成为一项热门课题。

本文以图像处理为基础,以火灾产生的烟雾和火焰等特征为切入点,采用深度学习和支持向量机[2]算法相结合的方式,对视频监控采集到的图像进行烟雾和火焰检测,从而达到预防目的。

1 基于颜色特征的烟雾检测

发生火灾时,火焰的燃烧往往伴随着大量烟雾,烟雾具有许多特征,如烟雾的颜色多、烟雾随着风飘动等。因此,在进行烟雾检测时可根据这些特征来进行。

1.1 图像预处理

摄像机采集到的图像存在许多噪声、图像清晰度等问题,这些因素对图像的最终检测会产生一定影响,在检测之前需要对图像进行预处理以提高图像质量。此处的预处理主要是通过滤波的方式进行降噪。在图像处理中常用的滤波方式有中值滤波、均值滤波和高斯滤波三种。中值滤波是指建立一个3×3的模板,将模板中的9个像素值进行排序,用中值来代替模板中间的值。均值滤波同样需要建立一个3×3的模板,用模板的均值来代替模板中间的值。高斯滤波指的是建立一个模板(通常是3×3),模板中的像素值经过高斯运算后代入到模板中间位置。高斯滤波的计算函数有一维高斯滤波函数和二维高斯滤波函数,如公式(1)和(2)所示。

本文经过实验数据对比,采用中值滤波的方式对图像进行去噪处理。

1.2 烟雾颜色特征

火焰的燃烧往往伴随着大量烟雾,在对图像中的烟雾进行检测时可对其颜色特征[3]进行研究,提取出烟雾的颜色特征。自然界中的颜色多种多样,各种颜色均可以通过红(R)、绿(G)、蓝(B)三种基色按不同比例配置而成。当三基色的像素值均为0时所组成的颜色为黑色;当三基色的像素值均为255时所组成的颜色为白色。此外,烟雾的颜色特征还可通过HSI和YCbCr两种颜色空间来表示,H表示色调、S表示饱和度、I表示强度、Y表示像素点的亮度、Cb表示蓝色色度、Cr表示红色色度。这三种颜色空间各有优缺点且相互之间可以进行转换,其转换公式如(3)和(4)所示。

从摄像机中采集到的图像是RGB颜色空间的,通过实验数据分析,在利用RGB颜色空间对烟雾进行检测时,烟雾色彩的亮度对检测结果造成了非常大的影响,而YCbCr颜色空间可以很好地消除亮度对实验的影响。故本文利用YCbCr颜色空间来对烟雾进行检测。

1.3 深度学习

深度学习算法是通过神经网络发展来的,1989年多伦多大学教授Yahn Lecun提出卷积神经网络成功训练出了多层网络结构[7],但这种算法的实验效果并不是特别好。十多年后,多伦多大学的教授Geoffrey Hinton等人在2006年提出了切实可行的深度学习框架[8],至此深度学习算法有了突破性发展,在语音、图像、文字识别等方面取得了丰硕的成果。

本文将深度学习中的卷积神经网络应用于火灾的烟雾检测中,利用卷积神经网络提取出烟雾颜色特征并进行目标识别。但若直接将采集到的原始图像输入到卷积神经网络算法中,会增加算法负担,降低训练和测试的速度。而如果先将图像进行压缩再输入到算法中,虽然能解决训练速度问题,但由于图像质量受到影响导致检测结果也受到影响。因此,在对图像进行卷积神经网络计算前必须对图像进行处理。

为构造适用于进行计算的输入图像,又不损失图像的信息,本实验将从网上下载大量烟雾图片,利用正方形框取得到烟雾图片,并对其规格化转换为32×32大小的图像。此外,为增加训练的样本数量,本实验还将烟雾图像进行平移、旋转、镜像等操作。本实验中进行训练的样本图像包括10种类别,每种类别有6000张样本图像,其中,包括5000张训练图像和1000张测试图像。

2 基于颜色和闪烁性特征的火焰检测

物品在燃烧过程中会产生火焰,火焰燃烧会伴随着许多特征,如火焰的颜色特征[4],火焰的面积特征[5]以及火焰的闪烁特征[6]等。在对森林中的火焰进行检测时可以对这些特征进行研究。

2.1 火焰的颜色特征

火焰的颜色是一种非常显著的特征,在火焰检测中起到非常关键的作用。本文通过人工的方法对500张火焰图像的像素点进行提取并研究,通过对1325万个火焰像素点的R、G、B通道进行分析统计,得出实验结果为红色通道中占比重较高的是像素值高的部分,绿色通道中像素值普遍集中在100左右,最多的在255附近,蓝色通道中像素值普遍低于100,故无法通过R、G、B三通道进行火焰识别。

因此,本文将R、G、B颜色空间转换为YCbCr空间来进行研究,转换方式在1.2中有所介绍,通过对YCbCr颜色空间进行分析统计,可知代表火焰亮度的Y通道的像素值大部分是高于50的,Cb和Cr通道相比于Y通道则显得较为集中。

此外从实验数据中可知Cb、Cr的分布比较接近正太分布,故本文用联合密度函数(公式2-1)来表示颜色特征。

其中,Cb、Cr的像素值用x1和x2来表示,对应通道的均值和标准差分别用μ和σ表示。

一幅图像中像素点的颜色在火焰样本中出现的频次越高,则被判断为火焰像素点的可能性越高,因此,需要利用分布密度函数对像素点进行分类,从而判断该像素点是否为火焰像素点。

2.2 火焰的闪烁特征

火焰燃烧时,其亮度会随着时间呈现明暗不定的变化,即火焰的闪烁性。火焰在燃烧时,其外围的闪烁程度要比内部更加激烈,而火焰内部的亮度变化则比较剧烈,因此,可对像素点的亮度作一段时间内的累积差分,用以表征火焰的闪烁特征,累积差分公式如6所示。

其中,I(i,j,t)表示的是像素点(i,j)在t时刻的亮度,对于待检测的区域,用该区域内所有像素点F(i,j)的均值来表示其闪烁特征,公式如7所示。

检测火焰时,可用均值F1block来判断图像是否包含火焰。

2.3 基于SVM的火焰分类

在进行火焰检测时,纯粹的利用特征的阈值进行检测虽然简单易行,但在漏检率和误检率上存在一定缺陷,因此,需要使用机器学习方法对分类器进行训练和测试,从而从而达到火焰检测的目的,本文中使用的分类器是支持向量机(SVM)。

支持向量机(SVM)是一种建立在统计学习理论和结果风险最小原理基础上的机器学习分类方法。支持向量机按其核函数的不同大致可以分为线性支持向量机和非线性支持向量机。网上关于支持向量机的介绍很多,这里不做详细介绍。

本文中支持向量机采用的核函数是径向基核函数,其参数和惩罚因子如表1所示。

表1 SVM参数设置

3 基于图像特征的烟雾和火焰检测

森林是一种丰富的自然资源,对人们的生产生活起着非常重要的作用,森林火灾的发生将造成巨大的经济损失。因此,我们需要在火灾发生的早期及时进行检测,才能有效预防火灾造成的损失。

本文对火焰燃烧时所产生烟雾的颜色特征以及火焰的颜色和闪烁特征进行分析,利用深度学习算法对烟雾进行检测,从而找到火焰的疑似区域,再利用支持向量机算法对火焰疑似区域进行火焰检测,检测出火焰的区域。

本实验具体流程为对捕捉到的图像采用深度学习进行烟雾检测,若存在烟雾则标记为火焰疑似区域并进行下一步检测,否则判断没有火焰。在对疑似区域进行检测时,若检测到有火焰则表示该区域存在火焰,否则不存在,其检测流程图如图1所示。

图1 火焰检测流程图

实验中,烟雾检测主要是判断该像素点的Cr、Cb分量的方差,当方差值大于阈值T时,该像素为烟雾像素点,否则不是。经大量实验数据的实验结果表明该阈值T的值为0.42;对火焰区域的检测主要是判断颜色特征值和闪烁特征值,其值分别为1.047和10。图2为火焰检测的整个过程,a为原始图像,b为烟雾检测图像,c为火焰检测图像。

图2 火焰检测结果

4 总结

基于图像特征的森林烟雾检测和火焰检测是图像处理技术的一个综合运用,深度学习算法大大提高了烟雾检测效率,运用SVM算法对火焰疑似区域进行检测不但大大缩减了计算复杂度,还提高了检测的准确率。

猜你喜欢

像素点烟雾火焰
最亮的火焰
薄如蝉翼轻若烟雾
缤纷的火焰
基于局部相似性的特征匹配筛选算法
影视剧“烟雾缭绕”就该取消评优
漂在水上的火焰
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
咸阳锁紧烟雾与尘土
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割