?

基于改進ShuffleNet V2 的柑橘病害識別研究

2024-03-09 08:40于雁南莫泳彬嚴繼池熊春林竇世卿楊榮峰
河南農業科學 2024年1期
關鍵詞:柑橘注意力準確率

于雁南,莫泳彬,嚴繼池,熊春林,竇世卿,楊榮峰

(1.桂林理工大學機械與控制工程學院,廣西 桂林 541006;2.桂林理工大學測繪地理信息學院,廣西 桂林541006;3.集美大學輪機工程學院,福建 廈門 361021)

柑橘是我國產量最高和消費量最大的水果,也是世界上產量最高的水果[1]。隨著種植面積不斷增加,大規模種植讓柑橘病害防治工作面臨不小的挑戰。在柑橘種植過程中,病害會影響產量和品質,甚至出現毀園,造成巨大的經濟損失。目前,傳統的柑橘病害識別主要依靠人工實地觀察,由于人工識別工作量大、識別主觀性強等原因,導致病害檢測效果并不理想。因此,構建一個簡單的柑橘病害識別方法具有重要的現實意義。

近年來,深度學習在自然語言處理、圖像識別、語音識別等方面取得了飛速發展[2-4],能夠自動從輸入數據中提取復雜特征,更具客觀性[5-6]。同時,深度學習在農業病害識別領域逐漸興起[7-13]。黃平等[14]提出一種基于改進VGG19 的柑橘病蟲害識別方法,引入多尺度特征融合,同時使用Inception 模塊增加網絡的深度和寬度。帖軍等[15]提出一種基于改進ResNet34 的柑橘病害識別方法,解決了模型泛化能力弱、魯棒性差的問題。鮑文霞等[16]提出一種基于改進卷積神經網絡的玉米病害識別模型,通過Inception 與ResNet 構成特征融合網絡,提高了模型的穩定性,為研究玉米病害識別模型做出探索。

為了提升網絡性能,通過堆疊更深的網絡或構建更復雜的網絡是一個可行的辦法。但是,加深或者拓寬網絡導致計算復雜度增加,模型準確率提升往往伴隨計算開銷變大。XING 等[17]基于自建柑橘病蟲害數據集開發了一個輕量級的卷積神經網絡(Convolutional neural network,CNN)模型,對柑橘17類害蟲和7 類病害進行識別,準確率為93.33%。洪惠群等[18]基于ShuffleNet V2 0.5x 對網絡進行改進,提出多種農作物病害識別模型,結果顯示,相比于原網絡,準確率由85.6%提高到86.5%。輕量級卷積神經網絡的識別精度一般低于大型網絡模型,如何在確保模型輕量化的前提下,進一步提高識別準確度是亟待解決的問題。鑒于此,針對識別率問題,在ShuffleNet V2 模型中融入混合注意力模塊(Mixed attention module,MAM),將較大的權重分配到病斑所在的區域,而將較小的權重分配給背景,降低背景等其他因素帶來的干擾,進一步提升病害分類能力。針對模型復雜度高問題,利用Ghost 模塊優化參數量,減少冗余特征;同時,通過簡化ShuffleNet V2 模型整體結構,以調整網絡深度方式進一步保證模型輕量化。

1 材料和方法

1.1 試驗數據與處理

數據集來源于柑橘園實地采集和網絡收集。為了體現果園中柑橘病害發生時真實狀況,拍攝過程中考慮不同角度、光照強度等因素,目的是確保圖片能代表真實的復雜環境。通過邀請柑橘病害防治專家進一步篩選葉片數據,最終得到874 張圖片,其中包括炭疽病、黃龍病、潰瘍病以及健康葉片樣本,部分數據集圖片如圖1所示。

圖1 數據集部分圖像Fig.1 Part of the data set images

數據集規模較小,容易導致整體網絡擬合不佳,分類識別效果差。為了提高模型魯棒性和泛化能力,讓模型具備更高的分類性能,通過數據增強技術擴增樣本數量,具體的方法包括對比度增強、翻轉、旋轉、亮度增強和顏色增強。表1是使用數據增強技術前后數據集分布情況。

表1 柑橘病害數據分布Tab.1 Citrus disease data distribution個

1.2 ShuffleNet模型

