时空背景模型下结合多种纹理特征的烟雾检测

2018-08-14 09:05赵敏张为王鑫刘艳艳
西安交通大学学报 2018年8期
关键词:邻域像素点烟雾

赵敏, 张为, 王鑫, 刘艳艳

(1.天津大学微电子学院, 300072, 天津; 2.公安部消防局天津火灾物证鉴定中心, 300381, 天津;3.南开大学电子信息与光学工程学院, 300071, 天津)

火灾发生的早期往往伴随着烟雾的产生,能够及时地将烟雾检测出来,对于保护人们的生命财产安全具有重要的意义。传统的烟雾检测手段主要依靠传感器,但是由于大量布置传感器比较困难,会受到应用场合限制,因此存在局限性。

视频烟雾检测包括3个方面:运动目标分割、特征提取、分类设计。目前运动分割方法主要包括3种:光流法,帧差法,背景减除法。然而,光流法需要的计算量大,且易受光照影响;帧差法算法复杂度低、实时性好,但提取的前景有空洞;背景减除法将当前图像和背景图像相减即得到运动目标能够获得更好的结果。Wang等提出了一种基于样本一致性的运动目标检测算法[1],该算法对像素进行样本一致性判断来判定像素是否为背景,但是忽略了相邻像素点会有相似的空间分布。Barnich等认为相邻像素点拥有相近的像素值空间分布,在背景建模时随机选择某一像素点邻域的像素值作为它的背景模型值[2],但是该方法又没有考虑像素点在时间上的相关性。刘鑫等提出了一个低秩矩阵和结构化稀疏分解的视频背景差分算法[3],结合视频前景区域的结构化分布特征,利用结构化稀疏范数对前景进行约束,从而实现前景检测,然而该方法涉及较多矩阵运算计算量较大。由于像素点在时间域上具有连续性,同时在邻近空间上也有着相同的分布,因此本文算法在像素级的背景建模中同时考虑像素点的时间和空间信息,从而得到更加精确的背景模型。目前烟雾检测算法可分为利用静态特征和动态特征检测2种。静态特征包括纹理、颜色、亮度等特征,动态特征则包括运动、闪烁、轮廓变化等特征。利用动态特征进行烟雾检测判决算法复杂度大,实时性差,通常需进行背景减除或帧差等操作,并且需要设置一些阈值,阈值选取不当时会对实验结果产生很大影响。

为克服传统烟雾检测的缺陷,很多学者致力于视频烟雾检测方法的研究。Besbes等利用颜色特征的光照不变性进行烟雾检测,在建立RGB背景模型后,将当前帧和背景图像进行光照不变性转换,利用光度增益来分割前景和背景,最后通过2个颜色不变描述子来进行烟雾区域的判断[4],但该方法仅基于颜色进行烟雾检测,而视频的颜色信息又易受到外界光照、图像传感器本身性能等的影响。Wang等建立了一个图像金字塔,对每层分别计算局部二值图(LBP)和LBPV(local binary pattern variance),并结合烟雾光流方向进行烟雾检测[5],但是该方法计算相关LBP时仅考虑8邻域内的像素关系,忽略了更大范围内的像素大小关系以及空间位置信息。Wang等首先检测视频中的动态锥形区域,之后利用颜色和纹理滤波来进行烟雾检测[6]。李笋等首先对图像进行烟雾增强颜色变换,之后通过MSER分割出烟雾区域,最后根据静态特征和动态特征,获取烟雾区域[7],但该方法在烟雾判决时会涉及较多阈值选择。

本文提出一种基于纹理特征的烟雾检测算法,首先利用像素点的时空分布信息建立背景模型以检测前景,然后对前景区域分块并提取本文新提出的3种纹理特征,最后利用支持向量机进行分类。本文算法通过具有强分辨力的静态特征来避免采用动态特征引入阈值参数所造成的影响,从而提高了烟雾检测性能。

1 前景检测

为了进行前景运动目标检测,本文提出了一种综合考虑像素点时空信息的背景建模方法,并提出了一种背景更新策略,可以将长时间存在的非烟雾前景更新为背景,同时避免误将烟雾前景更新为背景,从而得到完整的烟雾区域。

1.1 背景建模和前景检测

本文的背景建模算法是像素级别的算法,每个像素点背景模型的时间域和空间域样本个数都为N个。对一个像素点m,在背景建模时间t内,将连续N帧中同一位置的像素值提取出作为背景模型,建立时间域背景模型T(m),有{Ti(m)|i=1,2,…,N},其中Ti(m)为模型中的像素值,并在背景建模时间t内的最后一帧,在像素点m周围的8邻域内随机取样N个数,建立空间域背景模型S(m),有{Sj(m)|j=1,2,…,N},此时背景建模完成,之后用式(1)~(3)来进行前景检测

