萬小紅, 郝蕊潔
(運城學院 數學與信息技術學院,山西 運城 044000)
隨著時代的進步與發展,人們對水果的需求也大大增加,除了要求其種類豐富多樣,還要求其品質達到標準。紅提葡萄這類鮮食水果,采摘后無后熟期,且不宜長時間存放,故需要在最佳成熟期進行采摘。然而,人工采摘時[1],依靠人眼判斷果穗成熟度的準確率較低,存在過早采摘或過熟采摘等問題,過早采摘口感不佳,過熟采摘容易出現爛果,嚴重影響了紅提葡萄的品質及市場的銷量。
針對上述問題,采用圖像識別技術[2]對紅提葡萄果穗的成熟度進行研究分析。利用Faster R-CNN模型、KNN算法、圓形Hough變換法、HSV空間等對紅提葡萄的圖像進行果穗識別、背景分割、果粒識別及成熟度分類等,最終識別出成熟度滿足采摘要求的紅提葡萄果穗。
紅提葡萄果穗成熟度的研究從工業相機采集的紅提葡萄圖像開始,包含了紅提葡萄的果穗識別、果穗圖像背景分割、果粒識別、果粒成熟度分類及果穗成熟度判別等5個過程,其整個研究思路和采用的技術方法如圖1所示。
首先,利用Faster R-CNN卷積神經網絡[3]模型識別紅提葡萄果穗在圖像中的位置;然后,借助KNN算法[4]對識別的果穗進行背景與果穗的分割;其次,根據Hough變換法識別果穗圖像中的果粒,并依據HSV色彩空間對各個果粒顏色進行成熟度判斷,果粒顏色即為果粒的成熟度;最后,計算滿足成熟度的果粒數量占整個果穗果粒數量的比重,若滿足整個果穗成熟度的采摘要求,即可確認為當下需要采摘的紅提葡萄果穗。

圖1 總體設計思路Fig.1 Overall design idea
卷積神經網絡作為圖像處理技術的一種,包含了輸入層、卷積層、ROI池化層、全連接層和soft-max分類層[5]等5個完整的層級結構。其中,輸入層主要將目標圖像轉化為RGB像素矩陣;卷積層是借助卷積核的大小、數量及步長等參數提取圖像特征,形成特征矩陣;ROI池化層處在各個卷積層中間,用于壓縮圖像數據和參數,縮小矩陣規模,以便后期提高運算速度;全連接層將得到的特征矩陣轉化為一維矩陣排列,使得每個神經元都可以連接到前一層的所有神經元[6];soft-max分類層將得到的信息進行分類,并計算每一類出現的概率值。Faster R-CNN是卷積神經網絡中檢測速度和識別精度相對較高的目標檢測算法,它是在原有的Fast R-CNN基礎上,舍棄了效率較低的Selective Search提取候選框,加入區域候選網絡RPN,使得RPN和Fast R-CNN共享卷積層提取的特征圖[7]。將Faster R-CNN模型應用于該紅提葡萄圖像果穗識別中,其過程如圖2所示。

圖2 Faster R-CNN模型Fig.2 Faster R-CNN model
首先,將原始采集的紅提葡萄圖像作為輸入,由輸入層轉化為像素矩陣;然后,由卷積層提取紅提葡萄特征圖,一方面發送給RPN候選網絡,RPN通過soft-max層將葡萄果穗和背景進行分類,并利用邊框回歸得到紅提葡萄果穗的邊界,并發送給池化層;另一方面直接發送給ROI池化層。池化層將不同尺寸的特征圖進行池化輸出,得到固定尺寸的特征圖,最后依靠全連接層和soft-max分類層得到精準的果穗的邊界。
使用KNN算法對得到的特征圖像進行果穗和背景分割處理[8]。KNN算法的原理是對特征圖中的像素值進行分類處理。通過度量目標樣本與訓練數據集中的距離,找出距離最短的K個樣本,并標記K個樣本中出現頻率最多的類別,即為預測的結果。其表達式為
其中,v為分類類別,即為紅提葡萄像素;yi為第i個距離最短的類別數據;I為判斷是否為葡萄果穗或背景,如果是果穗,則返回1,背景則返回0;y′為分類預測結果[9]。
利用KNN算法對特征圖像進行背景分割,需要建立訓練數據集。訓練數據集主要來源于收集的果園圖像,對其進行處理后,得到果穗像素數據集和背景(包含葡萄葉、莖稈等)像素數據。
得到的數據集采用KNN算法進行訓練時,K近鄰數距離的選取較為關鍵[10]。馬氏距離是度量兩個坐標點之間的距離,表示數據的協方差距離,表達式為
其中,d為兩點之間的距離;x、y為兩個樣本向量;∑為多維隨機變量的協方差矩陣。K值則一般為小于20的奇數[11]。
由于上述方法進行背景分割后得到區域是不連通的,故借助MatLab軟件[12]對背景分割圖像進行腐蝕膨脹處理,再進行區域刪除和填充處理;最后,將面積較大的作為果穗所在區域,并將該區域進行彩色恢復。整個圖像分割處理的過程如圖3所示。

