其中r和s分別為輸入灰度級和輸出灰度級,c和β為正常數。根據圖像的實際情況,調整參數c的取值可以改變圖像的灰度動態范圍,調整β的取值可以增強圖像中感愛好區域的對比度。在c值不變的情況下,隨著β值的變化將簡單地得到一族變換曲線,如圖1。從圖1中可以看到,當β>1時該變換把輸入窄帶暗值映射到寬帶輸出值,當β<1的值和β<1的值產生的曲線有相反的效果。由于提取的圖像的大邊界,也就是灰度變化比較明顯的各顆粒間的邊界,而顆粒內部雖然存在灰度差,但灰度差較小,變化相對平穩,所以可以調節參數c適當壓縮圖像的灰度動態范圍,從而平滑了圖像,有利于后面的邊界提取。
其中,g(i,j)為輸入圖像,g(i,j)和分別為M×N鄰域內局部圖像的均值和方差,σ2為整幅圖像局部方差的均值,f(i,j)為平滑處理后的輸出圖像。恢復系數為:
對于一幅圖像σ2是固定的,恢復系數k會隨局部統計方差的變化而變化。在圖像的平坦區域,相對較小,k值較小,用公式(2)平滑后,是對局部值做較小的恢復,或不恢復(k=0時);而對應于灰度變化較大的區域,σ2(i,j)較大,k值也較大,則對局部值做較大的恢復。這就是自適應平滑原理,代價是存在邊緣模糊較應。2 模糊檢測
其中uF:[0,1]為F的隸屬函數,uF(xj)表示xj屬于集合F的程度。當u(x)的值域為{0,1}時,F就退化成一個普通(非模糊)集合。也就是說,普通集合可以看作是一個非凡的模糊集合,其隸屬度為0或1。為了求得圖像的邊界,將定義為梯度的集合,xj定義為圖像的梯度;uF(xj)表示梯度為xj的像素點是邊界點的程度。2.2 邊緣隸屬函數在實際圖像處理中,隸屬函數是否合適是模糊集合能否成功運用的要害。現在研究的問題是多相晶粒圖像的邊緣檢測,處理的是灰度圖像,本文采用模糊統計法來確定隸屬函數。通過大量實驗發現,不同的多相晶粒圖像的梯度直方圖外形非常相似,如圖2所示。由圖2可見,梯度直方圖主要集中在低值區域。這是因為顆粒內部各像素點與領域像素點的灰度值相差不大,而顆粒與顆粒之間像素點的灰度值相差較大,且前者數目遠多于后者。統計所得隸屬函數的外形近似如圖3所示。故選取下型隸屬函數:u(x)=(x-n)/(m-n) (5)其中,x為圖像的梯度值, m和n分別為圖像梯度的最大值和最小值。
式6中,u(xj)表示圖像邊緣隸屬函數,p(xj)表示邊緣出隸屬函數u(xj)在圖像中出現的概率,即圖像梯度直方圖中梯度值為xj時對應的梯度概率。2.4 邊緣跟蹤算法邊緣跟蹤算法如下:(1)按任意坐標軸方向掃描圖像,找到一個非邊界點;
(2)計算該點的隸屬度u,假如u大于E(F),則該點為邊界點,記錄其行、列號,進行(3),否則返回(1);(3)在該點的8鄰域中尋找u最大的點,假如它是跟蹤過的點,則返回(1),否則進行(4);(4)假如未掃描完圖像,返回(2);假如所有的點都掃描完畢,則結束。跟蹤結束后,將記錄的邊界點重新賦值可得到邊界線條。3 后處理由上述方法得到的二值圖像中邊界線條存在毛刺且具有一定的寬度,直接使用這樣的圖形進行晶粒計算有一定麻煩,有必要對提取的邊界進行平滑和細化。3.1 邊緣平滑直接對提取的邊界進行細化會產生許多多余的分枝短線,這是由于邊緣存在許多毛刺引起的。可以使用數學形態學上的開操作與閉操作進行邊緣平滑。開操作一般使圖像的輪廓變得光滑,斷開狹窄的間斷并消除細的突出物。閉操作使輪廓線更為光滑,但與開操作相反的是,它通常消除細小的空洞,填補輪廓線中的斷裂。3.2 細化去枝對平滑后的邊界圖像進行細化處理,得到單像素寬度的邊界圖像。待細化線條邊緣存在突起時,細化后在突起處形成多余的分枝短線以及零星的偽邊界細公后形成的短截線都必須去除。首先設定短線的長度閾值為L,假如線條長度大于閾值L則認為該線條是原線圖中的線條而非多余多線;假如其值小于或等于閾值L,則認為該線條為多余短線將其去除。
新聞熱點
疑難解答