








摘要:為解決蘋果葉部病害識別效率低、精度低的問題,展開蘋果葉片病害識別模型的研究。通過收集并整理網絡公共數據集,獲取蘋果黑腐病、蘋果黑星病、蘋果銹病和蘋果健康葉部四類圖像,隨機選取1200張圖像建立數據集,采用數據增強的手段對數據進行預處理,提高模型的魯棒性,降低其他因素對模型識別的影響。將遷移學習與卷積神經網絡相結合,在InceptionV3、Xception、NasNetmobile、Inception-ResNetV2這4種預訓練模型的基礎上,棄用全連接層,通過全局平均池化層來完成特征整合工作,同時對模型采取微調,對比各模型的識別效果。通過微調前后8種模型訓練對比結果表明,微調后的Inception-ResNetV2模型在測試集上能達到98.83%的準確率,可以準確、快速地識別出病害類型,為相關病害識別提供參考。
關鍵詞:蘋果葉部病害;遷移學習;卷積神經網絡;圖像識別
中圖分類號:S126; S436.611.1
文獻標識碼:A
文章編號:2095-5553 (2024) 05-0239-07
收稿日期:2022年8月22日" 修回日期:2022年11月11日*基金項目:山東省自然科學基金(ZR2022MC152);山東省高等學校青創人才引育計劃(202202027)
第一作者:郭宏杰,男,1994年生,河南新鄉人,碩士;研究方向為深度學習、計算機視覺。E-mail: ghjwork55555@163.com
通訊作者:馬德新,男,1977年生,山東日照人,博士,教授;研究方向為深度學習、計算機視覺。E-mail: madexin@163.com
Research on apple leaf disease image recognition based on convolutional neural network
Guo Hongjie, Ma Rui, Wang Jia, Zhao Wei, Ma Dexin
(College of Animation and Media, Qingdao Agriculture University, Qingdao, 266109, China)
Abstract:
In order to solve the problem of low efficiency and low accuracy of apple leaf disease recognition, a study on apple leaf disease recognition model was launched. Four types of images of apple black rot, apple black star, apple rust and apple healthy leaves were obtained by collecting and organizing the network public dataset, 1 200 images were randomly selected to build the datasets, and data enhancement was used to pre-process the data to improve the robustness of the model and reduce the influence of other factors on the model recognition. Combining transfer learning with convolutional neural networks, on the basis of four pre-trained models, InceptionV3, Xception, NasNetmobile, and Inception-ResNetV2, the fully connected layer is abandoned, and the global average pooling layer is used to complete the feature integration, while the models are fine-tuned to compare the recognition effects of each model. The training comparison results of the eight models before and after fine-tuning show that the fine-tuned Inception-ResNetV2 model can achieve 98.83% accuracy on the test set, which can accurately and quickly identify the disease types and provide a reference for related disease identification.
Keywords:
apple leaf disease; transfer learning; convolutional neural network; image recognition
0 引言
蘋果樹是薔薇科蘋果亞科蘋果屬植物,為落葉喬木,在世界上廣泛種植,其果實含有豐富的營養價值,是人們最常食用的水果之一。我國蘋果產量占全球總產量的一半,帶來了較高的經濟效益,然而蘋果樹及其果實很容易出現許多真菌、細菌和害蟲問題,造成了一定的經濟損失。對蘋果葉部病害識別進行研究,為果農提供精準的蘋果病害情況,可以使果農及時采取相對應的治理辦法,對蘋果產業高質量發展具有非比尋常的意義。
針對病害圖像種間相似度高,種類變化性大等特點,卷積神經網絡相比于傳統方法具有更好的適應性,尤其是LeNet、AlexNet、VGG、googLeNet、MobileNet、ResNet等神經網絡的提出,為病害識別提供了新的技術支持。Subramanian等[1]使用遷移學習的VGG16、ResNet50、InceptionV3和Xception模型,利用18888張健康和患病葉片圖像數據集,對三種常見的玉米葉片疾病進行分類,通過貝葉斯優化方法選擇超參數的最優值,使用圖像增強方法提高模型的泛化能力,對四種模型的識別效果進行對比研究。結果表明,所有模型對玉米葉片病害的分類準確率均在93%以上。特別是VGG16、InceptionV3和Xception,準確率均達到99%以上。Gangwar等[2]基于遷移學習對4種葡萄葉片進行識別研究,使用InceptionV3模型加邏輯回歸,準確率最高達到了99.4%。Thangaraj等[3]使用了基于遷移學習的深度卷積神經網絡模型來識別番茄葉片病害,試驗使用Adam、隨機梯度下降(Stochastic Gradient Descent, SGD)和RMSprop優化器來評估所提出模型的性能,該模型可以對實時圖像和存儲的番茄葉片圖像進行疾病檢測,準確率達到99.36%。周宏威等[4]研究基于遷移學習的多種神經網絡模型,對比VGG16,ResNet50,InceptionV3這三種模型在蘋果葉片上的分類效果,同時通過與不使用遷移學習的模型相比,試驗效果表明遷移學習能明顯提升模型的收斂速度及準確率。劉合兵等[5]為解決玉米病害識別效率低的問題,將MobileNetV2和遷移學習相結合,通過全新訓練、特征提取、全部遷移和微調4種方法訓練出的模型進行對比,試驗表明微調模型經歷較少的迭代次數便取得了99.25%的識別準確率。董萍等[6]探究遷移學習凍結全部網絡層、凍結部分網絡層和不凍結網絡層時的識別效果,使用InceptionV3模型和Xception模型分別對玉米葉部病害進行識別,試驗表明遷移學習不凍結網絡層時分類效果最好, 準確率可達97.42%。
本文將蘋果葉部病害作為研究對象,對數據集進行預處理,通過遷移學習的方法,對比4類模型的識別效果,對模型進行微調,通過對比得到識別準確率效果最優的模型,為相關病害識別提供參考。
1 材料與方法
1.1 數據來源
本文以健康蘋果葉部圖像以及3種蘋果葉部病害圖像(蘋果黑腐病、蘋果黑星病、蘋果銹病)作為試驗研究對象。該數據來源于PlantVillage公共數據集[7],本次試驗采用其中1200幅圖像,蘋果葉部病害各類圖像如圖1所示。
1.2 數據預處理
本研究采用數據增強的手段來擴充數據集規模,通過對原始圖像隨機旋轉45°,水平翻轉,隨機縮放,上下位置平移,水平位置平移,隨機裁剪等操作對訓練集數據進行擴充。試驗將原始圖像按照8∶1∶1的比例劃分為訓練集、驗證集和測試集。數據集詳細情況如表1所示。
1.3 遷移學習
遷移學習是利用現有知識解決不同但屬于類似領域問題的一種機器學習方法[8]。遷移學習的基本流程是首先將預訓練模型在Imagenet數據集上訓練好的權重值,遷移到葉部病害的數據集上進行再訓練并選擇性地進行參數調整,使模型更加適合識別任務,從而提高準確性,節省大量訓練時間。遷移學習流程如圖2所示。
1.3.1 卷積神經網絡
卷積神經網絡是一種前饋神經網絡,與其他深度神經網絡相比,卷積神經網絡不僅能自動提取輸入圖像的特征,而且需要訓練的參數更少,更容易訓練和優化。典型的卷積神經網絡架構通常為輸入層、隱含層、輸出層,隱含層主要由卷積層、激活層、池化層和全連接層組成。卷積層由一系列卷積核組成,每個卷積核都從輸入的圖像提取相關特征,提取的特征逐步復雜和具體;激活層主要是通過非線性激活函數將前一個卷積層或全連接層線性計算的結果進行非線性映射;池化層通過一些非線性數值運算來進行特征選擇和過濾,減少提取的特征圖的空間維度和網絡參數的數量[9]。本試驗采用的卷積神經網絡模型主要有InceptionV3、Xception、NasNet、Inception-ResNetV2。
1.3.2 InceptionV3網絡結構
InceptionV3是Google在2014年發布的 GoogLeNet(Inception V1)的第三版,InceptionV3的設計旨在允許更深層次的網絡,同時防止參數增長過快。它提出了將一個二維卷積拆成兩個一維卷積,使得網絡深度進一步增加,也增加了網絡的非線性。
1.3.3 Xception網絡結構
Xception是基于Inception V3改進而來。Xception網絡將初始 InceptionV3 中的卷積替換成為深度可分離卷積,擴展了網絡寬度,還減少了參數,從而在幾乎不增加網絡復雜度的前提下提高了模型的效果。同時引入殘差連接機制,加快了網絡收斂速度,提高了分類的精度,增強了網絡對細節特征的學習能力。
1.3.4 NASNet網絡結構
2017年Zoph等[10]對NAS進行改進,提出了NASNet[11]。NASNet的網絡單元其實是一個類似Inception,但其更加復雜。它是通過堆疊網絡單元的方式遷移到分類任務中,為了防止過擬合,還使用了 Scheduled Drop Path 正則化方法,加快了搜索速度,增強了泛化能力。考慮輕量級網絡更加適合本研究的試驗,故選擇輕量級NASNetmobile網絡進行蘋果葉部病害識別研究。
1.3.5 Inception-ResNetV2
Inception-ResNetV2主要結構如表2所示。
Inception-ResNetV2[12]是InceptionV3模型的改進,通過將Inception模塊和殘差網絡結構的優勢相結合而實現。Inception-ResNetV2網絡主要包含Stem、Inception、Reduction等部分,其中:Inception-ResNet-A殘差層、Inception-ResNet-B殘差層、Inception-ResNet-C殘差層為網絡的特征提取模塊,在Inception結構中使用了可分離卷積,將較大的卷積核分解為較小的卷積核,降低了計算的復雜性,加快了網絡的運行速度。該網絡的輸入為299×299×3的RGB圖像,經過網絡的運算,最終得到的特征圖是一個1×1792維的特征向量,最后SoftMax分類器將輸出向量的維度變為類別數相同。
1.4 優化算法及超參數設置
優化算法的選擇是模型訓練中一個非常重要的一環,它主要是用來將損失最小化,會直接影響模型的訓練效率[13]。本試驗采用的優化算法為隨機梯度下降算法和動量法相結合的方式。
隨機梯度下降[14]算法的思想是每次隨機選擇一個樣本來更新模型參數,所以每次的學習都很快,而且是在線更新的,然而其最大的缺點是每次更新并不一定會按照正確的方向前進,很容易達到局部極值點,可能會造成最后無法收斂到最優解。
SGD優化器更新規則如下,假設給定的數據集X={x1,x2,x3,…,xn},數據集標記為:Y={y1,y2,y3,…,yn},學習器函數為f(x;w),學習率α。
2 試驗結果與分析
2.1 特征圖可視化對比
卷積神經網絡模型最大的優勢在于自動提取特征[16]。為了更直觀地看出模型的提取效果,以健康的蘋果葉部圖像作為示例,通過可視化的方式來展示各層卷積計算后的特征圖。
圖4為各模型經過第1層卷積層之后的特征圖,圖像的紋理特征得到了一定的保留,基本上都可以看見蘋果葉部圖像的紋理特征。其中Inception-ResNetV2模型的特征圖比其他模型的特征圖更清晰,紋理細節等特征也更清晰地展現。因各模型層數較深,僅展示第一層卷積之后的特征圖對比情況。
輸出Inception-ResNetV2模型第11個卷積層和第23個卷積層之后的特征圖。圖5為第11個卷積層之后的特征圖。從圖5可以看出,在第11個卷積層之后,模型仍然學習圖像的整體輪廓特征,相對第1層卷積層的輸出相比,蘋果葉部圖像的紋理輪廓比較模糊,但基本保留了圖像信息。圖6為第23個卷積層之后的特征圖。在輸出的特征圖中,圖像的分辨率降低,輪廓模糊。隨著層數的加深,所提取的特征變得越來越抽象,關于特定輸入的信息越來越少。
觀察三組特征圖可知初始卷積層提取的主要是蘋果葉部的邊緣、輪廓信息。 隨著神經網絡的逐步加深,從網絡中提取的特征變得越來越抽象和具有代表性。卷積神經網絡可以通過初始卷積層的整體特征來集成高層抽象特征,并使用高層抽象特征來區分圖像。
2.2 模型訓練結果與分析
2.2.1 訓練集與驗證集結果
本文選用InceptionV3、Xception、NasNet、Inception-ResNetV2四種網絡模型進行遷移學習和訓練,模型所得的訓練集、驗證集的準確率和損失值如圖7所示。
所有模型使用相同的超參數,都取得了較快地收斂速度,當迭代次數達到20輪后收斂趨于平穩,準確率開始提升緩慢,整體趨勢趨于穩定。對比4種模型,在相同的迭代次數下,InceptionV3模型準確率提升較快,損失值下降更快,平均準確率明顯高于其他測試模型。結果表明,InceptionV3模型在訓練集和驗證集上均具有較高準確率,網絡的收斂速度較快。
微調后的模型所得的訓練集、驗證集的準確率和損失值如圖8所示。所有模型都通過重新訓練后面5層網絡,當迭代次數達到10輪后收斂趨于平穩,準確率開始緩慢提升,整體趨勢趨于穩定。通過與微調前的模型對比,在相同的迭代次數下,每個模型在微調后準確率都取得了不同程度的提升,微調后的Inception-ResNetV2模型準確率提升較快,損失值下降更快,平均準確率明顯高于其他識別模型。結果表明,微調后的Inception-ResNetV2模型在訓練集和驗證集上的準確率優于其他模型,訓練集準確率最高為99.17%,驗證集準確率最高為98.96%。
2.2.2 不同病害的識別效果分析
由表4可知,Inception-ResNetV2和InceptionV3模型的測試集準確率最高,針對4種類型葉片的識別準確率都達到95.83%。
對4個模型進行微調后,都取得不同程度的優化效果,微調后的Inception-ResNetV2模型測試集準確率平均識別準確率最高,蘋果黑星病、蘋果黑腐病、蘋果銹病片以及健康葉片的識別準確率分別為96.66%、100%、100%和96.66%。
綜合來看:針對該數據集,對比微調前后的8個模型,微調后的Inception-ResNetV2模型識別準確率效果最好。
3 結論
1) 基于遷移學習和卷積神經網絡在蘋果葉部病害分類中取得較好地識別效果,實用性強,應用前景廣闊。通過遷移學習的微調可以比較明顯提升模型的訓練效果,可以快速提高模型性能。
2) 針對蘋果葉部病害的識別,通過對比微調前后InceptionV3、Xception、NasNetmobile和Inception-ResnetV2這8個模型在蘋果葉部病害識別問題上的識別效果,微調后的Inception-ResNetV2模型效果最優,訓練集準確率為99.17%,驗證集準確率為 98.96%,測試集準確率為98.33%。
3) 試驗結果表明,在測試集準確率評價指標上,InceptionV3、Xception、NasNetmobile和Inception-ResnetV2這4種模型的結果為95.83%、90.83%、91.66%和95.83%;微調后的結果為96.66%、95.00%、92.50%和98.33%,微調模型準確率優于原模型。產生差異的原因是各模型大小、參數量、網絡層數、特征提取等因素,接下來將針對這些因素展開研究。
參 考 文 獻
[1] Subramanian M, Shanmugavadivel K, Nandhini P S. On fine-tuning deep learning models using transfer learning and hyper-parameters optimization for disease identification in maize leaves [J]. Neural Computing and Applications, 2022, 34(16): 1-18.
[2] Gangwar N, Tiwari D, Sharma A, et al. Grape leaf disease classification using transfer learning [J]. International Research Journal of Engineering and Technology (IRJET), 2020.
[3] Thangaraj R, Anandamurugan S, Kaliappan V K. Automated tomato leaf disease classification using transfer learning-based deep convolution neural network [J]. Journal of Plant Diseases and Protection, 2021, 128(1): 73-86.
[4] 周宏威, 沈恒宇, 袁新佩, 等. 基于遷移學習的蘋果樹葉片病蟲害識別方法研究[J]. 中國農機化學報, 2021, 42(11): 151-158.
Zhou Hongwei, Shen Hengyu, Yuan Xinpei, et al. Research on identification method of apple leaf diseases based on transfer learning [J]. Journal of Chinese Agricultural Mechanization, 2021, 42(11): 151-158.
[5] 劉合兵, 魯笛, 席磊. 基于MobileNetV2和遷移學習的玉米病害識別研究[J]. 河南農業大學學報, 2022(6): 1041-1051.
Liu Hebing, Lu Di, Xi Lei. The research of maize disease identification based on MobileNetV2 and transfer learning [J]. Journal of Henan Agricultural University, 2022(6): 1041-1051.
[6] 董萍, 衛夢華, 時雷, 等. 遷移學習在玉米葉片病害識別中的研究與應用[J]. 中國農機化學報, 2022, 43(3): 146.
Dong Ping, Wei Menghua, Shi Lei, et al. Research and application of transfer learning in identification of maize leaf diseases [J]. Journal of Chinese Agricultural Mechanization, 2022, 43(3): 146-152.
[7] 張開興, 呂高龍, 賈浩, 等. 基于圖像處理和BP神經網絡的玉米葉部病害識別[J]. 中國農機化學報, 2019, 40(8): 122-126.
Zhang Kaixing, Lü Gaolong, Jia Hao, et al. Identification of corn leaf disease based on image process-ing and BP neural network [J]. Journal of Chinese Agricultural Mechanization, 2019, 40(8): 122-126.
[8] 莊福振, 羅平, 何清, 等. 遷移學習研究進展[J]. 軟件學報, 2015, 26(1): 26-39.
Zhuang Fuzhen, Luo Ping, He Qing, et al. Survey on transfer learning research [J]. Journal of Software, 2015, 26(1): 26-39.
[9] Sun Zhu, Guo Xingyu, Xu Yang, et al. Image recognition of male oilseed rape (brassica napus) plants based on convolutional neural network for uaas navigation applications on supplementary pollination and aerial spraying [J]. Agriculture, 2022, 12(1): 62.
[10] Elsken T, Metzen J H, Hutter F. Neural architecture search: A survey [J]. Journal of Machine Learning Research, 2019, 20(1): 1997-2017.
[11] Zoph B, Vasudevan V, Shlens J, et al. Learning transferable
architectures for scalable image recognition [C]. Proceedings
of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 8697-8710.
[12] Szegedy C, Ioffe S, Vanhoucke V, et al. Inception-v4, inception-resnet and the impact of residual connections on learning [C]. Thirty-first AAAI Conference on Artificial Intelligence, 2017.
[13] 仝衛國, 李敏霞, 張一可. 深度學習優化算法研究[J]. 計算機科學, 2018, 45(S2): 155-159.
Tong Weiguo, Li Minxia, Zhang Yike. Research on optimization algorithm of deep learning [J]. Computer Science, 2018, 45(S2): 155-159.
[14] 王功鵬, 段萌, 牛常勇. 基于卷積神經網絡的隨機梯度下降算法[J].計算機工程與設計, 2018, 39(2): 441-445, 462.
Wang Gongpeng, Duan Meng, Niu Changyong. Stochastic gradient descent algorithm based on convolution neural network [J]. Computer Engineering and Design, 2018, 39(2): 441-445, 462.
[15] 史加榮, 王丹, 尚凡華, 等. 隨機梯度下降算法研究進展[J]. 自動化學報, 2021, 47(9): 2103-2119.
Shi Jiarong, Wang Dan, Shang Fanhua, et al. Research advances on stochastic gradient descent algorithms [J]. Acta Automatica Sinica, 2021, 47(9): 2103-2119.
[16] 周飛燕, 金林鵬, 董軍. 卷積神經網絡研究綜述[J].計算機學報, 2017, 40(6): 1229-1251.
Zhou Feiyan, Jin Linpeng, Dong Jun. Review of convolutional neural network [J]. Chinese Journal of Computers, 2017, 40(6): 1229-1251.