李就好,林樂堅,田 凱,Al Aasmi Alaa
(華南農業大學水利與土木工程學院,廣州 510642)
農作物病害不僅影響作物品質,還影響其質量與經濟效益,是限制農業生產發展的主要因素之一[1-2]。面對復雜多變的氣候與環境,苦瓜的病害更容易爆發,如果不能得到及時治理,病原體依靠氣流,風雨傳播,導致其他植株乃至整片菜地感染,嚴重時可對農業生產者造成極大的經濟損失[3]。根據中國農業技術推廣服務中心對2019年中國農作物重大病蟲害發生趨勢發出的預報,中國農作物病蟲害總體呈現頻發、重發態勢,病蟲害發生將重于2018年,中國累計病蟲害發生面積約為3億hm2[4]。因此,如何快速準確地進行苦瓜病害的自動檢測,是保證了苦瓜豐收的重要基礎,也是對其他作物的保護。
圖像識別分析中,目標檢測任務是定位人們關注的目標的位置及大小,學者對此也做了大量的研究和應用。孫鈺等[5]結合 K-means算法和更快速區域卷積神經網絡(Faster Region with Convolutional Neural Network Features,Faster R-CNN)對誘捕器內紅脂大小蠹進行目標檢測,取得了93.5%以上的精確率;譚紅臣等[6]提出一種基于單次多框檢測器(Single Shot Multi-Box Detector, SSD)的特征增強算法(Feature Enhancement Single Shot Multi-Box Detector, FE-SSD),在PASCAL VOC2007數據集上的檢測精度達 78%;魏宏彬等[7]提出一種改進型 YOLOV3算法,可對黃瓜、番茄、蘑菇等蔬菜進行目標檢測,平均精度達 93.2%;李丹等[8]基于掩碼區域卷積神經網絡(Mask Region with Convolutional Neural Network Features,Mask R-CNN)算法提出對豬只及其爬跨行為的識別算法,在測試集上的準確率為94.5%。在農業上,閆建偉等[9]改進Faster R-CNN算法中的感興趣區域池化方法,對11類刺梨果實進行檢測,識別精度可達83.74%以上,為果實自動化采摘做出了貢獻。張樂等[10]提出了基于 Faster R-CNN的油菜雜草識別方法。目標檢測廣泛應用導航[11]、人臉識別[12]、行人檢測[13]、道路障礙檢物檢測[14]、果實檢測、雜草檢測等諸多領域,卻極少應用于農作物病害檢測。
基于圖像處理的病害識別研究一直是重要的課題。近年來,大多數研究人員把目光聚集在卷積神經網絡上,楊晉丹等[15]利用卷積神經網絡對草莓白粉病設計了一種病害識別模型,正確識別率達到98.61%,但并未在自然環境下進行測試,且識別病害種類單一;馬浚誠等[16]利用了機器學習將黃瓜病害分割出來,再導入基于LeNet5[17]中訓練,分類精確度最高可達98.4%。但在計算機視覺任務中,分割與分類具有很大的相似性,且分割難度更大,先分割再分類可能存在由于分割錯誤導致分類錯誤的風險;Kamilaris等[18]總結了40篇關于深度學習在農業上的應用,總結了許多實用的方法,如圖像數據獲取、圖像預處理、數據增強、分類方法等,為后來的研究人員提供了寶貴的經驗。上述文獻均利用卷積神經網絡出色的學習能力和應對環境的靈活性與適應性,但多數應用是對一張圖進行分類,而不是對病變部分進行定位和識別,實際上應用于自然狀態下農作物病害的目標檢測研究甚少。
本研究基于Faster R-CNN對自然環境下苦瓜葉部病害識別的研究,致力于對葉部病斑區域的自動檢測,包括對苦瓜白粉病、灰斑病、蔓枯病和斑點病的定位與識別。為了節約計算成本與時間,利用預訓練的ImageNet[19]深度網絡模型進行遷移學習,并針對小病斑識別能力低的情況相應優化了區域建議框的尺寸與數量,并在ResNet-50的基礎下結合特征金字塔網絡結構,結果顯示模型性能得到有效提高。通過對苦瓜葉部病害數據集的訓練,最終得到一個融合特征金字塔網絡的Faster R-CNN苦瓜葉部病害識別模型,該模型擁有快速有效地識別自然環境下的苦瓜葉部病害的優勢。
為了識別苦瓜葉部病害,需要采集相關圖像,以建立圖像數據集。本研究的苦瓜葉部病害圖像數據采集于廣東省廣州市南沙區東升農場,采集時間段為2019年6月,在自然光下(時間段為9:00-12:00、14:00-17:00)對田間苦瓜葉片進行多個方位拍攝。在自然光下更有利于拍攝作物病害的主要特征,如病害的紋理、顏色、形狀等,也更能貼切實際,適應農作物病害檢測。圖像采集設備為微型單鏡頭數碼相機,型號為 SONY DSC-HX400,圖像分辨率為5 184×3 888。采集的圖像樣本如圖1所示。
在訓練深度學習模型時,訓練數據越多、越全面,其識別能力越強,因此本研究采用多種數據增強方法[20]實現更復雜的數據描述,對田間采集的1 204張苦瓜葉部圖像隨機進行逆時針90°、180°、270°旋轉[21],以及水平鏡像翻轉和垂直鏡像翻轉[22]處理,最后得到10 627張擴展圖像數據集,根據病斑情況對圖像進行了分類,其分類情況如表 1所示,此方法使有限的圖像數據模型獲得具有魯棒性的模型,并增加模型的泛化能力。

