本技术涉及机器学习,尤其涉及一种基于slic超像素的森林火灾实时检测方法。
背景技术:
1、森林火灾突发性强,但破坏性巨大,严重威胁着人类赖以生存的森林资源和森林生态系统。建立预警系统是森林防火重要手段之一,目前的监测系统主要包括卫星监测、红外监测、可见光监测等。其中,因成本低、实时性强、监测距离远、分辨率高等特点,可见光监测系统已成为最主要的林火监测技术.
2、就林火识别方法而言,目前的研究仍主要集中在细粒度的像素模式上,主要包括两类方法:一是以基于推理规则方法,如ycbcr规则;另一类是基于机器学习的方法,如qiang等为避免传统火灾检测方法中室外林火的长距离和大面积特性所造成的弊端,提出基于神经网络的林火识别方法,结合火焰的多个参数和形状以区分火焰,在抗干扰能力方面优于传统方法。然而,逐像素的向量模式表示的样本,其样本容量动辄十万~百万级,这无疑增加了训练分类器的难度:若训练集过小,无法充分训练分类器;而训练集过大又面临训练时间过长问题。为缓解上述问题,杨等提出基于矩阵分块的半监督学习算法semi-mhks,它采用双线性判别函数,设计了针对林火问题的半监督学习算法,该算法将数据集由向量模式转化为矩阵分块模式,可大幅度缩短训练和识别时间,同时亦可使样本的类别的标注更加准确。类似的分块方法也被用于火灾的预测中,如sanjuan等为缩短预测时长,将林火图像分块后再求解,并在各分块间施加一定程度的重叠以避免边界效应的问题。近年也出现了诸多基于深度学习的林火识别方法。如wang等提出了一种基于卷积神经网络的森林火灾识别算法,运用自适应的池化方法,避免学习卷积神经网络中无效特征,试验证明具有更好的性能和更高的识别率.基于hog特征的adaboost分类器对火区图像初步预测,然后利用卷积神经网络和支持向量机对火区进行2次识别,在林火样本分布不均、样本数量少的情况下,获得了较高的识别率和较低的误报率。粗粒度的矩阵分块模式表示,虽可降低数据集规模,但其硬性的分块划分易破坏图像目标的完整性,特别是分块的向量化(分块后再拉成向量)更是破坏了图像中像素之间的空间结构信息。鉴于此,本技术拟从超像素(superpixel)分割入手,重新考察林火的快速检测问题。超像素概念源于ren等提出的像素分组,按像素间的纹理、颜色、亮度等相似特征将图像分割为若干个分块,称为超像素。通过提取图像中有意义的超像素代替硬性分块,有利于后续图像处理任务。常用的超像素分割方法分为两类:一类是基于图论的方法,如superpixel-latice方法、规范割准则方法(normalized cuts,n-cuts)、graph-baesd方法等;另一类则是基于梯度的方法,如快速漂移算法(quick shift,qs)、turbopixels算法、分水岭算法、mean-shift算法以及简单线性迭代聚类算法(simple linear iterative cluster,slic)。
3、图像分割是林火图像处理中的基本步骤,旨在提取出图像中人们感兴趣的部分,以便后续的处理分析。常用的图像分割方法有阈值分割法、边缘分割法、区域分割法等。从图像的模式表示上,主要有像素模式和矩阵块模式。目前林火图像分割的研究大多基于图像的向量模式,其主要困难来自于计算,因核基的学习方法无法训练大规模样本。若训练集规模小,又极易导致训练不充分问题(under-fitting,欠学习)。矩阵模式的林火识别方法,虽有效缩短了模型的训练和识别时间,但受制于分块的硬性划分,容易破坏图像目标的完整性。受超像素图像分割启发,如slic,它在运算速度、物体轮廓提取、超像素形状等方面具有较高的分割质量。
4、为了保留图像空间的结构信息,同时降低数据集规模以减少后续的模型训练负担,本技术拟利用超像素在图像表示方面的上述显著优势,将其引入林火识别任务中。为验证本技术方法的有效性,在多种场景的林火图像上进行了试验,并采用林火识别率和检测时间评价其性能,期望该方法不仅具有较高的识别率,同时也能满足实时性要求。
技术实现思路
1、基于像素(向量)模式的林火检测方法具有较高的火焰检测率,但存在样本集过大难以训练模型问题;而矩阵分块模式虽易于训练且检测速度快,但硬性的分块又不可避免地会破坏目标的不完整。本技术兼顾了像素模式的高检测率和分块模式的快速检测能力,采用“软”分块的方式保持目标的完整性,提出了一种基于slic超像素的林火实时检测算法。该方法对林火图像先进行超像素分割,将位置邻近和颜色相似的像素划分为若干个超像素;因超像素中像素个数不等问题,无法直接采用向量模式或矩阵块模式进行模型训练,鉴于超像素良好的目标边界一致性,该文将超像素等效为像素,即从像素中选择或构造代表点,再将之与引入的监督信息进行比对,从而完成火焰检测。
2、本技术提供一种基于slic超像素的森林火灾实时检测方法,包括以下步骤:
3、(1)图像超像素分割:对林火图像先进行slic超像素分割,将位置邻近和颜色相似的像素划分为若干个超像素;
4、(2)代表点选择:鉴于超像素良好的目标边界一致性,将超像素等效为像素,从像素中选择或构造代表点;
5、(3)引入监督信息:将代表点与引入的监督信息进行比对,从而完成火焰检测。
6、作为优选,步骤(1),所述图像超像素分割的步骤,采用slic算法进行图像超像素分割变形的slic算法步骤如下:
7、步骤1:初始化聚类中心:在s*s矩形网格上初始化k个聚类中心,其中k超像素个数,n为总像素数;在像素的邻域上选择梯度最小方向更新聚类中心,梯度按下式计算:
8、
9、其中,l(x,y)表示单个颜色通道上的像素值;
10、步骤2:相似性度量:在公式(1)基础上,像素间的相似性度量更改为
11、
12、其中,表示像素间的颜色距离;表示像素的空间距离;d(i,k)值越小,则表示二者相似程度越高;m是平衡因子,用以平衡颜色信息和空间信息在相似度度量中的比重;
13、步骤3:聚类算法更迭聚类中心:按slic,在2s×2s的区域内,根据相似度将所有像素点聚类到距其最近的聚类中心所在的簇后,并更新簇中心;
14、步骤4:重复步骤2~3直至收敛:得到新聚类后,重新选取每一类的类均值作为新聚类中心,并重新聚类,重复迭代,计算前后2次聚类中心的距离d,若d小于设定的阈值或达到最大迭代次数(一般设为10),聚类结束;
15、步骤5:形成超像素:将最相似的聚类中心标签赋给像素点,形成k个超像素;
16、经上述步骤,林火图像被分割为k个超像素.图1所示为超像素分割结果,其超像素块数设为500;
17、slic分割可在线性时间内完成,且迭代规模限于2s×2s的子区域上进行,分块速度快且细节清晰,本技术将据此构造代表点;判别规则为:若代表点被判为火焰,则该区域将被判为有火区域,否则判为无火。
18、作为优选,步骤(2),代表点选择的具体步骤:
19、1个超像素对应1块区域,粗粒度地描述1幅图像;设若能够从中构造出1个类似像素模式的代表点来代表该区域,则不仅可以利用现有的基于像素模式的林火检测成果,而且可大规模缩减样本数,在训练林火分类器和提高林火的检测速度中发挥优势;代表点有均值和中值,均值具有良好的抗噪能力,中值能够有效抵御野值;从以下3个方面考虑代表点问题,记代表点为fp;当前超像素所在区域内的像素数为n,该区域内的像素集为:{pi|pi=(ri,gi,bi),i=1,2,l,n};
20、用均值m表示fp,
21、用中值med表示fp:
22、用均值和中值的组合表示fp:fp=λ*m+(1-λ)*med,λ∈[0,1];
23、其中,λ是两种代表点间的平衡因子;由于真实场景的林火图像,因数据采集和传输过程,可能同时含有噪声和野值;采用均值和中值的组合,期望能够达到既抗噪声又抗野值的目的;当代表点选定后,即采用该代表点对该超像素所示的区域内采用该代表点进行填充;由于此时尚未引入火焰的监督信息,效果图中火焰及其非火的背景仍同时出现,但有火区域和无火区域的边界非常明显,有利于检测火焰,且检测精度达到像素级水平。
24、作为优选,步骤(3),引入监督信息:将超像素样本中“有火”和“无火”两个类别用于代表点的验证。
25、本发明的有益效果:
26、本发明分别以超像素的均值、中值和均值与中值的组合构造代表点,在多种场景的12张林火图像上进行了实验验证,相比于向量和矩阵块模式表示方法,该文方法在10张图像上的林火识别率均达到了最高,平均识别率在98.2%以上。在检测时间方面,该方法检测最短,即使采用knn分类器,它亦可在1/10秒内完成检测。基于超像素林火实时检测算法兼顾了两种样本表示模式的优点,具有火焰检测率高、检测速度快等特点,有望用于高分辨率图像处理。其次,在林火识别问题的代表点选择上,相对于均值和中值,二者的组合方式效果最佳。