摘 要: 提出了一種在多相" title="多相">多相晶粒圖像分析" title="圖像分析">圖像分析中提取復(fù)雜晶界的有效方法。通過預(yù)處理消除晶粒內(nèi)部灰度差和劃痕對邊界提取造成的影響;引入模糊理論判別和跟蹤邊界, 模糊邊緣檢測算法" title="邊緣檢測算法">邊緣檢測算法的特點是不需要確定門限值,具有很強的自適應(yīng)性;最后進行細(xì)化去枝得到單像素寬度的晶界。
關(guān)鍵詞: 晶界提取 灰度變換 鄰域平滑 模糊理論 細(xì)化去枝
在多相晶粒圖像分析中常常需提取晶界來進行各種參數(shù)的測量和計算。對于簡單清晰的圖像,可以通過常用的Sobel 算子、Roberts 算子、Laplace算子等直接處理就能取得較好的效果。 但是工程中遇到的大量圖像由于材料本身或自然因素的影響,一定程度上都存在著晶粒內(nèi)部灰度分布不均、邊界模糊或劃痕,用上述算子直接提取晶界很難獲得滿意的結(jié)果,主要表現(xiàn)在兩個方面:(1)晶粒內(nèi)部產(chǎn)生了許多偽邊界,影響了對圖像主要信息的研究;(2)部分主要邊界丟失,損失較大。本文針對上述情況,提出了一種復(fù)雜多相晶粒圖像晶界提取的方法,有效地克服了上述缺點,得到了比較理想的晶界。
1 預(yù)處理
1.1 灰度變換
對于一幅多相晶粒圖像來說常常存在著灰度偏暗、偏亮或居中的情況,如果直接利用灰度的變化檢測邊界, 一些主要邊界會因為灰度變化很小而丟失。使用冪次變換可以提高感興趣區(qū)域的對比度。冪次變換的基本形式為:
s=crβ (1)
其中r和s分別為輸入灰度級和輸出灰度級, c和β為正常數(shù)。根據(jù)圖像的實際情況,調(diào)整參數(shù)c的取值可以改變圖像的灰度動態(tài)范圍,調(diào)整β的取值可以增強圖像中感興趣區(qū)域的對比度。在c值不變的情況下,隨著β值的變化將簡單地得到一族變換曲線,如圖1。
從圖1中可以看到,當(dāng)β>1時該變換把輸入窄帶暗值映射到寬帶輸出值,當(dāng)β<1時把輸入窄帶高值映射為寬帶輸出值。圖1中β>1的值和β<1的值產(chǎn)生的曲線有相反的效果。由于提取的是圖像的大邊界,也就是灰度變化比較明顯的各顆粒間的邊界,而顆粒內(nèi)部雖然存在灰度差,但灰度差較小,變化相對平穩(wěn),所以可以調(diào)節(jié)參數(shù)c適當(dāng)壓縮圖像的灰度動態(tài)范圍,從而平滑了圖像,有利于后面的邊界提取。
1.2 鄰域平滑
1.2.1 中值濾波
由于晶粒內(nèi)不同程度地都含有雜質(zhì)﹑劃痕﹑灰度分布不均勻的情況,可以選用不同尺度的中值濾波" title="中值濾波">中值濾波來平滑。中值濾波既能平滑圖像,同時又能很好地保護邊緣輪廓。但是采用大尺度中值濾波時會產(chǎn)生塊狀模糊。
1.2.2 自適應(yīng)濾波
經(jīng)過灰度變換和中值濾波后,若仍然不能得到較滿意的平滑圖像,可以采用自適應(yīng)濾波進一步平滑圖像。自適應(yīng)平滑的基本形式為:
對于一幅圖像σ2是固定的,恢復(fù)系數(shù)k會隨局部統(tǒng)計方差的變化而變化。在圖像的平坦區(qū)域,相對較小,k值較小,用公式(2)平滑后,是對局部值做較小的恢復(fù),或不恢復(fù)(k=0時);而對應(yīng)于灰度變化較大的區(qū)域,較大,k值也較大,則對局部值做較大的恢復(fù)。這就是自適應(yīng)平滑原理,代價是存在邊緣模糊效應(yīng)。
2 模糊檢測
在邊緣檢測算法中,通常都要事先確定一個灰度閾值,然后把各像素點的灰度值與該閾值比較,大于閾值的像素點被確認(rèn)為邊緣點。如果直接利用某種邊緣算子(如Sobel 算子) 檢測邊緣,存在兩個困難:如果取較小的門限值,則得到的邊緣點中包含了許多假邊緣;如果取較大的門限值,則邊緣很不連續(xù)。而基于梯度的模糊邊緣檢測算法可以自動確定門限,消除了由于選取不同的門限而對邊緣產(chǎn)生的巨大影響。
2.1 模糊子集的定義
當(dāng)論域Ψ為一有限集時,其上的模糊子集F定義為:
其中uF:Ψ→[0 ,1 ] 為F的隸屬函數(shù)" title="隸屬函數(shù)">隸屬函數(shù),uF(xj)表示xj屬于集合F的程度。 當(dāng)u(x)的值域為{0,1}時,F就退化成一個普通(非模糊) 集合。也就是說,普通集合可以看作是一個特殊的模糊集合,其隸屬度為0或1。為了求得圖像的邊界,將Ψ定義為梯度的集合,xj定義為圖像的梯度;uF(xj)表示梯度為xj的像素點是邊界點的程度。
2.2 邊緣隸屬函數(shù)
在實際圖像處理中,隸屬函數(shù)是否合適是模糊集合能否成功運用的關(guān)鍵?,F(xiàn)在研究的問題是多相晶粒圖像的邊緣檢測,處理的是灰度圖像,本文采用模糊統(tǒng)計法來確定隸屬函數(shù)。通過大量實驗發(fā)現(xiàn),不同的多相晶粒圖像的梯度直方圖形狀非常相似,如圖2所示。由圖2可見,梯度直方圖主要集中在低值區(qū)域。這是因為顆粒內(nèi)部各像素點與鄰域像素點的灰度值相差不大,而顆粒與顆粒之間像素點的灰度值相差較大,且前者數(shù)目遠(yuǎn)多于后者。統(tǒng)計所得隸屬函數(shù)的形狀近似如圖3所示,故選取戒下型隸屬函數(shù)[2]:
其中, x為圖像的梯度值,m和n分別為圖像梯度的最大值和最小值。
2.3 判決函數(shù)
引入模糊理論后,模糊集合的數(shù)學(xué)期望就可以作為邊緣檢測的閾值,具有很強的自適應(yīng)性。模糊集合F的數(shù)學(xué)期望為:
式6中,u(xj)表示圖像邊緣隸屬函數(shù),p(xj)表示邊緣隸屬函數(shù)u(xj)在圖像中出現(xiàn)的概率,即圖像梯度直方圖中梯度值為xj時對應(yīng)的梯度概率。
2.4 邊緣跟蹤算法
邊緣跟蹤算法如下:
(1) 按任意坐標(biāo)軸方向掃描圖像,找到一個非邊界點;
(2) 計算該點的隸屬度u,如果u大于E(F),則該點為邊界點,記錄其行﹑列號,進行(3),否則返回(1);
(3) 在該點的8鄰域中尋找u最大的點,如果它是跟蹤過的點,則返回(1),否則進行(4);
(4) 如果未掃描完圖像,返回(2);如果所有的點都掃描完畢,則結(jié)束。
跟蹤結(jié)束后,將記錄的邊界點重新賦值即可得到邊界線條。
3 后處理
由上述方法得到的二值圖像中邊界線條存在毛刺且具有一定的寬度,直接使用這樣的圖形進行晶粒度計算有一定麻煩,有必要對提取的邊界進行平滑和細(xì)化。
3.1 邊緣平滑
直接對提取的邊界進行細(xì)化會產(chǎn)生許多多余的分枝短線,這是由于邊緣存在許多毛刺引起的??梢允褂脭?shù)學(xué)形態(tài)學(xué)上的開操作與閉操作進行邊緣平滑。開操作一般使圖像的輪廓變得光滑,斷開狹窄的間斷并消除細(xì)的突出物。閉操作使輪廓線更為光滑,但與開操作相反的是,它通常消除細(xì)小的空洞,填補輪廓線中的斷裂。
3.2 細(xì)化去枝
對平滑后的邊界圖像進行細(xì)化處理,得到單像素寬度的邊界圖像。待細(xì)化線條邊緣存在突起時,細(xì)化后在突起處形成多余的分枝短線以及零星的偽邊界細(xì)化后形成的短截線都必須去除。首先設(shè)定短線的長度閾值為L,如果線條長度大于閾值L則認(rèn)為該線條是原線圖中的線條而非多余短線;如果其值小于或等于閾值L,則認(rèn)為該線條為多余短線將其去除[4]。
4 實驗結(jié)果
采用具有代表性的一幅多相晶粒圖像作為實驗原圖,如圖4(a)所示,對其進行晶界提取。圖4(b)為用Sobel 算子求得的邊界圖。利用模糊邊緣檢測算法,檢測到的邊界如圖4(c) 所示,細(xì)化去枝處理后得到的晶界如圖4(d)所示。對比圖4(b)與圖4(d)可以看出,本文算法有效抑制了偽邊界的生成,提取出了較為完整的晶界。
晶界提取是晶粒度圖像分析中的重要環(huán)節(jié)。本文針對傳統(tǒng)多相晶粒圖像分析中晶界提取存在的缺陷,提出了一種簡單有效的晶界提取方法。先進行預(yù)處理(灰度變換﹑鄰域平滑), 再作模糊邊緣檢測,在有效抑制了偽邊界的同時提取出了比較理想的晶界。通過實驗, 驗證了算法的有效性。由于晶界圖像存在著不連續(xù)性,晶界的自動修復(fù)是下一步的研究方向。
參考文獻
1 楊益軍, 趙榮椿.復(fù)雜航空圖像中的大邊緣提取方法[J]. 西安電子科技大學(xué)學(xué)報(自然科學(xué)版),2000;27(1):101~104
2 張躍,鄒壽平,宿芬.模糊數(shù)學(xué)方法及其應(yīng)用[M].北京:煤炭工業(yè)出版社,1992
3 呂知辛,黃尊靈.圖像最佳鄰域自適應(yīng)平滑技術(shù)[J].計算機系統(tǒng)應(yīng)用,1998;(7):40~41
4 王吉仁. 基于像素劃分的兩值線圖圖像的細(xì)化[J].微電子學(xué)與計算機,1995;(3):35~37
5 岡薩雷斯.數(shù)字圖像處理(第二版)[M].北京:電子工業(yè)出版社, 2003