金 秀,盧 杰,傅運之,王 帥,許高健,李紹穩,*
(安徽農業大學 a. 信息與計算機學院;b. 農學院,安徽 合肥 230036)
小麥赤霉病是小麥的主要病害之一,主要分布于潮濕和半潮濕區域,氣候濕潤多雨的溫帶地區受害尤為嚴重,是我國淮河以南及長江中下游麥區發生最嚴重的病害之一[1]。當小麥被真菌感染后,會產生多種真菌毒素,其中最嚴重的是脫氧雪腐鐮刀菌烯醇(DON),會對人畜造成嚴重傷害,而且會在食物鏈中長期存留[2-4]。早期、快速地診斷小麥赤霉病,明確其發生區域,及時采取隔離病害區域等方式,可大幅度減少農民損失,并保證小麥收獲后的食用安全。當前,小麥赤霉病病害的無損檢測方法主要有圖像、光譜等方法,其中,高光譜圖像包含光譜、空間、紋理和上下文等多種信息特征,相關研究較為廣泛。在室內環境下:2011年,Bauriegel等[5]使用主成分分析(PCA)和光譜角度制圖法(SAM)對高光譜進行建模處理,對赤霉病的診斷準確率可達87%;Dammer等[6]使用多光譜(665~675 nm和550~560 nm)在小麥灌漿中期利用線性模型來診斷赤霉病病癥;2016年,梁琨等[7]利用高光譜成像技術對小麥籽粒赤霉病進行識別,效果較好;2016年,Wang等[8]使用高光譜數據對小麥的條銹病葉片進行檢測,決定系數達0.90,說明可以使用高光譜數據檢測小麥條銹病。在室內環境中,由于光源相對穩定、樣本變化較小,高光譜成像作為重要的無損檢測技術得到了較多研究,但在野外環境下,由于光源不穩定、目標多樣,影響高光譜成像數據的因素很多,因此野外環境下作物病害診斷的相關研究較少,尤其對于小麥赤霉病。
目前,高光譜建模典型分類算法主要有偏最小二乘、支持向量機等(SVM),但因為高光譜數據量較大、特征光譜提取較難,且在不同的區域中數據具有一定的誤差,因此僅用典型分類算法并不能完全適用于復雜性較高的數據集[9-10]。深度神經網絡中深度的網絡可以自動提取出有效的光譜特征,從而實現端到端的模型構建。在作物病害檢測領域,已有不少研究利用深度卷積神經網絡進行病害圖片的識別:2016年,Mohanty等[11]對14種作物的26類病害圖片進行訓練,識別準確率可達99.35%;2018年,Picon等[12]在移動設備上基于3 a收集的8 178張圖片對小麥的3種病害進行分類識別,準確率可達87%。對普通圖像而言,病害診斷必須在病癥較為明顯的情況下進行,并且需要長時間的大量采集和標定才能建立有效的診斷模型。高光譜與普通圖像相比,每個像素點包含的信息量更加豐富,且人工標注相對簡單,在數據信息中,高光譜不單能夠分析病癥的紋理、形態,對于內在的化學成分變化,如葉綠素、水分和氮素等都可以進行診斷。因此,利用深度神經網絡開展基于高光譜圖像的作物病害識別已經成為重要的研究方向。
2015年,深度卷積神經網絡首次被應用到高光譜圖像像素點的特征上來進行分類,從訓練結果可知,深度網絡學習到的特征優于其他預處理特征提取方法,這是因為深度網絡可通過合并簡單知識的方式組合出復雜的深度概念[13]。同年,Hu等[14]提出了利用卷積層和池化層來識別光譜信號的方法,該卷積神經網絡可以直接在光譜領域應用;Makantasis等[15]提出一種深度學習的基礎分類方法,通過層次化來自動構建深層次的特征;Han等[16]建立模型,利用卷積自編碼的神經網絡來處理像素點的光譜和空間信息。近年來,高光譜成像的深度學習建模方法開始得到重視,但絕大部分方法都基于公共數據集建立,針對野外采集的原始數據進行高光譜成像深度學習的研究較少。本文結合農業生產中小麥赤霉病的病癥診斷,抽取深度卷積神經網絡結構中的基本單元,構建并訓練不同深度的卷積神經網絡,比較不同深度模型評測結果,分析不同卷積層提取病癥高光譜特征的區別,重點研究小麥赤霉病病癥高光譜成像分類的深度卷積神經網絡構建方法,旨在為大尺度范圍的作物病癥智能成像診斷提供理論基礎與參考。
試驗區域位于安徽農業大學的郭河小麥赤霉病抗病育種基地。高光譜圖像的采集時間是2017-04-29—2017-05-15,時值小麥揚花期剛結束、灌漿期開始。
野外高光譜數據采集對光線有一定的要求,因此在小麥赤霉病發病期間,主要于5月9日(晴天)和5月10日(晴天)在3個樣本區域進行高光譜圖像數據采集,試驗環境較為穩定。高光譜相機的拍攝方式如圖1所示,設備包含了推掃式鏡頭、旋轉云臺、工作站。小麥樣本固定在一個區域內,將黑色吸光布放置于觀察對象下方,作為背景區域以消除噪聲信息。試驗側邊圖設置如下:三腳架放置位置距樣本區域30 cm,高光譜相機距地面1.5 m,云臺的水平方向為45°,掃描范圍是-30°~+30°,數據采集時間是11:00—14:00。
高光譜相機為美國OKSI公司的HyScan1211,圖像分辨率為1 620 pixel×2 325 pixel,光譜分辨率為1.79 nm,區間范圍為400~1 000 nm,光譜采集點有339個波段。高光譜圖像可利用ENVI軟件進行感興趣區域提取,像素區域分為3種:背景、健康和病害。
高光譜圖像中,像素點光譜數據為1維結構。為抽取更有效的病癥信息特征,將1維光譜的數據結構重新組建為2維的網格結構,2維數據結構的構建雖然改變了數據前后順序,但光譜基本信息保持不變,因此重構的數據不會導致信息丟失。本研究小麥赤霉病的光譜曲線具有339個采集點,去除噪聲后保留256個數據點,再進行2維數據重構,深度神經網絡的輸入層張量的維度為(16,16,1)。在深度卷積神經網絡結構中,VGG(Visual Geometry Group)和殘差神經網絡(ResNet)是2種典型的卷積結構[17-20]。本文抽取這2種典型結構的基本單元進行不同深度的構建,從而尋找最優深度結構,搭建最優的神經網絡結構。VGG網絡主要將卷積層從5×5的內核轉變為3×3內核,且其基本的結構為2層卷積層、1層池化層,如圖2-a所示。ResNet將網絡層重新規劃為學習關于每層輸入的殘差函數,添加一條從 input到output的路徑,也就是捷徑連接(shortcut),這是關鍵之處。對于輸入x,通過中間函數F(x,w)進行參數學習,F()是殘差函數。以卷積層的捷徑連接為基本單元模塊,ResNet網絡的基本單元如圖2-b所示。

