鮑文霞,孫 慶,胡根生,黃林生,梁 棟,趙 健
(安徽大學農業生態大數據分析與應用技術國家地方聯合工程研究中心,合肥 230601)
農作物病蟲害是造成農作物產量損失的主要原因之一,是限制中國農業優質、高效持續發展的主要因素,準確識別農作物病蟲害并合理噴灑農藥對于控制病蟲害的傳播至關重要[1-4]。小麥作為中國的主要糧食作物之一,小麥赤霉病的多發性和不及時控制是影響小麥產量的主要因素,準確、高效地識別小麥赤霉病可為防治小麥赤霉病和提高小麥產量提供重要保障。
近年來,基于病變圖像的農作物病害識別是圖像處理和精準農業中具有挑戰性的研究課題[5-8]。大多數經典的農作物病害識別方法專注于從病變圖像中提取特征,例如,Hlaing 等[9]通過Johnson SB 分布模型對圖像的SIFT紋理特征進行建模,從而獲得圖像的紋理統計信息,并結合顏色統計特征成功應用于試驗環境下的番茄植物病害圖像分類。Zhang 等[10]提出了利用K-means 算法對圖像進行分割處理,從分割圖像中提取PHOG 特征識別黃瓜葉片的4 種病害和蘋果葉片的3 種病害。Delwiche[11]利用近紅外光譜對赤霉病和其他霉病小麥籽粒進行分類,通過對2 個波長上的差異分析建立最佳分類模型,總體準確率能達到95%~98%。梁琨等[12]利用光譜分析技術對小麥赤霉病進行識別,通過對小麥高光譜圖像進行主成分分析選擇最佳波長,從而提取最佳波長圖像的特征參數進行分析建立最優模型,識別精度達到90%以上。上述基于傳統圖像處理和機器學習方法都需要進行特征提取和選擇,然而,由于農作物病害圖像病變區域非常復雜和不規則,傳統的方法從圖像中選擇和提取出用于病害識別的最佳特征比較困難。
隨著深度學習技術在農業信息處理領域的深入研究,卷積神經網絡(Convolutional Neural Network, CNN)在圖像識別和分類中的應用日益廣泛[13-17]。在植物物種和病蟲害識別中,CNN 被證明比傳統機器學習方法具有更好的性能[18-19]。Liu 等[20]提出了一種基于DCNN 的蘋果葉病的準確識別方法,對4 種常見蘋果葉病數據集的試驗結果表明,DCNN 可以為農作物病害識別提供更好地解決方案,具有較高的準確度和較快的收斂速度。Zhang 等[21]提出了一種將擴張卷積和全局池化相結合的農作物病害識別的全局卷積神經網絡,所提出的方法能有效識別6 種黃瓜葉病,整體精度達到94.65%。借助加權的思想,Karthik 等[22]提出了一種殘差學習加權網絡,成功運用于試驗環境下的番茄葉片疾病檢測。上述方法雖然取得了較好的識別精度,但大多數僅限于試驗室環境中,并且所采用的深度學習模型通常利用卷積層數較深的網絡結構來提取目標的特征,模型的全連接層需要大量的參數和數據來計算。本研究以大田環境下的灌漿期小麥赤霉病圖像為研究對象,針對麥穗生長較為密集,麥葉和土壤形成的背景雜亂,室外光照復雜等問題,利用深度語義分割網絡分割出麥穗圖像,降低復雜背景對后續識別的干擾;同時根據小麥赤霉病圖像中病變區域和健康區域顏色通道信息分布差異性,設計結構較為簡單的多路卷積神經網絡分別提取R、G、B 3 個通道的特征,并結合對樣本數據具有更好適應性的聯合損失函數,實現小麥赤霉病圖像的識別,為農作物病害智能識別提供參考。
本文試驗中所用的大田環境下的小麥圖像在合肥市廬江縣郭河鎮精準農業示范基地(31°25′~31°42′N,117°09′~117°16′E,海拔高度21 m)采集,該基地主要承擔小麥、水稻、玉米等多種農作物的表型信息等科研工作。采集時間是2019 年5 月1 日至6 日9:00—16:00之間,天氣晴朗,溫濕度范圍分別在18~25 ℃和30%~50%。采用佳能EOS80D 手持數字相機以3 984×2 656 的像素拍攝。共拍攝自然場景下灌漿期大田環境下的小麥群體圖像510 幅[23]。不同程度的小麥赤霉病圖像如圖1 所示。