式中:Yr是一个常数,表示对背景像素的误差容忍度;xt(m)表示当前时刻t像素点m的值。对于时刻t,用Ft(m)表示一个像素点m是否为前景点,为1时表示当前像素为背景点,为0时则为前景点,即

式中:Yn是一个常数,如果当前点像素值和时域、空域所有样本点相比,距离小于Yr的个数大于等于Yn,则该像素点为背景点。

1.2 背景模型更新

(1)若像素点m被判断为背景点,则更新该点的背景模型。对于背景模型的时域部分T(m),有1/φ的概率进行更新,更新时用当前像素值xt(m)随机替换T(m)中的一个值;并随机选取m周围8邻域的一个像素点,记为n,同样有1/φ的概率更新n点的时域部分T(n),更新时用当前像素值xt(m)随机替换T(n)中的一个值,此时时域部分更新完成。对背景模型的空域部分S(m),以相同策略进行更新。

(2)若像素点m被判断为前景点,则暂时不进行背景模型更新,转到(3)进行判断。

(3)若某一点连续NR帧被检测为前景点,则先判断该点的颜色属性,由于HSI颜色空间采用色调(H)、饱和度(S)和光照强度(I)3个维度对图像进行描述,因此更加符合人类的视觉感知特性。颜色判断时,本文将像素从R、G、B颜色空间转换到H、I、S颜色空间,S计算如下

S=

若某一点连续NR帧被检测为前景点,且S满足

STh2

(5)

式中:Th1和Th2为固定常数。满足式(5)条件,则不更新背景模型,否则按式(1)更新该点背景模型。采用以上更新策略可以避免将视频中存在时间较长的烟雾部分误更新为背景而引起前景空洞,从而得到精确的前景。

2 纹理特征

纹理是烟雾相比于其他物体最明显的特征。为了更好的描述烟雾的纹理信息,本文提出了3种新的具有高辨别力和鲁棒性的纹理特征。

2.1 结合梯度信息的局部二值图(Grad-LBP)

LBP是一种有效的纹理描述算子[8],具有光照不变性等特点,广泛应用在人脸识别和目标检测中。传统的LBP算子LBP(P,R)通过中心像素点gc和周围邻域内的像素值gi(i=0,1,…,P)的关系来计算

式中:P是gc周围像素点的个数;R是周围像素点距gc的半径,采用欧式距离计算半径需要大量的插值运算,为减少计算量,本文的距离采用块距离(即某一像素点距周围的8个像素点构成一个正方体,设这8个像素点到该像素点的距离都相等)。Ojala等对基本LBP做了一些拓展,提出了均匀模式LBP(LBPu2)、旋转不变LBP(LBPri)、均匀旋转不变LBP(LBPriu2)[8]。其中均匀模式的LBP是指一个首尾相连的二进制序列从0到1或者从1到0的跳变不超过2次,除均匀模式外的其他模式都归为一类,共有P(P+1)+3种模式。这样,大大减少了需要统计的模式种类,却没有丢失多少信息。

梯度方向直方图(HOG)可表征图像局部梯度方向和强度分布特征,对几何和光学形变有很好的不变性。通常计算纹理特征只是单独考虑LBP或HOG,本文提出的Grad-LBP将LBP和梯度信息结合,获得像素空间分布信息从而明显加强纹理表征能力。如图1所示,本文像素按图中示例编号为0~7,此时该LBP值为(11111110)2=254,如果考虑梯度信息,由于此时梯度方向为第4象限(图中箭头),根据梯度方向可知道编号5的像素值比编号1的像素值大,编号3的像素值比编号7的像素值大,若结合梯度的角度大小还可体现出像素的大小差异程度。

图1 LBP计算示意图

本文统计均匀模式的LBP共59种模式。梯度角度分组采用文献[9]中的方法,共分为9个方向。在统计时,计算59×9个分组的直方图。每个分组的数值代表相同LBP且具有相同梯度方向的像素点个数。用Hm,θ代表直方图中LBP模式为m(m=0,1,…,58)、梯度方向为θ(θ=0,1,…,8)的分组。令me(x,y)和θe(x,y)代表点P(x,y)的LBP模式和梯度方向,则

2.2 多量级局部二值图(Mm-LBP)

传统的LBP是基于像素的,提取的是中心像素点与周围像素点的局部大小关系,但是缺少了更大范围的像素空间分布信息,本文采用多度量级的LBP来获取像素更细致的空间分布,以求得到更多的纹理信息。

