巨志勇 李開亮 毛穎穎



摘 要:為解決傳統分水嶺算法在果蔬圖像分割過程中產生的過分割問題,提出了基于K-means聚類與二次分水嶺的果蔬圖像分割方法。該方法首先通過自適應中值濾波、直方圖均衡化等方法實現圖像增強,利用分水嶺算法實現圖像預分割,然后對預分割結果進行K-means聚類和形態學處理,并在此基礎上利用分水嶺算法實現果蔬圖像二次分割。實驗結果表明,該方法很好地解決了分水嶺算法引起的過分割問題,為后續圖像分類識別奠定了基礎。
關鍵詞:K-means聚類;分水嶺算法;果蔬;圖像分割;形態學處理
DOI:10.11907/rjdk.173022
中圖分類號:TP317.4
文獻標識碼:A 文章編號:1672-7800(2018)006-0217-03
Abstract:In order to solve the over segmentation problem of traditional watershed algorithm in fruit and vegetable image segmentation process, a segmentation method of fruits and vegetables based on K-means clustering and two watershed is proposed in this paper. Firstly, the method of adaptive median filtering and histogram equalization is used to realize image enhancement. The watershed algorithm is used to realize the image pre-segmentation, then the pre-segmentation results are processed by K-means clustering and morphological processing, and then the watershed algorithm is used to realize the two segmentation of the fruits and vegetables images. The experimental results show that the method proposed in this paper can solve the over segmentation problem caused by watershed algorithm.
Key Words:K-means clustering; watershed algorithm; fruit and vegetable; image segmentation; morphological processing
0 引言
作為目標檢測和識別的基礎,彩色圖像分割是機器視覺領域一個重要且具有難度的研究方向,其中基于K-means算法和分水嶺算法的分割方法是近年圖像處理領域的研究熱點。果蔬圖像分割分類方法較多,如Soille和Vincent[1]于1991年提出的模擬浸沒的分水嶺算法。該算法具有快速、準確等特點,但在噪聲影響下會導致過分割。對于過分割問題,胡敏等[2]提出了基于形態學處理的 H-minima方法標記連通域,然后運用分水嶺算法實現標記圖像分割。Anderson Rocha[3]通過在HSV顏色空間使用K-means進行背景提取,具有良好的分割效果。
本文采用分水嶺方法對預處理后的圖像進行預分割,根據分割結果,使用K-means算法初始化聚類中心,在此基礎上進一步采用二次分水嶺方法減少預處理后的區域個數,并且利用圖像顏色、梯度等信息重構新的權值矩陣,應用形態學處理實現圖像分割效果。
1 樣本數據獲取與處理
1.1 果蔬圖像獲取
為了更接近真實環境,獲取更具代表性的樣本數據[4],實驗使用的果蔬圖像主要來源為數碼相機拍攝,背景為白色,分別在不同光照強度、角度、相機抖動等情況下獲取相關數據,主要場景為各大型超市、批發市場等,還有部分數據來源于網上圖像數據庫。本文果蔬圖像獲取及數據庫構建主要針對市面上常見的水果蔬菜。果蔬圖像數據集共30種,包括水果15種,蔬菜15種,蔬菜包括西紅柿、黃瓜、包菜、娃娃菜、土豆、蘿卜、香菇、菜椒、茄子、芹菜、杏鮑菇、金針菇、四季豆、油菜、秋葵;水果包括香蕉、蘋果、桔子、雪梨、芒果、火龍果、核桃、榴蓮、荔枝、菠蘿、葡萄、西瓜、抽子、龍眼、草莓。每種果蔬圖像30張,共計900幅。為便于處理,對采集圖像尺寸進行歸一化處理,得到640×480彩色圖像。部分果蔬圖像見圖1。
1.2 果蔬圖像預處理
圖像的預處理主要包括圖像空間變換、濾波、圖像增強等,增強圖像對比度是應用計算機視覺進行圖像處理的重要環節,增強后的圖像更適合于人的視覺特征和機器識別。為了實現更好的分割效果,需要研究彩色空間選擇與濾波器選擇問題。
1.2.1 彩色空間選擇
在眾多顏色空間中,RGB顏色空間的亮度信息與色度信息沒有分離,關聯太大且每個通道都編入了亮度信息,邊緣像素信息不能很好地保存。但是HSV顏色空間的H通道能消除物體姿態和周邊環境對亮度的影響,保證圖像信息的穩定性。V通道通常依據圖像 RGB 三色組合得到,能反應出物體表征的信號強度信息[5]。本文先將采集的圖像轉換至HSV空間,通過調整HSV中的V通道實現對亮度的調整,再對V進行直方圖均衡化處理,實現圖片的亮度調整。S通道對亮度變化不太敏感,顏色特征由色度通道H和S計算,并對S通道進行閾值化操作,再轉回 RGB空間得到最終增強結果[6]。由RGB到HSV的轉換,先要計算RGB通道的最大值和最小值,轉換公式如下:
設(B,G,R)分別為RGB空間任一像素的藍、綠、紅坐標,它們的值為0~1之間的實數。設Max等于B、G、R中的最大值, Min等于B、G、R中的最小值。HSV空間(H, S, V) 中 H∈ [0, 360)是角度的色相角,而S,V∈ [0,1]對應飽和度和亮度。
1.2.2 濾波器選擇
圖2顯示取內核值或參數值均為4的情況下5種常見的濾波,包括方框濾波、均值濾波、高斯濾波3種線性濾波,中值濾波、雙邊濾波兩種非線性濾波的濾波效果。
對比分析可發現,均值濾波在去噪的同時破壞了圖像的細節部分,使圖像變得更加模糊。高斯濾波與均值濾波效果相似,都會較明顯地模糊邊緣,但對于高頻細節保護效果不明顯。雙邊濾波是結合圖像空間鄰近度和像素值相似度的一種折中處理,同時考慮空域信息和灰度相似性。對于彩色圖像里的高頻噪聲,雙邊濾波器不能干凈地濾掉,只能對低頻信息進行較好的濾波。均值濾波在去噪的同時破壞了圖像的細節部分,使得圖像變得模糊。在眾多濾波效果中,中值濾波[7]是用像素點鄰域灰度值的中值代替該像素的灰度值,和均值濾波器相比,中值濾波在消除噪聲的同時,能很大程度地保護圖像細節,不會造成大的模糊。本文使用加權自適應中值濾波能夠更好地保護圖像中的邊緣細節部分。
2 算法分析
2.1 K-means聚類算法與二次分水嶺算法
K-means 算法通過反復迭代,目的是使聚類域中所有的樣品到聚類中心距離的平方和J(C)最小,實現各聚類本身盡可能緊湊、聚類之間盡可能分開。
分水嶺算法是一種基于拓撲理論的數學形態學分割方法,該算法先將一幅圖像轉換成梯度圖,將其類比為地形,將梯度圖中像素灰度值類比成地形高度,將局部極小值類比為盆地,局部極大值類比為山頂,介于兩者之間的值類比為山坡。通過模擬浸沒方法,從局部極小值處開始浸入水中,垂直向下移動,這樣每個局部極小值作為一個聚類中心開始向外擴展,最終會在盆地之間形成分水嶺。目前經典的分水嶺算法是由Vincent等[9]提出的模擬浸沒算法。該方法主要分為排序和淹沒兩個過程,先將圖像按灰度等級從高到低排序,再進行模擬浸沒。分水嶺算法的輸入為梯度圖像,即
2.2 K-means聚類與二次分水嶺相結合的分割方法
綜合K-means聚類算法、分水嶺分割方法,本文提出基于K-means聚類與二次分水嶺的圖像分割方法[10],步驟如下:①首先在預處理基礎上使用sobel算子獲取梯度圖像G。通過分水嶺算法對G進行預分割,設原始圖像被初步分割為N集水盆地,原始圖像對應區域設為X;②通過K-means聚類方法對初步分割的N個集水盆地進行聚類,獲得聚類數目和初始聚類中心,由于步驟①得到的N個集水盆地遠小于圖像像素個數,因此在進行K-means聚類和二次分水嶺分割圖像時運行效率更高;③使用形態學處理獲取二值化圖像,標記背景和未知區域,通過對白色前景的深度膨脹運算獲得一個超過前景實際大小的物體,然后用反向閾值將深度膨脹后的圖像中的黑色部分轉換成固定灰度值,即完成背景像素的標記;④根據二值化圖像找到感興趣區域,將前景、背景及未知區域合成為一個標記圖像,并用原始像素強度替換為二進制值;⑤利用分水嶺算法分割圖像:將標記圖像和原圖輸入分水嶺算法,執行分水嶺算法,將修改后的標記圖轉換為可顯示的8位灰度圖并返回分割結果;⑥將切割圖片與填充空洞圖片進行交集運算,得到去背景果蔬圖片,并將目標圖像由HSV空間轉換至RGB空間顯示。
3 實驗結果
按照算法處理步驟,在Windows10操作系統平臺上,利用Visual Studio2013配置OpenCV2.4.9對果蔬圖像數據集進行實驗。計算機基本配置為 CPU Intel(R)Core(TM)i5-3230M,2.60GHz,運行內存為8GB。實驗結果如圖3所示,圖3(a)為復雜光照下拍攝的原始圖像,圖3(b) 為經過預處理之后通過sobel算子獲取的梯度圖像 ,圖3(c)分水嶺預分割圖像 ,圖3(d)為K-means聚類和分水嶺變換后的二值化圖像,圖3(e)為背景分割圖像。
為進一步驗證本文提出方法的有效性,對果蔬圖像庫中的部分圖像分別用基于形態學的分水嶺分割方法和本文方法作對比測試。如圖4所示,第一列為原始圖像,第二列為基于形態學的分水嶺分割算法結果,第三列為本文算法結果。通過實驗結果可以發現,使用分水嶺算法還會出現過分割現象,本文提出的方法可有效解決復雜光照情況下圖像準確分割問題,同時可準確定位目標位置,保留圖像的形狀、顏色、紋理、邊緣等信息。
4 結語
由于農產品的多樣性和相似性,現有的分割識別方法難以精準適用于農業領域。本文基于顏色、形狀和紋理特征,對水果蔬菜進行處理和分析,解決了不同種類果蔬圖像在不同光照條件下的分割問題。實驗結果表明,本文提出的結合K-means聚類的二次分水嶺分割方法,可有效提取感興趣區域,并能很好地保留圖像的邊緣、紋理、形狀等信息,為下一步分類識別奠定了基礎。
參考文獻:
[1] VINCENT L,PIERRE S. Watershed in digital spaces: An efficient algorithm based on immersion simulations[J]. IEEE Transactions of Pattem Analysis and Machine Intelligence,1991,13(6):583-598.
[2] 胡敏,蔡慧芬.基于形態學標記聯通的分水嶺圖像分割[J].電子測量與儀器學報,2011,25(10):864-869.
[3] ROCHA A, HAUAGGE D C, WAINER J,et al. Automatic fruit and vegetable classification from images [J].Computers and Electronics in Agriculture, 2010,70(1):96-104
[4] ARIVAZHAGAN S,SHEBIAH R N,NIDHYANANDHAN S S,et al. Fruit recognition using color and texture features [J]. Journal of Emerging Trends in Computing and Information Sciences,2010,1(2):90-94.
[5] 王水平,唐振民,范春年,等.基于SVM的水果分類算法研究[J].武漢理工大學學報,2010(16):44-47.
[6] 許欣,陳強,孫懷江,等.改進的自動顏色均衡化圖像對比度增強[J].計算機工程與應用,2010,46(18):4-6.
[7] 趙高長,張磊,武風波.改進的中值濾波算法在圖像去噪中的應用[J].應用光學,2011(4):678-680.
[8] 王千,王成,馮振元,等.K-means聚類算法研究綜述[J].電子設計工程,2012,20(7):21-24.
[9] VINCENT L,SOILLE P. Watersheds in digital spaces: an efficient algorithm based on immersion simulations[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1991,13(6):583-598.
[10] 邰瀅瀅,吳彥海,張利.基于快速mean-shift聚類與標記分水嶺的圖像分割方法[J].計算機應用與軟件,2015,8(3):156-159.
(責任編輯:杜能鋼)