表1 圖像數據集種類和數量Table 1 Category and quantity of image data sets
對擴展后的圖像數據集進行標注,以便訓練檢測模型。本研究采用 Labelme圖像標注工具對數據集中的目標進行標注,標注時對每一個病斑或健康葉片采用一個矩形框標注,以確保矩形框的內容盡可能單一,且每張圖像至少包含一個對像。
在總樣本中隨機選取90%(9 564張)圖像作為訓練集,在訓練集中隨機選取15%(1 435張)作為驗證集,對模型的參數進行修正,在總樣本中隨機選取10%(1 063張)作為測試集,用于評估最終模型的泛化能力。訓練集中健康的苦瓜葉片樣本數為3 067,苦瓜白粉病樣本數為3 001,苦瓜灰斑病樣本數為3 201,苦瓜蔓枯病樣本數為3 217,苦瓜斑點病樣本數為6 875。
建立目標檢測模型的目的是將目標物體進行定位和識別。Faster R-CNN[23]則是目標檢測領域中最流行的模型之一,被廣泛應用于人體姿勢識別和目標追蹤等方面,在相同的數據集上準確率要高于其他檢測算法諸如YOLO、SSD等。原始的Faster R-CNN的網絡結構包括特征提取網絡(Feature Extraction Network)、區域建議網絡(Region Proposal Network,RPN)和區域卷積神經網絡(Region with Convolutional Neural Network Features,R-CNN)[24]3個部分(圖2)。

圖2 Faster R-CNN結構框架圖Fig.2 Framework diagram of Faster R-CNN
Faster R-CNN 的特征提取網絡能夠自動提取圖像目標特征,并將所得特征共享后續的RPN和R-CNN。目前,ResNet[25]、ZF-Net[26]、VGG-16[27]等卷積神經網絡都具有很強的特征提取能力,因此,本研究選取ResNet-50卷積神經網絡作為Faster R-CNN的特征提取網絡,同時選取了ZF-Net、VGG-16兩個卷積神經網絡作為本研究的對比試驗,以便對比分析不同特征提取網絡模型的性能。
Faster R-CNN 的區域建議網絡是一個全卷積神經網絡。通過 RPN可輸出一系列目標物體的分數和對應的區域建議框,用于判斷該區內的目標屬于前景或背景(圖3)。

圖3 區域建議網絡結構框架圖Fig.3 Framework diagram of region proposal network
RPN總體的損失函數[23]如式(1)所示