不同于传统的LBP只是比较中心像素点与其周围邻域的像素点,本文扩大了比较范围,从而可获得更多的空间纹理信息。在计算多量级LBP的时候,先将原始图片映射成为3个图片,具体是将每个像素点的值分别用其半径为R邻域内的小块中所有像素点的最大值、最小值、均值代替,再分别计算每个图的均匀模式,之后统计LBP直方图作为特征向量,映射过程如图2所示。若P(x,y)代表原图坐标为(x,y)的像素值,若Pmax(x,y)、Pmean(x,y)、Pmin(x,y)分别代表映射的3个图对应坐标的像素值,则有

Pmax(x,y)=max[P(x-R,y-R),

P(x-R+1,y-R),…,P(x+R,y+R)]

(8)

Pmin(x,y)=min[P(x-R,y-R),

P(x-R+1,y-R),…,P(x+R,y+R)]

(10)

经过上述映射后,每个像素点不像原始LBP仅代表一个点的像素值,而是体现了邻域像素分布状况,这样就可以得到更大范围深层细致的纹理信息。

图2 原始图映射为3个图的过程

2.3 局部共生二值图(Co-LBP)

灰度共生矩阵(GLCM)[10]通过对图像上保持某距离的2个像素具有的灰度状况进行统计,并用统计而得到的图像灰度方向、间隔、变化等空间相关信息来表征纹理特征。

从GLCM的思想出发并结合LBP,本文提出局部共生二值图(Co-LBP)描述图像纹理特征。例如一个像素点为P(x,y),将P(x,y)邻域内的8个像素点分别与P(x+R,y)、P(x+R,y+R)、P(x,y+R)、P(x-R,y+R)这4个点邻域内的8个像素按对应位置相比,按照原始LBP的方式计算,得到4种局部共生二值图的特征值(即某一像素点邻域内8个像素分别与0°、45°、90°、135°这4个方向、块距离为R的像素点邻域对应位置8个像素比较),在计算完4个方向的Co-LBP特征值之后统计直方图,作为图片的纹理特征向量。

令P(x,y)代表坐标为(x,y)的一点,{P(x,y)i|i=0,1,…,7}代表点P(x,y)周围邻域内的块距离为R的8个点,Co-LBP特征值计算公式如下

(12)

(14)

方向为45°、块半径为R时的图像特征值示意图如图3所示。

图3 方向为45°、块半径为R时的图像特征值示意图

2.4 综合决策

Grad-LBP在原始LBP的基础上,结合了中心像素点周围像素间的大小关系,该特征主要针对8邻域单元图像块内部的像素关系。Mm-LBP通过将每个像素点用其半径R邻域内所有像素点的最大值、最小值、均值来代替,从而得到了更大范围内像素点的空间分布信息,该特征主要针对邻域图像块的区域之间的信息。Co-LBP比较了空间中具有一定位置关系的图像块的对应像素,该特征主要针对具有一定空间关系的图像块区域之间的关系。上述3种纹理特征分别从不同的角度来提取图像的纹理信息,所以将此3种特征融合可以得到更全面的纹理信息。

支持向量机(SVM)能根据有限的样本信息在模型的复杂度(即对特定训练样本的学习精度)和学习能力(即无错误地识别任意样本的能力)之间寻找最佳折中,得到最好的泛化能力。因此,本文对提取的3种纹理特征分别训练SVM分类器。本文采用的SVM训练方法在分类时得到的是样本距分类超平面的距离,为了得到更好的性能,将3种纹理特征结合起来。在决策阶段,根据3种SVM分类器的分类距离求出归一化权重,并最终得到综合的分类距离作为分类标准,从而得到更好的效果。分类距离计算如下

式中:D1、D2、D3分别为Grad-LBP、Mm-LBP及Co-LBP对应的SVM分类器测试时的距分类超平面的距离(有正负);DDIS为最终分类距离。

3 实验结果与分析

为验证本文提出的算法性能,分别列出了基于图片的烟雾检测和基于视频的烟雾检测结果。

3.1 基于图片的烟雾检测

本文采用Yuan公开的烟雾数据库[11]进行纹理特征性能测试。数据库被分为4个部分:数据集1包括552张烟雾图片和831张非烟雾图片;

数据集

2包括688张烟雾图片和817张非烟雾图片;数据集3包括2 201张烟雾图片和8 511张非烟雾图片;数据集4包括2 254张烟雾图片和8 363张非烟雾图片。本文使用数据集1进行训练,余下3个数据集用来测试。所有图片都缩放至48×48像素的大小并转化为灰度图,计算纹理特征时参数R取值为1。

