楊長磊 李彩林 王佳文 孫延坤 蘇本婭
(山東理工大學建筑工程學院,山東 淄博 255000)
農作物病害是農業領域面臨的主要挑戰之一,每年的農作物病害加劇了糧食供應的短缺[1,2]。因此,快速有效地檢測農作物病蟲害是采取相關防治措施及時止損的第1步。農作物病害的鑒別方式與途徑有多種,以前多依靠農業專家或當地植物保護部門。
隨著人工智能和計算機視覺的飛速發展,研究者選擇計算機視覺技術[3]作為開發自動檢測農作物病蟲害的基礎。在2017年,Carranza等人[4]在農業領域首次使用深度學習技術,特別是在植物病害識別領域[5]。Kawasaki等人[6]提出了一種基于卷積神經網絡的黃瓜葉部病害識別系統,在瓜黃斑病毒、西葫蘆黃花葉病毒和非病害類之間的鑒別準確率達到94.9%。Sanyal等人[7]利用水稻葉片圖像的顏色紋理特征識別水稻褐斑病和稻瘟病。
通過對以上研究方法的總結,本文提出一種基于MobileNet網絡[8]改進而來的M25Net算法,并結合深度遷移學習[9]開發農作物病害種類的識別,以實現農作物病害的實時、全自動檢測。
本試驗采用由Plant Village網站提供的農作物病害公開數據集,共包含55448張標注圖像。整個數據集共有14個物種、25種病害和1類背景圖像。按照農作物病害類型劃分,共有38類,以葉片為例,如圖1所示。
為了使模型具有更強的泛化能力,本文采用數據增強技術[10],對現有圖像進行隨機旋轉、水平和垂直鏡面翻轉等操作。同時,本文中所有的圖像樣本統一為224×224像素。
M25Net模型是基于MobileNet改進而來,為了實現快速準確識別模型,本文通過深度倍增器將MobileNet的網絡深度壓縮至原來的25%,MobileNet的具體結構與原理可參照Howand A G等的研究[8]。
因為本文的數據集中某些病害種類的圖像數量不多,最少的農作物病害種類的圖像數量僅有152張圖像。為了使模型加速收斂并防止出現過擬合現象,本文選擇使用遷移學習技術。在本試驗中,使用在ImageNet[11]上預訓練的MobileNet模型的權重。ImageNet是一個龐大的自然圖像數據庫,有超過1500萬幅圖像與2萬多個類別。遷移在ImageNet上預訓練得到的權重將會對本試驗的模型訓練有極大幫助。使用初始的MobileNet網絡并沒有達到預期結果,所以本試驗保留MobileNet的特征提取部分,改變其中分類層來提高識別的精確度。
在模型改進中,使用Fine-tuning算法,其主要思想是調整預訓練模型的部分頂層特征提取器以達到適應目標任務的目的。具體改動步驟如下。
2.2.1 特征提取器
使用深度倍增器將M25Net模型的特征提取器壓縮至原來的25%,并利用ImageNet數據集進行訓練,得到預訓練權重。將預訓練模型的特征提取器的底層權重遷移到M25Net模型的特征提取器中,讓特征提取器的底層權重不隨訓練更新。讓特征提取器的頂層部分隨訓練自動更新。
2.2.2 分類器
添加BatchNormalization層和Dense層,Dense層輸出維度為39,使用Softmax作為激活函數。BatchNormalization和Dense層構成分類器。
試驗平臺使用的電腦操作系統為Ubuntu18.04,運行內存16GB,配備的GPU是NVIDIA旗下的GTX1080Ti,顯存為11GB。使用Python3.6.5與Tensorflow2.0。
每次訓練選取的樣本數量為16,如果樣本數量大于16,訓練模型時會報錯。一共進行50次迭代,初始學習率為0.001,當經過2次迭代后,模型性能沒有提升,之后學習率會降低,最低的學習率為0.00001。具體參數如表1所示。

表1 模型的訓練參數
為了驗證M25Net模型對農作物病害類型的識別能力,在相同參數設置下將本模型與采用遷移學習技術的MobileNet模型進行比較,驗證改進后的M25Net模型的效果。I同時與采用遷移學習技術的nceptionV1[12]、InceptionV2[13]、InceptionV3[14]、ResNet 50[15]、ResNet 101、ResNet 152原始模型進行比較。
如圖2所示,本文對采用遷移學習技術的所有模型的驗證集準確率進行了統計。在相同的試驗條件下,本文提出的M25Net模型的驗證集準確率高達99.67%,比采用遷移學習技術的MobileNet模型的驗證集準確率高1.89%。M25Net模型相較于其它采用遷移學習技術的模型也有3.07%~4.86%的提升。
綜合上述結果可看出,M25Net模型能夠很好地完成農作物病害類型識別的任務,具有泛用性與高精度,這使得此模型在農作物病害識別領域能夠成為一個非常實用、方便的輔助工具。
針對農作物病害圖像樣本難收集的問題,本文采用遷移學習方式并結合深度學習提出了一種改進型的MobileNet模型—M25Net,主要結論如下。
通過采用遷移學習加載預先訓練好的權重到目標模型,再將Fine-tuning算法應用到模型,使得模型更加適用于Plant Village數據集,在精度上較MobileNet原始模型提升了1.89%。說明Fine-tuning算法能夠提高模型的識別準確率。
在同樣的試驗條件下,與InceptionV1、InceptionV2、InceptionV3、ResNet 50、ResNet 101、ResNet 152原始模型進行了對比試驗,本文提出的M25Net模型的精度提高了3.07%~4.86%。因此,該模型具有更好的泛用性與高精度,其綜合性能更優。