文欣薇 李雅芝 朱雄杰 王善偉



摘要:本文提出了一種基于機器視覺技術的香菇表面紋理種類鑒別方法,以提取圖片中的香菇主體。首先利用高斯濾波對圖片進行降噪處理,分析背景顏色,得出其R、G、B值的波動范圍,采用清0的方式將圖像背景剔除。結合prewitt算子檢測邊緣,通過矩陣運算得出香菇的二值圖,由此實現香菇的定位。紋理區域存在灰度值突變的情況,而采用梯度法對香菇表面的紋理進行數值處理得到的精度較高,對圖片進行梯度銳化,并再次用濾波去除雜質以突出紋理。最后選取平均梯度作為判定指標,利用K均值聚類法,可順利將香菇分成A、B兩類。
關鍵詞:高斯濾波;prewitt算子;二值圖;梯度法;灰度直方圖
中圖分類號:G642? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)16-0208-02
開放科學(資源服務)標識碼(OSID):
我國是一個香菇生產大國,其中香菇的分類加工屬于勞動密集型環節,長期以來依靠人工進行香菇類型分選以及破損、畸形、霉變香菇的篩除。利用人工進行香菇分揀有諸多缺點,例如勞動強度大、耗費人力多、效率低、分類精度不高等。另外,人工分類還有一個很嚴重的問題,即分類精度會受工人主觀因素影響。人力成本是在很大程度上影響香菇的生產成本,而隨著社會的發展,社會勞動力成本只會越來越高,同時國內外市場對香菇的品質要求越來越嚴格,所以香菇的高效、自動分揀是香菇加工、出口業亟待解決的重要問題。
香菇生長過程中, 因表皮細胞與肉質細胞分裂不同步, 菌蓋龜裂會產生花紋,形成花菇, 依菌蓋表面白色花紋的多少, 香菇可分為天白花菇、白花菇、茶花菇和光面菇,不同種類的香菇具有不同的價值,所以必須對花紋混雜的香菇原料進行分級。
本文嘗試利用機器視覺技術,構建了香菇紋理識別系統,達到對香菇進行分選的目的。在對香菇樣本進行圖片采集之后,通過高斯濾波、邊緣檢測等操作對圖片進行降噪、邊緣化等預處理,并利用MATLAB軟件得到其灰度圖[1],通過清0置1的方法將背景剝離,得到香菇的二值圖,由此可以準確快捷地判斷香菇的位置。通過研究發現兩種類型香菇的紋理灰度分布具有顯著特征,所以利用灰度直方圖可以在一定程度上反映幾種不同類型菌蓋紋理的區別。本文通過梯度法對灰度圖進行處理,計算平均梯度,建立相應的等級模型,并利用K均值聚類法,便可對香菇進行較為精確的分類。
1香菇紋理特征的提取
1.1圖像采集
本文的實驗材料圖片來自華中地區大學生數學建模第十屆邀請賽,圖1所示的兩類香菇,其中A類香菇菌蓋龜裂形成褐白相間、菊花狀的花紋,其學名為花菇;B類香菇菌蓋無裂紋,被稱為光面菇。花菇價值與普通光面菇相比,價格可相差 5~8 倍。為了保證香菇質量,優質優價,按級定價,提高經濟效益,必須對花紋混雜的香菇原料進行自動分揀。
1.2圖像預處理
1.2.1實現背景與香菇主體分離
以A類香菇處理為例,先將圖1中的A香菇圖片進行預處理,通過MATLAB軟件將圖片轉化為RGB的三維矩陣,得到有效的數據信息,矩陣上的每一個點代表每一個像素點,R、G、B三個維度的值代表每一個像素點的顏色[2]。考慮所給圖片存在拍照角度及光源不同等的影響因素,采用高斯濾波進行降噪處理。由于背景顏色與香菇顏色易于區分,其對應的R、G、B值存在很大差異,分析背景顏色,得出其R、G、B值的波動范圍為{R<100,G>5,B<0}。設計程序并以此為條件找出所有處于此范圍的像素點,將其清0,其余非此范圍的值保持不變,即得到香菇主體,如圖2(a)所示,以此實現背景分割。為了提高結果精度,進一步對得到的背景分離圖片進行灰度化處理,再次使用高斯濾波濾去雜質,如圖2(b)所示。
1.2.2香菇定位
利用sobel、prewitt、roberts以及canny四種算子得出灰度化處理后圖片的邊緣曲線,結果如圖3所示。結合本文需求,相比較而言,選取prewitt算子作為最佳的邊緣處理方式[3]。
為實現對香菇的定位,首先對各行列的像素點進行逐一檢驗,邊緣像素點成白色,其值為1;其他所有的像素點為黑色,其值為0;利用prewitt算子,用其對各行列的像素點進行逐一檢驗,將檢驗到的第一個值為1的像素點至最后一個值為1的像素點間的所有像素點的值置1,此時可以得到0-1矩陣,將原矩陣與其進行三次運算,得到圖4中左圖即為香菇的二值化圖像,并將其與原圖進行對比,可以發現此種方法可以快速精準的實現香菇的定位。
2建立分級模型
2.1 梯度法提取香菇特征紋理
將所有待分類的香菇圖片進行預處理并編號為001-135,刻畫圖像邊緣,提取目標香菇;調用MATLAB中rgb2gray()函數得到其灰度圖;由于紋理區域位于灰度突變的地方,故采用梯度法對香菇表面的紋理進行數值處理[3,4]。圖像中像素點[(x,y)]的梯度方向為灰度值[f(x,y)]在這點變化率最大的方向,模[G(f(x,y))]為灰度值[f(x,y)]的最大變化率,即:
再進行濾波去噪使紋理被清晰地顯示,然后計算該圖像的分級特征值——平均梯度S。
2.2 K均值聚類法實現A、B類香菇分選
將得到的平均梯度值進行K均值聚類分析,得到兩個聚類中心,實現香菇的初步分類。統計歸納A、B兩類香菇的平均梯度值,作出其分布圖,如圖5所示,可以發現平均梯度在約為2000的位置,兩類香菇有明顯的分級現象,故以此為臨界值,若大于臨界值則歸為A類,小于臨界值則歸為B類,建立分級模型,即可實現對所有香菇的快速分類。另外,用肉眼對這135幅香菇圖片進行類別判斷,得到A、B兩類香菇的個數分別為80個及55個;而由此系統識別得到的A、B兩類香菇的個數分別為85個及50個,據此得出系統的正確識別率為96%。
3 模型評價
本文所提到的香菇分類識別系統采用清0置1的方法,即可快速得到各香菇的大致位置,且具有一定的精準度,但此算法對于原始信息的提取程度還有待加強。由于圖片分辨率的不同導致背景脫離時含有噪聲,則需要在既定的模型基礎上進行參數調試,對高斯濾波尺度的選擇也應進一步做研究,且這種降噪方式并不能完全解決由拍攝角度、光源差異及圖片質量等因素帶來的問題;因為香菇表面存在紋理,得出的三維矩陣比較復雜,灰度值的范圍也非常廣,故沒有直接采用灰度值來直接刻畫香菇的特征,而是利用灰度值的變化率,即采用平均梯度值對香菇特征進行刻畫,有效地對香菇紋理特征進行了簡化,并且以此為指標特征很好地完成了香菇的分類。
參考文獻:
[1]劉麗,蘇賦,田芳,等. 基于Matlab的圖像感興趣區域提取[J]. 現代電子技術,2013(8): 117-120.
[2]陳紅,夏青,左婷,等. 基于機器視覺的花菇分選技術[J]. 農業機械學報, 2014, 45(1):281-287 .
[3]李偉, 康晴晴, 張俊雄, 等. 基于機器視覺的蘋果表面紋理檢測方法[J]. 吉林大學學報(工), 2008, 38(5):1110-1113.
[4]陳朋. 煙葉紋理表面的視覺檢測技術研究與應用[D].貴州大學,2017.
【通聯編輯:王力】