圖1 小麥高光譜圖像采集試驗Fig.1 Hyperspectral image collection experiment

圖2 深度卷積網絡結構的基本單元Fig.2 Basic unit of deep convolutional structure
為得到最優的深度卷積神經網絡,建立不同深度的模型進行訓練,如圖3所示,圖中N代表了卷積層深度。通過配置不同的N來建立多種深度卷積模型。
為準確地評價模型,綜合運用準確率(A)、精確度(P)、召回率(R)和F1值對模型進行評價[21]。準確率是分類建模中常見的評價方式,但是在對真實樣本進行分類時,由于類別不均勻,經常會出現過擬合等現象。為避免模型評測中出現重點類別準確率極低的現象,本文還引入了混淆矩陣,以展示每個類別間的預測結果。最優的模型應當具有更好的精確度和召回率,但這兩者具有相互不兼容的特性,為了更好地衡量模型效果,使用F1值來對精確度和召回率進行綜合。
(1)
(2)

圖3 不同深度的模型構建Fig.3 Reconstructed model of different depth

(3)
式(1)~(3)中:NTP表示分到類A且真的屬于類A的實例數量,NFP表示分到類A但不屬于類A的實例數量,NFN表示沒有分到類A但屬于類A的實例數量。
本文深度學習框架使用的是Tensorflow、Python 3.5,工作站的配置為Intel? Core i7 CPU和NVIDIA? GTX 1080TI GPU。
首先劃分小麥高光譜數據集,總計包含809 200個像素點樣本。為進行有效評價,將訓練集與測試集的比例設定為1∶4。然后對小麥赤霉病的高光譜樣本進行預處理,通過歸一化和去均值算法來規范化數據范圍。在深度卷積神經網絡模型的訓練中,激活函數使用“elu”[22],損失函數使用交叉熵[23-24],優化函數使用“Adadelta”[25-26],其中迭代次數為300,使得損失值不繼續降低。為了減少過擬合程度,在每個基礎單元后加上“Dropout”函數[27],設置丟失率為50%。VGG模型和ResNet模型的主要配置分別如圖4、5所示。其中,VGG_1、VGG_2、VGG_3、VGG_4的層數分別為10層、14層、18層、22層,ResNet_1、ResNet_2、ResNet_3、ResNet_4的層數分別為11層、16層、21層、26層。
由于光譜組成的2維網格結構僅有16×16的維度,為了讓卷積層深度持續進行下去,本文對卷積層進行增0(padding)操作,以保證每層卷積的張量維度一致。同時,為增加訓練效果,卷積網絡每層節點會隨著深度的增加逐步遞增,其設置分別為32、64、128、256。同時在卷積的最后加上1個Dense層,由此通過卷積基本單元迭代構建出不同深度的卷積神經網絡層。
在訓練集和驗證集中,不同深度的VGG和ResNet模型訓練結果如圖6所示。對于以VGG為基礎單元的深度卷積網絡,訓練模型在300次迭代后基本達到損失值最低點,且每次訓練中訓練曲線和驗證曲線相差不遠,說明模型訓練過程中未出現欠擬合和過擬合現象。同時,在迭代過程中,損失值逐漸下降到最小值。由此可知,不同深度的VGG模型在多次迭代后達到訓練最優。從ResNet模型的訓練結果可知,在ResNet_1和ResNet_2的訓練中,驗證集的準確率和損失值都高于訓練集,即模型產生欠擬合現象,而ResNet_3和ResNet_4的訓練過程相對較好。