式中L為RPN的損失;Lcls為分類層損失;Lreg為回歸層損失。
由此可見,RPN整體的損失可以分為分類層損失和回歸層損失,分類層損失函數與回歸層損失函數[28]如式(2)和式(3)所示

式中Ncls為分類樣本數;Nreg為回歸樣本數;pi為目標的預測概率;為區域建議的判別值;ti為預測邊界框的坐標向量;為真實邊界框的坐標向量;i為第i個區域建議框;λ為權重參數,令λ=10;smoothL1為平滑損失函數。
R-CNN連接在特征提取網絡之后,用于提取圖像的感興趣區域,進而對目標物體的坐標信息進行回歸修正,最終準確實現苦瓜葉部病害的目標識別。
已有Zhang等[13]在多尺度目標檢測中,Faster R-CNN對小物體的檢測精度相對于較大目標下降 10%左右。主要原因是小物體所在圖像的尺寸較小,經過原始 Faster R-CNN生成高度集中的特征提取圖中,小物體的特征被高度卷積變成低分辨率的特征圖,甚至使得特征消失,這會給Faster R-CNN后續的分類器帶來極大的困難;其次,小物體的檢測還受背景的干擾,背景的顏色、形狀、紋理等與目標的顏色、形狀、紋理等相似時對檢測也存在一定的阻礙,因此,有必要對Faster R-CNN的特征提取方式進行改進,生成更多對小物體的多維度特征表達,以便于分類器對其進行定位與識別,提高識別精度。
在深度學習中,圖像在經過多次的卷積與池化操作之后,小物體的特征會變得模糊且不易提取,甚至會發生變形和丟失。Lin 等[29]在 2017年提出的特征金字塔網絡(Feature Pyramid Networks,FPN)主要解決的是物體自動檢測中的多尺度問題,通過對原有網絡中不同層次的特征圖分別進行預測與疊加連接(圖4)。實際上,每一層所提取的特征圖都擁有不同深度和不同強度的特征,通過融合不同深度的特征圖,并在新的特征圖上進行物體檢測,這樣保證了小物體的特征不輕易被忽視掉從而提高了小目標的檢測精度。同時,特征金字塔網絡只進行了不同層次特征圖的連接,沒有修改原有網絡的參數,在實際應用中幾乎不增加額外的時間和計算量。

圖4 特征金字塔網絡簡圖Fig.4 Sketch of Feature pyramid networks
為了進一步提高 Faster R-CNN對小病斑的檢測精度,本研究在ResNet-50的基礎上,融合了FPN(圖5),將各子網絡提取的特征圖自高層(P6)往底層(P2)疊加,在疊加后的特征圖再分別進行一次區域建議框提取操作,然后輸入最后的R-CNN,進而對目標物體的坐標信息進行回歸修正,實現對圖像中的葉部病害的自動檢測。

圖5 融合特征金字塔網絡后的Faster R-CNN簡圖Fig.5 Diagram of Faster R-CNN combined with feature pyramid network
本次試驗操作平臺為臺式計算機,運行環境為Ubuntu 18.04,處理器為Intel Core i7-3750,主頻3.7GHz,8G運行內存,1T機械硬盤,顯卡為NVIDIA GeForce GTX 1080Ti,運行顯存為11G,使用GPU加速計算,在Python編程語言下搭建Caffe深度學習框架。
試驗按表 2初始化模型參數,特征提取網絡權重值利用了預訓練好的ImageNet 分類模型的參數,此方法可以大大的減少模型計算成本和計算時間,同時,采用近似聯合的訓練方式,相比于交替訓練在時間上減少大約25%~50%[23],且精確率相近。

