宋小鵬,李國熊,張 權(quán),桂志國
(中北大學(xué)生物醫(yī)學(xué)成像與影像大數(shù)據(jù)山西省重點實驗室,太原 030051)
圖像分割就是根據(jù)灰度、紋理或者形狀等圖像特征,把圖像分成若干個特定的、具有同質(zhì)性區(qū)域的過程[1],在目標探測與追蹤、模式識別、機器視覺以及軍事圖像處理等領(lǐng)域有著廣泛的應(yīng)用,是圖像處理領(lǐng)域重要的研究課題。模糊聚類算法作為一種無監(jiān)督圖像分割算法,通過模糊集合理論對數(shù)字圖像進行有效地分割,已經(jīng)在圖像分割領(lǐng)域得到了廣泛地應(yīng)用。
作為一種軟聚類算法,模糊C 均值聚類算法(fuzzy C-means,F(xiàn)CM)[2-3]引入隸屬度,隸屬度表示單個像素屬于某個類的可能性大小。未被噪聲污染的圖像能較好地被FCM 算法分割,但對噪聲圖像的分割效果不理想,這是由于數(shù)字圖像本身具有復(fù)雜性和多樣性的特點,標準FCM 算法對在目標函數(shù)最小化的原則下,沒有考慮像素點的空間鄰域信息,僅將圖像的灰度信息作為分類依據(jù),抗噪性能較差。針對標準FCM 算法對噪聲敏感的問題,有大量的學(xué)者進行了相關(guān)研究,并從不同的角度提出了很多有效的改進算法[4-8]。其中,Ahmed 等人最早在目標函數(shù)中添加了空間鄰域的約束項,提出了FCM_S 算法[4],Chen 等人通過評估鄰域像素對中心像素的影響,提出FCM_S1&S2 算法[5],提高了運算速度;KFCM[6]算法用核函數(shù)替代了FCM 中的歐式距離作為測度,將像素灰度變換到新的特征空間進行處理;Szilagyi[7]等提出一種基于圖像灰度級的快速FCM 算法(En-FCM),通過計算像素與局部鄰域像素的線性加權(quán),提高了分割速度。Cai 引入了同時包含鄰域空間距離以及鄰域灰度差的相似度量方法,提出FGFCM算法[8];Zheng 提出一種結(jié)合廣義平均和多層聚類的GHFCM 算法[9],該算法具有較好的拓展性。
上述算法均利用了像素鄰域信息,改進了FCM目標函數(shù)或者對算法迭代過程中隸屬度進行處理,從而達到抑制噪聲的目的。這些算法中,參數(shù)的選擇是一個至關(guān)重要的環(huán)節(jié),參數(shù)的大小直接關(guān)系到分割效果的優(yōu)劣,針對不同的圖像或者同一圖像含有不同水平的噪聲,均需通過調(diào)整參數(shù),使得分割效果達到更好。為解決上述問題,Stelios 等提出了一種不受參數(shù)影響的改進FCM 算法-FLICM[10]。在FLICM 的目標函數(shù)中包含一項模糊因子,用于替代其他改進算法中含有參數(shù)的添加項,提高了算法的穩(wěn)健性。在FLICM 算法中,噪聲圖像像素間的約束關(guān)系不準確[11],鄰域像素對中心像素的抑制作用僅取決于像素之間的歐式距離,這使得在對含有較多細節(jié)和邊緣的圖像進行分割時,造成圖像細節(jié)的丟失和邊緣模糊,Gong 等在FLICM 基礎(chǔ)上,提出一種折衷模糊因子的改進算法[12],采用核空間距離替代了傳統(tǒng)的歐式距離。為了進一步提升FLICM 的抗噪性能和邊緣細節(jié)保護能力。Zhang 等將圖像的非局部信息引入到FLICM 的模糊因子中,提出NLFCM[13]算法,將像素之間的相關(guān)性引入到模糊因子中,像素之間的抑制程度由其相關(guān)性決定,而非空間距離,使得周圍像素對中心像素的抑制程度更加合理。NLFCM 解決了由于歐式距離作為模糊因子權(quán)重帶來的邊緣模糊和細節(jié)丟失問題,在對噪聲圖像分割中保持了良好的細節(jié)效果。為了進一步提升算法的抗噪性能和邊緣細節(jié)保持能力,本文提出一種同時結(jié)合局部與非局部信息的改進FLICM 算法-LNLFCM(Local and Non-local FCM)。本文改進算法中的模糊因子同時包含局部項和非局部項,并根據(jù)像素點的灰度和結(jié)構(gòu)信息,自適應(yīng)地計算局部項和非局部項的權(quán)重,使周圍像素對中心像素的抑制程度更加合理,從而達到在降噪的同時,對邊緣和細節(jié)進行較為合理分割。
其中,ε 為收斂閾值。
在目標函數(shù)最小化的原則下,標準FCM 算法在對圖像分割時,將圖像的灰度信息作為分類的唯一依據(jù),所有特征向量之間互相獨立,鄰域信息沒有得到利用,忽略了圖像中像素與像素之間的關(guān)系,導(dǎo)致了算法對噪聲的敏感度高,圖像中的噪聲點容易被錯誤分類。
在圖像分割中,降噪和邊緣細節(jié)保護是難點。EnFCM、FGFCM 等算法均需要圖像的先驗信息來確定算法中的具體參數(shù),使分割效果在降噪和保護細節(jié)上相對平衡。為此,Stelios 提出了FLICM 算法[9],F(xiàn)LICM 算法引入了不需要依賴圖像先驗信息的模糊因子Gki,Gki作為其目標函數(shù)的懲罰項,控制著算法在降噪和細節(jié)保護上的平衡。FLICM 算法中Gki定義如下:
其中,Ni為點i 鄰域,dij為中心像素點i 與鄰域內(nèi)某像素點j 之間的歐式距離。在迭代過程中,由于模糊因子的作用,鄰域內(nèi)相關(guān)像素點隸屬度的收斂值很接近,從而使圖像噪聲得到抑制。下面給出FLICM的目標函數(shù):
在式(2)的約束條件下,通過迭代,使目標函數(shù)最小化,迭代過程中,隸屬度和聚類中心更新如下:
在FLICM 算法目標函數(shù)的模糊因子中,鄰域像素對中心像素抑制程度的權(quán)重僅僅依賴于像素之間的歐式距離,忽略了像素本身的結(jié)構(gòu)信息,鄰域內(nèi)像素對中心像素的抑制作用是強制性的。圖像邊緣處的像素點在鄰域像素的作用下,其隸屬度會發(fā)生較大的變化,最終導(dǎo)致錯誤分割。
圖1 FLICM 對合成圖像分割
圖1(a)為添加了高斯噪聲(δ=20)的人工合成圖像,其大小為256*256。采用FLICM 算法對其進行分割,圖1(b)為分割結(jié)果,(c)、(d)分別為(a)、(b)局部放大圖,可以看出,在類間交界處,有大量的像素被錯分。
Zhang 等[13]將非局部均值濾波[14]的思想引入到了FLICM 的模糊因子中,提出了NLFCM 算法。NLFCM 充分利用非局部均值濾波中片相似性的特點,構(gòu)造了一種像素相關(guān)性的計算方法,使得非局部鄰域內(nèi)像素點對中心像素的影響程度由像素的結(jié)構(gòu)信息決定,而非傳統(tǒng)歐式距離。其模糊因子為:
其中,Wir為以i 點為中心的非局部搜索窗,其半徑為r。S(i,j)表示像素相關(guān)性:
Ni和Nj分別為以點i 和點j 為中心的圖像塊(大小一般取3*3)。其中,
上式中,Zi定義如下:
由于在聚類迭代中,非局部均值計算耗時長,時間復(fù)雜度大,所以算法的非局部搜索窗不宜過大。若搜索窗較小,非局部均值思想的優(yōu)勢沒有完全得到發(fā)揮,特別是當(dāng)圖像噪聲過大,容易造成噪聲點錯分聚集的現(xiàn)象。
為了解決上述算法中的問題,本文提出一種同時結(jié)合了圖像局部信息和非局部信息的模糊因子Gki,相應(yīng)算法為LNLFCM 算法。Gki定義如下:
其中,GkiL表示模糊因子局部項,同F(xiàn)LICM 中Gki的相同,GkiL則表示模糊因子的非局部項;為非局部項的相對權(quán)重系數(shù),相應(yīng)的,1-則為局部模糊因子的權(quán)重系數(shù)。模糊因子局部求和項是經(jīng)過歐式距離加權(quán)計算得出,而在非局部項中,各個加和項是經(jīng)過非局部歸一化得出,這導(dǎo)致了模糊因子局部項對中心像素的影響作用要大于非局部項,因此,本文采用平衡系數(shù)θ 對非局部項進行放大,使局部項和非局部到達平衡。
Ni為局部項鄰域大小。下面給出GkiNL的定義:
其中,wij:
其中,α 為高斯加權(quán)歐式距離的標準偏差(本文取1.5)。在非局部均值濾波算法中,h 的大小決定了濾波的結(jié)果[15],h 越大,則平滑的程度越大,越適用于噪聲較大的圖像;當(dāng)噪聲較小,則應(yīng)采用較小的h值。本文提出h 自適應(yīng)取值方法:
Dj為像素j 的局部標準方差(窗口大小3*3),N為圖像像素總和。待分割圖像噪聲越大,則h 取值越大,搜索窗內(nèi)像素對中心像素的影響越大,各個像素點隸屬度越接近,越可能被劃分為同質(zhì)區(qū)域,使去噪能力增強;反之亦然。
文獻[16]中提出一種對相似度擇優(yōu)取平均的方法,設(shè)xj為當(dāng)前處理像素點,非局部搜索窗Ωj半徑為r,由式(16)、式(17)計算出xj與Ωj中像素歸一化后的相關(guān)性系數(shù)wij,對wij進行降序排序,定義如下:
定義ws為wij中第s 大的值。
LNLFCM 算法具體算法步驟如下:
1)初始化聚類數(shù)目c,模糊指數(shù)m,收斂參數(shù)ε,設(shè)定局部鄰域半徑l 和非局部搜索窗鄰域半徑r;
2)在滿足式(2)的條件下,對隸屬度矩陣U 進行隨機初始化,并由式(9)初始化聚類中心;
3)由式(15)計算出平衡系數(shù)θ,并根據(jù)式(17)和式(20)分別計算出每個像素wij和;
4)根據(jù)式(8)、式(14)更新隸屬度U;
5)由式(9)更新聚類中心V;
本文算法分別對疊加了噪聲的合成圖像、軍用戰(zhàn)斗機圖像進行分割實驗。對實驗選取圖像添加不同種類、不同程度的噪聲,并將本文算法分割的結(jié)果與FLICM 以及NLFCM 的分割效果進行對比。實驗中,模糊加權(quán)指數(shù)(m)為2,收斂閾值為0.02,局部鄰域半徑l 為1,非局部搜索窗半徑為r 為3。
為了評估各種算法分割效果,本文引入分割準確率SA 來分析算法的分割效果[17],SA 表示分割結(jié)果中,得到正確劃分的像素點與圖像所有像素總和之比,定義如下:
其中,Ak表示分割結(jié)果中第k 類的像素總和,Ck代表原圖像中第k 類像素總和的理想值,SA 越高,正確分割率越大,分割效果越好。
圖2(a)為包含了4 類的合成圖像,其大小為256*256,圖2(b)為高斯噪聲圖(δ=20),分別用FLICM、NLFCM 以及本文算法進行噪聲圖像分割,分割結(jié)果越接近圖2(a),錯分率越低。從分割結(jié)果來看,F(xiàn)LICM 算法在分割過程中對大部分的噪聲進行了抑制,但由于其模糊因子權(quán)重只依賴于歐式距離導(dǎo)致有大量在類間交界的像素點被誤分,造成了視覺模糊;NLFCM 在邊緣處的分割效果較好,輪廓明晰,但其在平坦區(qū)仍有部分噪聲點沒有得到正確分類,而本文算法不僅對噪聲有著較好的抑制,其在邊緣處正確分割率也較高。
圖2 對含高斯噪聲合成圖像分割結(jié)果
對圖2(a)添加不同水平的高斯噪聲,下頁表1為各個算法對噪聲圖的分割結(jié)果SA 統(tǒng)計。數(shù)據(jù)顯示,本文算法有著較好的分割性能。
表1 各算法對合成圖像分割準確率(SA)對比
本文對軍用某戰(zhàn)斗機圖像進行分割實驗,目的是將圖中所示目標(戰(zhàn)斗機)從背景(云層)中分割出來。為了更全面地對算法評判,本文引入劃分系數(shù)(Vpc)和劃分熵(Vpe)[18],劃分系數(shù)和劃分熵被廣泛應(yīng)用于評價聚類效果,Vpc和Vpe定義如下:
劃分系數(shù)Vpc越大,劃分熵Vpe越小,則模糊聚類分割效果越好。
對原始待分割圖像和噪聲圖像分別進行分割實驗,其中噪聲圖像的噪聲類型為高斯噪聲,均值為0,δ 為10。設(shè)定分割類數(shù)為2,分別是背景云層和目標前景。圖3(a)為原始待分割圖像,圖3(b~d)分別為FLICM、NLFCM 以及本文算法LNLFCM 算法的分割結(jié)果。另外,圖4(a)給出了噪聲圖,圖4(b~d)分別給出了FLICM、NLFCM 以及本文算法LNLFCM 對噪聲圖的分割結(jié)果。
圖3 對原始軍用戰(zhàn)斗機圖像分割結(jié)果
圖4 對噪聲軍用戰(zhàn)斗機圖像分割結(jié)果
觀察圖3,對比分割結(jié)果,發(fā)現(xiàn)前兩種算法均有明顯錯分(飛機機頭左下的一塊背景區(qū)),而本文算法表現(xiàn)較好,無明顯錯分。所以,在對原始圖像進行分割時,本文算法有明顯優(yōu)勢。另外,觀察圖4 可知,在存在較強噪聲的情況下,F(xiàn)LICM 分割結(jié)果細節(jié)信息丟失嚴重(例如螺旋槳部分),且仍有明顯錯分;在3 種算法中,NLFCM 對噪聲抑制的效果最差;從圖4(d)可以看出,本文算法既對噪聲抑制較好,又能保持邊緣信息,視覺效果最佳。
分別對含有不同水平噪聲的圖像進行分割實驗,表2 給出了實驗的Vpc和Vpe。可以看出,對于不同水平的含噪軍事戰(zhàn)斗機圖像,從Vpc和Vpe的數(shù)據(jù)統(tǒng)計分析,本文算法有著更好的模糊劃分效果。
表2 各算法對軍事圖像分割Vpc 和Vpe 對比
本文針對FLICM 算法對邊緣細節(jié)保護能力不足的問題,提出了一種改進的FLICM 圖像分割算法。通過引入一種結(jié)合了局部信息與非局部信息的模糊因子,有效解決了FLICM 算法中模糊因子權(quán)重僅由傳統(tǒng)歐式距離決定帶來的邊緣模糊、細節(jié)丟失的問題。對合成圖像以及軍用戰(zhàn)斗機圖像做分割實驗,并與FLICM 和NLFCM 算法對比,結(jié)果證明,本文算法在保持良好的抗噪性能的基礎(chǔ)上,不僅有效地提升了分割準確率,而且有著更好的模糊劃分效果。