数据集1中所有图的Grad-LBP、Mm-LBP、Co-LBP直方图统计完成后都进行归一化处理,针对每种特征,使用SVM进行训练。为了便于性能比较,本文采用文献[11]的方法,选取3种性能评价指标,分别是检出率、误报率、错误率。

在基于Grad-LBP、Mm-LBP、Co-LBP 3种纹理的分类器训练完成后,本文在数据集2、数据集3、数据集4这3个数据集上进行测试,并与多种方法进行比较,具体数据如表1所示。

从实验数据可以看出,本文提出的算法具有非常好的分类性能,尤其是具有很低的错误率。从表3可看出,本文的最终方法与SOHLBP、HOG、LBP、PLBP、PRICoLBP等方法相比,在3个数据集上无论检出率、误警率还是错误率效果都更加理想;虽然LBPriu2方法在Set2数据集上的检出率略高于本文算法,但是本文方法具有更低的误警率和错误率,而LDP4方法虽然误警率比较低,但本文方法具有更好效果的检出率和错误率。综合来看,本文方法明显有更好的识别力和更强的鲁棒性。

3.2 基于视频的烟雾检测

本文也在视频上进行了烟雾检测,算法的主要流程如图4所示,采用的视频来自于Bilkent University,网址为:http:∥signal.ee.bilkent.edu.tr∥VisiFire/Demo/SampleClips.html。视频集包括了室内和室外多种光照和环境条件。

表1 采用不同方法对3个数据集的实验结果比较

图4 本文视频烟雾检测算法整体框架

为了便于处理并加快检测速度,将视频的大小缩放为384×288像素。前景检测部分参数取值为Yr=15、N=10、Yn=3、φ=20、Th1=0.28、Th2=108。前景检测完成后,用24×24像素的滑窗遍历图像,分别计算每个滑窗中前景点的比例,若超过50%,则利用训练好的分类器判断该滑窗是否含有烟雾;当含有烟雾时则用红色框标注。图5显示了本文算法在一些测试视频上的效果图。本文采用不着真正类率(TPR)和真负类率(TNR)来比较算法性能,对应计算公式如下方法进行烟雾检测性能比较,结果如表2所示。

式中:NTP代表被正确检测出来的烟雾帧数;NFN代表有烟雾但没有被检测出来的帧数;NFP代表没有烟雾但被误检测为有烟雾的帧数;NTN代表正确检测出来的没有烟的帧数。将本文算法与文献[4,16]

(a)sBehindtheFence

(b)sWasteBasket

(c)sWindow

(d)sBtFence2图5 本文算法对4段测试视频中的烟雾场景检测效果

从表2数据可知,本文提出的算法在5个测试视频上得到了最高的平均RTPR,明显优于文献[16]算法,略优于文献[4]算法。不同于文献[4]采用颜色特征进行烟雾检测,本文采用纹理特征进行烟雾检测,由于摄像头采集到的视频其颜色易受外界光照、图像传感器本身性能等的影响,但这些因素并不会过多影响图像的纹理信息,因此本文算法相比于文献[4]更具鲁棒性。本文算法在不同视频上的结果存在差异,原因之一是本文使用的训练集正负样本没有覆盖所有种类的烟雾和非烟雾样本,所以在之后的工作中会考虑建立更加完全的训练样本集以提高算法精度。

表2 3种检测算法对Bilkent视频集的烟雾检测性能比较

4 结 论

发生火灾时,烟雾一般会比火焰出现更早,因此进行烟雾检测可以更早进行火灾预警。本文提出了3种具有高分辨力和鲁棒性的纹理特征,获得了更加丰富的图像纹理信息以及空间信息。在进行烟雾检测时,首先进行时空背景建模,提取出运动区域,然后对运动区域进行分块并提取3种纹理特征,利用SVM进行分类,在最终决策时综合考虑3种分类结果得到最终烟雾区域。实验结果表明,本文提出的算法不仅具有较高的检出率,而且具有较低的误警率,可以很好地实现烟雾检测。

猜你喜欢
邻域像素点烟雾
基于混合变邻域的自动化滴灌轮灌分组算法
薄如蝉翼轻若烟雾
基于局部相似性的特征匹配筛选算法
影视剧“烟雾缭绕”就该取消评优
基于5×5邻域像素点相关性的划痕修复算法
基于邻域竞赛的多目标优化算法
基于canvas的前端数据加密
咸阳锁紧烟雾与尘土
基于细节点邻域信息的可撤销指纹模板生成算法
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割