表2 Faster R-CNN訓練參數值設置Table 2 Setting of training parameter value for Faster R-CNN
本試驗采用不同的圖像特征提取網絡(ZF-Net、VGG-16、ResNet-50)對苦瓜葉部病害進行目標檢測。模型訓練完成后使用平均精度(Average Precision,AP)作為本次試驗各個目標檢測的評價指標,并將平均精度均值(Mean Average Precision,MAP)作為整個模型性能的評價指標,對比結果如表 3所示。結果表明,相較于其余2種特征提取網絡,以ResNet-50為特征提取網絡的Faster R-CNN深度學習網絡表現出良好的性能,平均準確率均值達到了78.85%,比ZF-Net和VGG-16分別多出11.11%和4.01%,然而在小病斑上的平均精度較低,最低僅有56.21(以ResNet-50為例)。其主要原因,一是在保證梯度傳遞穩定下,深層神經網絡模型的效果比淺層的神經網絡好很多;二是灰斑病,斑點病的目標尺度較小,而區域建議框尺度較大,冗余信息較多導致區域建議框的損失較大導致無法被檢測。
為了提升小病斑的目標檢測,對原始 Faster R-CNN 的區域建議網絡進行修改,增加 16×16、32×32、64×64三個邊框尺度,模型性能結果如表 3所示。通過對比可以發現,在增加區域建議的尺度后,雖然健康葉片、蔓枯病的檢測精度有所下降,但并不影響整體檢測性能,而灰斑病,斑點病的平均精度相比于修改前上升了不少,以 ResNet-50為例,分別提高了10.54%和 3.55%,在平均精度均值上提高了 2.95%。因此,在增加區域建議框之后可以有效提高對小目標的檢測,但提高的精度有限。

表3 不同特征提取網絡的模型結果對比Table 3 Comparison of model results of different feature extraction networks
殘差神經網絡 ResNet-50的識別性能比 ZF-Net和VGG-16更優秀,故以ResNet-50為基礎融入了特征金字塔網絡,利用特征金字塔網絡提取多層次特征生產區域建議框,由表 3可見,灰斑病、斑點病的平均精度再次有所提升,分別提高了16.56%和5.92%,整體的平均精度均值提高了4.59%。相比原始的Faster R-CNN模型(以ResNet-50為特征提取網絡),灰斑病、斑點病的平均精度分別提高了27.1%和9.47%,整體的平均精度均值提高了7.54%。在檢測時間上,隨著模型復雜性的增加,平均檢測時間會有所增加,在融入特征金字塔網絡的 Faster R-CNN對每幅圖像的檢測時間為0.322 s,雖然慢于之前的模型,但是也保持了實時性。
改進的Faster R-CNN深度學習網絡能夠較好地進行自動檢測研究目標,其識別結果如圖6所示。其中,有極少病斑由于模糊不清、或是過小而不能被模型檢測到,對小目標的檢測仍有優化的可能性。在光線較暗或明亮情況下,該識別模型對研究目標也能夠檢測到,適合在復雜的田間環境中對苦瓜葉部病害進行有效地檢測,能夠滿足苦瓜葉部病害自動化識別定位噴藥的要求。

圖6 融合特征金字塔網絡后的Faster R-CNN模型識別結果Fig.6 Faster R-CNN model recognition results combined with of feature pyramid networks
本研究以苦瓜健康葉片與葉片病害部位為研究對象,并且結合苦瓜葉部病害尺寸小的特點,對原始Faster R-CNN的區域建議網絡(Region Proposal Network,RPN)進行修改,增加了訓練時區域建議框的尺寸,同時在ResNet-50的基礎上融入了特征金字塔網絡(Feature Pyramid Networks, FPN),使之更適合自然環境下的苦瓜葉部病害的自動檢測。
1)與ZF-Net、VGG-16對比可知,以ResNet-50為基礎的特征提取網絡的Faster R-CNN模型性能最佳。
2)在ResNet-50的基礎上結合特征金字塔網絡后,對小病斑的檢測精度提升最大,相比于原始的 Faster R-CNN模型,灰斑病的平均精度提升了27.1%,斑點病提升9.47%,每幅圖像的平均檢測時間僅為0.322 s,保持了實時性。
3)模型在實際應用中表現優良,能夠適應復雜的自然環境,對于后續的瓜果類病害目標定位及按需噴灑農藥奠定了研究基礎,減少化學農藥的使用,具有保護農田生態的重要意義。