基于改进共生生物搜索算法的林火图像多阈值分割

2021-07-02 00:36贾鹤鸣姜子超孙康健
计算机应用 2021年5期
关键词:搜索算法莱维林火

贾鹤鸣,李 瑶,姜子超,孙康健

(1.三明学院信息工程学院,福建三明 365004;2.东北林业大学机电工程学院,哈尔滨 150040)

(*通信作者电子邮箱jiaheminglucky99@126.com)

0 引言

森林火灾是指超出了人的控制范围后,在林场内肆意扩散的林火行为,这种自然灾害因其突发性高、破坏力强等特点,导致扑灭和救援工作较为困难。它不仅会对森林造成巨大破坏,还会对整个森林生态系统和附近的居民造成灾难性打击,所以森林防火的重要性不言而喻[1]。为观察森林情况,人们从传统的人力巡山到使用轻便灵活的无人机,或在林场安置红外摄像头等方式对森林实时监控,其中绝大多数技术手段都需要对图像中火源部分进行分割提取,从而分辨出火灾确切位置及火势蔓延程度[2]。图像分割是从图像处理到图像分析的重要过程,其目的在于将给定的图像分成若干个特定区域并分割出感兴趣的目标,其分割质量将对后续识别分析产生重要影响[3]。目前,常用的图像分割方法主要有:阈值分割、区域生长、边缘检测等,其中,阈值分割由于其简单高效且性能稳定的特点,被广泛应用在林火图像分割领域。2018年,胡加鑫等[4]为监测森林火灾的状况,使用鲸鱼算法结合的Otsu法对林火图像进行多阈值分割;2019年,胡鑫等[5]将因子分析与深度学习的长短期记忆网络结合对林火图像分割,提取火焰及背景图像的特征进行训练得到分类结果,分割效果较好。

为解决多阈值图像分割算法存在的计算量大、运算时间较长等问题,诸多学者采用元启发式优化算法对多阈值图像分割进行研究:程述立等[6]提出了群智能算法优化结合熵的最大类间方差法,既降低了计算复杂度又具有较好的抗噪能力;谢亮[7]则提出基于粒子群优化(Particle Swarm Optimization,PSO)算法和信息熵的图像分割方法,从而实现对医学图像的准确分割,具有较好的分割效果;石玲玉等[8]利用和声搜索算法(Harmony Search Algorithm,HSA)实现对木材死节的图像分割,使得木材缺陷的识别能力得到增强;文献[9]中提出基于蝙蝠算法(Bat Algorithm,BA)的多阈值图像分割,通过结合遗传交叉操作和智能惯性权重,增强搜索能力使阈值的选取更为准确;文献[10]通过改进花授粉算法(Flower Pollination Algorithm,FPA)提高算法的局部搜索能力并将其应用到多阈值图像分割中,提高了所选阈值的质量并加快图像分割速度。虽然上述研究所采用的元启发式算法均有一定优势,但在实际应用中依旧存在着由于林火图像复杂而造成阈值选取不准确、图像分割效果不足的问题。为更好地对林火图像进行分割,本文提出一种基于精英反策略和莱维飞行的改进共生生物搜索优化(Modified Symbiotic Organisms Search,MSOS)算法的多阈值RGB图像分割方法。

共生生物搜索(Symbiotic Organisms Search,SOS)算法是Cheng 等[11]提出的一种基于生物学中共生现象的启发式搜索算法。该算法具有控制参数少、操作简单、容易实现、稳定性好且优化能力强的特点,但也存在易早熟、后期搜索迟滞等问题,因此需要进一步优化。精英反策略(Elite Opposite Based Learning,EOBL)概念由Tizhoosh[12]首先提出,主要是从精英反向解和原精英解中选取优秀的解作为下一代的种群,将其作为策略引入到其他算法中能够避免算法易早熟的问题并提高算法的收敛精度。莱维飞行(Levy Flight)本质是一种满足莱维分布的随机步长,将其应用到其他算法中可以在扩大搜索范围、跳出局部最优的同时保持较快的收敛速度[13]。

