halcon學習之自動全域性閾值與動態閾值分割方法
阿新 • • 發佈:2019-01-02
自動全域性閾值分割方法:
1、統計直方圖
2、尋找出現頻率最高的灰度值
3、把比最高頻率灰度值或者比它大或小一定灰度階的灰度值作為閾值分割影象
例:
read_image(Image,'particle')
gray_histo(Image,Image,AbsoluteHisto,RelativeHiso)
PeakGray:=sort_index(AbsoluteHisto)[255]
threshold(Image,Region,PeakGray+25,255)
動態閾值分割:
原因:
1、很多情況下由於背景不均一,無法確定全域性閾值
2、目標體經常表現為比背景區域性亮一些或者暗一些
方法:
1、通過其鄰域找到一個合適的閾值進行分割
2、通過一些平滑濾波運算元來確定鄰域,例如mean_image、binomial_filter等
3、選擇所有比其鄰域暗的畫素
例:
read_image(Image,'particle')
mean_image(Image,ImageMean,20,20)
dyn_threshold(Image,ImageMean,Region,15,'dark')
轉自http://blog.csdn.net/liyangblog/article/details/24976125