圖3 圖像背景分割過程Fig.3 The process of image background segmentation
得到背景分割處理的果穗葡萄圖像后,采用圓形Hough變換法[13]識別紅提葡萄中的所有果粒。Hough變化法是模擬紅提葡萄球體模型,遍歷果穗圖像所有的像素,以果穗邊緣圖像的某一點為圓心,果粒半徑畫圓,其表達式為
(x-x0)2+(y-y0)2=r02
其中,x0、y0為紅提葡萄果粒的圓心位置;r0為紅提葡萄果粒的輪廓半徑。其圖像處理過程如圖4所示。

圖4 Hough變換法識別果粒過程Fig.4 Identification of fruit grain process by Hough transform
在整個遍歷的過程中,需要調整紅提葡萄果穗的邊緣閾值。該值只用于識別邊緣梯度,取值范圍為[0,1]。若同一果穗中顏色相近的果粒緊密相挨,邊緣梯度相對較弱,此時需要降低邊緣閾值[14]。邊緣閾值越小,識別到的圓數量越多,但錯檢率也隨之增高,考慮到準確率和計算量,在本文中設該值為0.15。另外,在識別的果粒圖像中,仍會有被遮擋的果粒邊緣無法被識別,此時需要依靠Hough變換的靈敏度來解決。該值的取值范圍為[0,1],它會調整所識別的邊緣長度,靈敏度越高,識別到的果粒邊緣越短,識別到的果粒輪廓也就越多,但隨之檢錯率也會增加,故合適的靈敏度也是果粒精準識別的關鍵。根據大量的實驗數據得出, 當邊緣閾值取0.15時,Hough變換的靈敏度取0.94為最佳值,此時果粒的識別準確率是最佳狀態。
識別到果粒后,依據果粒的顏色對其進行成熟度劃分,原始圖像的RGB色彩容易被光照影響,為了照顧到背光的紅提葡萄,需將其轉換為HSV色彩空間[15]。HSV色彩空間由色調(H)、飽和度(S)和明亮度(V)構成,且色調(H)不受光照的影響,能很好地顯示圖像原有的色彩,故采用該值作為紅提葡萄果粒成熟的判斷依據。葡萄種植專家依據H值將紅提葡萄果粒的成熟度劃分為4個等級:綠色G1(0.167 圖5 葡萄果粒成熟度Fig.5 Grape grain maturity 根據紅提葡萄果粒成熟度,將其劃分為4個成熟等級后,統計同一果穗中每個等級的果粒數量,并計算其占整個果穗果粒的比重,從而判斷該果穗的成熟度。一般紅提葡萄果穗的成熟度也分為4個等級:Ⅰ級為果穗已經成熟;Ⅱ級為果穗即將成熟;Ⅲ級為果穗已經在轉色;Ⅳ級為果穗剛轉色,其對應的果粒所占比重如表1所示。 表1 果穗成熟度等級劃分Table 1 Classification of ear maturity 為了驗證上述方法的在準確性,在自然環境下,不同時間點隨機采集20張紅提葡萄的圖像,圖像像素為298×397,每張圖像包含1串紅提葡萄果穗。其中,Ⅰ級果穗有6串,Ⅱ級果穗有7串,Ⅲ級果穗有4串,Ⅳ級果穗有3串,對采集的圖片進行紅提葡萄果穗成熟度的判斷,得出的數據如表2所示。 表2 實驗數據表Table 2 Experimental data sheet 由表2可以看出:在20張紅提葡萄圖像果穗成熟度判斷實驗中,共有2次測試情況與實際情況出現偏差,圖像序號為5和11,其余18張均能準確判斷出果穗的成熟度,故利用該方法判斷果穗成熟度的正確率能夠達到90%。 通過對紅提葡萄圖像進行果穗識別、背景分割,并利用HSV空間提取紅提葡萄果粒顏色,從而準確地檢測到紅提葡萄果穗的成熟度,為果農在收獲紅提葡萄時提供了采摘指導,并為后期智能化采摘提供理論依據,對提高紅提葡萄商品價值具有重要意義。

5 實驗結果與分析

6 結論