周 嬌,王 力,2*,陳小青
(1.貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院 信息與通信工程系,貴陽(yáng) 550025;2.貴州工程應(yīng)用技術(shù)學(xué)院 信息工程學(xué)院,畢節(jié) 551700)
圖像分割是圖像處理中一項(xiàng)基本技術(shù),是圖像簡(jiǎn)化、目標(biāo)區(qū)突出和降低分析難度的一種重要手段,為圖像識(shí)別與分類的前提。所謂圖像分割是依據(jù)一定的準(zhǔn)則,將圖像中人們感興趣區(qū)域的內(nèi)容提取出,其分割精確度影響后續(xù)結(jié)果。因此圖像分割仍是一個(gè)研究前沿與熱點(diǎn),對(duì)此國(guó)內(nèi)外學(xué)者對(duì)其進(jìn)行大量的研究,許多有效的方法也陸續(xù)被提出,主要分為:基于色彩類型、基于不同分割依據(jù)和基于所用理論差異等。其中基于不同分割依據(jù)主要包括:邊緣檢測(cè)法、閾值法和區(qū)域生長(zhǎng)法等[1-2]。閾值法是圖像分割最常用的處理方法,其操作簡(jiǎn)單、效率高和穩(wěn)定性能好,本文中討論的2維最大熵分割算法是閾值法中的一種。20世紀(jì)80年代,學(xué)者們開(kāi)始將信息論中熵的概念用于選取閾值,熵代表平均信息量,熵越大,表明包含的信息量多[3]。其中,1維最大熵圖像分割法缺點(diǎn)在于:該方法僅考慮灰度信息,而圖像分割過(guò)程中易受噪聲的影響,導(dǎo)致較差的分割效果。所以學(xué)者們將1維推廣至2維,將點(diǎn)灰度-區(qū)域灰度同時(shí)考慮,具有較好的分割效果和抗噪性能。傳統(tǒng)最大熵法通過(guò)將全部灰度級(jí)遍歷以獲取最優(yōu)閾值,該方式計(jì)算難度大、耗時(shí)長(zhǎng)和速度慢,從而難以實(shí)現(xiàn)實(shí)時(shí)性分割要求[4-5]。
針對(duì)最大熵中的閾值選擇問(wèn)題,一些學(xué)者結(jié)合粒子群優(yōu)化算法、遺傳算法的優(yōu)化特性,采用這些方法圖像分割效果在一定程度上有所提高,但陷入局部最優(yōu),早熟收斂等弊端未能克服,同時(shí)圖像分割精度有待提高[6-7]。2017年,MIRJALILI等人[8]受鯨魚(yú)特殊覓食行為的啟發(fā)提出了鯨魚(yú)優(yōu)化算法(whale optimization algorithm,WOA),因其具有可調(diào)參量少、可操作性強(qiáng)、迅速收斂等優(yōu)點(diǎn),廣泛應(yīng)用于各種各樣的優(yōu)化問(wèn)題中,為2維最大熵分割方法選取最優(yōu)閾值提供一種新的手段。為了圖像分割精度有所提高,將改進(jìn)鯨魚(yú)優(yōu)化算法用于尋求最優(yōu)分割閾值,定義基準(zhǔn)函數(shù)為最大熵函數(shù),通過(guò)實(shí)驗(yàn)測(cè)試分割結(jié)果。結(jié)果表明,本文中改進(jìn)的算法能準(zhǔn)確找到最優(yōu)閾值,也能滿足圖像分割實(shí)時(shí)性的要求。
鯨魚(yú)被認(rèn)為是具有情感的高智能動(dòng)物,最有趣的行為是它們特殊的覓食行為。包括3種不同的捕獵方式,分別為:包圍式捕獵機(jī)制、泡泡網(wǎng)式捕獵機(jī)制和隨機(jī)式捕獵機(jī)制[8-9]。
鯨魚(yú)識(shí)別到獵物位置后將其包圍,因最優(yōu)值位置在搜索空間是未知的,所以WOA假設(shè)當(dāng)前的候選解是最優(yōu)的。最佳搜索代理被定義后,其它搜索代理將嘗試將其位置更新為最佳,由下式說(shuō)明:
X(t+1)=X*(t)-A·D
(1)
式中,D=|C·X*(t)-X(t)|;A=2a·r-a;C=2·r;t表示當(dāng)前迭代;A和C是系數(shù)向量;X(t+1) 表示候選解位置;X*(t)表示最優(yōu)解位置;a在整個(gè)迭代過(guò)程中(在探索和開(kāi)發(fā)階段)從2線性下降到0;r是[0,1]中隨機(jī)向量。
鯨魚(yú)泡泡網(wǎng)式捕獵機(jī)制有兩種方法:第1種為收縮包圍機(jī)制是通過(guò)降低a值來(lái)實(shí)現(xiàn),搜索代理新位置可在原始位置和當(dāng)前最佳位置之間任何地方定義;第2種為螺旋式更新位置機(jī)制,是通過(guò)計(jì)算位于(X,Y)鯨魚(yú)和位于(X*,Y*)獵物之間的距離,在鯨魚(yú)和獵物的位置之間建立一個(gè)螺旋方程,由下式說(shuō)明:
X(t+1)=D′eblcos(2πl(wèi))+X*(t)
(2)
式中,D′=|X*(t)-X(t)|表示第i只個(gè)體到食物源的距離,即目前為止的最優(yōu)解,b為常數(shù)(定義為對(duì)數(shù)螺旋的形狀),l是[-1,1]中的隨機(jī)數(shù)。
注意到鯨魚(yú)在一個(gè)縮小的圓圈內(nèi)圍繞獵物沿著螺旋形的路徑游動(dòng)。為了模擬這種同時(shí)進(jìn)行的行為,優(yōu)化期間假設(shè)在收縮包圍機(jī)制或螺旋式模型之間有50%的概率來(lái)選擇更新鯨魚(yú)的位置,更新公式由下式說(shuō)明:
X(t+1)=
(3)
式中,概率p是[0,1]中的隨機(jī)數(shù)。
隨機(jī)捕獵機(jī)制是基于矢量A變化的方法來(lái)尋找食物源,數(shù)學(xué)模型由下面兩個(gè)式子來(lái)說(shuō)明:
X(t+1)=Xr-A·D
(4)
D=|C·Xr-X|
(5)
式中,Xr為鯨魚(yú)隨機(jī)位置,A和D的求解已在上面給出。
對(duì)大多數(shù)群智能優(yōu)化算法,群體初始化方式影響算法的計(jì)算效率。為使種群的個(gè)體保持多樣性以及盡可能地分布均勻,本文中不再采用原算法的方式來(lái)隨機(jī)生成種群,而是采用混沌序列結(jié)合反向解的初始化策略,這樣有助于尋求解的遍歷性和提高算法收斂速度。近年來(lái),由于混沌序列具有遍歷性、隨機(jī)性等優(yōu)點(diǎn),所以將其作為一種優(yōu)化技術(shù)。如今,在優(yōu)化領(lǐng)域中有多種多樣的混沌映射,主要包括logistic映射、tent映射和貓映射等。其中l(wèi)ogistic序列的概率密度函數(shù)服從切比雪夫分布,映射點(diǎn)呈現(xiàn)兩頭密度高而中間密度低,因其遍歷性與均勻性表現(xiàn)不佳,將影響全局搜索效率[10-11]。而tent映射易在小循環(huán)或不動(dòng)點(diǎn)上出現(xiàn)問(wèn)題,若最佳解僅為邊緣值時(shí),可求得最佳解。針對(duì)以上的問(wèn)題,本文中采用經(jīng)典貓映射來(lái)生成鯨魚(yú)初始群體。貓映射(cat映射)也稱作Arnold映射,因經(jīng)常由用貓臉演示而命名,貓映射定義如下式所示[12]:
(6)
混沌序列結(jié)合反向解初始化策略步驟為:首先可用貓映射產(chǎn)生當(dāng)前種群的一個(gè)可行解{X=(x1,x2,…,xd)(d為搜索空間的維度;xj∈[uj,vj],其中uj和vj表示可行解的上下界。),則反向解定義為X′=(X1′,X2′,…,Xd′),xj=k(uj+vj)-xj,k服從[0,1]上的均勻分布[13-14]。
在鯨魚(yú)優(yōu)化算法中,鯨魚(yú)位置更新有著重要作用。鯨魚(yú)捕食過(guò)程中,食物源位置有可能會(huì)發(fā)生位置的突變,以此來(lái)增加種群隨機(jī)性。為避免WOA 出現(xiàn)早期成熟而收斂及易陷入局部最優(yōu)解,采用 “瘋狂算子”,用瘋狂算子對(duì)鯨魚(yú)位置更新機(jī)制進(jìn)行建模[15]。確保鯨魚(yú)在提前設(shè)置的瘋狂概率下,產(chǎn)生擾動(dòng)因子對(duì)食物源位置進(jìn)行擾動(dòng),目的是保持種群個(gè)體多樣性,則(3)式位置更新公式為:
X(t+1)=
(7)
式中,Cr為瘋狂算子,且Cr=P(c4)×sign(c4)×X1。變量c4是區(qū)間[0,1]中均勻分布的一個(gè)隨機(jī)數(shù),X1是一個(gè)取值非常小的一個(gè)常數(shù),試驗(yàn)中取X1=0.0001。其中P(c4)和sign(c4)由下面兩個(gè)式子來(lái)說(shuō)明:
(8)
(9)
式中,Pc為瘋狂概率,本文中Pc=0.3。該概率下鯨魚(yú)在位置更新過(guò)程中所捕獲食物位置發(fā)生變化有較小可能性。因Pc取一個(gè)很小的數(shù)值,那么c4將有很高的概率去超過(guò)Pc,而僅當(dāng)c4≤Pc時(shí),瘋狂因子P(c4)的取值為1。實(shí)際上Cr的取值僅在3個(gè)數(shù)徘徊,目的是在鯨魚(yú)位置更新過(guò)程中,很快地跳出局部最優(yōu),增加全局的收斂速度。
2017年,TANYILDIZI提出黃金正弦算法[16](golden sine algorithm,Golden-SA),該算法的靈感是來(lái)自數(shù)學(xué)上的正弦函數(shù),其優(yōu)點(diǎn)有易實(shí)現(xiàn)、收斂速度快和調(diào)節(jié)參量少。鯨魚(yú)覓食行為包括3種機(jī)制:包圍式捕獵機(jī)制,泡泡網(wǎng)式捕獵機(jī)制(收縮式機(jī)制與螺旋式機(jī)制)和隨機(jī)式捕獵機(jī)制。其中隨機(jī)捕獵機(jī)制是基于矢量A的變化,此階段為探索階段。事實(shí)上,鯨魚(yú)可根據(jù)彼此位置隨機(jī)搜索,因此,使用隨機(jī)矢量值A(chǔ)>1或A<-1來(lái)迫使搜索代理遠(yuǎn)離其它無(wú)關(guān)的鯨魚(yú)。與開(kāi)發(fā)階段不同,更新了搜索代理的位置,而不是目前為止找到的最佳搜索代理。這種機(jī)制和|A|>1一樣都強(qiáng)調(diào)探索,并允許WOA進(jìn)行全局搜索,隨機(jī)捕獵機(jī)制數(shù)學(xué)模型已在上文給出。
XIAO等人將黃金正弦算法引入螺旋式狩獵機(jī)制中,在收斂速度上有所改善,但在測(cè)試函數(shù)上尋求最優(yōu)解時(shí),易陷入局部最優(yōu)[17]。本文中采用黃金正弦算法對(duì)鯨魚(yú)優(yōu)化算法隨機(jī)式捕獵機(jī)制進(jìn)行一定的改進(jìn)。通過(guò)原始鯨魚(yú)優(yōu)化算法描述,隨機(jī)捕獵階段為探索階段,此階段強(qiáng)調(diào)全局搜索。將黃金正弦算法引入此階段,有利于全局最優(yōu)解的充分探索,減小了個(gè)體向最優(yōu)解靠近的搜索空間,同時(shí)有利于平衡在“探索”和“開(kāi)發(fā)”兩個(gè)階段。從而使算法的精度以及速度有一定提高,引入黃金正弦算法在隨機(jī)捕獵機(jī)制后,(4)式和(5)式更新為下式:
X(t+1)=Xr|sinR1|-R2·sinR1·A·D
(10)
圖像分割中應(yīng)用信息論的香農(nóng)熵,理論上是使圖像中背景和目標(biāo)信息量達(dá)到最大。1維最大熵雖有較快的處理速度,但僅考慮圖像像素的點(diǎn)灰度信息,而區(qū)域相關(guān)性被忽略,從而表現(xiàn)出較差的分割效果以及抗噪性能[19]。2維最大熵基于圖像直方圖將像素點(diǎn)灰度特征與區(qū)域灰度特征兩者結(jié)合,從而圖像有用信息能有效地被提取,通過(guò)使圖像2維熵達(dá)到最大來(lái)獲取最佳閾值。因此通過(guò)此方法可獲得良好分割效果與抗噪性,其計(jì)算方法如下:設(shè)原始圖像f(x,y)(x= 0,1,…,M;y= 0,1,…,N;M×N為分割圖像的大??;f(x,y)= 0,1,…,L)的灰度級(jí)為L(zhǎng)(L=256),以其中一個(gè)像素f(x,y)及其八鄰域作為一個(gè)計(jì)算區(qū)域,可得到該像素的灰度均值。其中nij表示原圖點(diǎn)灰度是i而區(qū)域灰度是j的像素點(diǎn)數(shù),pij是點(diǎn)灰度和區(qū)域灰度均值對(duì)發(fā)生的概率[20]:pij=nij/(M×N)
(11)
圖像的2維直方圖由(11)式得到,如圖1所示。
Fig.1 2-D histogram
典型的情況下,圖像中目標(biāo)或背景的像素占有最大比例,所在區(qū)域灰度級(jí)分布均勻,且點(diǎn)灰度與區(qū)域灰度均值無(wú)較大差別。由圖1可知,分布在對(duì)角線A區(qū)和B區(qū),反映了圖像中目標(biāo)和背景。點(diǎn)灰度-區(qū)域灰度均值對(duì)發(fā)生的概率主要集中在對(duì)角線周圍,即圖1中A區(qū)、B區(qū)。在對(duì)角線的C區(qū)、D區(qū),概率值呈下降的趨勢(shì),這兩個(gè)區(qū)反映圖像中的邊緣點(diǎn)和噪聲點(diǎn)等。所以綜上所述,為使目標(biāo)和背景信息熵達(dá)到最大,應(yīng)該在A區(qū)和B區(qū)運(yùn)用2維最大熵法來(lái)確定圖像分割的最佳閾值(s,t)。根據(jù)熵的定義,圖像2維熵與閾值可通過(guò)如下公式得到:
(12)
(13)
δ(s,t)=H(A)+H(B)=lnPA+HA/pA+
lnpB+HB/pB=ln[PA(1-PA)]+
HA/PA+(HL-HA)/(1-PA)
(14)
由以上公式可得熵函數(shù)(s,t)=H(A)+H(B)所選取的最佳分割閾值(s*,t*)應(yīng)滿足:
(s*,t*)=max{δ(s,t)}
(15)
采用2維最大熵法并不僅是1維圖像分割的簡(jiǎn)單擴(kuò)展,因?yàn)槊恳粚?duì)點(diǎn)灰度-區(qū)域灰度均值對(duì)的2維熵都進(jìn)行計(jì)算,計(jì)算量呈指數(shù)增加,因此群智能優(yōu)化算法有必要引用。
本文中選取了粒子群優(yōu)化算法(particle swarm optimization,PSO)、灰狼優(yōu)化算法(grey wolf optimizer,GWO)、蟻獅優(yōu)化算法(ant lion optimization,ALO)以及原鯨魚(yú)優(yōu)化算法(whale optimization algorithm,WOA)與本文中算法(IWOA)在同等實(shí)驗(yàn)條件下進(jìn)行對(duì)比。其中所有用于進(jìn)行對(duì)比的算法迭代次數(shù)為500,種群大小為30。不同算法參量取值見(jiàn)表1。其中,vmax表示飛行速度,w表示慣性權(quán)重,c1和c2都表示學(xué)習(xí)因子。
Table 1 Algorithm parameter value
為驗(yàn)證本文中算法(IWOA)魯棒性及改進(jìn)點(diǎn)的優(yōu)化效果優(yōu)于其它算法,作者在多個(gè)不同特點(diǎn)的基準(zhǔn)函數(shù)上進(jìn)行尋優(yōu)并進(jìn)行對(duì)比,本文中的測(cè)試函數(shù)見(jiàn)表2。
Table 2 Test functions
本文中算法(IWOA)與其它群智能算法試驗(yàn)結(jié)果對(duì)比見(jiàn)表3。
函數(shù)f1,f2,f3,f4和f5是單峰函數(shù),這些函數(shù)只有一個(gè)全局最優(yōu),用來(lái)評(píng)價(jià)算法的開(kāi)發(fā)能力。最優(yōu)值和平均值反映了算法的尋優(yōu)能力和有效性,而標(biāo)準(zhǔn)差反映算法的穩(wěn)定性。從表3中可以看出,IWOA在函數(shù)f1和f3能得到最優(yōu)值0。其它3項(xiàng)指標(biāo)也都達(dá)到了0,雖然在函數(shù)f2,f4和f5沒(méi)達(dá)到理論最優(yōu),但它們最優(yōu)值、平均值和標(biāo)準(zhǔn)差都遠(yuǎn)遠(yuǎn)優(yōu)于其它算法。其中函數(shù)f2和f4的標(biāo)準(zhǔn)差都達(dá)到0,說(shuō)明IWOA穩(wěn)定性強(qiáng)。同時(shí)也可以看出原始WOA的各項(xiàng)指標(biāo)與其它算法相比,尋優(yōu)能力次之,而ALO表現(xiàn)最差。
函數(shù)f6,f7,f8,f9和f10為多峰函數(shù),包括許多局部最優(yōu),用來(lái)評(píng)價(jià)算法的探索能力。從表3中可以看出,函數(shù)f7和函數(shù)f6上IWOA與WOA算法都能得到最優(yōu)值,但I(xiàn)WOA在最先跳出局部最優(yōu)。在函數(shù)f8上,其各項(xiàng)指標(biāo)都優(yōu)于對(duì)比的算法。在函數(shù)f9和f10上,其理論值分別為0.00030,-3.32,IWOA最為接近理論值,且其余兩項(xiàng)指標(biāo)均優(yōu)于其它算法。為進(jìn)一步驗(yàn)證IWOA的收斂性,本文中選取實(shí)驗(yàn)中測(cè)試函數(shù)f1,f2,f6,f8和f9的收斂曲線圖進(jìn)行展示,如圖2~圖6所示。
Table 3 Results of test functions
continue
Fig.2 f1 convergence curve
Fig.3 f2 convergence curve
Fig.4 f6 convergence curve
Fig.5 f8 convergence curve
Fig.6 f9 convergence curve
其中橫坐標(biāo)表示迭代代數(shù),縱坐標(biāo)表示目前最佳值。
基于本文中算法IWOA閾值優(yōu)化步驟如下:(1)采用貓映射初始化IWOA參量,包括種群大小、初始位置Xi=(si,ti)和迭代次數(shù)T;(2) 利用IWOA求分割閾值,目標(biāo)函數(shù)表達(dá)式由(14)式說(shuō)明;(3) 基于(7)式和(10)式更新鯨魚(yú)位置;(4)基于(15)式求鯨魚(yú)的適應(yīng)值,將最小的適應(yīng)值作為最優(yōu)值;(5)判斷是否達(dá)到最大迭代次數(shù),結(jié)束計(jì)算,輸出最佳閾值X*=(s*,t*),否則返到步驟(3)。
為驗(yàn)證本文中的算法IWOA優(yōu)化最大熵獲取最佳分割閾值,選擇傳統(tǒng)最大熵法、大津法和IWOA在同一編譯語(yǔ)言進(jìn)行實(shí)驗(yàn)對(duì)比。種群規(guī)模為20,迭代次數(shù)為30。本文中在MATLAB自帶圖片數(shù)據(jù)集football.jpg和coins.png兩組圖片進(jìn)行驗(yàn)證。
本文中所有對(duì)比算法均采用MATLAB語(yǔ)言。實(shí)驗(yàn)環(huán)境為:Window10系統(tǒng),4G內(nèi)存,MATLAB R2016b平臺(tái)。
從圖7b~圖7d及圖8b~圖8d中可以看出,大津法雖能從背景中分割出目標(biāo),但細(xì)節(jié)幾乎沒(méi)有體現(xiàn)。從圖7c可以看出,傳統(tǒng)最大熵法相比大津法在細(xì)節(jié)上有所提高,但效果不佳。從圖7d的分割結(jié)果中可看出,利用IWOA結(jié)合最大熵分割圖像,目標(biāo)相對(duì)全面清晰,可看出硬幣大致輪廓、紋理和痕跡都有體現(xiàn)。圖8d中足球上的英文字母及線條都能看清,表明熵值越大,所包含的信息量越多,說(shuō)明可使圖像中大量信息量被提取。試驗(yàn)表明,IWOA結(jié)合最大熵對(duì)圖像分割是可行的。從表4可以看出,每經(jīng)過(guò)一次閾值篩選,都要進(jìn)行熵的計(jì)算,假設(shè)計(jì)算時(shí)間為一個(gè)固定數(shù)G,那么對(duì)于一個(gè)灰度級(jí)為256的圖像,當(dāng)進(jìn)行1維熵分割時(shí),需計(jì)算熵256次,總共計(jì)算時(shí)間為256G。而當(dāng)進(jìn)行2維熵分割時(shí)總計(jì)時(shí)間256×256G,從而可以看出,2維熵分割時(shí)間計(jì)算量大,導(dǎo)致分割消耗時(shí)間長(zhǎng),采用IWOA結(jié)合傳統(tǒng)最大熵對(duì)圖像進(jìn)行分割,分割時(shí)間所消耗時(shí)間最少。
Table 4 Values of different segmentation algorithms
Fig.7 a—original coins.png b—segmentation image of 2-D Ostu c—segmentation image of 2-D maximum entropy d—segmentation image of IWOA
Fig.8 a—original football.jpg b—segmentation image of 2-D Ostu c—segmentation image of 2-D maximum entropy d—segmentation image of IWOA
與很多群智能算法一樣,鯨魚(yú)優(yōu)化算法對(duì)大多數(shù)優(yōu)化問(wèn)題依賴性小。為能精準(zhǔn)在圖像分割過(guò)程中找到目標(biāo)區(qū)域及能很好地解決計(jì)算量大問(wèn)題,將改進(jìn)鯨魚(yú)優(yōu)化算法用于2-D最大熵圖像分割,為避免WOA算法出現(xiàn)過(guò)早收斂和易陷入局部最優(yōu)解,在其位置更新公式上引入瘋狂算子,提高算法的收斂速度。同時(shí)在隨機(jī)捕獵機(jī)制在引入黃金正弦算法,使種群多樣性得以保證及算法的精度有一定提高。結(jié)合IWOA和2維最大熵各自優(yōu)點(diǎn)實(shí)現(xiàn)圖像有效分割,實(shí)驗(yàn)結(jié)果表明,與其它分割算法相比,IWOA能實(shí)時(shí)地分割出目標(biāo)圖像,目標(biāo)圖像視覺(jué)效果表現(xiàn)較為理想,且分割消耗時(shí)間最短。鯨魚(yú)優(yōu)化算法魯棒性強(qiáng),可用在多個(gè)領(lǐng)域,不取決研究問(wèn)題的領(lǐng)域,因此具有廣泛地研究意義。