圖4 VGG模型配置Fig.4 Configuration of layers for VGG

圖5 ResNet模型配置Fig.5 Configuration of layers for ResNet
對于樣本驗證集,結果如表1所示,徑向基的支持向量機模型(RBF-SVM)的訓練和驗證準確率相對于深度模型較低,說明深度卷積神經網絡能有效提高診斷的準確率。
在深度模型中,VGG模型隨著基礎單元的深度增加性能提升,但是對ResNet模型而言,在基礎單元深度為2時驗證損失值最小,并且隨著深度增加,模型的驗證損失值有所提高,但其準確率并未明顯提升,即殘差神經網絡的深度增加并未給模型的穩健性和泛化性帶來顯著提升。對比發現:VGG結構的深度模型在建模集上的訓練準確率和驗證準確率都遠高于ResNet結構;在損失值上,VGG結構的模型損失值都低于0.4,而ResNet結構的模型都高于0.42。因此,從模型的穩健性和泛化性上判斷,VGG結構更加適合小麥赤霉病病癥的高光譜特征提取。
為進一步評價模型的穩健性和泛化性,本文利用測試集對深度模型進行參數評估。從混淆矩陣(圖7)可知:在VGG基本結構中,網絡越深,分類效果越好,對健康樣本、病害樣本這2種最重要的類別來說,VGG_4的效果超過了其他3個模型;在ResNet基本結構中,同樣是網絡越深效果越好,其中,ResNet_3和ResNet_4的分類效果完全一致。對RBF-SVM同樣進行混淆矩陣分析,可以看出,支持向量機在健康樣本和病害樣本的識別準確率上都遠低于深度卷積神經網絡結構。

