馮新宇, 付志偉, 柴僑崢, 李亞妮, 劉曉磊
(1.黑龍江科技大學(xué) 電氣與控制工程學(xué)院, 哈爾濱 150022; 2.國(guó)網(wǎng)黑龍江省電力有限公司 大興安嶺供電公司, 黑龍江 大興安嶺 165000)
隨著電力系統(tǒng)智能化的發(fā)展,紅外熱成像檢測(cè)技術(shù)被廣泛應(yīng)用于電力設(shè)備故障檢測(cè),成為一種高效的檢測(cè)方法[1]。然而,由于多種電力設(shè)備相互關(guān)聯(lián),導(dǎo)致所拍攝的紅外圖像背景復(fù)雜,故障區(qū)域難以提取,這對(duì)故障的診斷造成很大影響。因此,電力設(shè)備紅外圖像故障區(qū)域的分割至關(guān)重要。目前常用的紅外圖像分割算法包括區(qū)域生長(zhǎng)法[2]、形態(tài)學(xué)法[3]、聚類法、閾值法[4]和邊緣分割法[5]等。這些算法對(duì)簡(jiǎn)單的紅外圖像分割有很好的效果,具有收斂速度快、算法簡(jiǎn)單、實(shí)用性強(qiáng)等優(yōu)點(diǎn)[6]。但對(duì)于背景復(fù)雜的電力設(shè)備紅外圖像,這些算法存在過(guò)分割、欠分割、速度慢等問(wèn)題。為增強(qiáng)紅外圖像的分割效果,一些學(xué)者采用元啟發(fā)優(yōu)化算法、人工免疫算法等對(duì)經(jīng)典的紅外分割算法進(jìn)行改進(jìn)。
Wang等[7]引入改進(jìn)粒子群(PSO)算法優(yōu)化Otsu 算法,利用小波變異性防止粒子陷入局部最優(yōu),但收斂速度較慢。Qin等[8]引入改進(jìn)蟻群算法優(yōu)化Otsu多閾值分割,運(yùn)用Lévy飛行改進(jìn)其蟻群搜索過(guò)程,有效地提高了算法速度,但在算法迭代過(guò)程中容易陷入局部最優(yōu)。Li等[9]引入遺傳算法對(duì)K均值分割算法進(jìn)行優(yōu)化,使實(shí)際應(yīng)用中的彩色多像具有很好的分割效果,但對(duì)紅外圖像分割時(shí),有時(shí)會(huì)發(fā)生過(guò)分割現(xiàn)象。Hang等[10]引入果蠅算法優(yōu)化Otsu 算法,通過(guò)模擬果蠅覓食和繁殖過(guò)程對(duì)Otsu 算法進(jìn)行優(yōu)化,能夠有效分割高維圖像,但有時(shí)容易產(chǎn)生錯(cuò)誤閾值。李鵬等[11]結(jié)合改進(jìn)麻雀算法對(duì)二維Otsu 算法進(jìn)行優(yōu)化,通過(guò)Singer混沌映射和隨機(jī)游走增強(qiáng)種群多樣性提高全局和局部搜索能力,具有較強(qiáng)的分割性能,但后期收斂精度不足。王坤等[12]通過(guò)改進(jìn)易經(jīng)占卜進(jìn)化算法對(duì)Otsu 算法進(jìn)行優(yōu)化,在易經(jīng)算子過(guò)程中采用輪盤(pán)賭的方式選取適應(yīng)度大的個(gè)體作為新種群,該算法普適性較差,只適用于飛機(jī)蒙皮的紅外圖像。趙鳳等[13]采用粒子群和人工蜂群混合優(yōu)化Otsu 算法,將粒子群的最優(yōu)解作為人工蜂群算法的蜜源進(jìn)行迭代,對(duì)背景簡(jiǎn)單圖像分割效果好,但對(duì)于復(fù)雜圖像時(shí),實(shí)時(shí)性差。
針對(duì)以上問(wèn)題,筆者對(duì)人工蜂群算法(Artificial bee colony algorithm,ABC)進(jìn)行改進(jìn),提出一種改進(jìn)ABC優(yōu)化的Ostu電力設(shè)備紅外圖像分割算法。首先,引入Lévy飛行對(duì)種群初始化過(guò)程進(jìn)行改進(jìn),增強(qiáng)蜂群的空間搜索能力和種群多樣性,從而提高算法尋優(yōu)的過(guò)程,然后利用天牛須搜索法(Beetle antennae search algorithm,BAS),對(duì)蜂群的搜索方程進(jìn)行改進(jìn),提高蜂群的全局搜索能力,避免陷入局部最優(yōu)的問(wèn)題。
Karabage等[14]提出了人工蜂群算法,該算法模擬了自然界中蜜蜂尋找食物的行為,用于解決優(yōu)化代數(shù)問(wèn)題。ABC算法具有魯棒性、控制參數(shù)少、原理簡(jiǎn)單等優(yōu)點(diǎn),在圖像處理、圖像識(shí)別、路徑規(guī)劃、通信技術(shù)等領(lǐng)域有著廣泛應(yīng)用。該算法將優(yōu)化問(wèn)題的解視為是蜜源,尋找最優(yōu)解的過(guò)程就是蜂群尋找蜜源的過(guò)程。蜜源的采集難度、信息量以及與蜂巢的距離決定其是否為最優(yōu)解。蜂群被分為雇傭蜂(引領(lǐng)蜂)、跟隨蜂和偵察蜂。引領(lǐng)蜂負(fù)責(zé)尋找蜜源的信息,并通過(guò)概率與蜂巢內(nèi)的跟隨蜂進(jìn)行信息傳遞。引領(lǐng)蜂的數(shù)量與蜜源的數(shù)量相同,與蜜源位置一一對(duì)應(yīng)。跟隨蜂根據(jù)引領(lǐng)蜂傳遞的信息,在蜜源區(qū)域進(jìn)行搜索,依據(jù)貪婪準(zhǔn)則選取適應(yīng)度較優(yōu)的蜜源,當(dāng)蜜源搜索完成后,引領(lǐng)蜂會(huì)變?yōu)閭刹旆?繼續(xù)尋找新的蜜源。ABC算法的實(shí)現(xiàn)分為以下四個(gè)執(zhí)行步驟:
(1)初始化階段
人工蜂群算法采用隨機(jī)初始化法,根據(jù)式(1)隨機(jī)產(chǎn)生N個(gè)蜜源和蜜源的向量維數(shù)為D。
xi,j=xi,jmin+rand(0,1)[(xi,jmax-xi,jmin)] ,
(1)
式中:xi,j——新產(chǎn)生的蜜源;
i——{1,2,…,N}內(nèi)的整數(shù);
j——{1,2,…,D}內(nèi)的整數(shù);
xi,jmin、xi,jmax——第i個(gè)蜜源Xi=(xi,1,xi,2,…,xi,D)第j維參數(shù)的下限和上限。
蜜源的適應(yīng)度通過(guò)輪盤(pán)賭公式來(lái)判斷,由式(2)可知,當(dāng)目標(biāo)函數(shù)大于0時(shí),目標(biāo)函數(shù)越大,適應(yīng)度越小。
(2)
式中:f(Xi)——第i個(gè)蜜源Xi的目標(biāo)函數(shù);
fitn(Xi)——第i個(gè)蜜源的適應(yīng)度。
(2)引領(lǐng)蜂階段
引領(lǐng)蜂探索蜜源的信息,并更新蜜源的信息,搜索公式為
vi,j=xi,j+rand(-1,1)[(xi,j-xk,j)] ,
(3)
式中:vi,j——引領(lǐng)蜂搜索到的新蜜源;
xi,j——原始蜜源;
k——{1,2,…,N}內(nèi)的整數(shù),且k≠j。
引領(lǐng)蜂依據(jù)貪婪準(zhǔn)則,對(duì)新舊蜜源進(jìn)行比較,適應(yīng)度高的蜜源被采用。
(3)跟隨蜂階段
引領(lǐng)蜂完成探索后,返回蜂巢給跟隨蜂傳遞信息,跟隨蜂接收引領(lǐng)蜂傳遞的信息,并依據(jù)輪盤(pán)賭公式?jīng)Q定是否跟隨引領(lǐng)蜂進(jìn)行采蜜。
輪盤(pán)賭公式為
(4)
式中,pi——跟隨蜂是否跟隨的概率。
(4)偵察蜂階段
跟隨蜂對(duì)蜜源搜索完成后,有些蜜源的適應(yīng)度多次迭代未發(fā)生變化,證明該蜜源探索完成,放棄該蜜源,這時(shí)引領(lǐng)蜂變?yōu)閭刹旆?按式(1)隨機(jī)產(chǎn)生一個(gè)新的蜜源。
針對(duì)人工蜂群算法容易陷入局部最優(yōu)、全局和空間搜索能力差等問(wèn)題。文中采用Lévy飛行對(duì)其種群初始化階段進(jìn)行改進(jìn),增強(qiáng)蜂群的種群多樣性和空間搜索能力,能夠有效地提高收斂速度。之后,通過(guò)BAS算法改進(jìn)引領(lǐng)蜂階段,提高其全局搜索的能力,避免出現(xiàn)陷入局部最優(yōu)解的問(wèn)題。
Lévy飛行是隨機(jī)步長(zhǎng)服從Lévy分布的隨機(jī)行走,Lévy飛行的方差與時(shí)間呈指數(shù)關(guān)系式[15]。Lévy分布為
Lévy(β)~u=t-β, (1<β<3) 。
(5)
計(jì)算Lévy飛行步長(zhǎng)為
(6)
式中:Lévy(β)——一個(gè)帶有重尾的概率分布;
β——冪次數(shù);
φ——正態(tài)分布的方差;
u、n——服從標(biāo)準(zhǔn)正態(tài)分布;
?!粋€(gè)標(biāo)準(zhǔn)的伽馬函數(shù)。
當(dāng)β=1.5時(shí),φ為
(7)
文中在智能算法的高維空間中引入Lévy飛行,增強(qiáng)蜂群在空間中的搜索能力,并且Lévy飛行也能夠增強(qiáng)引領(lǐng)蜂和蜜源的多樣性,使更多的適應(yīng)函數(shù)的最優(yōu)解參與到尋優(yōu)的過(guò)程中。通過(guò)Lévy飛行對(duì)種群初始化階段的改進(jìn)公式為
(8)
BAS算法是一種仿生算法,其模擬天牛覓食時(shí)使用兩個(gè)觸須感應(yīng)氣味來(lái)判斷食物位置。當(dāng)天牛感知到某一側(cè)氣味較強(qiáng)時(shí),它會(huì)向該側(cè)移動(dòng)一定距離,并再次感知環(huán)境中的氣味。如此循環(huán)往復(fù),直至找到氣味最濃的食物,即為最優(yōu)解。天牛須算法的數(shù)學(xué)模型如下。
(1)假設(shè)對(duì)目標(biāo)函數(shù)f進(jìn)行n維優(yōu)化,設(shè)天牛位置為S,右觸須Sr,左觸須Sl,左右觸須的間隔為d,步長(zhǎng)為
s=cd。
天牛的左右觸須表達(dá)式為
dir=rand(n,1)。
(2)此時(shí)得到兩根觸須的位置為
Sl=S+ddir/(2‖dir‖),
Sr=S-ddir/(2‖dir‖)。
(9)
求出左觸須的適應(yīng)度f(wàn)l和右觸須的適應(yīng)度f(wàn)r,對(duì)兩者進(jìn)行比較,天牛向適應(yīng)度大的方向移動(dòng),移動(dòng)后的位置為
S=S+s‖Sl-Sr‖,fl
(10)
(3)求出天牛新位置的適應(yīng)度f(wàn)s,更新步長(zhǎng)和左右觸須的距離為
s=etas,d=etad。
式中,eta——步長(zhǎng)與距離的衰減系數(shù),一般設(shè)為0.95。
(4)循環(huán)進(jìn)行(2)(3)直至找到最優(yōu)解。
文中采用BAS算法對(duì)引領(lǐng)蜂階段的搜索公式進(jìn)行改進(jìn),提高其全局搜索的能力,避免ABC算法在尋優(yōu)的過(guò)程中陷入局部最優(yōu)的問(wèn)題。改進(jìn)過(guò)程為
(11)
為了驗(yàn)證IABC算法的尋優(yōu)能力和搜索能力,采用單峰函數(shù)(Beale、Matyas、Schaffer、Cross-in-Tray)和多峰函數(shù)(Tripod、Rosenbrock、Easom、Schwefel)對(duì)其測(cè)試[17]。測(cè)試函數(shù)公式如下:
Beale函數(shù)為
f(x,y)=(1.5-x+xy)2+(2.25-x+xy2)2+
(2.625-x+xy3)2,
其搜索范圍為[-4.5,4.5], 維度為2。
Matyas函數(shù)為
f(x,y)=0.26(x2+y2)-0.48xy,
其搜索范圍為[-10,10],維度為2。
Schaffer函數(shù)為
f(x,y)=0.5+(sin(x2-y2)2-0.5)/
(1+0.001(x2+y2))2,
其搜索范圍為[-100,100],維度為2。
Cross-in-Tray函數(shù)為
f(x,y)=-0.000 1×(abs(sinx×sin(y)×
exp(abs(100-sqrt(x2+y2)/π)))+1)0.1,
其搜索范圍為[-10,10],維度為2。
Tripod函數(shù)為
f(x,y)=max(abs(x),abs(y)),
其搜索范圍為[-100,100],維度為2。
Rosenbrock函數(shù)為
其搜索范圍為[-5,10],維度為20。
Easom函數(shù)為
f(x,y)=-cosxcosyexp(-((x-π)2-
(y-π)2)),
其搜索范圍為[-100,100],維度為20。
Schwefel函數(shù)為
f(x1,x2,…,xn)=-sum(xisin(sqrt(abs(xi)))),
其搜索范圍為[-1000,1000],維度為n。
Beale、Matyas、Schaffer、Cross-in-Tray為單峰測(cè)試函數(shù),用來(lái)測(cè)試優(yōu)化算法的搜索能力,Tripod、Rosenbrock、Easom、Schwefel為多峰測(cè)試函數(shù),用來(lái)測(cè)試優(yōu)化算法的全局尋優(yōu)的能力和開(kāi)發(fā)能力。文中將IABC算法與PSO和ABC算法進(jìn)行測(cè)試結(jié)果對(duì)比。三種算法測(cè)試函數(shù)的收斂曲線如圖1和2所示。
圖1 三種算法測(cè)試函數(shù)的收斂曲線
圖2 三種算法測(cè)試函數(shù)的收斂曲線
由圖1和2可以看出,IABC算法的迭代速度明顯快于其他兩種算法,僅需短時(shí)間即可迭代到最優(yōu)解。此外,無(wú)論是對(duì)于單峰函數(shù)還是多峰函數(shù),IABC算法收斂精度明顯優(yōu)于PSO和ABC算法。
為了更好地驗(yàn)證文中算法的搜索和尋優(yōu)能力,對(duì)其運(yùn)行30次,種群數(shù)量設(shè)為50,最大迭代速度設(shè)為50。計(jì)算出算法運(yùn)行結(jié)果的最大值、最小值、平均值和標(biāo)準(zhǔn)差,其中,標(biāo)準(zhǔn)差反映了算法的穩(wěn)定性,而最大值、最小值和平均值則反映了算法的求解精度和尋優(yōu)能力,測(cè)得數(shù)據(jù)如表1所示。
表1 3種算法對(duì)測(cè)試函數(shù)的優(yōu)化結(jié)果
針對(duì)單峰函數(shù)Beale、Matyas和Schaffer,IABC算法能夠直接搜索到最優(yōu)值,并且其尋優(yōu)精度和能力均達(dá)到了100%。對(duì)于單峰函數(shù)Cross-in-Tray,IABC算法的標(biāo)準(zhǔn)差與PSO算法相當(dāng),但其最小值和平均值更小,這表明IABC算法的尋優(yōu)能力強(qiáng)于PSO算法。在處理多峰函數(shù)時(shí),IABC算法的標(biāo)準(zhǔn)差均優(yōu)于其他兩種算法,表明其穩(wěn)定性更好。此外,IABC算法的最大值、最小值和平均值也均明顯優(yōu)于其他兩種算法。綜上所述,IABC算法不僅具備更好的穩(wěn)定性,而且其尋優(yōu)精度也得到了改善,因此IABC算法的尋優(yōu)能力更強(qiáng)。
Ostu算法是一種自適應(yīng)閾值分割算法。該算法以目標(biāo)圖像和背景圖像之間的最大類間方差作為閾值對(duì)圖像進(jìn)行分解[18]。
假設(shè)圖像的灰度級(jí)L=256,像素總數(shù)為N,灰度級(jí)為i(i=0,1,…,L-1)的像素個(gè)數(shù)為xi個(gè),則
灰度級(jí)為i的像素出現(xiàn)的概率為
圖像的總灰度均值μ為
以灰度值h為閾值,將紅外圖像分為D0和D1,D0為需要分割得到的目標(biāo)區(qū)域,像素的灰度級(jí)為[1,h],D1為背景區(qū)域,像素的灰度級(jí)為[h+1,L-1]。則D0、D1出現(xiàn)的概率QD0、QD1分別為
D0、D1的灰度均值ED0、ED1為
圖像的灰度均值E為
D0和D1的類間方差為
θ2(h)=QD0(E-ED0)2+QD1(E-ED1)2,
式中,θ2(h)——最大值為最佳分割閾值。
由上述可知,Ostu算法必須對(duì)0~255之間的所有灰度值進(jìn)行類間方差計(jì)算。所以該算法計(jì)算量大、效率低,并且當(dāng)圖像隨機(jī)分布較為復(fù)雜時(shí),閾值分割并不夠準(zhǔn)確,可能會(huì)出現(xiàn)過(guò)分割和欠分割。
針對(duì)Ostu算法對(duì)復(fù)雜紅外圖像分割精確度不足、過(guò)分割和欠分割等問(wèn)題,文中將改進(jìn)IABC算法應(yīng)用于紅外圖像分割上,基于改進(jìn)人工蜂群優(yōu)化的Ostu算法流程,如圖3所示。
圖3 文中算法流程
改進(jìn)人工蜂群優(yōu)化的Ostu算法具體實(shí)現(xiàn)步驟如下:
(1)讀取紅外圖像。
(2)設(shè)置參數(shù)。最大迭代次數(shù)Mmax、種群數(shù)N、向量維數(shù)D。
(3)種群初始化。將Ostu函數(shù)作為IABC算法的適應(yīng)度函數(shù),并利用式(8)生成初始種群。
(4)引領(lǐng)蜂階段。利用天牛須搜索法改進(jìn)的搜索方程式(11)產(chǎn)生新解,通過(guò)比較適應(yīng)度值,保留適應(yīng)度大的解。
(5)跟隨蜂階段。通過(guò)式(4)判斷是否跟隨引領(lǐng)蜂進(jìn)行探索,若跟隨進(jìn)行隨機(jī)探索,按照式(2)決定是否保留解。
(6)偵察蜂階段。當(dāng)保留解開(kāi)采次數(shù)達(dá)到限制后,引領(lǐng)蜂變?yōu)閭刹旆?按照式(1)產(chǎn)生新的蜜源。
(7)對(duì)所獲得的解進(jìn)行判斷,滿足條件則輸出最優(yōu)解,不滿足跳轉(zhuǎn)至步驟(3)。
(8)將最優(yōu)解作為最佳分割閾值對(duì)紅外圖像進(jìn)行分割。
(9)獲得分割后的圖像。
為了更好地驗(yàn)證文中算法的有效性,在Matlab實(shí)驗(yàn)平臺(tái)上對(duì)高溫套管、隔離開(kāi)關(guān)、互感器和充油套管四種電力設(shè)備的紅外圖像進(jìn)行分割實(shí)驗(yàn)。四種電力設(shè)備的紅外圖像如圖4所示。將文中算法與Ostu算法、PSO-Ostu算法和ABC-Ostu算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如圖5所示。
圖4 四種電氣設(shè)備
圖5 實(shí)驗(yàn)結(jié)果
由圖5可見(jiàn),發(fā)現(xiàn)Ostu算法對(duì)四臺(tái)電力設(shè)備的紅外圖像進(jìn)行分割時(shí)容易出現(xiàn)過(guò)分割的情況,而ABC-Ostu算法則容易出現(xiàn)欠分割和背景曝光現(xiàn)象。PSO-Ostu算法和文中算法的分割效果較好,但是在一些細(xì)節(jié)方面,文中算法優(yōu)能優(yōu)于PSO-Ostu算法。
為了更加準(zhǔn)確地評(píng)價(jià)各算法的性能,文中采用召回率(Recall)和重疊率(Overlap)作為客觀指標(biāo)進(jìn)行評(píng)價(jià)。其中,召回率用于評(píng)價(jià)分割模型對(duì)目標(biāo)區(qū)域的識(shí)別能力,當(dāng)召回率越接近于1時(shí),說(shuō)明模型對(duì)正例識(shí)別能力越強(qiáng)[19]。重疊率也稱為交并比,是圖像分割中常用的客觀評(píng)價(jià)指標(biāo),其大小與圖像分割效果的好壞成正比[20]。召回率和重疊率公式為
式中:TP——真實(shí)正例被正確分類的像素?cái)?shù);
FN——真實(shí)正例被錯(cuò)誤分類為負(fù)例的像素?cái)?shù),R∈[0,1]。
式中:Int——預(yù)測(cè)結(jié)果與真實(shí)結(jié)果的重疊部分的像素?cái)?shù);
Uni——預(yù)測(cè)與真實(shí)結(jié)果所有的像素?cái)?shù),O∈[0,1]。
經(jīng)過(guò)對(duì)四種分割算法召回率和重疊率的測(cè)試,結(jié)果如表2所示。
表2 召回率和重疊率的測(cè)試結(jié)果
由表2可以發(fā)現(xiàn),文中算法對(duì)四種電力設(shè)備的故障區(qū)域分割的召回率普遍在85%以上,比Ostu、PSO-Ostu、ABC-Ostu算法都高出10%以上,說(shuō)明文中算法對(duì)電力設(shè)備的故障區(qū)域識(shí)別能力更強(qiáng)。從重疊率來(lái)看,文中算法相對(duì)于Ostu和ABC-Ostu算法,重疊率提高了約15%,說(shuō)明文中算法對(duì)Ostu和ABC-Ostu算法的改進(jìn)取得不錯(cuò)的效果,且文中算法比PSO-Ostu算法的重疊率高約10%。綜上所述,文中算法對(duì)電力設(shè)備紅外圖像故障區(qū)域分割具有更好的效果,相較于Ostu、PSO-Ostu、ABC-Ostu算法表現(xiàn)更加優(yōu)異。
針對(duì)電力設(shè)備相互關(guān)聯(lián)導(dǎo)致紅外圖像背景復(fù)雜、難以提取故障區(qū)域的問(wèn)題,提出了一種改進(jìn)ABC優(yōu)化的Ostu電力設(shè)備紅外圖像分割算法。
(1)對(duì)種群初始化過(guò)程進(jìn)行改進(jìn),引入Lévy飛行增強(qiáng)蜂群的空間搜索能力和種群多樣性,提高了算法的尋優(yōu)過(guò)程,Lévy飛行可以幫助蜜蜂跳出局部最優(yōu),加速算法收斂。
(2)利用天牛須搜索算法(BAS)改進(jìn)了蜂群的搜索方程,提高了蜂群的全局搜索能力,避免了陷入局部最優(yōu)的問(wèn)題。BAS算法可以擴(kuò)大搜索范圍,避免過(guò)早收斂于局部最優(yōu)。
(3)通過(guò)跟隨蜂和偵察蜂階段獲得的蜜源作為最佳分割閾值,對(duì)紅外圖像進(jìn)行分割。實(shí)驗(yàn)結(jié)果表明,相較于Otsu算法、粒子群優(yōu)化Otsu算法(PSO-Otsu)和人工蜂群優(yōu)化Otsu算法(ABC-Otsu),文中算法在分割召回率和重疊率方面都取得了10%以上的提高,有效地提高了電力設(shè)備紅外圖像的分割效果。