為了滿足嵌入式設備上高效運行卷積神經網絡的需求,并在速度和準確度之間達到較好的平衡,曠世科技提出可用于移動設備的輕量化卷積神經網絡ShuffleNet V1[19]。該網絡融入了分組卷積、深度可分離卷積、通道混洗理念,保證了網絡準確度,且大幅度降低模型計算量。

ShuffleNet V2[20]延續了ShuffleNet V1 中輕量化網絡設計原則,根據4 項高效網絡設計原則設計了新的結構,ShuffleNet V2 單元如圖2 所示。4 項高效網絡設計原則如下:1)卷積層中輸入和輸出特征通道數應盡量相等,此時模型速度最快;2)組卷積操作會增加內存訪問成本,使模型速度變慢,應盡量減少組卷積操作;3)網絡模型分支數量越多,速度越慢,應盡量減少分支數量;4)張量操作消耗時間較多,應盡可能減少張量操作。

圖2 ShuffleNet V2單元Fig.2 ShuffleNet V2 unit

1.3 Ghost模塊

GhostNet[21]是一種新型輕量級神經網絡,可以在移動設備上進行快速推理。GhostNet 采用Ghost模塊替換普通卷積操作,通過成本更低的線性操作生成更多的特征映射。Ghost 模塊先使用普通卷積生成部分特征圖,再通過線性操作得到另一部分特征圖的“幻影”,最后將這兩部分特征圖進行拼接后輸出。線性變換生成的特征映射,減少了卷積操作產生的計算量,普通卷積和Ghost模塊示意圖如圖3所示。Ghost 模塊以較小的代價從原始特征中提取所需信息,且Ghost 模塊即插即用便于與其他網絡融合。

圖3 普通卷積和Ghost示意圖Fig.3 Ordinary convolution and Ghost diagram

1.4 注意力機制

注意力機制在深度學習中用于處理數據,主要是有選擇性地聚焦某些相關事物,自動學習和計算輸入數據對輸出數據的貢獻大小。在柑橘病害分類任務中,網絡模型通過堆疊不同的卷積運算提取特征信息。但是,不同的特征信息對區分病害種類的影響程度并不相同,注意力機制能夠對輸入圖像中不同區域的信息進行不同的處理。為了加強網絡模型對病斑區域關注度,減少其他因素對病害識別的干擾,本研究提出了一種包含通道域和空間域的混合注意力機制模塊。

1.4.1 通道注意力模塊 田間采集的作物葉片病害圖像背景復雜,特征多樣,識別難度較大。通道注意力模塊能夠關注柑橘病變圖像中最具代表性的特征信息。ECANet[22]提出了一種不降維的局部跨信道交互高效通道注意力(Efficient channel attention,ECA)機制,通過一維卷積跨通道交互來降低算法復雜度,在增加少量參數量情況下提升網絡性能,ECA模塊的結構如圖4所示。

圖4 ECA模塊Fig.4 ECA module

1.4.2 空間注意力模塊 在柑橘病害分類中,病斑所在區域作為病害識別的顯著特征,該區域位置信息對分類正確率有重要影響。在通道注意力模塊的基礎上,進一步提出了空間注意力模塊(Spatial attention module,SAM)[23]??臻g注意力模塊關注相同通道中不同位置像素的重要性,其本質就是定位特征并獲取權重,將信息集中在重要特征的空間位置上,進一步提升分類能力。SAM 能夠使空間維度不變,同時壓縮通道維度,達到關注目標位置信息的效果。SAM模塊如圖5所示。

圖5 SAM模塊Fig.5 SAM module

1.4.3 混合注意力模塊 相比于常規圖像分類任務,柑橘病害識別中由于發病初期病斑小且類間病害相似度高的特點,容易對不同病害類型圖像造成誤判。為了增強模型對外界因素的抗干擾能力,增強模型對病變區域重要信息的學習能力,本研究基于卷積塊注意模塊(Convolutional block attention module,CBAM)[24]提出一種混合注意力模塊MAM。在CBAM 注意模塊中,通道注意力模塊利用多層感知機(Multilayer perceptron,MLP)進行降維和升維操作,導致參數量變大,且容易造成特征丟失;還有,CBAM 通道與空間注意力模塊之間是一個串行連接,在一定程度上會影響到后者的特征提取能力。針對上述問題,將CBAM 中通道注意力模塊改為高效ECA 模塊;同時,通道注意力模塊和空間注意力模塊采用并行連接,互不影響。MAM混合注意力模塊的結構如圖6所示。