本文主要研究内容如下:首先,将莱维飞行引入到SOS算法中,提高优化算法的收敛精度;其次,将精英反策略引入到SOS 的共栖阶段,丰富种群的多样性并扩大算法的搜索空间;然后,将MSOS 算法应用到图像分割中最佳阈值的选取问题上,通过优化算法寻优找到RGB 图像的最佳阈值,从而实现对林火图像的准确分割;最后,对4 幅林火图像进行实验测试,采用峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)、特征相似性指数(Feature SIMilarity index,FSIM)和函数收敛曲线图等指标来评价优化效果,实验结果表明,本文提出的基于MSOS 算法的多阈值图像分割方法可以清晰完整地对各环境下的火源区域进行分割,并且在各项指标上也十分优异,具有良好的分割效果,能够为后续图像分析奠定基础。

1 相关算法

1.1 标准共生生物搜索算法

标准SOS模拟了自然界中的个体间交互行为[11]。共生指两种或多种不同生物物种之间的长期相互作用,可以是两个个体完全依赖,也可以是个体有选择地生活在一起使彼此都能获益,或是某个体寄生于另一个体中。SOS 算法主要分为互利阶段、共栖阶段和寄生阶段,其基本原理为:

1)互利阶段。

个体Xi被认为是生态系统的第i个成员。另一个体Xj从生态系统中随机选择以用来和Xi交互。在生态系统中,两个个体都保持着交互关系。Xi和Xj在交互后的更新公式分别由式(1)和式(2)表示,其中互利向量RMV(Mutual Vector,MV)的表达式如式(3)所示:

式中:RMV代表了Xi和Xj的交互关系;rand(0,1)是[0,1]的随机数;Xbest为最优个体;bf1和bf2为利益因子,代表着个体从相互关系中获得的利益水平。bf1和bf2的值可以随机选择为1或2,表示可能得到部分受益或完全受益。

2)共栖阶段。

指从生态系统中随机选择一个单独的Xj与Xi交互,这种交互使得Xi受益,而Xj既不受益也不受到伤害。由这种相互作用产生的新个体则用式(4)所描述:

其中:Xbest-Xj表示Xj对Xi提供的好处,即Xj帮助Xi提高对生态系统的适应程度。

3)寄生阶段。

从生态系统中选取Xi作为寄生向量,利用随机向量对自身进行复制和修改,生成变异载体RPV(Parasite Vector,PV)。如果变异载体比宿主Xi具有更好的适应值,它可能会破坏宿主并将其替代,若相反则说明宿主对变异载体具有免疫性从而被保留下来,变异载体被淘汰,具体如式(5)和(6)所示:

其中:pick为变异体,ub为搜索上界,lb为搜索下界。

1.2 精英反策略

精英反策略是进化计算领域的一个搜索策略,其主要思想为:同时对搜索空间内的精英解及其反向映射解进行评价,并从这两个备选解中选取较好的解作为下一代个体[12];同时,将个体生物中最优适应度值对应的解定义为最优个体,表示为xi=(Xi1,Xi2,…,XiD)。共生生物群体中经过反向映射得到的个体可以表示为另外,xn和满足式(7):

其中:n是种群个数,D是搜索空间的维度,k∈U(0,1),daj和dbj是第j个决策向量的动态边界,使用式(8)进行计算:

由于收缩边界可能导致算法陷入局部最优,因此在本文中每100次迭代更新一次daj和dbj。同时,动态边界可能使反向映射个体生物跳出边界,当xi,j<dai或者>dbj则应用式(9)进行约束:

在共生生物搜索算法中引入精英反策略,丰富了种群的多样性,扩大了算法的搜索空间,提高了其邻域搜索能力和得到优秀解的概率,从而使优化算法的综合性能得到增强。

1.3 莱维飞行

