主要問題
它是一個疊代的過程,這裡每個種子像素點都疊代生長,直到處理過每個像素,因此形成了不同的區域,這些區域它們的邊界通過閉合的多邊形定義。
在區域生長中的主要問題如下:
(1)表示區域的初始化種子的選擇:在區域生長過程中,這些不同區域點合適屬性的選擇。
(2)基於圖像具體屬性的像素生長不一定是好的分割。在區域生長過程中,不應該使用連通性或鄰接信息。
(3)相似性:相似性表示在灰度級中觀察在兩個空間鄰接像素之間或像素集合的平均灰度級間的最小差分,它們將產生不同的區域。如果這個差分比相似度閾值小,則像素屬於相同的區域。
(4)區域面積:最小面積閾值與像素中的最小區域大小有關。在分割的圖像中,沒有區域比這個閾值小,它由用戶定義。
區域生長的後處理(region growing post-processing):由於非最佳化參數的設定,區域生長經常會導致欠生長或過生長。人們已經開發了各種各樣的後處理。從區域生長和基於邊緣的分割中,後處理能獲得聯合分割的信息。更加簡單的後處理是根據一般啟發法,並且根據最初套用的均勻性標準,減少分割圖像中無法與任何鄰接區域合併的最小區域的數量。
區域連線圖
在場景中區域間的鄰接關係可以由區域鄰接圖(region adjacency graph, RAG)表示。在場景中的區域由在RAG的節點集合表示 N = {N1, N2, ... , Nm},這裡,節點Ni表示在場景中的區域Ri ,並且區域Ri的屬性存儲在節點的數據結構Ni中。在Ni和Nj之間的邊緣Eij表示在區域Ri和Rj之間的連線。如果在區域Ri里存放一個像素與在區域Rj彼此相鄰,那么兩個區域Ri和Rj是相鄰的。鄰接可能是4連通或8連通的。鄰接關係是自反(reflexive)和對稱(symmetric)的,但不一定是可傳遞(transitive)的。下圖顯示具有6個截然不同區域的場景鄰接圖。
當它表示區域鄰接圖(RAG)是,二進制矩陣A成為 鄰接矩陣(adjacency matrix)。在RAG里,當節點Ni和Nj鄰接,在A中,aij是1。因為鄰接關係是自反的,矩陣的對角元素都是1。在上圖的多區域場景鄰接矩陣(關係)如下所示。
合併和分裂
由於在場景中分割單一大區域,分割算法可能產生許多個小區域。在這種情況下,較小的區域需要根據相似性合併,並且使較小的區域更緊密。簡單的區域合併算法如下所述。
步驟1:使用閾值集合將圖像分割為R1,R2,R,…,Rm。
步驟2:從圖像的分割描述中生成區域鄰接圖(region adjacency graphics,RAG)。
步驟3:對於每個Rj,i = 1,2,…,m,從RAG中確定所有Rj,j≠i,如Ri和Rj鄰接。
步驟4:對於所有i和j,計算在Ri和Rj之間合適的相似性度量Sij。
步驟5:如果Sij>T,那么合併Ri和Rj。
步驟6:根據相似性標準,重複步驟3~步驟5,直到沒有合併的區域為止。
合併的另一個策略是根據兩個區域之間的邊緣強度。在這個方法中,在鄰接區域之間的合併是根據兩個區域間沿標定邊界長度的邊緣強度。如果邊緣強度小,即邊緣點較弱(weak),如果合併沒有大量改變平均像素強度值,那么可以合併兩個區域。
還有這種情況:由於錯誤的預處理分割,產生了太小的區域。這歸結於不同區域錯誤合併成一個區域。在這種情況下,在分割區域中灰度值的變化可能高於 閾值(T),因此,需要將區域分裂成更小的區域,這樣每個更小的區域都有均勻小方差。
分裂和合併可能結合在一起用於複雜場景的分割,基於規則可以指導分裂和合併運算的套用。
優勢和劣勢
優勢
1. 區域生長通常能將具有相同特徵的聯通區域分割出來。
2. 區域生長能提供很好的邊界信息和分割結果。
3. 區域生長的思想很簡單,只需要若干種子點即可完成。
4. 在生長過程中的生長準則可以自由的指定。
5. 可以在同一時刻挑選多個準則。
劣勢
1. 計算代價大。
2. 噪聲和灰度不均一可能會導致空洞和過分割。
3. 對圖像中的陰影效果往往不是很好。
對噪聲問題,通常可以用一些平滑濾波器,或是diffusion濾波器做預處理來解決,所以通常噪聲問題並不是很嚴重。所以實際上,區域生長的最嚴重的問題就是效率低下。
據實驗,在2.4GHz的電腦上,一個512*512*343的數據,進行一次區域生長大約需要200s的時間。