孫永盛 劉 鎮(zhèn)
(江蘇科技大學(xué)計(jì)算機(jī)學(xué)院 鎮(zhèn)江 212000)
隨著計(jì)算機(jī)計(jì)算能力的提升與人工智能的發(fā)展,利用計(jì)算機(jī)模擬人眼的視覺(jué)注意機(jī)制,已成為計(jì)算機(jī)視覺(jué)領(lǐng)域重要的研究方向之一。圖像的顯著性檢測(cè)是指通過(guò)建立圖像顯著性檢測(cè)模型,準(zhǔn)確快速地檢測(cè)出圖像中的人眼注視區(qū)域。完整的圖像顯著性檢測(cè)模型需要充分模擬視覺(jué)注意機(jī)制,然而在實(shí)際運(yùn)用中,由于計(jì)算方法和建模方法的限制,檢測(cè)出的圖像顯著性區(qū)域與實(shí)際的人眼注視區(qū)域具有一定的差距,檢測(cè)的準(zhǔn)確度有待進(jìn)一步提高,模型的檢測(cè)速度經(jīng)常受到嚴(yán)重的影響。
卷積神經(jīng)網(wǎng)絡(luò)是機(jī)器學(xué)習(xí)中廣泛應(yīng)用于圖像處理領(lǐng)域的一種算法,但標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)響應(yīng)時(shí)存在的泛化能力差、收斂慢、網(wǎng)絡(luò)預(yù)測(cè)精度不高等缺陷[1]。據(jù)此,本文基于混沌策略?xún)?yōu)化的螢火蟲(chóng)算法予以改進(jìn),優(yōu)化神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值以提高網(wǎng)絡(luò)預(yù)測(cè)性能和精度。結(jié)合圖像顯著性檢測(cè)的具體應(yīng)用建立相應(yīng)的檢測(cè)模型,該模型在檢測(cè)準(zhǔn)確度和檢測(cè)速度方面均有顯著的提高,能夠準(zhǔn)確快速地檢測(cè)出圖像的顯著性區(qū)域,并且具有廣泛的適用性。
卷積神經(jīng)網(wǎng)絡(luò)模型是機(jī)器學(xué)習(xí)中應(yīng)用于圖像處理領(lǐng)域中的一種經(jīng)典模型。它由特征提取層與特征映射層組成。網(wǎng)絡(luò)層由卷積層和下采樣層交替形成。卷積層和下采樣層之后,是全連接層輸出[2]。卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示,若輸入圖像大小為n×n,經(jīng)過(guò)卷積層m個(gè)s×s的卷積核后,輸出m 個(gè)(n-s+1)×(n-s+1)大 小 的 圖 像,經(jīng) 過(guò) 下采樣層后輸出m個(gè)(n-s+1)/2×(n-s+1)/2的圖像,依次再經(jīng)過(guò)卷積層和下采樣層。
圖1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
圖1中C代表卷積層,S代表下采樣層。卷積層用來(lái)進(jìn)行特征提取,提高模型的魯棒性,公式如下:
其中表示當(dāng)前層所卷積出來(lái)的特征圖;同樣地,則表示前一層傳遞過(guò)來(lái)的下采樣層的特征圖;表示從上一層第m個(gè)特征圖到當(dāng)前層第n個(gè)特征圖的卷積核;f(x)=1/[1+exp(-x)]為激活函數(shù)。代表神經(jīng)元偏置,是卷積核與上一層特征圖譜卷積和的響應(yīng),采用不同的卷積和則可以提取不同的特征[3]。下采樣層是對(duì)特征進(jìn)行映射,減少了特征的分辨率,節(jié)省了計(jì)算時(shí)間,增加量了模型的效率,下采樣層中的節(jié)點(diǎn)輸出可以表示為
其中表示下采樣層中采樣模板的權(quán)值,s×s表示采樣模板的尺寸。最后網(wǎng)絡(luò)形成一個(gè)全連接層輸出的最后結(jié)果,輸出公式如下:
螢火蟲(chóng)優(yōu)化算法(Firefly Algorithm)是一種新型仿生智能優(yōu)化算法,該算法的仿生原理為:螢火蟲(chóng)個(gè)體總是朝最近、最亮的個(gè)體移動(dòng),未找到最近最亮個(gè)體的螢火蟲(chóng)規(guī)定其在原位置基礎(chǔ)上進(jìn)行無(wú)指導(dǎo)方向的運(yùn)動(dòng);螢火蟲(chóng)之間的相對(duì)吸引力決定了個(gè)體的移動(dòng)距離,越亮的個(gè)體其對(duì)周?chē)灮鹣x(chóng)的吸引力越大,同時(shí)對(duì)越遠(yuǎn)螢火蟲(chóng)的吸引力越?。?]。
對(duì)于待優(yōu)化問(wèn)題,其對(duì)應(yīng)的優(yōu)化函數(shù)在定義域中的取值可以作為判斷螢火蟲(chóng)亮度高低的標(biāo)準(zhǔn),螢火蟲(chóng)的位置對(duì)應(yīng)優(yōu)化函數(shù)在定義域中的解。亮度越高的螢火蟲(chóng)所對(duì)應(yīng)的目標(biāo)函數(shù)值越優(yōu),隨著種群不斷進(jìn)化,整個(gè)種群不斷接近最亮的個(gè)體,最終獲得優(yōu)化函數(shù)的最優(yōu)解即對(duì)應(yīng)最亮個(gè)體位置[5]。
在螢火蟲(chóng)優(yōu)化算法中,個(gè)體i到j(luò)的距離表示為rij,一般采用歐氏距離[6],即:
其中d代表搜索空間的維度。
由定義螢火蟲(chóng)個(gè)體i對(duì)j的吸引力和其對(duì)j的相對(duì)亮度成正比,可得螢火蟲(chóng)i對(duì)螢火蟲(chóng)j的吸引力公式表示為
式中,β0表示螢火蟲(chóng)在光源處的吸引力,在光源位置rij=0,此時(shí)螢火蟲(chóng)具有的吸引力最大,通常取β0=1,γ為光吸收系數(shù),該參數(shù)的取值影響螢火蟲(chóng)優(yōu)化算法的搜索速度和最終尋優(yōu)質(zhì)量[7]。
螢火蟲(chóng)i相對(duì)螢火蟲(chóng)j的熒光亮度公式為
式中,Ii是螢火蟲(chóng)i的絕對(duì)亮度,對(duì)應(yīng)螢火蟲(chóng)i所處位置的目標(biāo)函數(shù)值:γ表示光吸收系數(shù),從光學(xué)角度描述了亮度在傳播過(guò)程中會(huì)被介質(zhì)吸收,同時(shí)由于距離增加而不斷變暗,一般情況下對(duì)γ取常亮[8]。
螢火蟲(chóng)j被螢火蟲(chóng)i吸引,j向i移動(dòng)來(lái)更新原來(lái)位置,j位置更新公式為
式中,t為算法的迭代次數(shù),xj(t+1)代表螢火蟲(chóng)j在第t+1次迭代的位置;βij表示個(gè)體i對(duì)j的吸引力:α為常數(shù),取α∈[0,1];rand代表隨機(jī)數(shù),在[0,1]上服從均勻分布。
混沌現(xiàn)象是一種普遍存在于自然界中的一種復(fù)雜隨機(jī)現(xiàn)象,它具有隨機(jī)、遍歷、規(guī)律、敏感等特性。從表面上看,混沌運(yùn)動(dòng)與隨機(jī)運(yùn)動(dòng)很相似,但是兩者存在本質(zhì)的區(qū)別?;煦邕\(yùn)動(dòng)是由于確定性的物理規(guī)律所形成的,是可以短期預(yù)測(cè)的[9]。而隨機(jī)特性是由內(nèi)在特性的外部噪聲所產(chǎn)生的?;煦鐑?yōu)化就是通過(guò)隨機(jī)、遍歷和初始值敏感等這些混沌運(yùn)動(dòng)所具有的特點(diǎn)來(lái)對(duì)隨機(jī)算法的性能進(jìn)行改進(jìn)。
在多種混沌序列的模型中,可知在混沌空間相同的條件下,由邏輯自映射函數(shù)生成的序列比logistics映射更具有遍歷性[10]。采用邏輯自映射函數(shù)生成混沌序列,如式(8)所示:
其中,為避免混沌序列出現(xiàn)全為1或0.5的情況,所以初始值不能取0和0.5,d表示D維搜索空間的第d維。
初始化混沌種群的過(guò)程[11]描述如下:
1)對(duì)于D維空間的M個(gè)螢火蟲(chóng)個(gè)體,根據(jù)邏輯自映射函數(shù)的性質(zhì),首先初始化混沌變量,在(-1,1)區(qū)間隨機(jī)產(chǎn)生初始變量。
2)按照式(8)迭代,將邏輯自映射生成的MaxGen×D-1個(gè)混沌變量,與初始混沌變量一起對(duì)應(yīng)全部MaxGen×D個(gè)螢火蟲(chóng)個(gè)體。
3)講產(chǎn)生的混沌變量序列按變換到目標(biāo)函數(shù)的搜索空間,生成螢火蟲(chóng)初始種群的M個(gè)個(gè)體,公式如下:
式中,Lb和Ub分別表示搜索空間第d維的下限和上限,yn,d是根據(jù)式(9)產(chǎn)生的第i個(gè)螢火蟲(chóng)對(duì)應(yīng)的第d維混沌變量,xi,d為第i個(gè)螢火蟲(chóng)在搜索空間中第d維的坐標(biāo)值。
傳統(tǒng)螢火蟲(chóng)算法和基于混沌優(yōu)化策略的種群初始化效果分別如圖2所示。
圖2 傳統(tǒng)螢火蟲(chóng)算法的種群初始化效果圖
從圖2和圖3的初始化種群分布對(duì)比可以看出,采用混沌優(yōu)化策略的初始化種群,種群分布的均勻性要明顯優(yōu)于采用隨機(jī)策略的初始化種群。
圖3 基于混沌優(yōu)化策略的和群初始化效果圖
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)通常包含輸入層、隱含層和輸出層。輸入、輸出層節(jié)點(diǎn)數(shù)由訓(xùn)練樣本的輸入、輸出維數(shù)確定[12]。隱含層的節(jié)點(diǎn)數(shù)根據(jù)經(jīng)驗(yàn)公式選定。
各層之間的傳遞函數(shù)為Sigmiod函數(shù),隱含層第j個(gè)節(jié)點(diǎn)的輸出:
式中wij為輸入層第i個(gè)節(jié)點(diǎn)到隱含層第j個(gè)節(jié)點(diǎn)的連接權(quán)值;θj為隱含層第j個(gè)節(jié)點(diǎn)的閾值;pi為隱含層第i個(gè)輸入。將隱含層輸出hj進(jìn)一步向后傳遞,相應(yīng)得到輸出層第k個(gè)節(jié)點(diǎn)的輸出[13]:
式中:wˉjk為隱含層第j個(gè)節(jié)點(diǎn)和輸出層第k個(gè)節(jié)點(diǎn)之間的連接權(quán)值;θˉ為輸出層第k個(gè)節(jié)點(diǎn)的閾值[14]。
螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)訓(xùn)練時(shí),每個(gè)螢火蟲(chóng)個(gè)體xi代表神經(jīng)網(wǎng)絡(luò)各層的連接權(quán)值wij、wˉjk和閾值θj、θˉk,個(gè)體編碼采用實(shí)數(shù)矢量形式[15],則編碼長(zhǎng)度(即需要優(yōu)化的變量總數(shù))由各層節(jié)點(diǎn)數(shù)N,H和O決定。
訓(xùn)練時(shí),神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度由誤差RMSE來(lái)衡量:
式中:Q為訓(xùn)練樣本數(shù);為第i個(gè)訓(xùn)練樣本在輸出層第k個(gè)節(jié)點(diǎn)的期望輸出。
螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中,螢火蟲(chóng)每一個(gè)個(gè)體代表一個(gè)神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)的性能用訓(xùn)練誤差來(lái)表示,螢火蟲(chóng)個(gè)體的適應(yīng)度值可以直接取為該個(gè)體代表的網(wǎng)絡(luò)訓(xùn)練迭代終止時(shí)的誤差值[16]。
算法流程如圖4所示。
圖4 算法流程圖
本文在MSAR圖像數(shù)據(jù)庫(kù)上進(jìn)行實(shí)驗(yàn)。該圖像數(shù)據(jù)庫(kù)包含動(dòng)物、植物、人等多種圖像,是顯著性檢測(cè)的常用數(shù)據(jù)庫(kù)[17]。本文中的實(shí)驗(yàn)環(huán)境為Matlab r2014b,CNN網(wǎng)絡(luò)采用五層經(jīng)典結(jié)構(gòu)。
為了體現(xiàn)顯著性檢測(cè)效果,本文采用F-Measure來(lái)評(píng)價(jià)它能夠同時(shí)考慮到檢測(cè)的準(zhǔn)確率和完全率[18]。計(jì)算公式如下:
其中,P代表示檢測(cè)的準(zhǔn)確率;R表示檢測(cè)的完全率;α用來(lái)衡量F-Measure值是側(cè)重于檢測(cè)的準(zhǔn)確率還是完全率,本文取α為0.3,表示側(cè)重于檢測(cè)的準(zhǔn)確率[19]。
將MSAR圖像數(shù)據(jù)庫(kù)中的圖片分別在AC、FT、SF、SR四種經(jīng)典的顯著性檢測(cè)算法[20]上運(yùn)行,并與本文算法運(yùn)行結(jié)果、標(biāo)準(zhǔn)GT集對(duì)比,結(jié)果如圖5所示。
由圖6的實(shí)驗(yàn)數(shù)據(jù)結(jié)果可以看出本文算法的P,R,F(xiàn)-Measure值均高于其它四種算法,證明本文提出的顯著性檢測(cè)算法有一定的合理性和優(yōu)勢(shì)。
圖5 對(duì)比結(jié)果
圖6 實(shí)驗(yàn)數(shù)據(jù)結(jié)果
本文將混沌序列用于螢火蟲(chóng)算法的種群初始化,提高了螢火蟲(chóng)算法初始種群分布的均勻性。構(gòu)建了螢火蟲(chóng)算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,優(yōu)化了神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值,提高了預(yù)測(cè)性能和精度。該模型不依賴(lài)于目標(biāo)的形狀、環(huán)境和場(chǎng)景的變化,具有較好的魯棒性。利用卷積神經(jīng)網(wǎng)絡(luò)有效地提取顯著性特征,經(jīng)過(guò)特征融合進(jìn)行顯著性檢測(cè)。結(jié)果顯示,在主觀觀測(cè)和客觀計(jì)算結(jié)果上顯著性效果均有一定的提高,顯著性結(jié)果圖片在清晰度和準(zhǔn)確度上也有一定的提高。但對(duì)比方法和本文方法都停留在單目標(biāo)無(wú)法很好地處理多目標(biāo)顯著性的檢測(cè),后續(xù)將對(duì)多目標(biāo)的顯著性檢測(cè)進(jìn)行研究。