圖6 不同深度的卷積模型訓練結果Fig.6 Training result of models with different depth
表1模型評估結果
Table1Evaluation result of different models

模型Model訓練準確率Accuracy in training驗證準確率Accuracy in validation訓練損失值Loss in training驗證損失值Loss in validation迭代次數Number of iteration訓練時間Training time/hRBF-SVM0.7050.706———1.7VGG_10.8400.8330.3790.3963004.9VGG_20.8400.8350.3810.3831896.8VGG_30.8520.8380.3510.3741638.5VGG_40.8460.8430.3640.36410310.4ResNet_10.8040.8190.4740.4402913.4ResNet_20.8210.8320.4540.4263005.5ResNet_30.8310.8320.4660.460687.7ResNet_40.8430.8360.4500.4639310.0

圖7 不同模型的混淆矩陣Fig.7 Confusion matrix of different models
從圖8可知,各模型對病癥樣本的精確度最低,對健康樣本的召回率最低。結合表2可知,大部分的健康樣本被判定為病癥樣本。同時,從表2測試集評估結果可知,VGG_4的評測結果最優,F1值為0.76,準確率為0.742。從測試效率分析可知,層少的模型訓練參數較少,因此相對測試效率較高,VGG_4由于深度和參數都相對較大,模型測試速度最慢。
為觀察模型的診斷結果,對小麥高光譜圖進行分類模型映射,結果如圖9所示。其中,白色為背景,灰色為健康小麥,黑色為病害區域。從圖9可以發現,雖然高光譜儀器自帶的噪聲嚴重干擾了分類準確性,但是基于深度卷積模型標注的病癥區域非常明顯,分類效果較好。
針對小麥高光譜圖像像素點特征進行病癥分類建模,引入2種深度的卷積神經網絡結構,通過模型的評測分析,優選了高光譜深度神經網絡結構。研究中分別構建了以VGG和ResNet為基本單元的不同深度的卷積網絡,最深的網絡層結構為ResNet_4的26層模型,最淺的為VGG_1的10層模型,從深度上遍歷了不同的深度神經網絡。從深度結構分析,VGG網絡深度與模型的穩健性和泛化性相關,但ResNet網絡深度與模型性能無關。從卷積層結構分析,VGG基本單元下采樣方式提取的稀疏特征相對于ResNet基本單元的殘差更能提取小麥赤霉病病癥的光譜特征。

圖8 不同深度卷積模型的精確度與召回率Fig.8 Precise and recall rate of convolutional models with different depth
表2測試集上的模型評估結果
Table2Evaluation result of different models on testing set

模型ModelF1背景Background健康Healthy病害Diseased全部Total準確率Accuracy測試效率Efficiency/(pixels·s-1)VGG_10.870.70.520.740.7338405VGG_20.870.690.520.740.7304496VGG_30.870.70.520.740.7353204VGG_40.880.710.520.760.7422521ResNet_10.850.670.50.720.71516111ResNet_20.870.690.510.740.7298656ResNet_30.870.680.510.730.7236041ResNet_40.870.710.520.750.7384531

圖9 不同深度的卷積模型高光譜圖像映射結果Fig.9 Gray-image mapped results of hyperspectral image by models with different depth
從測試效率分析,準確率最高的VGG_4模型的測試效率為2 521 pixels·s-1,基本可實現對高光譜圖像的快速判定。綜上所述,本文構建的最優深度卷積神經網絡可對小麥赤霉病病癥高光譜特征進行高效分類,研究結果可為基于無人機高光譜的大尺度小麥赤霉病智能診斷提供理論基礎。