莱维飞行最早由Levy 提出,由Benoit Mandelbrot 对其进行补充描述完成的搜索机制[13]。莱维飞行是一种特殊的随机步长方法,它的步长总是很小,但是偶尔也会出现大的跳动,其位置更新公式可以用式(10)表示:

其中:β为步长因子,RLevy决定行进方向和步长,运算符⊕表示点对点的乘法,当前位置是由之前位置更新的概率决定的。关于RLevy随机分布如式(11):

其中s为随机的莱维步长,而由Mantegna 提出的算法中,莱维飞行的随机步长s可以用式(12)进行描述:

参数β=1.5,μ~(0,,ν~N(0,1)都表示gamma 函数,σμ的数学表达式如(13)所示:

引入莱维飞行策略后,前期长步长的飞行提高了种群多样性,扩大了搜索范围,避免其陷入局部最优;后期短步长的飞行使得种群在局部最优解附近收敛。

2 混合优化算法模型

2.1 改进的共生生物搜索算法(MSOS)

精英反策略能够在最优解的基础上更好地对未知区域进行探索,可以有效增加SOS算法的局部搜索能力,并且可以预防局部最优问题。因此,由精英反策略核心公式(7)对SOS算法的共栖阶段进行改进,由式(7)可知,精英反向映射解应为=k*(daj+dbj)-xn,j,而根据式(4)知共栖阶段产生的新个体=Xi+rand(-1,1) ×(Xbest-Xj),因此,第i个共生生物在搜索空间中的精英反向解,如式(14)所示:

其中:ub和lb为共生生物搜索域的上界和下界,Xbest为当前的最优共生生物个体,r为[0,1]的随机数。

同时,对于处理高维和多模态优化问题时,为了提高全局搜索能力,本文提出了将莱维飞行引入共生生物搜索算法中,提高其全局搜索能力。根据式(10)可知,莱维飞行主要是随机步长,因此本文将Xbest与Xj的差值作为步长因子,即β=Xbest-Xj,改进的数学公式如下:

莱维飞行轨迹方法的引入明显扩大共生生物的搜索范围,增强搜索轨迹的随机性,大幅提高SOS 算法的搜索能力,从而避免进入局部最优值。这种方法不仅提高了SOS的搜索强度,也提高了算法的收敛速度。

2.2 多阈值Kapur熵算法

基于最大熵法的图像多阈值分割法最先由Pun[14]提出,将图像的灰度直方图视为一种概率分布,计算出它的最大熵来对应图像的最优阈值。而Kapur 等对基于最大熵的阈值分割算法提出改进,将信息论中Shannon 熵的概念引入到图像的阈值分割中,以灰度直方图中的灰度作为变量,计算灰度直方图的熵,找出使得各类总熵最大时的阈值组合[15]。这种方法不仅计算更加简单,还能够得到较好的多阈值分割结果,因此应用较为广泛。

当灰度值处于[0,1,…,L-1]内时,图像的熵见式(16):

假设任意选定一组已知的阈值组合[t1,t2,…,tn](0 ≤t1≤t2≤…≤tn≤L-1),将图像划分为n+1 部分,则其每一部分均可用熵表示其对应的概率分布,表示方法如式(17)~(19):

此时,图像灰度值的最大熵如式(20):

即使式(20)取得最大值时对应的n个阈值[t1,t2,…,tn]即为分割阈值的最优解。

2.3 基于MSOS算法的图像分割

为解决多阈值Kapur 熵图像分割算法运算时间长、分割精度低的问题,本文对多阈值的搜索过程进行优化,改进算法应用于多阈值Kapur图像分割算法的数学模型如式(21):

本文采用共生生物搜索算法对阈值的搜索过程求解最优值,将对图像进行多阈值分割的问题转化为对目标函数求取最优解的问题。所以,本文将式(20)作为共生生物搜索算法的适应度函数,将式(21)中的Xj作为共生生物搜索的食物源,通过共生生物对食物搜索捕食,更加快速找到式(16)的最大值,此时,得到的[t1,t2,…,tn]即为图像分割出的多个阈值。由于共生生物搜索算法存在容易陷入局部最优的问题,对其加入莱维飞行,增强原有算法的全局搜索能力,使共生生物搜索算法能够跳出局部最优,更好地找到全局最优解。关于本文阈值分割算法的整体流程如图1所示。

图1 本文图像分割算法流程Fig.1 Flowchart of the proposed image segmentation algorithm

3 实验设计

3.1 林火图像样本

实验利用4 幅林火图像作为实验样本评价混合算法的性能。如图2所示,图(a)为白天无遮挡的近距离火源(fire1);图(b)为夜间烟尘、森林遮挡的远距离火源(fire2);图(c)为白天以森林为背景的远距离火源(fire3);图(d)为夜间背景简单的近距离火源(fire4)。

图2 林火测试图像Fig.2 Forest fire test images

3.2 实验参数设置

在实验中,种群大小设置为30,最大迭代次数取500。选择标准SOS 算法与引言所提到的PSO 算法、HSA、BA、FPA 作为对比算法,其参数设置列在表1 中。实验仿真环境均为Windows 7 系统,仿真软件为Matlab2016b,内存微处理器CPU为2.7 GHz。

表1 所有对比算法实验参数Tab.1 Experimental parameters of all comparison algorithms

3.3 测试评价标准

为验证图像分割的质量,需要对分割效果图进行图像质量评价。对于客观评价方式,通常采用的两种方法是峰值信噪比(PSNR)和特征相似性指数(FSIM)[16]。

1)峰值信噪比(PSNR):基于分割前后图像中对应像素点间的均方差(Mean Square Error,MSE)来比较对应图像相似性的图像评价指标。PSNR 值越大,说明失真越少。PSNR 和MSE的公式定义如(22)、(23)所示:

2)特征相似度(FSIM):基于人类视觉系统和图像的低级特征来理解图像的一种较新的特征相似性指标。FSIM 越接近1,说明分割后的图像与原图像越相似。

其中:Ω表示全部图像空间域,PCm(x)表示相位一致性,SL(x)为图像相似性。

PC1(x)和PC2(x)分别表示参考图像和被测图像的相位一致性。

式中:SPC(x)代表图像的特征相似性;SG(x)代表图像的梯度相似性;G1(x)和G2(x)分别代表参考图像和被测图像的梯度幅值,α、β、T1和T2均为常量。

4 实验结果及分析

由于阈值较低时各算法的分割效果均较差,并不能很好地解决图像分割任务,因此对林火图像的阈值设置为7。同时,为更直观地观察数据之间的差异性,图3 和图4 给出基于30次平均结果的PSNR和FSIM的曲线。

图3 林火图像的PSNR曲线Fig.3 PSNR curves of forest fire images

图4 林火图像的FSIM曲线Fig.4 FSIM curves of forest fire images

从图3 可以明显看出,阈值从4~7 时,MSOS 算法得到的数值均明显高于其他算法,说明MSOS 算法的稳定性较高,得到的阈值更加精准,分割后的图像与原图相似度更高,对目标区域的分割更加准确。由图3 可看出,fire2 和fire4 中的FPA在阈值较高时得到的PSNR 值明显降低,说明其稳定性较差;由图4 可看出,PSO 算法在各阈值时的FSIM 值均较低,MSOS算法在各阈值时得到的FSIM 值均高于其他算法。因此,可以证明本文算法应用到识别森林中的火源识别问题时,可以又快又准地发现火源,有效地预防大规模森林火灾的发生。

