<ol id="ebnk9"></ol>
    1. 基于多尺度特征提取深度殘差網絡的水稻害蟲識別

      發布時間:2025-06-20 18:09:11   來源:心得體會    點擊:   
      字號:

      鄭顯潤,鄭 鵬,王文秀,程亞紅,蘇宇鋒

      (鄭州大學機械與動力工程學院,河南 鄭州 450000)

      水稻作為我國主要農作物,在我國的種植面積穩定在3 000萬hm2,年產量超2萬億t。稻米生產的安全穩定對于保證我國民眾的口糧自給和糧食安全具有重要意義。在水稻種植過程中,每年都會因為多種病蟲害的連續發生對我國稻米生產造成巨大的損失,水稻害蟲的準確識別和監測對我國的稻米生產具有重要的意義。傳統的水稻害蟲識別主要依賴農民經驗,但由于水稻害蟲種類多且特征多變,對識別人員的專業性要求較高,從事農業生產的人員難以具備所需要的專業素養,導致人工作業很難滿足現代農業生產的需求。

      近年來,隨著機器視覺和深度學習技術的發展,農業病蟲害的分類識別問題也得到了廣泛的研究,越來越多的學者將深度學習運用到病蟲害的圖像識別中。梁勇等[1]采用YOLOv5算法研究了稻縱卷葉螟和水稻二化螟識別計數,準確率達到了93.39%。楊紅云等[2]采用卷積神經網絡和遷移學習的方法實現了對6類水稻害蟲實驗室條件下的分類,準確率高達99.05%。姚青等[3]使用改進的RetinaNet網絡實現對水稻冠層害蟲為害狀的自動監測,準確率達到了93.76%。劉德營等[4]采用卷積神經網絡的方法對自然狀態下白背飛虱進行了識別,準確率達96.17%。謝成軍等[5]使用稀疏編碼的空間金字塔模型識別農業害蟲圖像,與早期支持向量機和神經網絡方法相比,提高了帶背景害蟲圖像的識別精度,識別準確率達89.2%。Xiao等[6]基于詞袋模型和支持向量機(BOF-SVM)對白粉虱、小菜蛾、薊馬和黃曲條跳甲等4種蔬菜害蟲進行了分類和分析。張博等[7]運用空間金字塔池化改進了YOLOv3深度卷積神經網絡,實現了對20種害蟲的識別,識別精度達88.07%。程科等[8]采用一種基于BP和PSO的混合型算法,應用于稻飛虱圖像的識別,平均準確率達到97%。鮑文霞等[9]設計了一個由特征提取、全局優化以及局部優化模塊構成的輕量型殘差網絡LW-ResNet,在13種水稻害蟲圖像的測試數據集上識別準確率達到了92.5%。Lu等[10]將Ghost網絡與Transformer相結合研究了葡萄葉片病蟲害圖像分類的問題,精度達98.14%。Li等[11]使用V iT植物病蟲害公共數據集Plant_Country測試,識別準確率達96.71%,效果優于經典的GooleNet和EfficentNetV2等網絡?,F有的水稻害蟲圖像識別研究局限于簡單背景、少類別甚至單一類別,對復雜自然背景下的水稻害蟲多類別分類問題的研究仍有欠缺。自然環境下,由于害蟲自身保護色的原因,害蟲特征提取是一件很困難的事情,傳統的顏色、紋理、灰度閾值的識別方案無法解決復雜自然背景下的害蟲識別問題,難以提取害蟲本身的有效特征??紤]到水稻害蟲的圖像數據采集的困難與成本,訓練數據集基本為中小數據集,而Transformer模型的自注意力機制會帶來大量計算資源的浪費,且在數據量不足的中小數據集上的表現不如卷積結構[12]。本文采用卷積神經網絡的架構,設計了一種基于多尺度特征提取的深度殘差網絡,以期實現在復雜背景下對水稻害蟲的準確識別和分類,為水稻害蟲的自動監測提供技術支撐。

      1.1 ResNet和Res2Net

      為解決傳統的卷積網絡結構隨著網絡加深帶來的“網絡退化”問題,He等[13]提出了殘差網絡ResNet。相比于傳統的卷積結構,ResNet殘差塊增加了“快捷連接”,使得深度卷積網絡可以對殘差進行學習(圖1)。

      圖1 傳統卷積結構(a)和殘差卷積結構(b)Fig.1 Conventional convolutional structure(a)and residual convolutional structure (b)

      原始的ResNet殘差塊由1×1卷積核、3 ×3卷積核和1×1卷積核3個部分組成,各部分之間采用批歸一化(Batch normalization,BN)層和Relu激活函數連接。為了更多尺度地提取特征,Gao等[14]在ResNet殘差網絡的基礎上改進了殘差單元,采用了一組更小的濾波器替換了n 個 通道的3 ×3卷積核,每個都是w個通道(令n =s×w不失一般性),如圖2所示。這些較小的濾波器以類殘差的層次化方式連接,增加了輸出特征所能代表的尺度的數量。具體來說,在第一個1×1卷積后,輸入 x被劃分成s個子集,定義為:

      圖2 Res2Net殘差結構(尺度=4)Fig.2 Res2Net residual structure(Scale=4)

      每一個特征都有相同的尺度大小,通道是輸入特征的1 /s,除了 x1外 ,其他的子特征都有相應的3 ×3卷積核,定義為Ki(),其輸出為yi,子特征 xi均與 Ki?1()相加,然后輸入到 Ki()。為了在增加s時不增加參數,Gao等[14]省略了 x1的 3 ×3卷積,因此,

      如式(2)所示,每一個子集 xi的卷積操作都能夠學習到所有xi左邊的特征信息,每一個輸出 yi都能增大感受野,所以每一個Res2Net都能獲取不同數量和不同感受野大小的特征組合。這里的s作為特征維的控制參數,s越大意味著特征有著更豐富的感受野,網絡能學習到更多的特征。很明顯,殘差塊中層次化的殘差連接使網絡能在更細粒度級別的變化上捕獲細節和全局特性。

      1.2 多尺度特征提取的深度殘差網絡設計

      基于ResNet和Res2Net結構,本文構建了一種多尺度特征提取的深度殘差網絡,結構如圖3所示。

      圖3 多尺度特征提取的深度殘差網絡結構圖Fig.3 Network structure diagram of depth residual network based on multi-scale feature extraction

      1.2.1 卷積深度的選擇網絡深度決定了網絡的非線性表達能力,越深的網絡意味著可以學習更加復雜的變換,進而可以擬合更復雜的特征。但是越深的網絡訓練成本越高,網絡模型更大,還有可能產生過擬合的問題。綜合考慮,本網絡采用了50層卷積的結構設計。輸入圖像為統一進行尺寸標準化處理的224×224的RGB三通道圖像。

      1.2.2 引入標準化處理層由于圖像數據的每個像素都是0~255之間的數值,數據點均分布在第一象限,而圖像各像素點之間又是強相關的,即相鄰像素點之間的數值往往比較接近,因此,圖像各像素點會落在第一象限的局部區域中,形成狹長分布,特征值分布不均勻。神經網絡初始化時,權重值是隨機生成的,而使用梯度下降時,需要多次迭代才能實現對數據點的有效分割。為了讓神經網絡能更高效地進行數據處理,本文在網絡初始設置了Z-Score標準化處理層,將輸入的圖像進行標準化處理:

      式中,Image表示圖像中各像素的值,Mean和Std分別表示RGB通道各自的平均值和標準差。各像素值將被限定成均值為0、方差為1的分布,數據點在每維上有著相似的寬度,增大數據分布范圍的同時,也能消除奇異樣本數據導致的不良影響,加速網絡收斂。

      1.2.3 首層卷積設計 其輸入是尺寸標準化和標準化處理后的224×224圖像,由64個卷積步長為2的 7×7卷積核組成,He等[15]提出用3個 3 ×3卷積核代替7 ×7卷積核的方案,網絡性能略有提升,但增加了網絡深度。VGG網絡使用這種替代網絡訓練速度會變得很緩慢,考慮到本文網絡增加了多尺度特征提取,為了減小網絡負擔,本文選擇使用7 ×7卷積核。

      1.2.4 池化層的選擇 常用的卷積池化方法有2種:平均池化和最大池化。特征提取的誤差主要來自2個方面,即鄰域大小受限造成的估計值方差增大和卷積層參數誤差造成的估計均值偏移。平均池化可以減小第一種誤差,保留更多的背景信息;
      最大池化能減小第二種誤差,保留更多的紋理信息??紤]到復雜背景下,害蟲的紋理特征更具有代表性,本文網絡選擇使用最大池化,最大池化層由一個步長為2的3 ×3的卷積核構成。

      1.2.5 批歸一化與激活函數 引入Ioffe等[16]提出的BN。本文將BN層用在激活函數之前,可以加快模型收斂,使模型訓練更加穩定,避免梯度爆炸或者梯度消失,且有一定的正則化作用。選用經典的Relu函數作為網絡的激活函數,相較于Sigmod和Tanh,Relu函數沒有飽和區,不存在梯度消失問題,而且計算更簡單、實際收斂速度更快。本文也嘗試了LeakyRelu和PRelu函數,發現LeakyRelu函數并不能帶來性能的提升,而PRelu函數使性能明顯下降。

      1.2.6 多尺度特征提取模塊 多尺度特征提取模塊是由一系列引入Scale splitting層的Bottleneck結構堆疊而成,模塊分為4層,每一層分別由3、4、6、3個Bottleneck結構殘差塊堆疊組成。本文網絡將傳統的ResNet Bottleneck殘差塊中的3 ×3卷積層替換為Scale splitting層,在Scale splitting層中進行多尺度劃分和分尺度的 3×3卷積操作,然后將每個尺度的結果疊加,經BN層和Relu激活后輸入到一個1×1的卷積層中,如圖2所示。殘差塊內部每次卷積之后都接入一個BN層,中間采用Relu激活函數連接。

      1.2.7 選用全局平均池化層 傳統的CNN網絡最后一層都是全連接層(如AlexNet),這樣會導致網絡參數非常多,容易引起過擬合,Lin等[17]研究證明,采用全局平均池化(Global pooling average,GPA)代替原來的全連接層,可以大大減小網絡參數。全局平均池化可以通過加強特征圖與類別的一致性簡化卷積結構,還可以對空間信息進行求和,對輸入的空間變換更具備魯棒性,因此本文網絡在最后一層選用了GPA層。

      網絡最后再接入一個全連接層作為分類器,最終實現對輸入的水稻害蟲圖像進行識別和分類。

      1.3 數據集的構建

      1.3.1 數據集的采集 本文利用現有數據集結合全網檢索的方式進行圖像數據采集,最后人工分揀采集到的數據,形成了包含22類常見的水稻害蟲且擁有6 385張原始圖片的水稻害蟲數據集RicePests22。

      Wu等[18]構建了IP102農業害蟲數據集,但是水稻害蟲的種類較少,而且圖像內容復雜,包含了各齡幼蟲、成蟲以及蟲害為害狀,且夾雜了一些不相關的甚至錯誤的圖像,圖像品質參差不齊;
      此外,IP102數據集僅收集了14種水稻害蟲,種類較少。為了保證數據集的準確性和代表性,本文做了以下工作:1)對IP102數據集的內容進行優化,通過查閱《中國生物志庫》[19]常見水稻害蟲形態特征,剔除不相關的圖片以及各齡幼蟲、卵、蛹和蟲害為害狀的圖片,保留成蟲圖像,人工分揀剔除錯誤分類的圖片;
      2)使用常見水稻害蟲的拉丁名全網檢索害蟲高清圖像,保留每一類的前500張圖片,再根據害蟲特征人工分揀,剔除無關圖像,保留成蟲圖像。擴充了IP102原有的14類水稻害蟲的圖片數量,并在原來的基礎上補充了8類害蟲,使種類擴充到22類。最終形成了包含如圖4所示的22類水稻害蟲的圖像數據集RicePests22。

      圖4 數據集RicePests22中部分害蟲Fig.4 Partial pests in dataset RicePests22

      1.3.2 數據預處理數據集中6 385張圖片的數量仍有不足,且類間樣本圖片數量差異較大,圖像尺寸和質量也參差不齊,訓練樣本分布的不均衡會影響模型的泛化能力,圖像質量也會影響模型的訓練效果。為了提升數據集的可訓練價值,本文對數據集進行了預處理和增強擴充(圖5)。

      1)圖像尺寸標準化(圖5b):由于圖像大小尺寸不一,為了更好地適應深度學習網絡,提取有效特征,本文采用近鄰取樣插值的方法,將圖像統一變換為224×224大小。

      2)Z-Score標準化:分別計算所有樣本中RGB通道的平均值和偏差值,對樣本圖片進行標準化處理,得到標準化圖片,使得預處理的數據被限定成均值為0、方差為1的分布,從而消除奇異樣本數據導致的不良影響。當訓練樣本足夠多時,訓練集和測試集的平均值收斂且相等,這樣可以根據單個樣本的偏差加強分類特征,提高分類的精度。

      3)數據增強擴充(圖5c~圖5h):為了在原來的基礎上擴大樣本數量和弱化樣本分布不均的影響,本文隨機對圖像進行水平翻轉、垂直翻轉、旋轉隨機角度以及隨機改變亮度、對比度和飽和度的處理,將樣本圖像擴大至原來的10倍。同時,為了弱化數據集內樣本分布不均的問題,數據擴充時參考原數據集各類害蟲圖片數量和樣本總體數量的比例,數量多的少擴充,數量少的多擴充,盡量均衡樣本分布。

      圖5 數據預處理與增強擴充Fig.5 Data preprocessing and enhanced enrichment

      2.1 試驗環境和參數設置

      模型的訓練與測試均是在Windows10 64bit操作系統下完成。試驗的硬件環境:CPU使用Inter(R)Core(TM)i9-10900X CPU@3.70GHz,RAM 128GB;
      GPU采用NVIDIA GeForce RTX 3090,顯存容量為24 GB;
      軟件環境:Py to rch 1.11.0,CUDA 11.4,Python 3.7,數據集使用自建的包含22類水稻害蟲的數據集。

      在數據集中隨機抽取80%作為訓練集,其余20%作為測試集,每輪(次)訓練得到的模型均采用測試集驗證模型效果,取最佳的模型保存。為了獲得更好的訓練效果,本文先將網絡在ImageNet中進行預訓練,再導入預訓練參數在RicePests22中訓練。綜合考慮試驗設備的性能和訓練效果,將批量大小(Batch size)設置為64,即每批次選取64張圖像進行訓練與測試,迭代次數(Epoch)設置為100次,損失函數選用交叉熵損失函數,選擇隨機梯度下降優化算法(Stochastic gradient descent,SGD)優化模型,采用動態更新學習率的訓練策略,初始學習率設置為0.000 1,若最近的2次訓練準確度沒有提升,學習率下調20%,最小的學習率設為0.000 01。

      2.2 試驗結果與分析

      2.2.1 網絡模型的性能本文分別對特征維(s)為4、6和8的多尺度深度殘差網絡進行了訓練。由圖6可知,s=6時訓練的模型準確率最高,平均準確率達到了92.023%;
      隨著訓練的進行,損失函數逐步收斂趨于穩定,平均準確率逐步提升并穩定在一個范圍內波動,訓練的最好結果發生在第69次迭代,損失函數也收斂至接近于0。

      圖6 模型的損失函數與平均準確率圖像Fig.6 Loss and average accuracy Images of this model

      為了更好地評估模型的分類效果,本文將每一類的識別準確率與同為50層卷積結構的ResNet50網絡進行對比,結果如圖7所示。由圖7可知,本文網絡訓練的模型整體準確率和大部分類別的分類準確率都優于ResNet50網絡,尤其對ResNet50中表現不佳的白背飛虱和二星蝽有很大的提升。由于本文網絡增加了特征提取尺度,可以提取到更多更細粒度化的特征。如白背飛虱和二星蝽這類害蟲,其個體獨有特征在背部紋路細節,本網絡訓練的模型擁有更準確的識別效果。但整體上看,不論是ResNet50還是本網絡在同屬稻飛虱的灰飛虱、白背飛虱、褐飛虱,同屬稻螟蟲的水稻大螟、水稻二化螟、水稻三化螟,以及同屬蝽類的盾蝽、稻綠蝽、二星蝽的識別表現均不是很理想。由于這幾類害蟲的屬內差別較小,外形特征相似度較高,而且害蟲普遍具有與周圍環境類似的花紋和保護色,神經網絡在提取每類害蟲獨有特征上有欠缺,仍有可提升的空間。但是在屬間的識別上兩者都取得了很好的效果,像稻稈蠅、稻縱卷葉螟、稻癭蚊等識別準確率都能達到90%,甚至更高??梢?,本網絡對解決水稻害蟲圖像識別的問題具有實用價值。

      圖7 ResNet50與本文網絡_s=6的整體準確率和各種害蟲準確率對比圖Fig.7 Comparisons of the overall accuracy rates and the accuracy rates of various pests between ResNet50 and this network _s=6

      為了更好地評估本網絡模型的性能,本文在同一數據集上從識別準確率、訓練模型大小、單張圖片模型識別時間和訓練時間4個方面與其他的經典網絡進行了對比,結果如表1所示。由表1可見,準確度最高的是本文網絡_s=6(92.023%),相較于同樣是50層卷積結構的ResNet50,本網絡模型的平均識別準確率提高了1.678個百分點;
      相較于經典網絡AlexNet和VGG16,本文網絡的識別準確率更具有明顯的優勢。

      表1 各類網絡模型的性能對比Table 1 Performance comparison of various network models

      從模型大小上來看,ResNet18最小(42.7MB),VGG16最大(528.0MB);
      本文網絡_s=6處于一個中游水準(134.0 MB),本文網絡_s=4(90.7 MB)與ResNet50(90.1MB)模型大小相差不大,但平均識別準確率提升了0.6%??梢?,本文網絡模型可以在不顯著增加模型大小的情況下,提升模型性能;
      對比s分別為4、6、8時的模型大小發現,Scale參數對模型大小具有較大的影響。

      從模型單張圖片識別速度來看,相對簡單的網絡ResNet18最快,識別時間為60.88ms;
      AlexNet在擁有233.0MB模型大小的情況下仍然有61.81 ms的識別時間,僅次于ResNet18,顯然AelxNet模型在識別速度上具有一定的優勢。相較于其他模型,本文的網絡模型識別速度處于一個中游水準,對比同為50層卷積的ResNet50,識別時間明顯延長,表明本文網絡模型的識別效率不具備明顯優勢。

      從訓練時間上來看,訓練時間是與模型復雜程度成正比的,本文的網絡模型由于增加了多尺度特征的提取,網絡更加復雜,訓練時間更長。

      從Scale參數引起平均識別準確率的變化來看,增加特征提取尺度數量(s)并不一定會提升模型識別準確率。當s從6增加到8的時候,準確率從92.023%下降到了91.588%。增加尺度數量,網絡可以提取到更多的特征,但是這些特征不一定是有效的特征,而無效的特征會影響模型的準確度,尺度數量應該視具體的應用環境而定。對比s分別為4和6的數據來看,適當增加多尺度的特征提取可以在不明顯提升訓練和識別成本的前提下,有效提升模型的性能。

      2.2.2 網絡模型的應用隨著智慧農業的興起,很多自動化的農業監測系統被設計出來,如彭旭等[20]和Peng等[21]研究了基于機器視覺的農情自助監測系統。本文提出的網絡模型應用到水稻蟲情監控系統中可實現對水稻種植區的蟲情實時監測,結合大數據可以直觀地了解水稻害蟲的種群分布、監測蟲害的危害程度,便于農業管理部門指導農民規范用藥,防止大規模蟲害的發生。水稻蟲情監測系統如圖8所示,其工作邏輯如圖9所示。

      圖8 水稻蟲情監控系統Fig.8 Rice insect monitoring system

      圖9 水稻蟲情監控系統工作流程圖Fig.9 Work flow diagram of rice insect monitoring system

      農民用戶或者農業站工作人員可在蟲害發生地實地拍攝蟲害圖像,通過手機端直接上傳至水稻蟲情監控系統服務器,系統將會對圖像自動分類,并提取上傳圖像的地理位置、經緯度等信息,通過大數據及數據庫技術,實現蟲情數據的可視化實時監測。農業工作人員可根據蟲情數據信息,規范指導農民用藥,在減少農藥殘留的同時,保證水稻產量。同時該系統也能有效地解決水稻病蟲害研究數據采集困難、采集成本高的問題,為從事水稻病蟲害研究的科研人員提供數據支持。

      本文設計了一種基于多尺度特征提取的深度殘差網絡,對復雜自然背景下常見的22種水稻害蟲進行了識別,平均識別準確率達到了92.023%,優于傳統的AlexNet、ResNet18、ResNet34、ResNet50和VGG16等神經網絡,可作為水稻害蟲機器視覺檢測的模型訓練網絡。分析多尺度特征提取的深度殘差網絡對22種水稻害蟲識別的表現發現,本網絡訓練的模型對屬間的識別效果較好,對屬內不同種的害蟲識別仍有提升的空間;
      同為50層卷積結構的ResNet50網絡的識別表現也存在同樣的問題。從識別準確率、模型大小、單張圖片識別速度以及訓練效率等方面的表現來看,本文設計的網絡可以在不明顯增加訓練和識別時間的前提下,有效提升模型的性能。增加特征提取尺度數量并不一定使模型的性能提升,這與特征的過分提取有關,過多無效的特征提取不僅會使模型大小增加、識別效率降低甚至也會帶來識別準確率的下降,因此,特征尺度數量需視具體情況而定。

      本文網絡模型可應用于水稻蟲情監控系統,實現水稻害蟲的準確分類,但本文網絡及系統仍有改進的空間。在網絡結構方面:1)后續在圖像數據足夠的情況下可以借鑒Transformer結構對網絡優化,提升網絡分類準確度;
      2)也可以將多尺度特征提取的深度殘差網絡當做教師網絡,使用遷移學習的方法,訓練更輕量化的模型,達到更理想的實際應用效果。在水稻蟲情監控系統方面:1)可以開發蟲情分布實時熱點圖,方便更直觀地觀測蟲情變化;
      2)可以擴充葉片病變的監測內容,實現更多種類病蟲害的監測;
      3)可以增加防治建議推送,用戶田間上傳數據后,系統根據用戶上傳的病蟲害推送防治建議,包括農藥品種和用藥規范等信息。

      猜你喜歡特征提取殘差害蟲基于雙向GRU與殘差擬合的車輛跟馳建模網絡安全與數據管理(2022年3期)2022-05-23蝸牛一覺能睡多久?好孩子畫報(2021年9期)2021-09-26冬季果樹常見蛀干害蟲的防治今日農業(2020年23期)2020-12-15基于殘差學習的自適應無人機目標跟蹤算法北京航空航天大學學報(2020年10期)2020-11-14基于遞歸殘差網絡的圖像超分辨率重建自動化學報(2019年6期)2019-07-23基于Daubechies(dbN)的飛行器音頻特征提取電子制作(2018年19期)2018-11-14棗樹害蟲的無公害防治現代園藝(2017年21期)2018-01-03Bagging RCSP腦電特征提取算法自動化學報(2017年11期)2017-04-04農業害蟲的冬季防治現代農業(2016年5期)2016-02-28平穩自相關過程的殘差累積和控制圖河南科技(2015年8期)2015-03-11
      国产另类无码专区|日本教师强伦姧在线观|看纯日姘一级毛片|91久久夜色精品国产按摩|337p日本欧洲亚洲大胆精

      <ol id="ebnk9"></ol>