圖6 MAM模塊Fig.6 MAM module

1.5 MAM-ShuffleNet設計

在果園實際種植環境下,柑橘葉片病害識別易受到外界因素干擾,如樹枝、果實、自然光等其他復雜背景,導致模型無法有效地提取葉片病害特征,識別難度大。為了讓模型在精度和復雜度上得到更好的平衡,本研究提出一種基于ShuffleNet V2 的柑橘病害輕量級分類網絡。

首先,引入混合注意力模塊MAM到ShuffleNet V2每一個Stage 中最后一個block。MAM 注意力模塊即插即用,不會改變特征圖輸入尺寸,能夠關注通道上的信息,同時可以關注特征空間域上的位置信息,能夠幫助網絡削弱復雜背景對病害分類能力的影響,提升模型的抗干擾能力。其次,選用Ghost 模塊替換最后一層卷積操作。普通卷積會產生冗余特征信息,導致消耗計算資源和提升復雜度,Ghost模塊使用線性運算產生特征信息,計算量和參數量都低于普通卷積,能夠降低網絡結構參數,同時對準確率不會造成太大影響。最后,調整ShuffleNet V2 模型中每一個Stage 的重復次數,將3 個Stage 中ShuffleNet V2 單元重復次數從4、8、4更改為2、4、2。本研究分類識別的病害種類不多,并不需要過深的網絡模型,減少網絡的深度能夠降低網絡計算量和參數量,同時能夠避免梯度下降不穩定而導致學習能力下降。

MAM-ShuffleNet 結構如圖7 所示,首先將輸入為224×224×3 的圖片經過3×3 卷積操作,輸出特征圖變成112×112×24,然后經過3×3 最大池化層將特征圖大小變為56×56×24,接著通過Stage2、Stage3、Stage4 三個階段重復堆疊ShuffleNet V2 單元,并且每個Stage 間加入了MAM 混合注意力模塊;再經過Ghost 模塊將特征圖通道數變為1 024,然后進行全局平均池化,最后通過一個FC層將輸出設置為4。

圖7 MAM-ShuffleNet網絡模型結構Fig.7 MAM-ShuffleNet network model structure

1.6 試驗環境和參數配置

試驗軟件配置為Ubuntu20.04 操作系統,采用Pytorch 深度學習框架,開發工具為Pycharm 2022.2,編程語言為Python。試驗硬件設備為NVIDIA Jetson AGX Orin Developer Kit,其中CPU 為12 核Arm Cortex-A78AE V8.2,內存為32 GB,GPU 搭載2 048 個NVIDIA CUDA 核心和64 個Tensor Core 核心的NVIDIA Ampere架構。

本研究在模型訓練中超參數設置如下:訓練批次大小為32,迭代次數為200,優化器為SGD,動量參數為0.9,權重衰減為0.000 05,學習率采用余弦退火算法進行衰減[25],初始學習率為0.01,損失函數選用交叉熵損失函數。

1.7 評價指標

本研究選用多種模型性能評估指標[26],包括準確率(Accuracy)、召回率(Recall)、F1 值(F1 score),同時,增加模型參數量(Parameters)、浮點運算數(Floating point operations,FLOPs)等,衡量模型復雜度。準確率、召回率、F1 值計算公式分別如式(1)、式(2)和式(3)所示。

其中,TP為每種類型中準確分類的數量,TN為模型識別為負類的負樣本,FP為模型識別為正類的負樣本,FN為模型識別為負類的正樣本。

2 結果與分析

2.1 不同模型對比結果

為了驗證MAM-ShuffleNet 模型的有效性,將改進模型與多種經典分類模型進行性能對比。選用ResNet50、DenseNet121、EfficientNet B0、MobileNet V2、ShuffleNet V2 0.5x 進行對比試驗,結果如表2所示。

表2 不同模型對比結果Tab.2 Comparison results of different models