MSOS算法与其他算法的30次平均收敛曲线如图5所示,其中MSOS 的收敛曲线用黑色实线标记以区分。从图中可以看出,MSOS 在SOS 算法的基础之上取得了很大的改进,并且具有很好的鲁棒性。其他算法如FPA、PSO、BA,容易陷入局部最优,很难确定最优适应度函数值。收敛曲线方面:从图可以看到,在第200 代中,MSOS 算法比其他算法更快地获得最大目标值或接近理论最大目标值;在第250 代之后,改进的MSOS曲线始终是一条平滑的曲线,其他算法也基本上停止更新;传统的SOS 种群更新速度较慢,且有一定的时间间隔,收敛曲线是阶梯形的,而不是上升的平滑曲线;FPA 和BA 整体波动较大,而PSO算法波动较小,它们所得到的最优值偏差较大,有的属于局部最优值。总的来说,与其他元启发式优化算法相比,MSOS提供了一个有竞争力的解决方案。

图5 林火图像的Kapur熵函数收敛曲线Fig.5 Convergence curves of Kapur entropy function of forest fire images

图6 为各算法分割后的效果,从图(a)和(d)的分割结果图可以看出,火源区域在林火图像中较为突出时,基于PSO和FPA 的图像分割结果未分割出完整火源,相比之下只得到了小部分火源区域,存在欠分割现象,效果较差;从图(b)的分割结果图可以看出,当林火图像亮度较低、背景较为复杂时,MSOS 以外算法分割出的图像未能很好地将烟、火分割开,无法准确获取具体火源区域,存在过分割现象;从图(c)和(d)的分割结果图可以看出,火源颜色较为明亮导致背景与目标区域亮度相差较大时,基于FPA 分割出的图像能较好地分出大面积火源,但仍不完整。通过比较可以得出本文算法分割精度较高,可以精确地将火源从复杂的烟尘、森林背景中分割出来。综合对比,基于MSOS 的图像多阈值分割方法在不同环境下均能完整地分割出火源区域,对森林火灾图像的分割效果较好。

图6 阈值为7时各算法分割结果Fig.6 Segmentation results of different algorithms when the threshold value is 7

综上所述,与其他算法相比MSOS 具有更高的优化精度、更好的鲁棒性和稳定性,也证明了该算法的有效性和优越性,实现了对标准SOS 算法的改进。对于选取的林火图像,使用分割方法只能将图像分割为多个区域,无法得到所有的火源区域。因此为得到每个独立、完整的火源区域,需要对多阈值分割后的图像进行处理,所以为从分割后的图像中分割出具体火源部分,本文进行了如下操作:

1)从分割得到的n+1 个区域中选取火灾主体区域并将其转化为逻辑阵。

2)对选取的区域进行腐蚀、膨胀等形态学操作。

3)将得到的图像与原图像矩阵点乘,即可得到分割后的火焰图像如图7所示。

图7 火源的RGB图像Fig.7 RGB images of fire sources

由图7 可以观察到,本文算法能够准确地将火源区域从图像中提取出来,方便后续研究。同时本文算法能够有效地对图像中不同形态、背景的火源区域进行分割,说明该算法处理复杂图像的分割性能较强。实验证明,MSOS能够有效地将林火区域分割并显示出来,也说明MSOS 算法能够胜任复杂林火图像的分割问题,更加准确地找到火源。

5 结语

针对传统的SOS 算法在高维度时易陷入局部最优等问题,本文将精英反策略和莱维飞行引入到SOS 算法,得到MSOS 并将该方法应用于林火图像分割中。通过对比标准SOS 和PSO、HSA、BA、FPA 等算法,可以证明相较于其他优化算法来说,MSOS 算法能更好地分割林火图像,其跳出局部最优的能力和分割能力也更强。通过使用形态学优化获得了每幅林火图像中独立完整的火源区域,证明了MSOS 在实际工程问题中的实用性。在未来的研究中还可以针对扩大搜索范围并保留精英个体的问题,尝试引入其他策略来调整动态边界。

猜你喜欢
搜索算法莱维林火
Open Basic Science Needed for Significant and Fundamental Discoveries
改进和声搜索算法的船舶航行路线设计
林火蔓延中林火-风双向耦合模拟研究进展
苍蝇为什么难打
苍蝇为啥难打? 原来它们用了高等数学的风骚走位
半边天
基于莱维飞行的乌鸦搜索算法
创意“入侵”