朱占龍,馬艷玲,董建彬,鄭一博
(1.河北地質(zhì)大學(xué) 信息工程學(xué)院,河北 石家莊 050031;2.河北省光電信息與地球探測技術(shù)重點(diǎn)實驗室,河北石家莊 050031;3.河北省智能傳感物聯(lián)技術(shù)工程技術(shù)研究中心,河北 石家莊 050031)
圖像分割[1]的目的是通過某種方法把圖像劃分為幾塊區(qū)域以進(jìn)行后續(xù)的目標(biāo)識別、目標(biāo)測量等工作,是圖像預(yù)處理的重要內(nèi)容。模糊C 均值算法(fuzzy C-means,FCM)是一種有效的無監(jiān)督分類方法且已在遙感[2]、醫(yī)學(xué)[3]、工件[4]等方面被廣泛地應(yīng)用和研究。
由于圖像數(shù)據(jù)本身擁有特定的結(jié)構(gòu)與性質(zhì)導(dǎo)致FCM 算法分割時未考慮鄰域信息而對噪聲敏感,于是很多考慮鄰域信息的改進(jìn)版本被提出[5-7]。這一類改進(jìn)本質(zhì)在于將鄰域信息融入至FCM 的隸屬度和聚類中心表達(dá)式中,使得圖像在進(jìn)行去噪(濾波)的同時完成圖像像素的劃分[8]。這類算法需要遍歷像素,其時間復(fù)雜度隨圖像分辨率的提升而增大。誠然,也有加快迭代速度的改進(jìn)算法,如在迭代中對隸屬度進(jìn)行獎懲[9],或者迭代中修改像素至聚類中心的相對距離[10]等方法,但仍不能從根本上解決隨圖像分辨率提升導(dǎo)致的時間復(fù)雜度迅速增加問題。考慮到圖像像素只有256 個灰度級,利用灰度級進(jìn)行模糊聚類可有效減小時間復(fù)雜度。遵循這一思路,研究者提出基于灰度級的FCM 算法[11-13],這類算法需首先對圖像進(jìn)行去噪再進(jìn)行圖像分割,以免算法受噪聲干擾。另外,該類算法的去噪過程可以預(yù)先處理,進(jìn)一步降低分割的時間成本。
無損檢測圖像(non-destructive testing,NDT)通過渦流檢測、紅外檢測、超聲檢測等方法對工件材料進(jìn)行探傷或尺寸測量而得[14]。由于工況條件復(fù)雜,圖像清晰度較差,而且,圖像中待測量目標(biāo)一般占據(jù)圖像很小的面積,導(dǎo)致目標(biāo)與背景的面積差異很大,即呈現(xiàn)出類間差異較大的特點(diǎn)[15]。這種特征的圖像利用基于灰度級的FCM 算法進(jìn)行分割時經(jīng)常得不到期望的目標(biāo),原因是這類方法趨于均分所有像素,導(dǎo)致部分背景區(qū)域劃分至目標(biāo)區(qū)域。文獻(xiàn)[16-17]對這種情形進(jìn)行了探討,但未有嚴(yán)格的理論分析。
針對無損檢測圖像具有類間差異大的特點(diǎn),希望減小較大類(背景)對目標(biāo)函數(shù)的貢獻(xiàn)以改善“趨于均分所有像素”的缺點(diǎn),提出與類大小反向相關(guān)的“類貢獻(xiàn)抑制因子”表達(dá)式并將該因子引入目標(biāo)函數(shù)后再進(jìn)行隸屬度和聚類中心的理論推導(dǎo),后續(xù)的無損檢測圖像分割測試驗證了這一改進(jìn)的有效性。
設(shè)圖像像素集X={x1,x2,…,xn},Nj為xj的鄰域窗口。陸海青等提出了一種有效的圖像去噪方法[18],首先計算局部灰度相似性測度Cj:

式中:NR表示Nj的勢;r為Nj窗口像素的索引號。該表達(dá)式反映了局部鄰域像素灰度分布的均勻程度。

對于Nj,鄰域像素的權(quán)重用如下形式表示:


基于灰度級FCM 算法的目標(biāo)函數(shù)如下[12]:

式中:vi(i=1,2,…,c)為聚類中心;N表示圖像總像素數(shù);γl表示灰度級的像素數(shù);m是模糊指數(shù);uil表示灰度級l屬于第i類的隸屬度;ζl和γl分別表示去噪(濾波)后圖像的灰度級和相應(yīng)的像素數(shù)。最小化式(5),可得