從表2 可以看出,各類模型對4 類柑橘葉片識別效果均較好,準確率都達到96%以上。ResNet50模型性能最差,識別準確率為96.1%,且模型較為復雜,在浮點運算數、參數量等指標表現較差。經過200 次迭代訓練,MAM-ShuffleNet 模型識別準確率達到97.7%,為最優分類結果;且在模型復雜度上具備優勢,浮點運算數、內存消耗等指標相比于其他網絡都為最低;相比于EfficientNet B0 網絡,雖準確率一致,但MAM-ShuffleNet 綜合性能更優,在參數量和浮點運算數上都得到進一步優化,分別降低了95.3%和92.6%。本研究提出的模型是一個高效的輕量化網絡,綜合性能良好,能夠較好地滿足果農對病害識別準確度的要求。

為了研究不同注意力機制對柑橘病害分類性能的影響,分別進行CBAM、SE(Squeeze-and-excitation)、ECA、MAM 不同注意力機制試驗,結果如表3 所示。在ShuffleNet 網絡中加入上述4 種注意力機制都能夠提升網絡對病害特征的提取能力,表現在能夠提升模型準確率,加入CBAM、SE、ECA、MAM 模塊平均準確率依次提高0.3、0.8、0.3、1.2 百分點。MAMShuffleNet 模型與其他3 種注意力機制相比,在浮點運算數和內存消耗等模型復雜性評估指標上差異不大,但準確率高達97.7%。MAM 注意力模塊不僅保持模型輕量化,而且能獲得更好的網絡性能。

表3 不同注意力機制對比結果Tab.3 Comparison of different attention mechanisms

由于MAM 注意力模塊的靈活性,能夠直接插入網絡中任意位置。為探究注意力模塊不同的放置位置對網絡性能的影響,本研究討論3 種不同嵌入方式,其嵌入位置如圖8 所示。第1 種為放在ShuffleNet V2 單元中每一個分支的最后一層,且每一個block 都引入了MAM;第2 種為放在每一個ShuffleNet V2 單元的通道混洗后,同樣每一個ShuffleNet V2 單元都添加了MAM;第3 種為放在每一個Stage 后。從表4 可知,第1 種識別率為96.0%,第2種識別率為97.0%,在每一個ShuffleNet V2單元加入注意力模塊會導致網絡中間層的輸出發生變化,并未獲得最佳網絡性能。第3 種所得到的模型綜合性能更優,準確率達到了97.7%,且浮點運算數等模型復雜度評價指標均為最低,較好地實現了模型精度與復雜度之間的平衡。

表4 MAM位置比較結果Tab.4 Comparison results of different MAM locations

圖8 MAM位置Fig.8 MAM location

2.2 可視化分析結果

為了進一步評估本研究模型,采用混淆矩陣可視化方式評估模型。模型在測試集上的混淆矩陣如圖9所示?;煜仃囍兴姓_的預測都在對角線上,所有不正確的預測都不在對角線上,顏色越深,對應類別預測精度越高。

圖9 MAM-ShuffleNet混淆矩陣Fig.9 Confusion matrix of MAM-ShuffleNet

根據圖9 可知,144 張健康葉片中能夠正確識別141 張,準確率為97.9%;157 張黃龍病葉片只有2張被識別錯誤,準確率為98.7%;在123 張炭疽病葉片中,8 張被誤判為潰瘍病,準確率為93.5%;在274 張潰瘍病中,有2 張被識別成炭疽病,有1 張被識別成黃龍病,準確率為98.9%。分析炭疽病較多誤判為潰瘍病原因,可能由于炭疽病樣本數量相比于其他3 類較少,提取到的炭疽病病斑信息并不是很完善,易造成識別錯誤。綜上所述,MAMShuffleNet模型雖然未能將所有病害正確分類,但準確識別了每個類別的大部分樣本圖像,具備良好的實際應用價值。

通過常用的模型評價指標對網絡性能進行評估缺少直觀的顯示,難以了解模型主要關注葉片圖像中哪一部分區域。為了更直觀地分析網絡對病害識別任務的決策方式,采用熱力圖可視化方法對網絡重點關注區域進行顯示。隨機選擇黃龍病、潰瘍病、炭疽病3類樣本圖像進行熱力圖可視化測試,結果如圖10 所示。根據熱力圖可知,ShuffleNet V2網絡對柑橘病害圖像中關鍵的病斑位置無法準確聚焦,對病斑區域關注比較分散,在顯著特征所在區域顏色較淺,導致特征學習不足。由于MAMShuffleNet引入了注意力機制,減少了對復雜背景環境的關注度,能夠更好地關注病害所在區域,在病斑所在位置圖像顏色較深。模型對圖中3類葉片預測結果與真實類型一致,說明了熱力圖中高亮區域能夠為正確識別提供關鍵信息。通過上述分析可知,MAM-ShuffleNet 對于復雜環境下的病害葉片具有更好的識別效果。

