賀 航, 馬小晶*, 王宏偉,2, 宋 帆, 劉 寒
(1.新疆大學(xué)電氣工程學(xué)院, 烏魯木齊 830047; 2.大連理工大學(xué)控制科學(xué)與工程學(xué)院, 大連 116024)
近年來,全世界范圍內(nèi)火災(zāi)頻發(fā),特別是森林火災(zāi)會對人們的生活和生態(tài)環(huán)境帶來巨大的損失和破壞,因此,全球各國都加大了火災(zāi)監(jiān)測技術(shù)的研發(fā)。傳統(tǒng)的火災(zāi)檢測技術(shù)主要有感溫、感光和監(jiān)測可燃?xì)怏w,近些年隨著監(jiān)控系統(tǒng)的不斷完善,圖像識別也成為火災(zāi)檢測與識別的方法之一[1-2]。由于火災(zāi)現(xiàn)場環(huán)境惡劣,所獲圖像的邊緣較為模糊且對比度較低,圖像難以精準(zhǔn)分割,從而無法有效地的提取出火災(zāi)現(xiàn)場的特征。為了及時有效地識別和定位火災(zāi)現(xiàn)場,發(fā)展快速準(zhǔn)確的圖像分割技術(shù)是十分必要的。
圖像分割技術(shù)是從低級到高級的圖像處理轉(zhuǎn)換的關(guān)鍵,現(xiàn)階段機(jī)器視覺和圖像處理是研究熱點[3]。國內(nèi)外學(xué)者對圖像分割進(jìn)行了大量的研究,大致分為4類:基于形態(tài)學(xué)的圖像分割、基于區(qū)域生長分割、基于特征空間的聚類分割和基于圖像閾值分割[4]。其核心思想是通過閾值的合理選取獲得最優(yōu)的分割效果。現(xiàn)階段的研究有采用單閾值分割方法,但不能完全滿足實際的要求。多閾值分割技術(shù)作為一種基于圖像一維灰度直方圖來確定最優(yōu)閾值的方法,適用于多目標(biāo)分割,具有重要的研究價值[5-6]。
許多學(xué)者通過引入元啟發(fā)優(yōu)化算法對多閾值的適應(yīng)度函數(shù)進(jìn)行優(yōu)化。方維等[7]和李勇等[8]引入了遺傳算法,可以較好地解決實際工程問題,但是該算法容易陷入局部最優(yōu)?;依莾?yōu)化算法(grey wolf optimizer, GWO)是一種群體智能優(yōu)化算法[9],Khairuzzaman等[10]將其引入多閾值圖像分割中,分割效率有所提升,然而在處理復(fù)雜的問題時,易導(dǎo)致處理速度慢、尋優(yōu)穩(wěn)定性差、存在早熟現(xiàn)象。劉丁等[11]提出了改進(jìn)的人工魚群算法,應(yīng)用于硅單晶直徑檢測圖像閾值,具有較好的分割精度。呂鑫等[12]研究了混沌麻雀搜索優(yōu)化算法,在進(jìn)行尋優(yōu)的過程中具有較好的搜索精度、收斂速度和穩(wěn)定性。Agarwal等[13]利用蜘蛛優(yōu)化算法分割了直方圖的雙模和多態(tài)膜閾值,能夠?qū)崟r的分割最佳閾值。此外,劉申曉等[14]、Agrawal等[15]和胡加鑫等[16]分別提出了基于改進(jìn)粒子群優(yōu)化算法(particle swarm optimization, PSO)的大津法(Otsu’s method, OTSU)多閾值圖像分割算法、基于布谷鳥搜索算法以及Tsallis熵的多閾值分割方法和基于鯨魚優(yōu)化算法(whale optimization algorithm, WOA)應(yīng)用于多閾值的森林火災(zāi)圖像分割方法。上述方法均采用了智能優(yōu)化算法,極大地降低了多閾值分割的計算復(fù)雜度,使得多閾值分割方法更易于應(yīng)用到實際工程問題中。
針對火災(zāi)圖像OTSU分割算法計算量大、運行時間長和閾值選取不夠準(zhǔn)確導(dǎo)致分割精度不高等缺點,現(xiàn)提出采用改進(jìn)麻雀搜索算法(improved sparrow search algorithm, ISSA)的指數(shù)熵多閾值圖像分割算法,對指數(shù)熵的閾值進(jìn)行尋優(yōu),并在灰度圖的基礎(chǔ)上進(jìn)行相關(guān)的仿真實驗。通過對比和觀察不同算法的最佳閾值、運行時間和分割效果,對改進(jìn)麻雀搜索算法進(jìn)行驗證,以期提升森林火災(zāi)圖像檢測的實時性和精準(zhǔn)性。
麻雀搜索算法是根據(jù)麻雀覓食并逃避捕食者行為提出的群智能優(yōu)化算法[17],通過建立發(fā)現(xiàn)者-加入者模型并疊加偵察預(yù)警機(jī)制模擬麻雀群的覓食過程。發(fā)現(xiàn)者為種群提供和引導(dǎo)覓食區(qū)域和方向,具有較高的適應(yīng)度。加入者的適應(yīng)度較低,通過跟隨發(fā)現(xiàn)者進(jìn)行覓食,從而提高自身的適應(yīng)度。模擬過程中發(fā)現(xiàn)者和加入者在整個種群中的比重需要保持不變。在覓食過程中,為了提高自身的捕食率并爭奪食物資源,部分加入者會不斷地監(jiān)控發(fā)現(xiàn)者,一旦麻雀意識到危險或者面臨捕食者的威脅時,會立刻采取安全措施。
假設(shè)在一個d維搜索空間中,存在N只麻雀,則第i只麻雀在d維空間中的位置為
Xi=[xi1,…,xid]
(1)
式(1)中:xid為第i只麻雀在第d維的位置,i=1,2,…,N。
所有麻雀的適應(yīng)度值可以表示為
(2)
式(2)中:f為適應(yīng)度值。
在麻雀種群中適應(yīng)度較高的發(fā)現(xiàn)者為整個種群尋找食物并優(yōu)先獲得食物,同時為加入者提供覓食方向,具有廣泛的搜索范圍。根據(jù)式(1)和式(2)可知,在每次迭代中,發(fā)現(xiàn)者通常占種群數(shù)量的10%~20%,其位置更新式如式(3)所示:
(3)
除發(fā)現(xiàn)者外,其余麻雀均作為加入者,需要按照式(4)更新位置。在覓食的過程中,加入者還對發(fā)現(xiàn)者進(jìn)行監(jiān)視,一旦察覺發(fā)現(xiàn)者已經(jīng)找到更好的食物,加入者會立刻離開現(xiàn)有位置,去爭奪食物。若加入者取得勝利,則獲得該食物,否則繼續(xù)執(zhí)行式(4),加入者的位置更新如式(4)所示:
(4)
(5)
具有偵察預(yù)警功能的麻雀通常占到種群總數(shù)的10%~20%,其位置更新如式(6)所示:
(6)
式(6)中:K為[-1,1]之間的一個隨機(jī)數(shù),表示步長控制參數(shù),同時也代表麻雀的移動方向;β為步長控制參數(shù),是服從均值為0,方差為1的正態(tài)分布隨機(jī)數(shù);e為一個避免分母為0的極小常數(shù);fi為第i只麻雀當(dāng)前個體的適應(yīng)度值;fg和fw分別為當(dāng)前麻雀種群的最優(yōu)和最差適應(yīng)度值。①當(dāng)fi=fg時,表明此時處于種群中間的麻雀意識到了危險,需要及時調(diào)整搜索路線并靠近其他麻雀避免被捕食的風(fēng)險;②當(dāng)fi≠fg時,表明麻雀正處于種群的邊緣,容易遭受捕食者的攻擊。
1.2.1 精英反向?qū)W習(xí)策略
為了解決SSA算法收斂速度慢、易陷入局部最優(yōu)等問題,現(xiàn)通過精英反向?qū)W習(xí)策略對SSA算法進(jìn)行改進(jìn)。
在群智能算法尋優(yōu)性能指標(biāo)中,高質(zhì)量的初始種群可以加快找到全局最優(yōu)解并提升收斂速度。標(biāo)準(zhǔn)的SSA算法是通過隨機(jī)生成初始化方法進(jìn)行種群初始化,導(dǎo)致種群多樣性差且易陷入局部最優(yōu),因此,收斂速度和穩(wěn)定性并不理想。鑒于此,將精英反向?qū)W習(xí)(opposition-based learning, OBL)[18]應(yīng)用于SSA初始化階段,利用精英個體包含更多有效信息這一特性,構(gòu)造出其反向種群,并從當(dāng)前種群和反向種群中選擇較優(yōu)個體作為初始解,從而提升初始種群質(zhì)量和多樣性。
假設(shè)xi=(xi,1,xi,2,…,xi,D),i=1,2,…,N為D維搜索空間中的精英個體,定義其反向解并對其進(jìn)行越界處理:
(7)
(8)
1.2.2 Lévy飛行策略
為了提高搜索能力,在麻雀搜索算法位置更新后,利用Lévy飛行對種群進(jìn)行更新。Lévy過程是一個連續(xù)時間的隨機(jī)過程。研究人員通過對Lévy過程的研究發(fā)現(xiàn),自然界中很多動物的活動規(guī)律均與Lévy過程的特點吻合[19],反過來,研究人員通過對多種動物基于Lévy過程的覓食活動特點研究,提出了Lévy飛行覓食理論。Lévy飛行能夠增加麻雀種群的多樣性,使得算法有效地跳出了局部最優(yōu)。Lévy飛行本質(zhì)上是一個隨機(jī)步長服從 Lévy分布的隨機(jī)行走,Lévy飛行的方差隨時間呈現(xiàn)指數(shù)的關(guān)系,Lévy分布為
Lévy(β)~u=t-β, 1<β<3
(9)
式(9)中:Lévy(β)為一個帶有重尾的概率分布;β為冪次數(shù)。在Mategna等的算法中,可將Lévy 飛行步長[20]定義為
(10)
(11)
式(11)中:參數(shù)β的取值范圍為0<β<2,現(xiàn)取β=1.5。
Pal等[21]于1989年提出了指數(shù)熵的概念,并給出了最大指數(shù)熵閾值的選取算法。概率為pi的事件所含的信息量為
Eexp=e1-pi
(12)
類比基于shannon熵的準(zhǔn)則函數(shù),能夠得到指數(shù)熵準(zhǔn)則函數(shù),一維直方圖情況下指數(shù)熵的計算式對應(yīng)于閾值t的目標(biāo)類和背景類的熵值分別為
(13)
(14)
總的熵值如式(15)所示:
E(t)=H0(t)+Hb(t)
(15)
最佳閾值為
t*=argmax(0≤t≤L-1){E(t)}
(16)
單閾值分割可由式(16)求得,但在解決實際工程圖像分割的過程中,單閾值通常不能滿足分割精度的要求,因此,現(xiàn)階段研究多閾值的分割較為廣泛,推廣到多閾值則為尋找一組閾值(t0,…,tn)使得熵值最大:
t(1…n)*=argmax{H0+H1+…+Hn}
(17)
由上述多閾值指數(shù)熵分割原理可知,計算中通過不斷尋優(yōu),可獲得閾值且熵值最大。因此,在圖像灰度空間里采用ISSA算法對適應(yīng)度函數(shù)式(17)進(jìn)行尋優(yōu),從而獲得圖像分割最優(yōu)閾值向量。通過迭代搜尋使得總熵值取得最大的閾值組合t*,并將其作為圖像分割的閾值,具體操作步驟如下:①讀入彩色圖像并轉(zhuǎn)化為灰度直方圖;②設(shè)置算法的初始化參數(shù);③根據(jù)反向?qū)W習(xí)策略,利用式(7)和式(8)產(chǎn)生初始化群體,初始化麻雀個體的位置向量,并規(guī)范位置向量使其分量由小到大的順序排列,位置向量是圖像的灰度值組合,其取值范圍為[0,255],表示圖像分割所需的閾值向量;④根據(jù)式(17)計算麻雀中每個麻雀的適應(yīng)度函數(shù)值,更新并保存最大函數(shù)值的位置;⑤計算慣性權(quán)重因子f=1-iter/max iter,其中iter為當(dāng)前迭代次數(shù),利用輪盤選擇,若選取的隨機(jī)數(shù)大于f,則對選擇的麻雀個體進(jìn)行Lévy飛行變異;⑥按照圖1進(jìn)行迭代計算;⑦若算法的迭代次數(shù)到達(dá)了預(yù)先設(shè)定的最大迭代次數(shù),則優(yōu)化算法結(jié)束,此時得到的全局最優(yōu)解為圖像分割的最優(yōu)閾值向量t*,否則轉(zhuǎn)到步驟④;⑧根據(jù)迭代后最優(yōu)解所在的位置,輸出最佳閾值向量t*,并對圖像進(jìn)行多閾值分割。
由上述分析可知,分割算法流程如圖1所示。
圖1 本文分割算法流程圖Fig.1 Flow chart of the proposed segmentation algorithm
為了驗證本文算法處理森林火災(zāi)圖像的精確性和有效性,選擇了如圖2所示的不同時期的森林火災(zāi)圖像進(jìn)行分割研究。圖2(a)為近距離無遮擋清晰的白天火源,圖2(b)為遠(yuǎn)距離有遮擋的夜晚火源。采用改進(jìn)麻雀搜索算法的指數(shù)熵多閾值圖像分割技術(shù),對圖2進(jìn)行了分割處理,并對最佳閾值、熵值、實時性、分割效果和抗噪聲等性能指標(biāo)進(jìn)行了分析研究。研究在MATLAB2017b、3.19 GHz主頻和16 GB內(nèi)存微處理器環(huán)境上展開。
圖2 森林火災(zāi)圖像Fig.2 Forest fire image
首先采用經(jīng)典的OTSU算法對森林火災(zāi)圖像中火源區(qū)域的前景與背景進(jìn)行分割,分割結(jié)果如圖3所示。
圖3 OTSU分割結(jié)果圖Fig.3 OTSU segmentation result images
由圖3(a)可知,對于清晰無遮擋的白天森林火災(zāi)圖像,OTSU單閾值分割方法能夠基本實現(xiàn)森林火災(zāi)區(qū)域的分割。然而,當(dāng)夜間火源有遮擋、光照度低且拍攝效果不清晰時,該算法在分割火源的同時還對與火源無關(guān)的煙區(qū)域進(jìn)行了分割,導(dǎo)致無法實現(xiàn)火源的精準(zhǔn)分割,如圖3(b)所示。為解決上述問題,提出改進(jìn)麻雀搜索算法的指數(shù)熵多閾值圖像分割對森林火災(zāi)圖像進(jìn)行實驗與分析。
3.2.1 閾值個數(shù)的選取
為了準(zhǔn)確分割出火源區(qū)域,采用不同的閾值個數(shù)對圖2進(jìn)行分割,圖4和圖5分別為白天和夜晚火源多閾值分割效果圖。
如圖4、圖5所示,分別選取閾值K=2、3、4、5對森林火災(zāi)圖像進(jìn)行分割效果驗證,分割結(jié)果表明,改進(jìn)算法在處理白天火源時,可以清晰地分割出火源,且能夠分割出夜間火源區(qū)域的大小。通過對比不同閾值下的分割效果可知:K=3時能夠?qū)⒒鹪床糠謪^(qū)分出來,其火災(zāi)范圍也能夠最優(yōu)化確定,因此,后續(xù)研究的閾值個數(shù)K均取值為3。
圖4 白天火源多閾值分割結(jié)果圖 (火災(zāi)1)Fig.4 Multi-threshold segmentation result images of fire source during the day (Fire1)
圖5 夜晚火源多閾值分割結(jié)果圖 (火災(zāi)2)Fig.5 Multi-threshold segmentation result images of fire source at night (Fire2)
3.2.2 最佳分割閾值
在森林火災(zāi)圖像閾值分割中,設(shè)置輸入森林火災(zāi)圖像如圖2所示,其圖像的灰度級為256,每種算法迭代次數(shù)為200,種群規(guī)模為40,其中WOA、PSO、GWO和ISSA分別代表基于鯨魚、粒子群、灰狼和改進(jìn)麻雀搜索算法的指數(shù)熵多閾值分割,OTSU代表最大類間方差算法。由于OTSU算法在處理森林火災(zāi)圖像實時性較差,因此,舍去該算法的閾值分割工作。當(dāng)所選取的最佳閾值較大時,前景和背景兩部分的差別性最大。表1給出了不同算法下的最佳分割閾值,與其他圖像分割算法相比,本文改進(jìn)麻雀搜索算法所得的最佳閾值最大。
表1 最佳分割閾值Table 1 The best segmentation threshold
3.2.3 最佳分割熵值
在求得不同算法最佳分割閾值的基礎(chǔ)上,根據(jù)熵值式(15)可計算出不同算法下森林火災(zāi)圖像分割的熵值。當(dāng)熵值越大,其分割的效果圖越好。表2為最佳分割熵值,由表2可知,與其他圖像分割算法相比,本文改進(jìn)麻雀搜索算法所得熵值最大。
表2 最佳分割熵值Table 2 The best segmentation entropy
雖然從閾值個數(shù)的選取、最佳分割閾值和最佳分割熵值方面對森林火災(zāi)圖像進(jìn)行分割可以得到火源區(qū)域和背景區(qū)域,但為了完全得到一幅圖像的所有火源區(qū)域,還需對分割后的森林火災(zāi)圖像進(jìn)行處理。因此,在將圖像轉(zhuǎn)化為二值圖的基礎(chǔ)上,通過形態(tài)學(xué)操作去除內(nèi)部干擾,并與原圖進(jìn)行結(jié)合,獲得較為清晰的彩色火焰圖像,如圖6所示。
圖6 火源的彩色圖像Fig.6 Color image of fire source
對比圖3和圖6可知,本文改進(jìn)算法能夠準(zhǔn)確、有效地分割森林火災(zāi)圖像,并對火源位置的準(zhǔn)確判斷提供較好的方法,在森林火災(zāi)方面的預(yù)防做了有效的工作。
3.2.4 實時性
預(yù)防森林火災(zāi)不僅需要精準(zhǔn)定位火源,而且要做到定位的實時性,分割森林火災(zāi)圖像所用時間越短,越有利于減小火災(zāi)帶來的損失。表3給出了改進(jìn)麻雀搜索算法以及其他算法結(jié)合指數(shù)熵多閾值圖像分割的運行時間,由表3可知,與其他圖像分割算法相比,本文改進(jìn)麻雀搜索算法所得運行時間最短。
表3 運行時間對比Table 3 Comparison of running time
在森林火災(zāi)檢測中,實時性是一項重要的指標(biāo)。為了分析并對比本算法與其他幾種算法的分割時間,在此給出了計算時間提升比,即
(18)
式(18)中:X分別為OTSU、WOA、PSO和GWO算法的時間;Y為本文ISSA算法的時間。顯然,P值越大,本文算法的計算時間相對其他時間越短,即圖像分割處理的越快。
針對上述研究的兩幅森林火災(zāi)圖像,給出了依據(jù)式(18)所得的不同算法分割的計算時間提升比,如圖7所示。
圖7 時間提升比Fig.7 Time improvement ratio
從圖7可以看出,WOA、PSO、GWO和OTSU 4種算法的分割時間均高于本文改進(jìn)麻雀搜索算法的時間,其中OTSU算法的分割時間最長,這說明改進(jìn)麻雀搜索算法在森林火災(zāi)圖像分割領(lǐng)域具有較好的實時性,能夠快速精準(zhǔn)地對森林火災(zāi)圖像的火源區(qū)域進(jìn)行分割,利于火災(zāi)及時的發(fā)現(xiàn)和控制。
為了驗證本文算法在火災(zāi)圖像分割的有效性和準(zhǔn)確性,還選取了一幅典型的森林火災(zāi)圖像進(jìn)行處理。圖8和圖9分別為森林火災(zāi)原圖和基于不同算法結(jié)合指數(shù)熵多閾值處理后的圖像。
圖8 典型森林火災(zāi)圖像Fig.8 Typical forest fire image
圖9 分割結(jié)果圖Fig.9 Segmentation result images
由圖9的分割效果可知,基于WOA、PSO和GWO的指數(shù)熵多閾值圖像分割算法能夠進(jìn)行火焰區(qū)域的分割,但是并未明確地劃分出天空區(qū)域。由圖9(d)可以清晰地看出,本文ISSA算法不僅明確分割出火焰區(qū)域,而且對不同區(qū)域呈現(xiàn)出了不同的分割效果,降低了錯分區(qū)域,分割效果較好。
現(xiàn)實拍攝的火災(zāi)圖像通常都存在一定的噪聲干擾,為了分析所采用算法的抗噪性能,在輸入圖像基礎(chǔ)上添加了方差為0.02的高斯噪聲進(jìn)行分割研究。圖10給出了含有高斯噪聲上述4種不同算法的分割效果。
圖10 高斯噪聲下分割結(jié)果圖Fig.10 Segmentation result images under Gaussian noise
從圖10中看出,對圖像加入噪聲后,基于WOA、PSO和GWO的指數(shù)熵多閾值圖像分割算法處理森林火災(zāi)圖像效果較為模糊,仍存在噪聲的干擾,而本文改進(jìn)算法在分割森林火災(zāi)圖像時能排除噪聲的干擾,具有良好的抗噪性。
圖像分割是圖像分析中非常重要的預(yù)處理步驟。為了解決森林不規(guī)則火源這類復(fù)雜圖像的分割問題,采用了改進(jìn)麻雀搜索算法的多閾值分割技術(shù),分割處理了不同環(huán)境下的火災(zāi)圖像,對最佳閾值、最大熵、實時性、分割精度以及抗噪性等方面進(jìn)行了研究,并與其他分割算法進(jìn)行了對比分析,得出以下結(jié)論。
(1)與經(jīng)典的OTSU算法相比,改進(jìn)麻雀搜索算法能夠準(zhǔn)確且有效地分割不同環(huán)境下的森林火災(zāi)圖像。
(2)與WOA、PSO和GWO算法相比,改進(jìn)麻雀搜索算法得到的閾值和熵值均最大,說明對森林火災(zāi)圖像的分割效果取得最優(yōu)。
(3)對于研究的森林火災(zāi)圖像,改進(jìn)麻雀搜索算法的分割時間顯著優(yōu)于WOA、PSO、GWO和OTSU算法,說明改進(jìn)麻雀搜索算法能夠及時對火災(zāi)圖像進(jìn)行分割,實時性較好。
(4)對于具有噪聲的火災(zāi)圖像,改進(jìn)麻雀搜索算法的分割效果優(yōu)于上述幾種分割算法,因此,改進(jìn)麻雀搜索算法具有較好的抗噪性,有利于惡劣拍攝環(huán)境下森林火災(zāi)圖像的分割處理。