圖像分割直方圖法

Histogram-based Image Segmentation


圖一

名詞解釋:

直方圖(圖一):直方圖是一種圖表,以圖的方式表現數據。視覺上看起來就是從左至右一條一條的長方形。另外一種類似的圖表是長條圖。長條圖和直方圖的區別是長條圖是做的是類別資料的統計,而直方圖做的是數值資料的統計。

圖像分割:分割圖像,區別出要辨識的區間或是物體。


可以概括的把圖像分割分成兩類:使用圖像裡亮度的不連續性做分割或是使用圖像裡亮度的相似性做分割。第一種方法是找出亮度有急遽變化的地方,像邊緣,角落等,來完成圖像分割。第二種方法是透過識別出相似度高的區塊來分割。

圖像分割直方圖法的步驟就是把整體數據分割成等大小的區塊,做為長方形的底,而長方形的高對應的就是統計完落於那個區塊區間的總數據量。舉例來說,一個灰度圖像的亮度最小是0,最大是255。如果我們把這些值以4個值為一單位做分組,0~3會被分到第一組,

圖二

第二組就會是4~6,而最後一組就是252~255。而圖片中所有亮度在0到3之間的像素,就會被統計到第一組的總數據量,成為第一的長方形的高,亮度在4到6之間的就會進到第二組,同理類推。

圖三

因此,就可以以一個直方圖呈現出一張圖裡面所有的像素。假使這張圖是一個單純的灰底黑圖(圖二)。在轉換成直方圖之後,就會看到很明顯的雙峰直方圖(圖三)。

可以設一個門檻值T從兩個峰的中間做垂直切割,把圖分割成兩部份。大於T的點代表背景,小於T的點代表物體。以此種方式處理,就可以依照單一物體像素之間的高相似度把圖像和背景做分割(圖四)。

若碰到更複雜的圖像,像是一種黑,兩種淡灰或更多種不同的灰和白,直方圖就會有三峰或是更多峰的分佈。但是以雙峰圖的處理邏輯做類推就一樣可以把圖像做分割。若圖像是彩色的,就會分別依照對應的RGB值,畫出三個直方圖。

在做完分割之後,為了在圖片上可以輕易的辨識出分割的結果,改變區塊裡的像素值使得每一個分割出來的區塊都有一個統一的亮度或是顏色。以圖四為例,物件統一套用了黑色,背景統一使用了白色。這個採用的像素值可以是一個任意值,也可以是原本區域裡面的像素值的平均值。

圖四


參考文獻:

https://cis.temple.edu/~latecki/Courses/CIS750-03/Lectures/Venu_project2.ppt