圖10 熱力圖對比結果Fig.10 Heat map comparison results

為了進一步顯示網絡中病斑區域的細粒度信息并研究注意力機制對提取特征的影響,使用特征圖進行可視化分析,圖11 為Stage1 后特征圖。在網絡初期,本研究模型通過加入混合注意力模塊可以準確定位到病變葉片所在位置,對復雜環境具有較好的適應性,葉片細粒度信息全面,信息冗余度低,能夠獲取到病害葉片信息,有助于深層網絡進一步提取葉片內病斑特征,并由此做出準確的分類決策。相比于改進模型,ShuffleNet V2 對葉片附近的環境信息敏感,網絡并沒有重點關注存在病害信息的葉片,信息提取能力不如前者。綜上所述,MAM注意力機制能夠增強網絡模型的柑橘病斑特征提取能力,減少背景等其他因素的干擾。

圖11 特征圖可視化結果Fig.11 Visualization results of feature map

2.3 消融試驗結果

消融試驗是為了驗證模型增刪某些模塊對整體網絡性能的影響效果。本研究將改進點引入到ShuffleNet V2,通過消融試驗方法驗證所提出優化方法的有效性。消融試驗包括引入混合注意力模塊MAM、Ghost 模塊和模型結構調整,結果如表5 所示。從表5 可以看出,Ghost 優化卷積使準確率、F1值略有提升,參數量和浮點運算數分別降低了28.6%、10.8%。 將MAM 注意力模塊引入到ShuffleNet V2中,準確率和F1值分別提升0.6、1.1百分點,而模型的參數和浮點運算數也略有提升。在ShuffleNet V2 同時加入Ghost 模塊、MAM 注意力模塊、結構調整3 種優化方法,準確率、F1 值分別提升1.2、1.3 百分點,參數量和浮點運算數下降45.7%和31.0%。由上述試驗可知,MAM-ShuffleNet 不但沒有增加模型復雜度,反而提高了模型的識別準確率。

表5 消融試驗結果Tab.5 Results of ablation test

3 結論與討論

柑橘作為我國南方地區種植面積最廣、經濟地位最重要的水果,病害防治一直是一個緊迫問題。將人工智能技術應用到柑橘病害分類可以提高果園管理效率,進一步提高柑橘產量和品質。本研究針對柑橘病害識別模型識別精度低、模型復雜度高等問題,設計了一個輕量化的柑橘病害分類模型MAM-ShuffleNet。

MAM-ShuffleNet 基于ShuffleNet V2 進行改進,加入了并行混合注意力機制,使用了Ghost 模塊優化卷積模塊,同時對網絡結構進行調整。通過對比試驗、消融試驗、可視化分析驗證了所提出改進措施有助于提升網絡性能。結果表明,MAMShuffleNet 模型準確率達到97.7%,參數量為0.19 M,浮點運算數為29.39 M;與原ShuffleNet V2相比,準確率提升了1.2 百分點,同時參數量和浮點運算數分別降低了45.7%和31.0%;與ResNet50、DenseNet121、EfficientNet B0、MobileNet V2 相比,綜合性能均有所提升。本研究提出的模型不僅優化了模型參數,還提高了識別準確率,對于柑橘病害的智能識別具有重要參考意義和實際應用價值。

本研究還存在一些局限性,可在今后的工作中不斷完善。柑橘病害數據集還需不斷擴大,同時,模型并沒有部署到實際應用。在未來的工作中,如何通過對抗生成網絡建立更多的數據集是一個值得探索的方向;同時,可以設計一個簡單的輪式機器人,將模型部署在輪式機器人中,讓機器輔助人工進行果園病害巡檢。本研究最終目標是將MAM-ShuffleNet 部署在更多的應用場景中,促進數字農業的進一步發展。

猜你喜歡
柑橘注意力準確率
讓注意力“飛”回來
吃柑橘何來黃疸——認識橘黃病
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
高速公路車牌識別標識站準確率驗證法
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
柑橘大實蠅綜合治理
“五及時”柑橘凍害恢復技術
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合