基于灰度級FCM 算法的迭代步驟見文獻(xiàn)[11-12]。
當(dāng)圖像類間差異較大時,由于較大類對目標(biāo)函數(shù)的貢獻(xiàn)較大導(dǎo)致較小類的聚類中心更容易受到較大類的作用,即使得較小類的聚類中心向較大類偏移,進(jìn)而導(dǎo)致分割效果較差。因此,需要針對這種狀況進(jìn)行調(diào)整,設(shè)計了類貢獻(xiàn)抑制因子(restrain factor of cluster contribution,RFC)表達(dá)式減弱較大類對目標(biāo)函數(shù)作用,增大較小類作用,表達(dá)式為

式中:RFCi為第i類貢獻(xiàn)抑制因子;b為貢獻(xiàn)指數(shù)。顯然地,表示灰度級s的像素對應(yīng)的第i類的抑制值,其中b值越小,抑制作用越強(qiáng)。如果uis>ups(p=1,2,…,c;i≠p),那么該灰度級對應(yīng)的像素屬于第i類,產(chǎn)生的抑制值較小,否則,抑制值較大。當(dāng)絕大多數(shù)(灰度級)像素屬于第i類時,有

由式(9)可得,RFCi的值與類大小反向相關(guān),能夠調(diào)整類大小對目標(biāo)函數(shù)的影響。
將式(9)融入式(5)所示的目標(biāo)函數(shù),有

采用拉格朗日乘子法最小化式(10),構(gòu)造如下拉格朗日輔助函數(shù):

其中,式(15)和式(14)中的k表示第k類的索引號,以求取分母表達(dá)式的累加和。
則式(12)和式(15)為新的聚類中心和隸屬度表達(dá)式。為了簡單起見,后續(xù)將本文所提的算法簡稱為FCMRFC 算法。
所提算法的執(zhí)行流程描述如下:
輸入模糊指數(shù)m,聚類中心個數(shù)c,貢獻(xiàn)指數(shù)b,最大迭代次數(shù)T,終止條件ε;
輸出由最終的隸屬度得到分割結(jié)果。
1)利用式(4)得到去噪后的圖像
2)利用去噪后的圖像得到灰度級ζl和相應(yīng)的像素數(shù)γl;
3)隨機(jī)初始化聚類中心V(0);
4) Fort=1:Tdo
5)利用V(t?1)由式(6)計算隸屬度U(t);
6)將類貢獻(xiàn)抑制因子參與隸屬度更新,如式(15)所示,得到更新后的U(t);
7)利用式(2)更新V(t);
8) If ||U(t)?U(t?1)||<ε或q>T,then 執(zhí)行步驟5);
9) End if
10) End for
與本文算法(FCMRFC)進(jìn)行對比的算法皆為基于灰度級的模糊C 均值算法,包括基于自適應(yīng)濾波的廣義模糊C 均值算法[5](fast generalized FCM based on adaptive filtering,F(xiàn)FCMAF)、噪聲檢測的模糊C 均值算法[7](noise detecting FCM,NDFCM)、增強(qiáng)型模糊C 均值算法[11](enhanced FCM,EnFCM)、快速廣義模糊C 均值算法[12](fast generalized FCM,F(xiàn)GFCM)和加入后處理的快速模糊C 均值算法[13](fast noise detecting FCM and postprocessing,F(xiàn)NDFCM_P)。需要說明的是,NDFCM 算法并未給出基于灰度級形式的表達(dá)式,但是文獻(xiàn)[8]指出,該算法遵循先去噪再分割的流程,可歸結(jié)為基于灰度級的模糊C 均值算法這一類。算法所涉及的參數(shù)設(shè)定如表1 所示,參數(shù)的取值均為算法所在文獻(xiàn)的建議值。

