胥杏培,宋余慶,陸 虎
(江蘇大學(xué) 計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇 鎮(zhèn)江 212013)
近幾年來(lái),圖像分割作為計(jì)算機(jī)視覺(jué)領(lǐng)域中十分重要的研究領(lǐng)域,吸引了大量學(xué)者的興趣.圖像分割被廣泛應(yīng)用于圖像檢索,醫(yī)學(xué)圖像的處理,人臉識(shí)別,遙感圖像處理[1]等領(lǐng)域.圖像分割是對(duì)圖像的每個(gè)像素點(diǎn)進(jìn)行處理,劃分成若干個(gè)相似區(qū)域.但是在實(shí)際應(yīng)用中,我們所要求的是要求圖像分割能夠得到更好的分割的結(jié)果,在時(shí)間上,要求有更快的速度.雖然該領(lǐng)域已經(jīng)出現(xiàn)了很多好的算法,但想要開發(fā)出一種簡(jiǎn)單有效的圖像分割算法仍存在較大的困難和挑戰(zhàn).
尋找到一種好的特征對(duì)于提高分割的準(zhǔn)確性是非常重要的,大多數(shù)現(xiàn)有的特征都依賴人工標(biāo)定.例如HOG,SIFT,LBP,GLCM等特征.最近,用深度學(xué)習(xí)的方法自動(dòng)獲取特征在機(jī)器學(xué)習(xí)領(lǐng)域廣泛應(yīng)用.例如,在計(jì)算機(jī)視覺(jué)領(lǐng)域,深度學(xué)習(xí)算法從原始圖像去學(xué)習(xí)得到一個(gè)低層特征,例如邊緣檢測(cè)器,小波濾波器等,然后在這些低層次特征的基礎(chǔ)之上,通過(guò)非線性組合來(lái)獲得高層次的特征.常用的深度學(xué)習(xí)模型結(jié)構(gòu)包括自動(dòng)編碼器(Auto Encoder)[2],深信度網(wǎng)絡(luò)(Deep Belief Networks)[3],卷積神經(jīng)網(wǎng)絡(luò)( Convolutional Neural Networks)等.其中,卷積神經(jīng)網(wǎng)絡(luò)(CNN)[4-6]成功應(yīng)用于計(jì)算機(jī)視覺(jué)領(lǐng)域,歸結(jié)于它能夠很好的將圖像的低級(jí)特征通過(guò)非線性方式整合成高級(jí)特征[7].
在本文中,我們提出了一種新的自適應(yīng)圖像分割方法.為了解決以像素點(diǎn)為單位分割的龐大計(jì)算量,我們通過(guò)SLIC超像素算法對(duì)圖像預(yù)處理之后,將改進(jìn)的VGG-16模型作為特征提取器,提取單個(gè)超像素區(qū)域的深度學(xué)習(xí)特征.并且提取對(duì)應(yīng)超像素區(qū)域Lab顏色特征,構(gòu)建兩個(gè)相似度矩陣,通過(guò)線性組合構(gòu)建成一個(gè)相似度矩陣.用社團(tuán)劃分的思想在相似度矩陣的基礎(chǔ)上對(duì)圖像進(jìn)行分割,如圖1所示.為了得到合理的分割結(jié)果,本文采用譜聚類算法對(duì)圖像進(jìn)行聚類,并用模塊度Q[8,21]來(lái)選擇最佳的分割類別數(shù),因此省去了繁瑣的人工設(shè)定分割類別數(shù)的過(guò)程.
圖1 基于深度學(xué)習(xí)特征和社團(tuán)劃分的圖像分割方法
本章節(jié)我們主要回顧前人的相關(guān)工作.目前圖像分割方法主要是通過(guò)整合人工特征對(duì)圖像進(jìn)行分割.S.J.Li等人提出了一種基于超像素的HOS算法[14],該算法通過(guò)提取超像素區(qū)域的顏色特征和紋理特征,但該算法在構(gòu)建相似度矩陣的過(guò)程中,迭代的時(shí)間較長(zhǎng),從而使得算法的時(shí)間復(fù)雜度較高.Ester.M提出了超像素和密度函數(shù),將高密度的區(qū)域劃分為簇,并且在數(shù)據(jù)空間中進(jìn)行聚類的DBCAN算法[10],該算法是基于密度函數(shù)定義,相對(duì)抗噪音能相對(duì)處理任意形狀的簇.Ncut算法[11]是一種經(jīng)典的圖像分割方法.Pizzuti提出了利用遺傳算法和Ncut算法相結(jié)合的Gencut算法[12].L.Zelnik等人提出了一種基于自適應(yīng)譜聚類Self-tuning算法[13]. 由于算法需要將圖像的維數(shù)設(shè)定為固定大小,因此該算法只適用于維度較小的圖像.
針對(duì)以像素點(diǎn)為單位的龐大的計(jì)算以及人工提取特征的不確定性,我們通過(guò)將深度學(xué)習(xí)和社團(tuán)劃分相結(jié)合的方法,來(lái)對(duì)圖像進(jìn)行分割.首先通過(guò)SLIC超像素算法對(duì)圖像進(jìn)行預(yù)處理,將圖像由像素級(jí)劃分為區(qū)域級(jí).將圖像劃分為若干超像素區(qū)域,然后再通過(guò)微調(diào)VGG-16模型,將該模型作為本文深度學(xué)習(xí)特征提取器,提取單個(gè)超像素區(qū)域的深度學(xué)習(xí)特征.并且提取單個(gè)超像素區(qū)域的Lab顏色特征,通過(guò)線性疊加,構(gòu)建相似度矩陣.將單個(gè)超像素點(diǎn)看成社團(tuán)中的節(jié)點(diǎn),通過(guò)社團(tuán)劃分方法對(duì)圖像進(jìn)行自適應(yīng)分割.大量的實(shí)驗(yàn)結(jié)果驗(yàn)證了本文算法的有效性.
超像素算法已經(jīng)被廣泛應(yīng)用于計(jì)算機(jī)視覺(jué)的各個(gè)領(lǐng)域中.超像素可以有效的捕捉圖像的結(jié)構(gòu)化信息,本文首先使用簡(jiǎn)單線性迭代聚類(SLIC)[15]方法對(duì)圖像進(jìn)行過(guò)分割,得到一定數(shù)量的超像素.本文設(shè)定的超像素的個(gè)數(shù)為200.其次,本文采用兩種特征描述符來(lái)表示一幅圖像,分別為L(zhǎng)ab顏色特征以及深度學(xué)習(xí)特征(改進(jìn)VGG-16模型學(xué)習(xí)的特征[16]).
本文的低級(jí)特征采用Lab顏色特征.因?yàn)閷?duì)于彩色圖像而言,顏色是最直接和最重要的特征之一.為了降低計(jì)算復(fù)雜度,在計(jì)算相似度矩陣之前先計(jì)算超像素的鄰接矩陣.超像素i,j對(duì)應(yīng)鄰接矩陣為:
(1)
我們定義單個(gè)超像素區(qū)域的Lab顏色特征的相似度矩陣為:
(2)
本文使用改進(jìn)的VGG-16模型提取深度學(xué)習(xí)的特征,該模型是在Caffe框架下,通過(guò)訓(xùn)練ImageNet數(shù)據(jù)集得到.本文通過(guò)微調(diào)VGG-16模型,將該模型的全連接層替換成全卷積.并且將模型的第15層FC2層的特征維度由4096維降成1024維.大量的實(shí)驗(yàn)表明,模型收斂更快,能夠得到更好的高級(jí)特征.
由于我們提取的超像素區(qū)域可能是一個(gè)不規(guī)則的區(qū)域,而該模型的輸入必須是一個(gè)規(guī)則區(qū)域,因此我們將單個(gè)超像素區(qū)域放入到一個(gè)矩形框內(nèi).輸入圖像,并在該模型的全連接層FC2層提取圖像的特征,得到1024維的深度學(xué)習(xí)特征.于是得到的不同超像素區(qū)域的深度學(xué)習(xí)特征維度為200×1024.同時(shí)我們?cè)诔袼剜徑泳仃嚨幕A(chǔ)上構(gòu)建.然后計(jì)算歐式距離來(lái)構(gòu)建超像素鄰接矩陣的相似度矩陣
(3)
其中n表示超像素的個(gè)數(shù).i,j∈[1,n] ,并且xi,xj,表示單個(gè)超像素的深度學(xué)習(xí)特征,維度為1×1024.
綜合上述的改進(jìn)VGG-16模型提取深度學(xué)習(xí)特征得到相似度矩陣W(deep)(維度為200×200),和Lab顏色特征的相似度矩陣W(color)(維度為200×200).我們通過(guò)線性疊加的方式,用平衡參數(shù)a來(lái)調(diào)整顏色特征和深度學(xué)習(xí)特征所占的比重,得到新的混合特征W(mix)定義為:
W(mix)=a×W(color)+(1-a)×W(deep)
(4)
隨著復(fù)雜網(wǎng)絡(luò)理論的發(fā)展,基于圖論的圖像分割技術(shù)已經(jīng)有了很大的發(fā)展.我們將SLIC超像素算法得到的單個(gè)超像素點(diǎn)看成是社團(tuán)中的節(jié)點(diǎn).通過(guò)計(jì)算節(jié)點(diǎn)之間的相似度,對(duì)社團(tuán)進(jìn)行聚類.將圖像的分割問(wèn)題歸結(jié)為社團(tuán)劃分問(wèn)題.
為了有效評(píng)價(jià)社團(tuán)劃分的合理性,Newman和Girvan[19,20]提出了一個(gè)用以評(píng)價(jià)網(wǎng)絡(luò)分解滿意度的指標(biāo)的質(zhì)量函數(shù)或者稱為模塊度Q[21],應(yīng)用于加權(quán)網(wǎng)絡(luò)分析.適用于加權(quán)網(wǎng)絡(luò)和加權(quán)鄰接矩陣,模塊度Q被定義為:
(5)
BSDS500數(shù)據(jù)集是由伯克利大學(xué)提供的自然圖像數(shù)據(jù)集,該數(shù)據(jù)集包含500張自然圖像,并且每張圖像包含對(duì)應(yīng)的ground-truth.且人工標(biāo)定的圖像超過(guò)95%的類別數(shù)都小于20,因此在本文中我們?cè)O(shè)定譜聚類算法n的輸入為[2,20],分別計(jì)算19個(gè)聚類結(jié)果,然后通過(guò)計(jì)算模塊度Q的值,來(lái)選取最佳的聚類結(jié)果.
本文算法如下:基于深度特征學(xué)習(xí)的圖像分割算法
輸入:圖像
輸出:最終的分割結(jié)果
Step1.通過(guò)SLIC過(guò)分割獲得超像素
Step2.提取超像素顏色特征以及深度學(xué)習(xí)特征,構(gòu)建兩個(gè)相似度矩陣W(color)和W(deep).
Step3.通過(guò)參數(shù)a,構(gòu)建相似度矩陣w(mix)
Step4.對(duì)獲得的相似度矩陣w(mix),通過(guò)譜聚類,得到個(gè)聚類的結(jié)果
Step5.通過(guò)模塊度Q計(jì)算每個(gè)聚類對(duì)應(yīng)的Q值,選取最大的Q值對(duì)應(yīng)的聚類
Step6.得出聚類結(jié)果,實(shí)現(xiàn)圖像分割
在本章節(jié)中,為了驗(yàn)證算法的有效性,我們?cè)贐SDS500數(shù)據(jù)集上進(jìn)行了測(cè)試,并將實(shí)驗(yàn)的數(shù)據(jù)結(jié)果與CTM算法[9],Gencut算法[12],DBSCAN算法[10],HOS算法[14],Ncut算法[11],self-tuning算法[13]進(jìn)行了比較.算法的實(shí)驗(yàn)環(huán)境為:CPU:i-6700k,顯卡:GTX1080,內(nèi)存:32G,操作系統(tǒng):Ubuntu 14.04.
為得到定量分析結(jié)果,我們通過(guò)兩種指標(biāo)來(lái)對(duì)分割進(jìn)行評(píng)價(jià)度量,(1)概率蘭德指數(shù)(PRI)[22],(2)信息變化(VOI)[23].
概率蘭德指數(shù)(Probabilistic Rand Index,PRI)是一個(gè)經(jīng)典的評(píng)價(jià)聚類的標(biāo)準(zhǔn).PRI需要給定實(shí)際類別信息C,假設(shè)K是聚類結(jié)果,a表示在C與K中都是同類別的元素對(duì)數(shù),b表示在C與K中都是不同類別的元素對(duì)數(shù),則概率蘭德指數(shù)為:
(6)
信息變換(Variation of Information,VOI)被定義為:
VOI(c,c′)=H(c)+H(c′)-2I(c,c′)
(7)
其中H(c)和H(c′)是c和c′分割的熵,并且I(c,c′)是c和c′分割的互信息,這一指標(biāo)的范圍是[0,+∞],VOI的值越小越好.
如圖2所示.我們?cè)贐SDS500數(shù)據(jù)集上測(cè)試了本文的算法.根據(jù)大量的實(shí)驗(yàn)結(jié)果顯示,當(dāng)a=0.3時(shí)PRI和VOI的指標(biāo)達(dá)到最佳.本文針對(duì)不同算法,選取合適的參數(shù),整個(gè)數(shù)據(jù)集求PRI和VOI的均值得到如圖2所示的直方圖.
圖2 本文算法與其它流行算法的PRI和VOI值的比較
如圖3 所示,本文算法與與CTM算法[9],Gencut算法[12],DBSCAN算法[10],HOS算法[14],Ncut算法[11],Self-tuning算法[13]分割結(jié)果的比較,由于BSDS500數(shù)據(jù)庫(kù)中的圖像大小為321×481或者481×321,然而Ncut算法,和Self-tuning算法不能直接處理這樣大的圖像,因此我們先將圖像維度縮小為160×160,然后對(duì)圖像進(jìn)行分割.本文算法,CTM算法,Gencut算法,DBSCAN算法,HOS算法均可以在原圖上進(jìn)行分割.試驗(yàn)中算法均需要設(shè)置參數(shù),對(duì)于CTM算法,我們按照對(duì)應(yīng)文獻(xiàn)中的參數(shù)選擇方法,并在一定范圍內(nèi)變化,選擇最優(yōu)的結(jié)果.DBSCAN算法需要預(yù)先定義超像素的個(gè)數(shù)k.
為了方便比較,我們?cè)O(shè)定了和本文算法相同的超像素的個(gè)數(shù).Gencut算法需要預(yù)先設(shè)定9個(gè)參數(shù),該算法通過(guò)遺傳算法和Ncut算法的結(jié)合進(jìn)行分割,CTM算法是在超像素的基礎(chǔ)之上,通過(guò)對(duì)紋理特征的擬合進(jìn)行分割,DBSCAN是通過(guò)超像素預(yù)處理之后,根據(jù)密度函數(shù)進(jìn)行分割.HOS算法通過(guò)超像素對(duì)圖像進(jìn)行預(yù)處理之后,提取圖像的HOG紋理特征和Lab顏色特征對(duì)圖像進(jìn)行分割,Ncut算法和Self-tuning算法需要預(yù)定義像素點(diǎn)k領(lǐng)域,試驗(yàn)中我們?cè)O(shè)置k=8,本文算法通過(guò)超像素算法對(duì)圖像進(jìn)行預(yù)處理,引入深度學(xué)習(xí)的思想,提取圖像的深度學(xué)習(xí)特征,并且結(jié)合傳統(tǒng)的顏色特征,構(gòu)建相似度矩陣,通過(guò)譜聚類算法對(duì)圖像進(jìn)行分割,通過(guò)下圖可以看出我們的算法在PRI和VOI指數(shù)上均取得較好的實(shí)驗(yàn)結(jié)果.
表1 針對(duì)a的不同取值PRI和VOI的值
如表 1所示,我們通過(guò)平衡參數(shù)a來(lái)調(diào)整深度學(xué)習(xí)的特征和Lab顏色特征之間的權(quán)重.表1的實(shí)驗(yàn)結(jié)果是在BSDS500數(shù)據(jù)集測(cè)試,并對(duì)實(shí)驗(yàn)結(jié)果求均值.本文設(shè)定a的取值范圍屬于[0,1]之間,當(dāng)a=0.3時(shí),本文算法的PRI值最大,VOI值最小.
如圖4所示,本文算法與其他6中算法實(shí)驗(yàn)對(duì)比圖.本文算法相較于其他幾種算法,對(duì)于山的輪廓部分能夠很好的分割出來(lái).并且對(duì)于整個(gè)山體的細(xì)節(jié)部分可以很好的分割出來(lái).由于本文算法不僅注重底層的顏色特征的提取,并且能夠把握深度學(xué)習(xí)提取的高層特征.將兩者相結(jié)合構(gòu)建新的相似度矩陣,并且通過(guò)一個(gè)線性參數(shù)來(lái)調(diào)整兩者的比重.再通過(guò)社團(tuán)劃分的思想對(duì)圖像進(jìn)行分割.
圖4 本文算法和其他流行方法的比較,依次為原圖,CTM,DBSCAN,HOS,Gencut,CTM,Self-tuning,以及本文算法
如圖 5所示,我們的算法在BSDS500上進(jìn)行了測(cè)試,圖 5的上半部分是原圖,下半部分是分割后的結(jié)果圖.我們通過(guò)選取BSDS500數(shù)據(jù)集中自然圖像的風(fēng)景,物體,動(dòng)物,人等具有代表性的圖像.來(lái)證實(shí)我們算法的有效性.從圖中我們可以看出,我們的算法能夠很好的處理簡(jiǎn)單以及復(fù)雜背景的自然圖像,并且能夠有效的避免過(guò)分割現(xiàn)象.
圖5 算法在BSDS500數(shù)據(jù)集上測(cè)試的結(jié)果,上部分原圖,下部分為分割圖
在本文中,我們提出了一種基于深度學(xué)習(xí)特征和社團(tuán)劃分的彩色圖像分割方法.首先對(duì)圖像進(jìn)行超像素預(yù)處理之后,提取超像素區(qū)域的顏色特征以及深度學(xué)習(xí)特征,構(gòu)建相似度矩陣.在相似度矩陣的基礎(chǔ)上,利用譜聚類算法進(jìn)行聚類.選取最大模塊度Q值來(lái)判斷實(shí)驗(yàn)最佳聚類效果.大量的實(shí)驗(yàn)結(jié)果驗(yàn)證了本文提出的算法的有效性.此外,我們的算法在公共數(shù)據(jù)集BSDS500上進(jìn)行了測(cè)試.并與現(xiàn)有的幾種著名圖像分割方法進(jìn)行比較.在不同圖像上的分割實(shí)驗(yàn)結(jié)果表明,我們提出的圖像分割算法優(yōu)于其它幾種方法.該算法能夠有效的處理復(fù)雜背景的圖像,并減少過(guò)分割現(xiàn)象.