圖1 不同程度小麥赤霉病圖像 Fig.1 Images of wheat scab in different degrees
基于多路卷積神經網絡的大田小麥赤霉病圖像識別算法流程如下:1)采集自然場景下大田小麥群體圖像;2)對自然場景下的大田小麥群體圖像進行增強和擴充等預處理;3)利用深度語義分割網絡U-Net 去除背景,分割并選取完整的單株麥穗圖像用于赤霉病的識別;4)構建多路卷積神經網絡,通過訓練得到模型參數;5)利用訓練好的多路卷積神經網絡模型對單株赤霉病麥穗圖像的測試集進行分類識別。
首先,由于圖像是在自然場景下拍攝,為了解決光照不均問題,本研究采用Retinex 算法[24-25]對小麥圖像進行增強處理。根據Retinex 理論,人眼感知物體的亮度取決于環境的照明和物體表面對入射光的反射。Retinex 的基本原理如式(1)所示

由于R 是對數域的輸出,要轉換為數字圖像,必須將其量化為[0,255]的數字圖像范圍。采用式(2)進行處理得到增強后的圖像。

式中 RMSRCRi為數字圖像輸出。
其次,數據集的多樣性可以使模型具有更強的泛化能力,因此我們對數據樣本進行旋轉、裁剪、扭曲、改變圖像尺寸、增加圖像噪聲等擴充方式來豐富訓練集。擴充前后的部分圖像如圖2 所示。

圖2 小麥群體圖像擴充結果示意圖 Fig.2 Schematic diagram of wheat group image expansion results
為了降低小麥葉片和農田其他復雜環境等不相干目標的干擾,本文利用深度語義分割網絡,分割得到單株麥穗圖像以利于后續的小麥赤霉病圖像識別。
常用的分割網絡有全卷積神經網絡(Fully Convolutional Networks, FCN)[26]、SegNet[27]、U-Net[28]等。FCN 訓練過程繁瑣,對圖像的細節信息不夠敏感,沒有考慮到像素之間的關系,缺乏空間一致性。SegNet 要求高質量圖像,否則會忽略鄰近的信息。而U-Net 能更好地避免這些問題,同時更適合本文小麥樣本圖像不規則多變、顏色對比突兀等特點,所以采用U-Net 網絡分割麥穗圖像。U-Net 網絡結構共含有23 個卷積層,由兩部分組成:壓縮通道與擴展通道。壓縮通道主要用來捕獲圖像中上下文信息,是典型的神經網絡結構,重復采用2 個卷積層和1 個池化層結構,每進行1 次池化操作后特征圖的維度變成原來的2 倍。而與壓縮通道相對稱的擴展通道主要是對圖像中所需要分割出來的部分進行精準的像素邊界定位,在通道中先進行1 次反卷積操作,使特征圖的維數減半,然后拼接對應壓縮通道裁剪得到的特征圖,重新組成一個2 倍大小的特征圖,再經過卷積層提取特征,并重復操作。在最后的輸出層,用2 個卷積層將64維的特征圖映射成2 維的輸出。
利用U-Net 網絡對大田環境下的小麥圖像進行分割流程圖如圖3 所示。

圖3 小麥圖像分割流程圖 Fig.3 Flow chart of wheat image segmentation
顏色特征是小麥麥穗病害的一個非常重要的特征,也是病害診斷的重要依據,因此,本研究設計結構較為簡單的多路卷積神經網絡通過R、G、B 3 個顏色通道獲取具有高辨識性的麥穗赤霉病圖像特征,并結合聯合損失函數進一步提高網絡對特征的識別性能。
1.5.1 卷積神經網絡
卷積神經網絡(Convolutional Neural Network, CNN)是一種帶有卷積結構的深度神經網絡[29-30]。卷積結構可以減少深層網絡占用的內存量,也可以減少網絡的參數個數,緩解模型的過擬合問題。卷積神經網絡一般包含輸入層、卷積層、池化層、全連接層以及輸出層。不同層次之間相互促進,相互作用。
1.5.2 多路卷積神經網絡(M-CNN)
用于麥穗赤霉病圖像識別的多路卷積神經網絡的整體結構如圖4 所示。包含網絡輸入層、3 個顏色通道、3個單通道卷積神經網絡(S-CNN)、1 個特征融合層(Fusion)、全連接層(FC)及1 個輸出層(Output)。為了使網絡達到增大類間距離和減小類內距離的目標,提取魯棒性更強的特征,引入了聯合損失函數學習。

