基於拓撲理論的數學形態學的分割演算法,基本思想是把影象看作是地形地貌,影象中每一點的灰度值表示該點的海拔高度,每乙個區域性極小值及其影響區域成為集水盆,集水盆的邊界則形成分水嶺。
在每乙個區域性極小值表面,刺穿乙個小孔,然後慢慢把整個模型浸入水中,隨著浸入的加深,每乙個區域性極小值的影響區域慢慢向外擴充套件,在兩個集水盆匯合處構築大壩,即形成了分水嶺。
分水嶺計算是乙個迭代標註的過程。比較經典的計算方法是l.vincent提出的。
在該演算法中,分水嶺計算分為兩個步驟,乙個是排序過程,乙個是淹沒過程:
1. 首先對每個畫素的灰度級進行從低到高的排序,然後在從低到高實現淹沒過程中,對每乙個區域性極小值在h階高度的影像域採用先進先出(fifo)結構進行判斷及標註。
為了保留影象的邊緣資訊,通常把梯度影象作為輸入影象計算分水嶺:
g(x,y)=grad(f(x,y))=0.5
式中,f(x,y)表示原始影象,grad表示梯度運算。 分水嶺演算法對微弱邊緣具有良好的響應,影象中的雜訊、物體表面細微的灰度變化,都會產生過度分割的現象。但同時應當看出,分水嶺演算法對微弱邊緣具有良好的響應,是得到封閉連續邊緣的保證的。另外,分水嶺演算法所得到的封閉的集水盆,為分析影象的區域特徵提供了可能。
2. 為消除分水嶺演算法產生的過度分割,通常可以採用兩種處理方法,一是利用先驗知識去除無關邊緣資訊。二是修改梯度函式使得集水盆只響應想要探測的目標。 為降低分水嶺演算法產生的過度分割,通常要對梯度函式進行修改,乙個簡單的方法是對梯度影象進行閾值處理,以消除灰度的微小變化產生的過度分割。
即 g(x,y)=max(grad(f(x,y)),gθ) 式中,gθ表示閾值。
程式可採用方法:用閾值限制梯度影象以達到消除灰度值的微小變化產生的過度分割,獲得適量的區域,再對這些區域的邊緣點的灰度級進行從低到高排序,然後在從低到高實現淹沒的過程,梯度影象用sobel運算元計算獲得。對梯度影象進行閾值處理時,選取合適的閾值對最終分割的影象有很大影響,因此閾值的選取是影象分割效果好壞的乙個關鍵。缺點:實際影象中可能含有微弱的邊緣,灰度變化的數值差別不是特別明顯,選取閾值過大可能會消去這些微弱邊緣。
分水嶺分割
分水嶺分割利用影象形態學進行影象區域分割。它將影象灰度值看作一幅地形圖,在地形圖的區域性極小值處與地形最低點是連通的,從最低點開始注水,水流會逐漸淹沒地形較低點構成的區域,直到整個影象被淹沒。在這個過程中,通過相關形態學處理,可以實現一幅影象的分水嶺分割。以下gif影象給出了形象說明 影象來自 分水...
分水嶺分割演算法
如果影象中的目標物體是連在一起的,則分割起來會更困難,分水嶺演算法經常用於處理這類問題,通常會取得比較好的效果。分水嶺分割演算法把影象看成一副 地形圖 其中亮度比較強的地區畫素值較大,而比較暗的地區畫素比較小,通過尋找 匯水盆地 和 分水嶺界限 對影象進行分割。步驟 1.讀取影象 2.求取影象的邊界...
分水嶺分割演算法
建立不同目標間的分水嶺 漲水法 分水嶺計算步驟 1 設待分割圖象為f x,y 其梯度圖象為g x,y 2 用m1,m2,mr表示g x,y 中各區域性極小值的象素,位置,c mi 為與mi對應的區域中的象素座標集合 3 用n表示當前灰度閾值,t n 代表記為 u,v 的象素集合,g u,v 4 對m...