














摘要:針對柑橘病害人工檢測效率低、成本高、準確度低等問題,結合人工智能技術對柑橘病葉進行分類識別。首先,建立模擬復雜環境下的柑橘病葉數據集。其次,提出一種改進的Swin-Trasnformer柑橘病葉分類模型,包含局部感知通道增強注意力模塊(LPCE),以提升模型的感受野和特征表達能力,通過通道之間的相關性進行加權,使模型更容易提取關鍵特征。試驗證明本文模型的分類識別準確率達到98.52%,精確率、召回率和F1-score分別達到98.17%、98.24%、98.28%,均超過基線模型。該模型為柑橘病害的檢測提供技術支撐。
關鍵詞:柑橘病葉;深度學習;分類識別;Swin-Transformer;注意力模塊
中圖分類號:S432: TP391.43
文獻標識碼:A
Classification model of citrus disease leaf based on improved Swin-Transformer
Abstract:
To address the problems of low efficiency, high cost, and low accuracy in manual detection of citrus diseases, this article combines artificial intelligence technology to classify and identify diseased citrus leaves. Firstly, a dataset of citrus disease leaves under simulated complex environments is established. Secondly, an improved Swin Transformer model for citrus disease leaf classification is proposed, which includes a Local Perception Channel Enhanced Attention Module (LPCE) to enhance the models receptive field and feature representation capabilities. Through weighted correlation between channels, the model is made to extract key features more easily. Experiments demonstrate that the classification accuracy of the proposed model reaches 98.52%, with Precision, Recall, and F1-score reaching 98.17%, 98.24%, and 98.28% respectively, all exceeding the baseline model. It providing technical support for the detection of citrus diseases.
Keywords:
citrus diseased leaves; deep learning; classification recognition; Swin-Transformer; attention module
0 引言
柑橘已成為中國栽培面積最大的水果,2020年我國柑橘種植面積達到283.15 hm2,總產量達51 218.7 kt,并將持續增加[1]。隨著栽種面積和產量的增加,柑橘病害問題日益凸顯,包括黃龍病、潰瘍病等[2],對柑橘的品質造成嚴重影響。因此,需要對柑橘病害進行精準檢測。
近年來,許多研究采用光譜成像技術和圖像處理技術來檢測農作物病害[34]。相較于傳統的病害檢測技術[5],新興技術具有更高的準確度和更快的檢測速度,且對檢測對象造成的損傷較小。其中,光譜技術可用于檢測病癥表現不明顯的早期病害,圖像處理技術則主要用于檢測病癥表現明顯時期的病害[6]。圖像處理技術在農作物病害及其識別方面的應用方法主要可分為經典圖像處理算法和深度學習算法兩種。經典圖像處理算法主要操作包括圖像采集、圖像處理(圖像分割、去噪、增強等)、特征提取、分類識別。李亞文等[7]提出基于K-means的圖像分割和顏色特征提取算法,并將其應用于蘋果枯葉病研究。孫瑜等[8]基于Lab空間和K-means聚類算法分割病害區域,采用粒子群算法優化支持向量機模型的懲罰因子和核參數,建立多特征融合分類模型,用于識別黃花菜病害。深度學習算法的主要步驟為數據收集、預處理(調整圖像大小、裁剪、旋轉等)、特征提取、訓練模型、分類識別。孫俊等[9]在MobileNet-V2的基礎上,通過引入輕量型坐標注意力機制和對不同尺寸的特征圖采取上采樣融合操作,構建了一個適用于復雜背景下農作物病害識別的網絡。劉擁民等[10]提出一種水稻病害識別模型MSDB-ResNet,該模型在ResNet模型的基礎上,引入ConvNeXt殘差塊,構建雙分支結構,通過調整每條分支的卷積核大小,提取輸入病害圖像中大小不同的病害特征。
綜上,基于深度學習網絡的柑橘病害分類識別具有可行性。在自然場景中拍攝的樣本數量太少且模型會學習到大量無關特征,出現過擬合現象,且目前仍需進一步提升病害分類識別準確率并將模型應用于實際場景中[1215]。因此,本文模擬復雜環境,自制柑橘病葉數據集,并提出局部感知通道增強注意力模塊(Local Perception Channel Enhancement Attention,LPCE)以提升網絡的感受野和特征的表達能力,通過將LPCE模塊與深度學習模型Swin-Transformer V2[16]相結合,實現對柑橘病特征的有效提取,并在此基礎上搭建柑橘病葉分類系統。
1 數據集構建
1.1 試驗數據獲取
本數據集一共包含6種柑橘葉片2 528張,使用網絡爬蟲和現場拍攝獲取,其中,柑橘煤煙病204張,柑橘炭疽病279張,柑橘潰瘍病368張,柑橘黃龍病650張,柑橘草甘膦病320張,柑橘正常葉707張,均保存為JPG格式。6種柑橘葉片示意圖如圖1所示。
1.2 數據預處理與數據增強
獲得的原始數據大多相互交錯、互相遮擋,特征難以被準確提取。本文首先對采集到的數據進行區域裁剪預處理,使得每個葉片都能獨立呈現,減少背景因素的干擾,患病區域的特征表現會更加明顯。同時,為模擬不同天氣條件對葉片特征的影像,對數據進行不同程度的亮度、對比度、曝光度調整的預處理方法,以豐富數據的特征,使模型在訓練過程中能夠學習到更多復雜環境下的病害特征,提高模型分類識別準確率,如圖2所示。此外,為避免病害數據的類別樣本不平衡,使小數據樣本能夠正常訓練,對數據分別進行了鏡像、翻轉、縮放等數據增強方法,通過幾何變化改變數據中的像素空間位置,增加數據集樣本量,避免過擬合現象的發生。
通過預處理和數據增強后,柑橘煤煙病、炭疽病、潰瘍病、黃龍病、草甘膦病均為3000張圖片,柑橘正常葉為5000張圖片。
2 Swin-Transformer LPCE柑橘病葉分類模型
本文使用Swin-Transformer V2作為基線模型,并在每個階段加入LPCE模塊,如圖3所示。
2.1 Swin-Transformer模型
Swin-Transformer[17]是一種視覺Transformer模型,常用于處理圖像分類識別任務。該模型引入了窗口多頭自注意力(Windows Multi-Head Self-Attention,W-MSA)和偏移窗口多頭自注意力(Shift Window Multi-Head Self-Attention,SW-MSA)替代Transformer模塊之中的多頭自注意力(Multi-Head Self-Attention,MSA),Swin-Transformer塊結構如圖4所示。W-MSA采用固定大小的局部窗口,將圖像劃分為互不重疊的區域,并對圖像的不同局部區域進行多頭自注意力計算。SW-MSA則解決了窗口多頭自注意力模塊無法在不同窗口之間傳遞信息的問題,在第l層使用窗口多頭自注意力模塊,然后第l+1層使用偏移窗口多頭自注意力模塊,通過循環位移進行窗口與窗口之間的信息交流,從而大幅降低計算復雜度。Swin-Transformer塊的計算公式如式(1)~式(4)所示。
式中:
Xl、Xl+1——Layer1、Layer2的輸出;
ln——層歸一化;
MLP——多層感知器。
由于模型容量擴大后導致訓練過程嚴重不穩定,Swin-Transformer V2引入了殘差后歸一化(residual-post-normalization),并采用縮放余弦注意力替代點積注意力,以提高視覺模型的穩定性。此外,Swin-Transformer V2引入了對數間隔連續位置偏差(Log-spaced Continuous Position Bias,Log-CPB),有效地將使用低分辨率圖像預訓練的模型轉移到具有高分辨率輸入的下游任務,并使用自監督預訓練方法SimMIM減少對大量標記圖像的需求。
2.2 LPCE模塊
為增強模型對柑橘葉片病害特征的提取能力,受局部感知模塊啟發[1820],本文在每個階段的Swin-Transformer V2 Block前接入LPCE模塊,如圖5所示。
LPCE模塊能有效增大感受野,將多尺度信息進行融合并分配合適的權重,使模型能重點關注病害區域。因為Swin-Transformer V2的數據輸入格式與傳統卷積神經網絡不同,LPCE首先將輸入的特征向量重新投影(Reshape)形成多維空間的特征映射(H,W,C),在普通卷積降低通道數后接入兩條空洞卷積分支,在不損失信息的情況下擴大感受野,空洞卷積拓張率分別設置為r=1和r=3,擴張后的感受野大小K計算方法如式(5)所示。
K=(r-1)(k-1)+k(5)
式中:
k——常規卷積核尺寸;
r——拓張率。
所以分別獲得了3×3和7×7大小的感受野,并在多級特征融合后使用殘差連接,使模型能夠學習到更復雜的特征。具體過程如式(6)~式(8)所示。
X1=DConvr=1[Convk=1(X)](6)
X2=DConvr=3{Convk=3[Convk=1(X)]}(7)
X3=Concat(X1+X2)+X(8)
式中:
X——輸入特征;
X1、X2——兩條支路的輸出;
X3——經過殘差連接后的輸出;
Conv——卷積核為k的普通卷積;
Dconv——擴張率為r的空洞卷積;
Concat——特征拼接。
再經過GeLU激活函數后引入高效通道注意力模塊(Efficient Channel Attention,ECA)[21],ECA模塊是一種超輕量級模塊,模塊的結構如圖6所示。通過學習特征通道,為每個通道根據重要性分配不同的注意力值,使網絡可以更好地捕捉到不同通道的關鍵信息,減少對無關或冗余信息的計算,有助于網絡合理地分配計算資源,提升模型準確率。使用大小為k的一維卷積從該通道信息中獲取局部通道之間的相關性,計算公式如式(9)所示。本文取γ=2,b=1。
式中:
C——通道數;
odd——向上取最近的奇數。
3 試驗結果與分析
3.1 試驗環境與參數設置
為滿足Swin-Transformer LPCE網絡輸入圖像的尺寸要求,將柑橘病葉數據集中所有圖像大小調整為224像素×224像素,按照70%、20%、10%的比例劃分為訓練集、測試集和驗證集。使用Adam優化器優化模型,權重衰減為5×10-4,初始學習率為10-4,采用余弦退火[22]學習率衰減,batchsize設置為16,迭代次數設置為25,損失函數選用Cross Entropy Loss。使用Python3.7以及PyTorch1.8搭建,RTX3090訓練。
3.2 評價指標
為驗證本文提出的模型在柑橘病葉分類識別任務上的有效性,采用準確率(Accuracy)、精確率(Precision)、召回率(Recall)和F1-score作為模型的評價指標。準確率代表了模型整體的分類效果,即對所有類別的分類結果。精確率、召回率和F1-score表示的是每一個類別的識別評估標準。
式中:
FP——真實情況為負例卻被預測為正例的樣本數量;
TP——真實情況和預測情況均為正例的樣本數量;
TN——真實情況及預測情況均為負例的樣本數量;
FN——真實情況為正例卻被預測為負例的樣本數量。
3.3 不同模型的識別結果圖
為驗證本文模型的性能,選擇6個經典的圖像分類模型在相同數據集和試驗平臺條件下進行對比試驗,試驗結果如表1所示。本文提出的Swin-Transformer LPCE網絡與其他深度學習網絡相比[2326],分類準確率達到了最高的98.52%,精確率、召回率和F1-score也均為最高,分別為98.17%、98.28%和98.24%,與傳統卷積網絡CNN、ResNet50、VGG16相比分類準確率增加4%~7%,提升明顯。與其他Transformer模型相比,也取得了1%~3%的提升。和基線模型Swin-Transformer V2的對比中,Swin-Transformer LPCE在僅增加50 s訓練時間的前提下,其余評價指標均提升了1%~2%。但是與其他Transformer模型相比,本文模型的訓練時間仍有較大的優化潛力。綜上所述,Swin-Transformer LPCE可以有效提升柑橘病葉分類識別準確率。
同時繪制以上6個模型的訓練曲線和損失曲線,如圖7所示。可以看出,隨著迭代次數的不斷增加,每種模型的分類識別準確率均呈現上升趨勢,其中Swin-Transformer LPCE的分類識別準確率最高,達到了98.52%,且收斂速度優于其他模型,網絡波動更小,同樣該模型的損失曲線明顯低于其他模型且更加平滑。這表明Swin-Transformer LPCE通過引入LPCE模塊融合多尺度信息,使模型能重點關注病害區域。
為了更加準確地評估柑橘病葉分類識別模型,展示了基線模型Swin-Transformer V2和Swin-Transformer LPCE的混淆矩陣,如圖8所示,并測試了模型對每一種病葉的分類結果,得到模型的精確率、召回率和F1-score,結果如表2所示。
從圖8和表2可以發現,Swin-Transformer LPCE在大部分評價指標上均優于Swin-Transformer V2,且各項指標均達到91%以上,特別是Swin-Transformer LPCE對于正常葉片和草甘膦病葉的特征能夠進行清晰地區分。這些結果充分證明了Swin-Transformer LPCE模型在柑橘病葉的分類識別能力方面取得了顯著提高。
3.4 消融試驗
為證明LPCE模塊設計的有效性,對其內部結構進行消融試驗,基線算法為Swin-Transformer V2網絡,“√”表示添加的組件。試驗結果如表3所示。
從表3可知,試驗2比試驗1分類準確率高出0.32%,證明雙分支空洞卷積提供的多尺度信息可以使模型獲得更豐富的信息。試驗3和試驗4在加入ECA模塊后,準確率均提升0.3%左右,ECA模塊的權重重新分配可以使模型更容易捕捉到關鍵信息。通過試驗4與試驗5的對比,在LPCE模塊中添加殘差連接可以使模型準確率進一步提升,達到最高的97.78%。
3.5 系統軟件界面化效果
通過pyQt5搭建柑橘病葉分類識別系統,將訓練好的Swin-Transformer LPCE作為分類模型,分類界面和部分分類結果如圖9所示,該系統具備上傳照片、葉片分類的功能,經測試,可以有效完成柑橘病葉的分類識別任務。
4 結論
1) 針對柑橘病葉的背景環境復雜、部分特征差異小導致分類識別準確率低等問題,本文提出一種基于改進Swin-Transformer的柑橘病葉分類識別方法,通過引入局部感知通道增強注意力模塊,提升感受野和特征的表達能力。并收集柑橘葉片自建了一個模擬復雜環境下的柑橘病葉數據集,以此來增強模型的魯棒性。
2) 模型分類準確率、精確率、召回率和F1-score分別達到98.52%、98.17%、98.28%和98.24%,均高于基線模型,并結合消融試驗驗證了改進模型的有效性,并在此基礎上搭建柑橘病葉分類系統,使模型可以運用到現實場景之中。
3) 在下一階段,將會對提升模型計算速率、簡化模型參數進行探究,同時持續追蹤柑橘病葉分類識別系統在實際場景中的應用情況,并對系統進行進一步的改進。
參 考 文 獻
[1] 孫愛華, 張禮杰, 李虎, 等. 不同水分處理的三峽庫區柑橘品質綜合評價[J]. 節水灌溉, 2022(12): 24-30.
Sun Aihua, Zhang Lijie, Li Hu, et al. A comprehensive evaluation of citrus quality in the Three Gorges Reservoir Area under different water treatments [J]. Water Saving Irrigation, 2022(12): 24-30.
[2] 邊柯橙, 楊海軍, 路永華. 深度學習在農業病蟲害檢測識別中的應用綜述[J]. 軟件導刊, 2021, 20(3): 26-33.
Bian Kecheng, Yang Haijun, Lu Yonghua. Application review of deep learning in detection and identification of agricultural pests and diseases [J]. Software Guide, 2021, 20(3): 26-33.
[3] Wu Y L, Chen Y Y, Lian X Q, et al. Study on the identification method of citrus leaves based on hyperspectral imaging technique [J]. Spectroscopy and Spectral Analysis, 2021, 41(12): 3837-43.
[4] Wang K J, Guo D M, Zhang Y, et al. Detection of Huanglongbing (citrus greening) based on hyperspectral image analysis and PCR [J]. Frontiers of Agricultural Science and Engineering, 2019, 6(2): 172-180.
[5] Pydipati R, Burks T F, Lee W S. Identification of citrus disease using color texture features and discriminant analysis [J]. Computers and Electronics in Agriculture, 2006, 52(1-2): 49-59.
[6] 杜英杰, 宗哲英, 王禎, 等. 農作物病害診斷方法現狀和展望[J]. 江蘇農業科學, 2023, 51(6): 16-23.
Du Yingjie, Zong Zheying, Wang Zhen, et al. Current situation and prospect of diagnostic methods for crop diseases [J]. Jiangsu Agricultural Sciences, 2023, 51(6): 16-23.
[7] 李亞文, 張軍, 陳月星. 基于K-means和特征提取的植物葉部病害檢測與實現[J]. 陜西農業科學, 2021, 67(6): 33-37, 41.
Li Yawen, Zhang Jun, Chen Yuexing. Detection of plant leaf diseases based on K-means and feature extraction [J]. Shaanxi Journal of Agricultural Sciences, 2021, 67(6): 33-37, 41.
[8] 孫瑜, 張永梅, 武玉軍. 基于粒子群算法和支持向量機的黃花菜葉部病害識別[J]. 中國農學通報, 2022, 38(8): 135-140.
Sun Yu, Zhang Yongmei, Wu Yujun. Recognition of hemerocallis citrina leaf disease based on PSO and SVM [J]. Chinese Agricultural Science Bulletin, 2022, 38(8): 135-140.
[9] 孫俊, 朱偉棟, 羅元秋, 等. 基于改進MobileNet-V2的田間農作物葉片病害識別[J]. 農業工程學報, 2021, 37(22): 161-169.
Sun Jun, Zhu Weidong, Luo Yuanqiu, et al. Recognizing the diseases of crop leaves in fields using improved Mobilenet-V2 [J]. Transactions of the Chinese Society of Agricultural Engineering, 2021, 37(22): 161-169.
[10] 劉擁民, 胡魁, 聶佳偉, 等. 基于MSDB-ResNet的水稻病蟲害識別[J/OL]. 華南農業大學學報: 1-11[2023-08-25]. http://kns.cnki.net/kcms/detail/44.1110.S.20230707.1325.004.html.
Liu Yongmin, Hu Kui, Nie Jiawei, et al. Rice pest identification based on MSDB-ResNet [J/OL]. Journal of South China Agricultural University: 1-11[2023-08-25]. http://kns.cnki.net/kcms/detail/44.1110.S.20230707.1325.004.html.
[11] 杜海順, 張春海, 安文昊, 等. 基于多層信息融合和顯著性特征增強的農作物病害識別[J]. 農業機械學報, 2023, 54(7): 214-222.
Du Haishun, Zhang Chunhai, An Wenhao, et al. Crop disease recognition based on multi-layer information fusion and saliency feature enhancement [J]. Transactions of the Chinese Society for Agricultural Machinery, 2023, 54(7): 214-222.
[12] Wang B. Identification of crop diseases and insect pests based on deep learning [J]. Scientific Programming, 2022.
[13] Mallick M T, Biswas S, Das A K, et al. Deep learning based automated disease detection and pest classification in Indian mung bean [J]. Multimedia Tools and Applications, 2023, 82(8): 12017-41.
[14] Xiao Z T, Yin K, Geng L, et al. Pest identification via hyperspectral image and deep learning [J]. Signal Image and Video Processing, 2022, 16(4): 873-80.
[15] Liu Y W, Zhang X, Gao Y X, et al. Improved CNN method for crop pest identification based on transfer learning [J]. Computational Intelligence and Neuroscience, 2022.
[16] Liu Z, Hu H, Lin Y T, et al. Swin Transformer V2: Scaling up capacity and resolution [C]. 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2022: 11999-12009.
[17] Liu Z, Lin Y, Cao Y, et al. Swin Transformer: Hierarchical vision transformer using shifted windows [C]. Proceedings of the IEEE International Conference on Computer Vision. IEEE Press, 2021: 10012-10022
[18] Chen L C, Papandreou G, Kokkinosi I, et al. DeepLab: semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(4): 834-848.
[19] Chen L C, Papandreou G, Schroff F, et al. Rethinking atrous convolution for semantic image segmentation [EB/OL]. https://arxiv.org/abs/1706.05587v3, 2022-05-09.
[20] 錢坤, 李晨瑄, 陳美杉, 等. 基于改進Swin Transformer的艦船目標實例分割算法[J/OL]. 系統工程與電子技術: 1-12[2023-09-04]. http://kns.cnki.net/kcms/detail/11.2422.TN.20220625.1335.012.html.
Qian Kun, Li Chenxuan, Chen Meishan, et al. A ship target instance segmentation algorithm based on improved Swin Transformer [J/OL]. Systems Engineering and Electronics: 1-12[2023-09-04]. http://kns.cnki.net/kcms/detail/11.2422.TN.20220625.1335.012.html.
[21] Wang Q L, Wu B G, Zhu P F, et al. ECA-Net: Efficient channel attention for deep convolutional neural networks [C]. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2020: 11531-11539.
[22] He T, Zhang Z, Zhang H, et al. Bag of tricks for image classification with convolutional neural networks [C]. IEEE Conference on Computer Vision and Pattern Recognition. IEEE, 2019: 558-567.
[23] Kim Y. Convolutional neural networks for sentence classification [J]. Eprint Arxiv, 2014.
[24] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770-778.
[25] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition [J]. arXiv: 1409.1556.2014(9).
[26] Dosovitskiy A, Beyer L, Kolesnikov A, et al. An image is worth 16×16 words: Transformers for image recognition at scale [C]. 9th International Conference on Learning Representations, 2021: 1-22.