閾值分割法可以說是影象分割中的經典方法,它利用影象中要提取的目標與背景在灰度上的差異,通過設定閾值來把畫素級分成若干類,從而實現目標與背景的分離。一般流程:通過判斷影象中每乙個畫素點的特徵屬性是否滿足閾值的要求,來確定影象中的該畫素點是屬於目標區域還是背景區域,從而將一幅灰度影象轉換成二值影象。用數學表示式來表示,則可設原始影象f(x,y),t為閾值,分割影象時則滿足下式:
閾值分割法計算簡單,而且總能用封閉且連通的邊界定義不交疊的區域,對目標與背景有較強對比的影象可以得到較好的分割效果。但是,關鍵問題來了,如何獲得乙個最優閾值呢?????
以下是幾種最優閾值的選擇方法:
(1)人工經驗選擇法:
也就是我們自己根據需要處理的影象的先驗知識,對影象中的目標與背景進行分析。通過對畫素的判斷,影象的分析,選擇出閾值值所在的區間,並通過實驗進行對比,最後選擇出比較好的閾值。這種方法雖然能用,但是效率較低且不能實現自動的閾值選取。對於樣本較少時,可以選用。
(2)利用直方圖
利用直方圖進行分析,並根據直方圖的波峰和波谷之間的關係,選擇出乙個較好的閾值。這樣方法,準確性較高,但是只對於存在乙個目標和乙個背景的,且兩者對比明顯的影象,且直方圖是雙峰的那種最有價值。
(3)最大類間方差法(otsu)
otsu是一種使用最大類間方差的自動確定閾值的方法。是一種基於全域性的二值化演算法,它是根據影象的灰度特性,將影象分為前景和背景兩個部分。當取最佳閾值時,兩部分之間的差別應該是最大的,在otsu演算法中所採用的衡量差別的標準就是較為常見的最大類間方差。前景和背景之間的類間方差如果越大,就說明構成影象的兩個部分之間的差別越大,當部分目標被錯分為背景或部分背景被錯分為目標,都會導致兩部分差別變小,當所取閾值的分割使類間方差最大時就意味著錯分概率最小。
閾值分割 最大熵分割法
最大熵分割法 現在主要用的熵演算法有 p 氏熵演算法,ksw 熵演算法 jm 熵演算法下面以經典的 ksw 熵演算法為例介紹其原理和計算過程。ksw熵演算法 設分割閾值為設分割閾值為t,t為的灰度分布,b為的灰度分布,則概率分布為 定義函式 t 為h t 和h b 的和,則 求出 t 最大時的灰度級...
otsu閾值分割演算法原理 閾值分割 Otsu法
演算法實現 不呼叫函式 include include using namespace std using namespace cv 實現灰度直方圖的繪製 void drawpicture mat inpicture,mat outpicture ma hist const int bins 256...
halcon閾值分割
1.threshold image region mingray,maxgray 全域性閾值分割,適用於環境穩定,目標與背景存在明顯的灰度差的場合。read image image,clip gray histo image,image,absolutehisto,relativehisto gen...