圖4 多路卷積神經網絡結構圖 Fig.4 Structure diagram of multi-way convolutional neural network
在多路卷積神經網絡中,每張圖像首先分成R、G、B 3 個分量并分別送入3 個獨立的單通道卷積神經網絡中進行特征提取。在每一個單通道卷積神經網絡中都包含許多不同大小的卷積核,可以在圖像中的相同子區域內提取各種病變特征。然后將3 個分量的單通道卷積神經網絡提取的3 個特征向量通過融合層拼接起來構成一個高維特征向量送入到全連接層中,最后通過基于聯合損失函數學習來減少輸入圖像類內距離并增加輸入的類間距離,從而完成最終的識別輸出。
1)單通道卷積神經網絡(S-CNN)
根據CNN 一般結構同時結合麥穗圖像的特點設計結構較為簡單的單通道卷積神經網絡,用于提取麥穗圖像單通道的特征,其網絡結構如圖5 所示。

圖5 S-CNN 結構圖 Fig.5 Structure diagram of S-CNN
如圖5 所示,用于提取麥穗病害特征的S-CNN 可以分為10 個隱藏層:輸入層用于圖像的輸入;為了提高對圖像抽象特征的提取和增強圖像的信噪比,我們引入了6個卷積層(C1、C2、C3、C4、C5、C6),通過低層卷積對樣本數據提取邊緣、紋理、形狀等抽象特征,然后再通過高層卷積生成新的特征用于后續的識別。為了避免在特征降維過程中丟失樣本數據的關鍵信息,彌補圖像特征不變性的缺失,采用了4 個池化層(P1、P2、P3、P4),通過將輸入的特征映射劃分為若干個非重疊的矩陣,輸出每個矩陣區域的最大值,降低特征映射的計算復雜度和數據的大小,使特征獲得更好的位移魯棒性。為了減小梯度消失的可能性,在這10 個隱藏層中插入了6 個歸一化層(Norm)及ReLU 激活層。最后,將經過最后1 個池化層的特征提取出來,完成后續的特征融合工作。
2)特征融合
為了充分利用不同通道信息,將經過3 個單獨卷積神經網絡的特征提取出來進行特征融合[31-32],常用的特征融合方法有疊加融合和向量拼接。
本研究采用向量拼接的融合方法。向量拼接的具體表示如下。假設現有特征向量將其在同一緯度上進行拼接,最后融合的特征向量為
通過向量拼接特征融合策略可以使特征強度得到提升,避免了冗余特征對信息造成的負面影響,從而使得對小麥數據樣本進行描述的特征更加豐富。
3)損失函數
現有的深度卷積神經網絡大多使用Softmax Loss 函數作為網絡的損失函數,并廣泛應用于分類識別問題中。其增大類間距離性能強,但縮小類內距離性能弱。對于小麥赤霉病圖像識別來說,由于小麥生長各異且不具規則,同類之間差別較大,這將會導致一些不規則生長的同類患病麥穗圖像無法被準確識別。為了解決該問題,保證可分性外,希望特征向量類內緊湊,類間分離。引入了Center Loss[33]的損失函數來解決小麥赤霉病識別率不高的問題。Center Loss 的具體計算如式(3)所示。

式中N 表示最小批次量, f ( xi)表示全連接層之前的特征,yic 表示第y 類深度特征的中心,它會隨著不同的訓練批次而改變;中心的修改通過對應類特征的均值來計算。
在網絡訓練過程中,僅使用中心損失函數雖然可以縮小類內距離,但無法增大類間距離,以更好地區分各個類別。考慮到Softmax Loss 和Center Loss 對數據樣本的監督作用,嘗試通過使用兩種損失來調整CNN 網絡參數來獲得判別特征。具體的損失函數如式(4)所示

