陸健強,林佳翰,黃仲強,王衛(wèi)星,3,邱洪斌,楊瑞帆,陳平福
(1 華南農(nóng)業(yè)大學 電子工程學院/人工智能學院,廣東 廣州 510642; 2 嶺南現(xiàn)代農(nóng)業(yè)科學與技術廣東省實驗室,廣東 廣州 510642; 3 廣東省農(nóng)情信息監(jiān)測工程技術研究中心,廣東 廣州 510642)
柑橘黃龍病(Huanglongbing, HLB)是目前影響柑橘產(chǎn)業(yè)最嚴重的病害之一,在我國已有近百年歷史[1-2]。廣東省是柑橘種植的主要省份之一,但受黃龍病的影響,柑橘種植面積開始下降,種植區(qū)域向廣西轉移[3]。多聚酶鏈反應(Polymerase chain reaction, PCR)是目前應用于柑橘黃龍病識別的一種較為可靠且普遍的技術,但該方法存在的問題是難以實現(xiàn)實時在線檢測。深度學習在圖像分類和回歸方面有較高的準確性,其精度優(yōu)于目前現(xiàn)有的其他圖像處理技術,已廣泛應用于農(nóng)業(yè)、醫(yī)療等領域。
鄧小玲等[4]提出了基于高光譜成像和Fisher判別法的柑橘黃龍病識別方法,柑橘黃龍病病情識別準確率為90%。鄧小玲等[5]通過熒光檢測技術獲取柑橘葉片熒光參數(shù),提出了利用概率神經(jīng)網(wǎng)絡對黃龍病柑橘植株分類建模,診斷準確率為76.93%。馬淏等[6]提出了利用高光譜成像技術生成的光譜及紋理特征進行柑橘黃龍病識別,結合最小二乘法和SVM分類器建立分類模型,平均預測準確率為88.5%。王克健[7]提出了采用高光譜檢測與無人機技術采集柑橘黃龍病成像的方法,通過柑橘黃龍病的特征光譜建立了柑橘黃龍病識別模型,識別準確率為87%。肖懷春[8]提出一種基于高光譜成像技術的柑橘黃龍病葉片可視化判別模型,通過提取特征波長識別患病葉片的紋理特征,最低誤判率為3.12%。戴澤翰等[9]通過深度卷積神經(jīng)網(wǎng)絡建立柑橘黃龍病識別模型,提出4種針對8類柑橘黃龍病癥狀的分類器,其中最優(yōu)分類器的識別準確率為93.7%。綜上所述,目前針對柑橘黃龍病的無損檢測多采用高光譜檢測技術,但是該檢測技術尚未完善,在成分波長數(shù)量較少的情況下,準確率較低[10],而且前期硬件投入成本較高,難以大范圍推廣。
本研究利用深度學習卷積神經(jīng)網(wǎng)絡,研究柑橘黃龍病的在線無損識別方法,解決傳統(tǒng)柑橘黃龍病人工識別困難、智能化程度低的問題。利用卷積神經(jīng)網(wǎng)絡[11-12]自動提取特征的特點,在Inception網(wǎng)絡架構基礎上,進行深度可分離卷積(Depthwise separable convolution,DSC)設計,提出一種基于卷積神經(jīng)網(wǎng)絡的柑橘黃龍病識別模型?X-ResNeXt模型。該模型在傳統(tǒng)數(shù)據(jù)增強方法基礎上,采用Mixup算法建立樣本之間的線性關系,增強模型識別數(shù)據(jù)樣本的魯棒性;通過遷移Xception網(wǎng)絡在ImageNet數(shù)據(jù)集上的先驗知識與動量梯度下降優(yōu)化方法,有效提高模型的準確率與收斂速度。XResNeXt模型在保持不增加網(wǎng)絡參數(shù)的同時拓寬模型網(wǎng)絡結構,在柑橘黃龍病的無損檢測方面有一定的可行性和先進性。
數(shù)據(jù)采集于2018年11月—2019年1月在廣西壯族自治區(qū)賀州市昭平縣北陀鎮(zhèn)柑橘種植園進行。數(shù)據(jù)采集對象為初期顯現(xiàn)病狀的成年病樹果實以及同期健康果實,采集設備為手持移動設備,采集距離為距柑橘果實1 m處。采集試驗結束,共采集 560 張分辨率為1 920×1 080 的柑橘果實圖像樣本(圖1),其中,患病和健康柑橘果實圖片分別為224和336張。采用3∶1∶1的比例將數(shù)據(jù)集劃分為訓練集(336張)、驗證集(112張)和測試集(112張)。為了規(guī)范數(shù)據(jù)集使用,利用中心裁剪法把原始圖像分辨率固定為299×299。后期,訓練集將對模型進行數(shù)據(jù)樣本擬合,然后利用驗證集調整模型超參數(shù)以及對模型性能進行初評估;最后將測試集輸入已訓練完畢的卷積神經(jīng)網(wǎng)絡模型中,得出最終試驗結果。
1.2.1 同類數(shù)據(jù)增強為提高模型訓練的魯棒性和泛化能力,本研究利用Imgaug數(shù)據(jù)增強庫對采集的柑橘黃龍病原始圖像數(shù)據(jù)集進行同類數(shù)據(jù)增強。增強方法包括水平翻轉、垂直翻轉、旋轉、仿射、添加高斯噪聲等[13-14]。利用Fliplr函數(shù)、Flipud函數(shù)對柑橘圖像進行水平和垂直翻轉;利用rotate函數(shù)對柑橘圖像進行45°旋轉;利用Affine函數(shù)對柑橘圖像進行圖像仿射。
經(jīng)增強后的柑橘黃龍病圖像數(shù)據(jù)集圖像最終數(shù)量為7 168張,圖2為部分數(shù)據(jù)增強結果圖。
圖 2 部分數(shù)據(jù)增強結果圖Fig.2 Partial output images of data enhancement
1.2.2 Mixup 混類數(shù)據(jù)增強 同類數(shù)據(jù)增強方法設定鄰域內(nèi)的樣本屬于同一類,不對非同類類別的樣本做鄰域關系的建模,該方法雖然能增強模型的泛化能力,但是嚴重依賴于原始數(shù)據(jù)集。本研究采用Mixup[15]混類數(shù)據(jù)增強方法,以貝塔分布混合多類別數(shù)據(jù),線性化處理樣本與樣本間區(qū)域,尋求增強模型預測訓練樣本以外的數(shù)據(jù)集的適應性,進一步提升模型對樣本識別的魯棒性以及錯誤類別的判斷能力。圖3為不同混合系數(shù)(λ)的Mixup算法進行柑橘黃龍病數(shù)據(jù)集增強的結果示意圖。
圖 3 不同混合系數(shù)(λ)的Mixup算法進行柑橘黃龍病數(shù)據(jù)集增強的結果示意圖Fig.3 Results of enhancing the citrus Huanglongbing data set by the Mixup algorithm with different mixing coefficient (λ)
1.3.1 X-ResNeXt模型網(wǎng)絡結構設計 He 等[16]提出了將152層深的ResNet神經(jīng)網(wǎng)絡引入Shortcut結構,以解決極深的神經(jīng)網(wǎng)絡難以訓練的問題。Xie等[17]在ResNet神經(jīng)網(wǎng)絡的基礎上提出了ResNeXt網(wǎng)絡,其核心思想也是通過加深或加寬網(wǎng)絡結構以尋求模型準確率的提高。但是隨著模型網(wǎng)絡結構的加深或者加寬,網(wǎng)絡參數(shù)將急劇增多,網(wǎng)絡計算開銷也大大增加。
X-ResNeXt模型核心設計思想是在Inception網(wǎng)絡架構基礎上,進行深度可分離卷積設計,達到網(wǎng)絡參數(shù)不增多的情況下拓寬模型網(wǎng)絡結構的目的,以實現(xiàn)提高模型識別準確率的同時還具備良好的運算處理性能。該模型的具體網(wǎng)絡結構由Xception網(wǎng)絡[18]與ResNeXt模塊融合構成,具體為:輸入層的輸入圖像尺度為299×299×3;卷積層為深度可分離卷積模塊,在1×1卷積之后,對每個通道做3×3的獨立卷積;根據(jù)遷移學習的思想,冰凍Xception中間層;池化層均采用最大池化,核大小為3×3,滑動步長均為1,填充方式均為SAME;輸出層采用全局平均池化層;卷積神經(jīng)網(wǎng)絡激活函數(shù)均采用ReLU函數(shù);中間采用權重連接方式,連接上下層;最后采用ResNeXt模塊替代Xception中最后一層輸出層,實現(xiàn)了模型層數(shù)的加深以及特征的融合。圖4為X-ResNeXt模型的網(wǎng)絡結構圖。
圖 4 X-ResNeXt模型的網(wǎng)絡結構Fig.4 Network structure of X-ResNeXt model
1.3.2 模型優(yōu)化為解決 X-ResNeXt模型隨著網(wǎng)絡深度加深出現(xiàn)一定程度的梯度彌散,進一步提升模型性能,本研究遷移Xception網(wǎng)絡[19]在ImageNet數(shù)據(jù)集[20]上的先驗知識,進行模型的微調(Finetune)優(yōu)化,挖掘領域間共享的潛在特征和結構;采用動量梯度下降法 (Momentum gradient descent,MGD)[21]進行參數(shù)更新,降低模型收斂過程的震蕩現(xiàn)象,進一步提高識別準確率。
圖5為X-ResNeXt模型的訓練流程圖。首先,由原始圖像數(shù)據(jù)集生成同類增強數(shù)據(jù)集,再結合Mixup算法對數(shù)據(jù)集建立線性關系,進行尺寸裁剪。然后,遷移ImageNet數(shù)據(jù)集上的先驗知識對模型進行微調。再而,設置訓練數(shù)據(jù)批次大小為32×2,學習率為0.1,進行X-ResNeXt模型訓練。保存最佳權重文件以及模型結構,動量大小設置為0.9,當運行每5個epoch后,模型驗證集損失值停止下降時,學習率設置為原來的一半。最后,權重參數(shù)收斂后,即可得到最優(yōu)的X-ResNeXt柑橘黃龍病識別模型。
圖 5 X-ResNeXt模型訓練流程圖Fig.5 Training flow chart of X-ResNeXt model
遷移學習是一類復用跨領域學習知識,弱化樣本數(shù)據(jù)特征提取不足,改進目標領域或任務學習效果的機器學習方法。ImageNet是目前圖像識別最大的數(shù)據(jù)庫,超過了1 400萬張圖像。本研究保留已訓練完畢的Xception模塊中所有卷積層參數(shù),并將其冰凍;利用遷移學習方法,在最后一層全連接層借鑒模型在ImageNet數(shù)據(jù)集上優(yōu)化訓練所得的先驗知識,更新最后一層的權重參數(shù),以期提高模型訓練速度與準確率。
模型使用梯度下降法不斷逼近損失函數(shù)最優(yōu)化點時,有可能會越過最低點,產(chǎn)生在最低點來回震蕩的現(xiàn)象。為了提高模型參數(shù)更新的穩(wěn)定性,本研究提出MGD進行參數(shù)的優(yōu)化更新。動量梯度下降法的設計思想是調整函數(shù)在縱軸下降的速度,從橫軸方向趨向最低點。實際操作是通過計算梯度的指數(shù)加權平均數(shù)進行權重參數(shù)的更新,在橫軸給予橫向速度逼近最優(yōu)點。動量梯度下降法緩解了隨機梯度下降法 (Stochastic gradient descent, SGD)和批量隨機梯度下降法的震蕩問題,減弱了模型收斂過程的震蕩影響。
1.4.1 總體試驗方案 本研究首先評估數(shù)據(jù)集進行圖像預處理對模型性能的影響,即決定是否對數(shù)據(jù)集進行預處理。然后進行數(shù)據(jù)同類增強對模型性能影響的測試試驗,獲取圖像數(shù)據(jù)集經(jīng)同類數(shù)據(jù)增強前后,模型性能的變化結果,以證明對圖像數(shù)據(jù)集進行同類數(shù)據(jù)增強的必要性。最后,X-ResNeXt模型通過遷徙學習試驗、Mixup混類數(shù)據(jù)增強試驗和梯度下降優(yōu)化對比試驗尋求模型的最佳性能指標,從而獲得最優(yōu)收斂模型。通過與經(jīng)典識別模型的對比試驗,最終驗證模型的先進性和優(yōu)越性。
1.4.2 圖像預處理對模型性能影響的評估試驗由于光線、拍攝角度和光在傳播時經(jīng)過霧、霾等介質以及粒子的散射作用,圖像傳感器實際作業(yè)所采集的圖像信息經(jīng)常發(fā)生降質現(xiàn)象[22]。另外,果實和樹葉之間相互遮擋,導致柑橘果實圖像表面發(fā)生模糊和亮度不足的現(xiàn)象。為提高果實的識別率,研究一般采用直方圖均衡化和圖像銳化操作,進行柑橘圖像的輪廓補償[23],增強圖像邊緣位置顏色的對比度,以提高圖像的清晰度。但是,本研究的目的是柑橘黃龍病的識別,直方圖均衡化和圖像銳化預處理方法,很容易造成原始圖片的對比度過分增強,圖片色彩失真,如圖6所示,從而造成柑橘果實黃龍病表型特征的嚴重丟失,對模型訓練產(chǎn)生誤導作用。因此,應進行圖像預處理對模型性能影響的評估試驗,以決定是否對圖像數(shù)據(jù)集進行預處理。
圖 6 原圖與預處理后圖像對比Fig.6 Comparison of original image and preprocessed image
試驗基于TensorFlow后端的Keras框架進行,計算機硬件環(huán)境如下:處理器為Intel 6800k CPU,內(nèi)存為32 G,GPU為GTX 1080Ti ×2;軟件操作系統(tǒng)為Centos7系統(tǒng)。評估結果采用準確率、召回率、F1值、損失值作為主要評價指標。
分別采用無預處理、直方均衡化預處理和圖像銳化預處理的原始數(shù)據(jù)集訓練X-ResNeXt柑橘黃龍病識別模型。圖像數(shù)據(jù)集未作預處理時,模型的可信度為63.12%,數(shù)據(jù)集利用直方圖均衡化和圖像銳化分別進行預處理操作后,模型的可信度分別降低了7.91%和10.29%??梢姡槍Ρ狙芯康母涕俟麑嶞S龍病識別任務,對圖像數(shù)據(jù)集進行圖像直方均衡化和銳化預處理操作將會對結果產(chǎn)生負面影響,因此本研究后續(xù)試驗未對圖像數(shù)據(jù)集進行預處理。
分別采用原始數(shù)據(jù)集和經(jīng)數(shù)據(jù)同類增強的數(shù)據(jù)集訓練X-ResNeXt柑橘黃龍病識別模型,并對比2組模型的性能指標。數(shù)據(jù)集進行數(shù)據(jù)同類增強,后訓練所得的模型性能指標準確率為91.38%,召回率為90.42%,F(xiàn)1值為0.909,與原始數(shù)據(jù)集訓練所得的模型相關指標相比,分別提高了5.85%、5.96%和0.059。試驗結果表明,對訓練集進行數(shù)據(jù)同類增強,可在原始數(shù)據(jù)基礎上增加樣本特征的多樣性,提高模型訓練結果的準確率,體現(xiàn)了神經(jīng)網(wǎng)絡模型性能與訓練樣本數(shù)呈線性正相關的關系。從另一個角度,也說明后期隨著柑橘黃龍病果實樣本數(shù)的增加,模型的識別性能也將有進一步的提升。
利用遷移學習對X-ResNeXt模型進行微調優(yōu)化,將ImageNet數(shù)據(jù)集上訓練所得的權重知識遷移到柑橘黃龍病識別分類任務上。設置Dropout參數(shù)為0.5,學習率為0.1,mini-batch為32×2=64。由遷移學習的試驗結果可見,模型在ImageNet數(shù)據(jù)集訓練得到的權重和偏置參數(shù)經(jīng)驗基礎上進行訓練,模型訓練時間由 5 220 s減少為4 788 s,表明相同條件下,遷移學習提高了柑橘黃龍病識別模型的訓練速度。與無遷移學習訓練的模型相比,遷移學習的識別準確率、召回率分別提高了0.61%和0.34%,F(xiàn)1值提高了0.006。表明在柑橘黃龍病數(shù)據(jù)集規(guī)模較小的情況下,遷移學習可加快模型收斂速度,獲取局部更優(yōu)化權重值,有助于提升柑橘黃龍病識別任務的相關指標。
在遷移學習和L2正則化等優(yōu)化策略基礎上,進行不同超參數(shù)條件下的Mixup混類數(shù)據(jù)增強對模型性能影響的試驗。設置Dropout參數(shù)為0.5,mini-batch為32×2=64,正則化系數(shù)為0.02,學習率為0.1,混合系數(shù) λ 分別設置為1.0、0.8、0.4、0.2 和0。由表1可知,當λ為0.4時,X-ResNeXt模型表現(xiàn)最優(yōu),模型的準確率、召回率、F1值分別為93.74%、92.58%和0.932。在傳統(tǒng)數(shù)據(jù)增強和遷移學習的基礎上,這3個指標分別上升了1.77%、1.82%和0.018。試驗表明,Mixup混類數(shù)據(jù)增強方法有利于提高模型識別圖像樣本的適應性,提升模型判別柑橘黃龍病病果的能力。
表 1 Mixup混類數(shù)據(jù)增強對模型性能的影響Table 1 Effects of Mixup mixed data enhancement on model performance
為驗證X-ResNeXt模型動量梯度下降優(yōu)化方法的有效性,模型分別采用MGD和SGD進行識別對比試驗。設置學習率為0.1,L2正則化系數(shù)為0.01,Dropout參數(shù)默認為0.5,mini-batch為32×2=64,λ取 0.4,MGD 的動量值分別取 0、0.5和0.9。由表2可見,模型采用MGD 動量值取0.9時,識別準確率、召回率和F1值最高。表明模型經(jīng)MGD優(yōu)化后,參數(shù)更接近于局部最優(yōu)值,模型能更有效地收斂,從而實現(xiàn)模型對柑橘黃龍病病果識別能力的進一步提升。
表 2 模型梯度下降優(yōu)化方法對比試驗Table 2 Comparison test of model optimization methods based on gradient descent
選擇同等條件下訓練所得的Inception-V3和Xception模型進行測試試驗,與X-ResNeXt模型測試結果進行比較。X-ResNeXt模型最終收斂的準確率 (94.29%)優(yōu)于Xception模型(92.78%)和Inception-V3模型 (90.31%);X-ResNeXt模型最終收斂的召回率(93.69%)也優(yōu)于Xception模型(91.89%)和Inception-V3模型(89.23%)。結果表明,與Inception-V3和Xception模型相比,XResNeXt模型加深了網(wǎng)絡的深度,拓寬了網(wǎng)絡結構的寬度,表達柑橘黃龍病的果實特征更加全面,模型泛化程度更高。
柑橘出現(xiàn)紅鼻子果是柑橘患黃龍病的初期癥狀,對該時期的柑橘黃龍病果實進行快速準確識別將進一步提高柑橘園區(qū)的產(chǎn)量和產(chǎn)品質量。本研究以柑橘黃龍病初期患病果實作為研究對象,應用卷積神經(jīng)網(wǎng)絡設計和構建一種基于Inception網(wǎng)絡架構的柑橘黃龍病果實識別模型:X-ResNeXt模型,試驗結論如下:
1)在數(shù)據(jù)量較少情況下,降低模型復雜度并遷移已有先驗知識,有助于模型性能提升,說明正則化、遷移學習等模型優(yōu)化策略可為柑橘黃龍病果實識別與分類模型提供高效的訓練途徑,可解決深度學習網(wǎng)絡模型訓練成本大、耗費資源多的問題。
2) Mixup混類數(shù)據(jù)增強方法有利于提高模型識別柑橘黃龍病果實圖像樣本的適應性,提升柑橘黃龍病識別模型性能,表明該新型數(shù)據(jù)增強方法在擴充數(shù)據(jù)集的同時,也提高了神經(jīng)網(wǎng)絡的泛化能力。本文將Mixup方法應用到農(nóng)業(yè)智能化系統(tǒng)領域,并實現(xiàn)了對模型的優(yōu)化,該結合方法可推廣到未來的智慧農(nóng)業(yè)研究中,進一步提升對農(nóng)情監(jiān)測的時效性。
3) 在準確率與召回率指標上X-ResNeXt模型優(yōu)于經(jīng)典識別模型,充分表明利用深度學習方法對柑橘黃龍病果實進行識別是判斷柑橘植株是否患病的一種可行且可靠的方式,可為柑橘黃龍病的高精度、快速無損識別提供有益參考。