阮殿旭
(沙洲職業(yè)工學院,江蘇 蘇州 215600)
糧食安全關系到國計民生和國家安全,也是鄉(xiāng)村振興的重要保障。中國每年年產糧食1.3 萬億斤以上,基本滿足了國內的糧食需求。糧食收儲和銷售過程中需要對糧食進行分級檢驗,以確定糧食品質好壞[1]。目前,糧食分級檢驗基本是手工操作,糧食取樣后,經由檢驗人員手工把不完善顆粒(蟲蛀粒、病斑粒、破損粒、生芽粒和生霉粒等)和雜質分揀出來,通過稱重計算出重量百分比,對照國家標準得到糧食的等級。由于檢驗工作量大,檢驗人員非常辛苦[2]。質量評判的準確度還受到工作人員責任心和疲勞程度的影響。
為了改變這種狀況,進一步提高糧食米粒檢測的效率和準確率,對相關識別技術進行了研究。在國際上,最早將計算機視覺技術用于稻米識別和分級檢測的研究出現在20 世紀80 年代。1983 年開始,日本大學森島博教授利用計算機視覺對稻米識別和分級進行廣泛的研究。其研究內容包括不同品種稻米的識別方法,同品種稻米中完整米、碎米、異色米、有裂痕米的檢測和分級方法,并形成了一整套理論體系[3]。在國內,張博提出了基于深度學習的小麥外觀品質機器視覺檢測方法[4]。劉瓔瑛等對基于機器視覺的稻米品質的判斷方法進行了研究,構建了稻米外觀品質機器視覺檢測系統(tǒng),提出了一種基于霍特林變換的稻米特征提取算法[5]。陳進等對基于圖像分類的谷物識別系統(tǒng)進行了研究,提出了谷物局部特征的提取方法,研究了特征袋算法并進行了編碼計算[6]。大部分研究主要是針對糧食米粒的圖像算法及學習算法的理論研究,因此,利用視覺技術和深度學習算法構建高效穩(wěn)定的檢測系統(tǒng)具有很大的現實意義[7]。
糧食稻米視覺檢測系統(tǒng)由硬件及軟件兩部分組成。硬件部分由定制光源、相機、鏡頭、計算機等組成,實現對稻米圖像的拍照;軟件部分由圖像處理軟件和學習算法平臺組成,軟件中的圖像處理工具實現對目標顆粒的降噪、預處理、特征提取等功能。工業(yè)相機根據圖像處理器不同分布又可以分為普通工業(yè)相機和智能工業(yè)相機。普通工業(yè)相機只有圖像采集功能,計算機運行軟件實現對采集圖像的處理;智能工業(yè)相機集成了圖像采集和圖像處理兩個功能,可以直接對智能相機進行編程,在相機中完成圖像處理與信號的輸出。本系統(tǒng)采用工業(yè)相機完成糧食圖像采集,通過Gige 傳輸給圖像處理計算機,完成圖像處理和深度學習算法。
糧食稻米檢測系統(tǒng)總體框圖如圖1 所示。檢測系統(tǒng)啟動后,首先打開環(huán)形光源,調整到合適的亮度,觸發(fā)相機拍照,完成糧食稻米圖像的采集;圖像處理軟件通過預處理算法工具實現對圖像的噪聲濾除、灰度及對比度等調整,得到稻米數量和面積等基本信息;通過算法平臺的學習算法對樣品進行學習后,將不完整粒和合格粒進行識別區(qū)分;最后將檢測信息輸送到人機界面。
圖1 糧食稻米檢測系統(tǒng)框圖
相機采用海康威視HKVISION彩色卷簾相機,分辨率為3 072*2 048,滿足本系統(tǒng)的要求。由于成像體積較小,需采用12 mm的中焦距工業(yè)鏡頭。光源采用平行軸光源,因為LED顆粒高密度排列,提高光源亮度,成像清晰,亮度均勻,不會出現反光不均勻的地方,從而使獲得的糧食顆粒圖像更加清晰,如圖2所示。
圖2 米粒采集圖
圖像采集后,先根據實際圖像進行濾波、灰度調整、二值化等預處理,再對圖像進行斑點檢測,對稻米的數量、位置、形狀和面積進行統(tǒng)計。
首先,采用圖像轉換工具將彩色圖像轉換為灰度圖,RGB 權重分別為0.3、0.3 和0.4,得到灰度圖如圖3 所示。對灰度圖采用濾波工具,在盡量保留圖像細節(jié)特征的條件下對米粒圖像的噪聲進行抑制,保證后續(xù)圖像處理與分析的有效性。為更好地保留米粒邊緣,采用了N*M 的中值濾波的工具對鄰域內像素按灰度排序的結果決定中心像素的灰度,參數設置為5*5的內核掩膜,效果如圖4所示。
圖3 米粒灰度圖
圖4 米粒濾波圖
對稻米顆粒數量的統(tǒng)計可以使用形狀匹配工具和斑點工具兩種方式實現,但由于米粒之間差異性較大,并且有一定的粘連,通過形狀匹配工具進行識別統(tǒng)計時引起的識別誤差較大。通過采用斑點工具,采用形態(tài)學分水嶺算法對圖像分割進行優(yōu)化,可以有效降低米粒之間的粘連,從而更精確地進行統(tǒng)計。
圖像斑點分析的一般過程:圖像分割—應用聯通性規(guī)則—執(zhí)行形態(tài)學操作—計算測量—得出結果。斑點分析工具的分段模式采用硬閾值(動態(tài)),形態(tài)學調整操作選擇侵蝕水平面,最小面積設定為800 像素,如圖5 所示。運行結果如圖6、圖7 所示,可以很好地識別出米粒數量、大小、位置信息。
圖5 斑點分析程序及參數圖
圖6 米粒斑點圖
圖7 米粒參數圖
首先,通過相機采集不少于11 張的訓練圖片,圖像目標最小像素占比必須大于2.5%,然后對11 張圖片進行樣本的標定,由于米粒為不規(guī)則物體,使用多邊形標定工具進行標注,標簽必須包含米粒目標整個部分,不能將部分特征遺漏,需緊貼米粒邊緣。特別是對不完整粒等不完整度不強的,一定不能漏標,否則會嚴重影響模型性能。設置訓練參數:類型選用本地顯卡訓練;最大迭代次數200 次;基礎學習率為1;Patch 為中模型;模型能力選擇高精度;角度能力開啟。深度學習算法模型訓練誤差如圖8 所示,訓練測試結果如圖9所示。
圖8 訓練誤差迭代圖
圖9 模型訓練效果圖
系統(tǒng)調試完成后,將檢測米粒樣品放至光源下方,相機以60 fps 自動拍照并根據算法進行圖像處理和不完整粒檢測,得到如圖10和圖11所示的運行結果。
圖10 米粒數量統(tǒng)計圖
圖11 不完整粒識別圖
實驗過程中,取1 000粒米粒樣本,其中包含100粒不完整粒。統(tǒng)計得到如表1所示的測試數據。實驗結果表明,該系統(tǒng)針對米粒數量統(tǒng)計的準確率為99.2%,針對不完整粒的漏檢率為4%,滿足設計要求。
表1 測試數據
基于機器視覺的米粒檢測系統(tǒng),以??低曄鄼C和深度學習算法平臺為核心。相機采集到米粒圖像后,先進行灰度圖轉換、濾波等預處理,然后利用斑點工具對米粒數量和大小進行統(tǒng)計,最后利用深度學習算法,對不完整粒等進行學習后對米粒圖像中的不完整粒進行識別。實驗結果表明,該系統(tǒng)的對米粒數量統(tǒng)計的準確率為99.2%,對不完整粒的識別率為96%,滿足設計要求。