式中clsL 是分離圖像的Softmax 損失,而cenL 是壓縮類內圖像的中心損失,λ 為Center Loss 權重系數,ix 、jx 分別表示第i 類和第j 類的深度特征,yiW、jW分別表示輸入的深度特征向量對應的權重值,yib 、jb 分別表示對應的偏置項,m 表示批訓練的大小,n 表示類別的數量。在式(4)中,將參數λ 應用于加權2 個損失函數。不同的參數值將導致不同的深度特征。較小的λ 值會導致中心損失項對網絡幾乎沒有什么影響,而較大的λ 值會導致網絡出現不收斂的情況。本文經過多次反復試驗得到λ經驗值為0.001,其中Softmax Loss 和Center Loss 在網絡中的具體使用方式如圖6 所示。
本研究以大田環境下的小麥群體圖像為對象,為了降低葉片和農田復雜環境等不相干目標的干擾,利用U-Net 深度語義分割網絡進行分割,然后再利用本研究多路卷積網絡對分割得到麥穗圖像進行小麥赤霉病的識別。
本研究將采集的510 幅灌漿期小麥群體圖像大小統一調整為256×256 像素輸入,選取其中的170 幅小麥群體圖像作為訓練集,340 幅作為測試集。為了防止過擬合,提高模型的泛化能力,采用旋轉、扭曲等方式將訓練集圖像擴充至600 幅,圖7 給出了訓練過程中的損失和準確率曲線變化。從圖中可以看出,U-Net 分割網絡中的Loss 曲線在將近第120 個epoch 時趨近于收斂,同時Acc曲線在該點時也越來趨近于飽和。

圖7 網絡訓練過程 Fig.7 Process of network train
分別使用K-means、GrabCut、U-Net 等方法對小麥群體圖像進行分割,部分試驗結果如圖8 所示。由于小麥群體圖像背景復雜,而且處在灌漿期的麥穗和葉片、葉桿等顏色接近,因此傳統方法如K-means、GrabCut 等很難正確分割出麥穗,而U-Net 算法采用對圖像進行逐像素分類的思想,并借助上下采樣的思想使得深層特征中包含淺層特征信息,從而能夠較好地分割出單株麥穗。

圖8 不同方法小麥群體圖像分割結果對比 Fig.8 Comparison of segmentation results of wheat group images by different methods
選取U-Net 網絡分割后2 745 幅完整的單株麥穗圖像進行赤霉病識別試驗,其中健康麥穗1 500 幅,赤霉病麥穗1 245 幅,并以8∶1∶1 的比例劃分為訓練集、驗證集和測試集用來評估本研究方法。試驗均采用批量訓練方式,將訓練集、驗證集和測試集劃分為多個批次,每個訓練批次大小設置為32,即每批次輸入32 張圖像進行處理。整個網絡的訓練過程采用隨機梯度下降優化算法(Stochastic gradient descent)優化模型。試驗使用Pytorch 的開源軟件框架和Python 編程語言實現。使用CUDA 平臺在NVIDIA GTX2070 GPU 上進行試驗。為了驗證基于多路卷積神經網絡的小麥赤霉病識別算法的有效性,對網絡特征融合和參數選取分別進行對比試驗,同時與目前流行的CNN 進行對比試驗。采用精度(Precision)、召回率(Recall)、F1 值(F1 score)以及準確率(Accuracy)來進行單株麥穗赤霉病識別精度的評估。各指標定義如下

式中TP 為真陽性單株麥穗圖像數目;FP 為假陽性單株麥穗圖像數目;FN 為假陰性單株麥穗圖像數目;ncorrect表示測試單株麥穗圖像中預測正確的單株麥穗圖像數目;ntotal為總的測試單株麥穗圖像數目。
2.2.1 模型驗證
為及時驗證網絡模型的泛化能力,獲取最優模型參數,將數據樣本劃分出驗證集用于調整網絡模型的超參數并對模型的能力進行評估。訓練集和驗證集的曲線如圖9 所示。

圖9 損失及準確率曲線 Fig.9 Loss and accuracy curves
由圖中可知,隨著迭代次數的增加,網絡模型在數據樣本的訓練下損失值逐步下降,最后在趨近0.015,網絡的訓練準確率接近100%。通過借助驗證集去尋找網絡最優參數的作用來對網絡模型進行評估,可以看出隨著迭代次數的增加,網絡的損失值也在趨近0.02,網絡的驗證準確率朝著訓練準確率逼近以至于飽和最終得到最優模型。
2.2.2 不同特征融合方式對比試驗
為了驗證融合方法的有效性,對相同數據樣本進行多路卷積神經網絡訓練提取特征,然后分別采用在通道維度上進行拼接的融合方式、在通道維度上進行疊加的融合方式、在通道維度上加入可訓練參數進行拼接的融合方式以及在通道維度上加入可訓練參數進行疊加的融合方式。這4 種融合方式均采用本研究提及的聯合損失函數進行最終的識別分類。利用測試集對不同融合方式的試驗對比結果如圖 10 所示。