表1 參數(shù)設(shè)置Table 1 Parameters setting
所選擇的評價指標(biāo)為G_mean[19],該指標(biāo)能夠有效評價類間差異較大圖像的分割結(jié)果,分割效果與該值的大小成正比。選擇無損檢測圖像(分別命名為#NDT1-#NDT5)如圖1(a)~(e)所示,其對應(yīng)的灰度直方圖如圖1(f)~(j)所示,通過灰度直方圖可以看出,所選圖像類間差異較大,滿足我們對測試圖像的要求。
由式(8)或式(9)可以看出,參數(shù)b對算法的抑制程度有較大影響,b值越大,抑制程度越低。當(dāng)b=0 時,算法沒有意義。為驗證參數(shù)b對算法的影響,選取圖1(a)~(e)進(jìn)行測試,圖2 給出由本文算法(FCMRFC)得到的G_mean 值隨參數(shù)b的變化情況,其中b從0.1 取值至2.0,步長為0.1。可以看出,對于#NDT1 和#NDT2,大趨勢是隨b增加指標(biāo)減小;對于#NDT3,指標(biāo)變化不大(在0.995 附近浮動);對于#NDT4,大趨勢是隨b增加指標(biāo)大致是先增后減;對于#NDT5,指標(biāo)不變。出于均衡考慮,在后續(xù)的實驗中,參數(shù)b取值為0.5。

圖1 原圖及灰度直方圖(#NDT1-#NDT5)Fig.1 Images and their gray histograms (#NDT1-#NDT5)


圖2 G_mean 值隨參數(shù)b 的變化趨勢Fig.2 Change trend of G_mean value with b
為測試FCMRFC 算法的魯棒性,對所選圖像添加高斯白噪聲(white Gaussian noise,WGN),強(qiáng)度均值為0,歸一化方差為0.01 或0.02;或添加椒鹽噪聲(salt &pepper noise,SPN),噪聲比例為10%或20%,表2 給出了各算法得到的指標(biāo)G_mean值。同時,為顯示分割的視覺效果,圖3~7 給出了在SPN(10%)噪聲下各算法的分割結(jié)果。

圖3 椒鹽噪聲SPN(10%)#NDT1 圖像的分割結(jié)果Fig.3 Segmentation results of #NDT1 when SPN (10%)
將圖2~7 所示的圖像分割結(jié)果與對應(yīng)的標(biāo)準(zhǔn)分割圖對比,可以看出,F(xiàn)CMRFC 算法的分割結(jié)果更接近標(biāo)準(zhǔn)分割圖,這為后續(xù)的目標(biāo)識別和測量奠定基礎(chǔ)。另外,可以看出,F(xiàn)FCMAF 算法和FNDFCM_P 算法去噪能力較強(qiáng),其原因在于前者考慮了像素的非鄰域信息,后者增加了后處理步驟。由表2 指標(biāo)結(jié)果可以看出,F(xiàn)CMRFC 算法在絕大多數(shù)情形下取得了最優(yōu)的分割效果,顯示出算法的有效性和適應(yīng)性,充分說明了算法能夠有效分割類間差異較大的圖像,擴(kuò)展了基于灰度級模糊C 均值算法的應(yīng)用范圍。

表2 分割指標(biāo)G_mean 對比Table 2 Values of G_mean %

圖4 椒鹽噪聲SPN(10%)#NDT2 圖像的分割結(jié)果Fig.4 Segmentation results of #NDT2 when SPN (10%)

圖5 椒鹽噪聲SPN(10%)#NDT3 圖像的分割結(jié)果Fig.5 Segmentation results of #NDT3 when SPN (10%)

圖6 椒鹽噪聲SPN(10%)#NDT4 圖像的分割結(jié)果Fig.6 Segmentation results of #NDT4 when SPN (10%)

圖7 椒鹽噪聲SPN(10%)#NDT5 圖像的分割結(jié)果Fig.7 Segmentation results of #NDT5 when SPN (10%)
為了改善基于灰度級模糊C 均值算法不能有效分割類間差異較大圖像的缺點(diǎn),在該算法基礎(chǔ)上提出一種改進(jìn)版本。改進(jìn)的算法主要是通過引入一種新穎的類貢獻(xiàn)抑制因子至目標(biāo)函數(shù)中,減弱較大類對目標(biāo)函數(shù)的作用,避免較小類的聚類中心向較大類偏移。基于新的目標(biāo)函數(shù)對圖像進(jìn)行迭代聚類分割,結(jié)果顯示新算法的有效性和魯棒性。需指出,改進(jìn)算法如果在圖像去噪階段能夠得到更好的待分割圖像,那么算法的指標(biāo)值和視覺效果會進(jìn)一步改善,故研究圖像去噪算法仍具有較大意義。