圖10 不同融合方式結果對比圖 Fig.10 Comparison of different fusion methods results
在均使用聯合損失函數的基礎上,本研究選取的融合方式在測試集上的性能要遠遠優于其他的3 種融合方式。所用融合方式更加直觀,能夠在一定程度上避免特征冗余,降低對信息造成的負面影響。說明了本研究的融合方式在多路卷積神經網絡中的有效性。
2.2.3 M-CNN 與S-CNN 模型識別對比
為了進一步驗證提出的多路卷積神經網絡的優越性,將分割后的麥穗圖像分別進行S-CNN 和多路卷積神經網絡分類識別。結果如表1 所示。

表1 M-CNN 與S-CNN 模型識別結果對比 Table 1 Comparison of M-CNN and S-CNN model recognition results
由于顏色信息在小麥赤霉病識別中起到主要因素。從表1 可以看出,只使用Softmax Loss 作為訓練監督信號時,根據顏色通道來組合的多路卷積神經網絡可以增加整個網絡的寬度,提高每一層通道的利用率,使每一層學習到更加豐富的特征,如不同方向、不同頻率的紋理特征。對小麥赤霉病的識別準確率比S-CNN 的識別效果要好,精度提高3 個百分點。在表1 中,使用本文中的網絡模型進行了對比試驗,分別使用Softmax Loss 和聯合損失函數作為訓練監督信號。在相同條件下,前者取得了95%的準確率,后者取得了100%的準確率。可以看出,使用聯合損失函數學習的方法,可以增大類間距離和減小類內距離的目的。最終,可以使網絡提取出魯棒性更強的特征。
2.2.4 不同識別算法對比試驗
同時將本研究的算法與目前較流行的LeNet、Vgg16、Vgg19、GoogLeNet 和ResNet16 卷積神經網絡算法進行了識別試驗對比,各指標的對比結果如表2 所示。

表2 不同算法的識別結果對比 Tabel 2 Comparison of recognition results of different algorithms
通過表2 的對比結果可以看出,與其他卷積神經網絡相比,多路卷積神經網絡能更好地獲取顏色特征,同時聯合損失函數對特征具有更好的區分性。因此多路卷積神經能取得更高的識別率。由于多路卷積神經網絡對圖像三通道分別進行特征提取,因此在運行時間方面要長一些,僅低于ResNet16 的方法。
大田環境下拍攝的小麥群體圖像存在多穗遮擋與黏連,本研究針對這種情形利用所提算法進行分割和麥穗赤霉病識別試驗,分割結果如圖11 所示。從圖中可以看出由于存在多穗粘連和遮擋情況,導致容易將多穗分割成一個穗或者被遮擋穗不能被分割出來,從而影響最終麥穗的數量,但對分割出的麥穗都能正確識別出赤霉病。進一步提升多穗遮擋與黏連麥穗的圖像分割問題將是我們下一步重點研究內容。

圖11 U-Net 網絡分割結果 Fig.11 U-Net network segmentation result
針對大田復雜環境下的小麥赤霉病識別問題,本研究利用深度語義分割網絡U-Net 對小麥群體圖像進行分割;通過聯合損失函數的多路卷積神經網絡對分割后的單株麥穗赤霉病圖像進行識別試驗,并對不同融合方式、不同卷積神經網絡等方面進行了對比分析,得到如下結論:
1)相對疊加融合方式而言,向量拼接的融合方式可以使特征強度得到提升,避免特征冗余。
2)相對于損失函數,聯合損失函數可以增強特征之間的可區分性,提高網絡的整體性能,控制相同條件下,采用聯合損失函數的多路卷積神經網絡準確率比未采用聯合損失函數的多路卷積神經網絡高5 個百分點。
3)相對于ResNet16、Vgg16、GoogLeNet 等卷積神經網絡而言,采用聯合損失的多路卷積神經網絡對提取的小麥赤霉病特征具有更好的區分性,從而對小麥赤霉病識別表現出較好的分類性能。對采集的大田環境下510幅灌漿期小麥群體圖像進行分割,選取2 745 幅完整單株麥穗圖像進行麥穗赤霉病識別精度達到100%。
目前的識別模型局限于分割之后選取的完整單株麥穗圖像,由于大田環境下拍攝的小麥群體圖像存在嚴重的多穗遮擋現象,會對分割結果造成影響。進一步提升多穗遮擋的圖像分割問題將是下一步重點研究內容,以提高對大田復雜環境下小麥赤霉病識別的適用性。