999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度學習的玉米葉片病斑識別方法研究*

2021-03-12 02:02:40李恩霖謝秋菊蘇中濱
智慧農業導刊 2021年10期
關鍵詞:分類模型

李恩霖,謝秋菊,蘇中濱,高 睿

(東北農業大學 電氣與信息學院,黑龍江 哈爾濱 150030)

玉米是我國重要的糧食作物,種植面積非常廣闊,然而大面積的玉米密集種植在遭受突發性病害時,由于其較強的傳染性,產量會受到很大的影響,玉米病害已經成為影響我國玉米產量的重要因素之一[1-2]。因此,準確、快速地識別玉米病害種類變得尤為重要。

近年來,隨著深度學習在圖像識別方面的發展,很多學者開始將以 AlexNet[3]、Inception V3[4]、VGG[5]、ResNet[6]以及DenseNet[7]等為代表的深度卷積神經網絡模型應用到農作物病蟲害識別當中并且取得了一定的進展[8]。例如,在棉花葉部病害識別方面,趙立新等[9]通過改進的AlexNet模型融合遷移學習實現的病害率可達到97.16%,但只建立了VGG19和Inception V2兩種模型,未有其他更先進的模型;樊湘鵬等[10]提出了改進的卷積神經網絡對田間復雜背景下的玉米病害進行識別,其識別準確率可達到99.12%,但設計的卷積神經網絡結構較淺并不一定能夠有效提取植物病害的特征信息;Chen等[11]建立的INC-VGGN模型對水稻病害進行識別,在公開數據集的測試中準確率略低,識別率為91.83%;劉君等[12]建立了基于YOLO的卷積神經網絡模型對番茄病害進行識別,識別率可達85.09%,識別率并不夠高。然而,由于數據采集環境復雜,同時受采集的數據樣本量限制,識別精準度仍需進一步提高。此外,雖然上述研究大都采用數據增強技術增加數據的復雜度及擴大樣本量,然而在目前病害識別研究中,結合較新的深度網絡模型,探索適合小樣本量條件下優化的病害識別方法的研究仍然欠缺。

本文以玉米銹病、玉米葉枯病、玉米灰斑病3種病害為例,采用遷移學習和離線數據增強方法,建立基于深度網絡模型 VGG16、Inception V3、ResNet50、ResNet101 和DenseNet121的玉米葉片病害識別方法,設計全新分類層,選擇較優的網絡模型,通過遷移學習凍結分類層訓練方式優化模型性能。與徐景輝等[13]建立的基于遷移學習的VGG16模型進行玉米大斑病與銹病相比,本文建立了幾種優于VGG16模型的卷積神經網絡模型進行3種玉米病害的識別,并同樣采用了遷移學習和數據增強的方法,突破由于樣本量及不同數據敏感性帶來的深度模型的識別限制,為今后農作物病害識別提供可行的參考。

1 材料與方法

1.1 數據集

本實驗以玉米銹病、玉米葉枯病和玉米灰斑病這3種玉米病蟲害為研究對象,實驗數據來自于公開數據集PlantVillage(https://github.com/spMohanty/PlantVillage-Dataset)。數據集中3種病蟲害圖片數目并不一致,為了防止樣本不均衡所帶來的過擬合等問題[14],分別選取3種病蟲害圖片各500張。為滿足輸入模型的圖片維度固定,本文將圖片尺寸統一轉換為256×256×3像素。為了防止非葉片信息對病蟲害識別產生干擾,本文采用了經過閾值分割后的病蟲害圖片,經過閾值分割后3種病蟲害樣本圖片如圖1所示。

圖1 經過閾值分割后3種病蟲害樣本圖片

本文采用了離線數據增強技術對數據集進行了擴充,對3種玉米病蟲害圖片進行了翻轉、旋轉20°、對比度增強、亮度增強以及顏色增強。最后將原始數據集中3種玉米病蟲害圖片各500張,擴充至每種玉米病蟲害圖片各2500張,相當于對原始的數據集擴充至5倍。經過離線數據增強后的部分樣本圖片如圖2所示。

圖2 經過離線數據增強后的部分樣本圖片

1.2 深度卷積神經網絡(CNN)模型

CNN由于其在圖像識別方面表現出的巨大優勢,近年來在各種視覺識別領域應用廣泛。與傳統的方法不同,CNN不需要人工提取特征,可以直接從原始圖像中自動提取特征。典型的CNN模型包括輸入層、輸出層和多個隱藏層,其中隱藏層包括:卷積層、池化層、全連接層以及分類層,如圖3所示。

圖3 典型的卷積神經網絡模型結構[7]

卷積層是CNN模型的關鍵組成成分,它通過不同大小的卷積核對圖片進行特征的提取。經過一系列的卷積操作后,可以提取出原始圖像中的一些特征信息。卷積層的計算公式,如公式(1)所示。

式中,yij-卷積層的輸出;wuv-維度為 u×v的卷積核;xi+u-1,j+v-1-卷積層的輸入。

在卷積層提取到的特征數據不具備空間不變性,只有通過池化層之后才具備空間不變特性。同時池化層還可以減少特征空間,避免一定的過擬合,增加卷積核的感受野。池化層可以理解為對圖像進行下采樣的過程,對于每一次滑動窗口的所有值,輸出其中的最大值、均值或其他方法產生的值。本文中各個模型通過更改都采用了平均池化,如公式(2)所示。

式中,ym,n-池化層的輸出;Rm,n-池化區域;xi-池化層的輸入。

在一系列的卷積和池化操作后,通常會再連接一個或多個全連接層,全連接層的目的是利用提取出的特征信息進行圖像分類,本文使用Softmax函數進行分類,如公式(3)所示。

式中,wc-第c類別的權重向量;-所有類別的預測條件概率組成的向量。

本文對比 VGG16、Inception V3、ResNet50、ResNet1 01和DenseNet121這幾種優異的CNN模型,建立基于深度學習模型的玉米病害識別方法。

1.2.1 DenseNet

DenseNet是Huang G.等[7]在論文中提出的一種采用密集連接機制的CNN結構,它通過特征圖重用的方式來探索網絡的潛能[15]。DenseNet在輸入層的表示如公式(4)所示。

式中,Hl(*)代表的是非線性轉化函數,是一個組合操作,其可能包括一系列的BN、ReLU、Pooling及Conv操作。

DenseNet主要由DenseBlock層和Transition層交替連接形成。在DenseBlock中,各層特征圖大小相同并且在通道維度上進行疊加。由于在通道維度上疊加的操作會導致后面層的輸入非常大,因此在DenseBlock內部采用了bottleneck層來降低計算量,bottleneck層主要是在原有的結構中添加了1×1的卷積核。Transition層是連接兩個相鄰的DenseBlock模塊,由連續的卷積和池化構成,可以起到降低特征圖大小的作用。

本文對DenseNet121進行了修改,保留了其卷積層,頂部添加了全局平均池化層、結點數為512的全連接層、丟棄率為0.5的Dropout層,最后又添加了3分類的Softmax分類層,如圖4所示。

圖4 DenseNet121模型結構圖

1.2.2 VGG16

本文建立的VGG16模型共16層,包括3×3的卷積層和2×2的最大池化層,在最后連接了3個全連接層,前兩個全連接層的激活函數為ReLU,最后一個全連接層的激活函數為Softmax[16],輸入圖像像素大小為256×256×3。本文將VGG16模型前兩層全連接層結點數設置為512,最后的分類層設置為3分類,結構圖如圖5所示。

圖5 VGG16模型結構圖

1.2.3 ResNet

ResNet利用殘差結構堆疊來解決梯度消失和退化問題[17],其結構如圖6所示。在層數比較少的ResNet模型中使用了圖6所示左側的殘差結構,在層數較多的ResNet模型中使用了圖6所示右側的殘差結構。在殘差結構堆疊的最后采用了平均池化進行了一次下采樣,再連接一個分類層。本文將原始的ResNet50和ResNet101模型的分類層之前添加了兩層結點數為512的全連接層,并將分類層結點數設置為3。

圖6 殘差單元結構圖

1.2.4 Inception V3

Inception V3是谷歌公司[4]提出的第三代Inception模型。通過設計一個稀疏網絡結構,產生稠密的數據,增加神經網絡的表現,保證計算資源的使用效率[18]。Inception模塊采用多層的小卷積核來代替大的卷積核,以此來減少計算量和參數量,其結構如圖7。本文將原始的Inception V3模型分類層結點數設置為3,以適應3分類的玉米病蟲害識別。

圖7 Inception模塊結構圖

1.3 遷移學習

為了提高以上網絡模型的識別精度,本文將遷移學習融入到各個模型當中,解決本研究中深度學習數據量樣本小的問題。遷移學習是一種機器學習技術,本文采用遷移學習目的是讓計算機將從ImageNet大數據集中所學到的知識和方法遷移到數據量不足的玉米病蟲害識別任務中。通過從ImageNet預訓練模型中提取卷積層并且凍結它們,以免在后續的訓練中破壞它們所包含的特征信息,在凍結層的頂部添加了全局平均池化層、全連接層、Dropout層以及分類層,進行新舊功能的轉換。對玉米病害數據集進行訓練建立模型,最后進行微調,解凍卷積層并以非常低的學習率進行重新訓練,通過不斷訓練來逐步適應玉米病蟲害數據集,從而節省訓練時間,提高病害的識別準確率[19-20]。

1.4 實驗設計

1.4.1 實驗環境

實驗在Python3.7.6、Tensorflow-GPU 2.3.0軟件環境下完成。硬件環境中CPU采用Intel core i5-10300H,主頻為2.5GHz;GPU采用NVIDIA GTX2060Ti,6G顯存。

1.4.2 實驗數據集劃分及遷移優化與實驗設計

本文將經過數據增強的3種玉米病蟲害圖片數據集以70%、20%、10%的比例劃分為訓練集、驗證集和測試集。訓練集和驗證集用于模型的訓練和擬合,測試集用于模型的測試。

本文中遷移學習方法遷移了ImageNet的權重參數,并且對 VGG16、ResNet50、ResNet101、Inception V3、DenseNet121模型進行了微調,只保留上述模型的卷積層,將頂層分類層設置為全局平均池化層+全連接層+Dropout+Softmax分類層。實驗總體分為兩個部分,第一個部分凍結各個模型的卷積層只訓練各個模型的分類層,第二個部分將凍結層全部打開再進行訓練以使模型達到更優的結果。

1.4.3 超參數設計

本實驗設置VGG16模型的優化器為SGD,其他模型均采用Adam優化器;batchsize設置為16,Dropout丟棄率設置為0.5,第一部分和第二部分均訓練30個epoch。

VGG16模型第一部分訓練初始學習率設置為0.01,第二部分訓練初始學習率設置為0.0001,其他模型第一部分和第二部分訓練初始學習率均設置為0.0001,并且所有模型均采用了學習率衰減的方法,當驗證集的損失函數超過2個epoch沒有減小時,學習率設置為原來的1/10的方法。

1.5 模型性能評價

為了更好地對比以上幾種模型的分類能力,本文采用混淆矩陣判斷模型各項性能指標,分別用TP(True Positive)代表真實值是true模型認為是positive的數量,FN(False Negative)代表真實值是false模型認為是negative 的數量,FP(False Positive)代表真實值是 false模型認為是positive的數量,TN(True Negative)代表真實值是true模型認為是negative的數量。通過利用混淆矩陣這幾個基礎指標可以得到準確率(Accuracy)來評估模型正確分類樣本數占總樣本數的比例,精確率(Precision)評估模型預測的所有positive中預測正確的比例,召回率(Recall)評估所有真實positive中模型預測正確的positive的比例、特異度(Specificity)評價所有真實negative中模型預測正確的negative比例,計算如公式(5)-(8)所示。

2 結果與分析

2.1 模型性能分析

2.1.1 準確率分析

本實驗為了評估目前比較先進的深度卷積神經網絡在植物病蟲害識別任務中的適用性,重點對DenseNet121、VGG16、ResNet50、ResNet101 和 Inception V3 幾種網絡模型進行了微調后并凍結最后分類層進行訓練30epoch,解凍凍結層后繼續訓練30epoch,解凍后模型訓練準確率與損失函數變化如圖8,具體結果如表1。

圖8 各個模型損失函數與準確率變化

表1 各個模型第一、二部分參數量、每步時間、準確率、損失值

由圖8可以看出,除了Inception V3模型外,其他模型擬合速度都很快,都在5個epoch左右即可達到較高的準確率與較低的損失值。

由表1可以看出,除了VGG16其余網絡模型結構準確率都超過99.00%,并且在VGG16網絡模型解凍之后訓練30epoch后訓練集準確率達到99.98%,而測試集卻只有98.40%,說明在與其他模型相同的超參數設置情況下VGG16存在著一定的過擬合。

在凍結分類層訓練30epoch后,VGG16的準確率最高為98.13%,DenseNet和Inception V3準確率也較高,分別為97.33%、94.27%,在準確率要求不那么高的情況下可以選用VGG16模型,不但擁有不錯的準確率,訓練時間也會比較短。解凍凍結層后再訓練30epoch可以發現各個模型準確率均有提升,其中ResNet50和ResNet101在后30epoch訓練開始時準確率特別低,原因可能是兩種模型總的參數量特別龐大,而凍結卷積層訓練時只訓練了很少的參數,當解凍卷積層后無法將玉米病蟲害識別這個功能有效的繼承。解凍凍結層后訓練結果中,DenseNet模型表現最好,準確率為99.73%。

2.1.2 訓練時間與參數量分析

由表1可以看出,Inception V3凍結分類層訓練每個epoch用時最短為19s,其次DenseNet121也有著較短的訓練時間為23s,解凍后訓練模型每個epoch用時最短的兩個算法依然為Inception V3和DenseNet121,運行每個epoch時間分別為55s和73s。在參數量方面DenseNet121相比于其他模型少很多,也就意味著在保存DenseNet121模型參數時所需要的存儲空間也就更小。并且在數據集不那么多的情況下,模型需要訓練的參數量越多,也越容易產生過擬合。

2.1.3 通過混淆矩陣對比

由表2可以看出,DenseNet121對于3種病蟲害的精確率、召回率以及特異率表現最好。ResNet50、ResNet101、DenseNet121這3種模型識別玉米銹病時精確率、召回率以及特異率都達到了100%,說明這3種模型對于玉米銹病的識別能力非常好。通過圖9各個模型混淆矩陣可以看出,DenseNet121模型對于3種病蟲害識別能力最強,750個測試集只有2個測試集分類錯誤,分別是葉枯病和灰斑病識別錯誤。觀察其他模型的識別情況可以發現,在這5種模型中最多的分類錯誤都出現在葉枯病和灰斑病上,說明葉枯病和灰斑病可能有著一定的相似性。

表2 各個模型 Precision、Recall、Specificity

圖9 各個模型混淆矩陣

2.2 模型性能比較

通過以上對各個模型的對比,本實驗采用表現最為優異的DenseNet121模型做了兩組對比實驗,分別為不進行遷移學習訓練60epoch、不凍結卷積層直接訓練60epoch,結果對比如表3所示。最后兩種對比實驗準確率分別為97.86%和99.60%,與不進行遷移學習對比發現,利用遷移學習可以提升一定的準確率。在同樣使用遷移學習的條件下,對比先凍結分類層訓練30epoch再解凍訓練30epoch和直接訓練60epoch,結果發現先凍結分類層30epoch再解凍訓練30epoch模型準確率為99.73%,直接訓練60epoch的模型準確率為99.60%,兩種訓練方式準確率相近,采用先凍結分類層30epoch再解凍訓練30epoch準確率略高,但是從訓練時間上看,采用本實驗的訓練方式凍結分類層訓練每一epoch用時23s、解凍后訓練每一epoch用時73s,而采用直接訓練的訓練方式訓練每一epoch用時都為73s,說明采用本實驗的訓練方式不但準確率有略微的提升,訓練時間也有著明顯的縮短。

表3 3種訓練方式下DenseNet121準確率與訓練每步時長對比

2.3 3種病害識別效果分析

通過以上結果分析可以看出,各個模型對于玉米銹病識別的準確率明顯高于玉米葉枯病和玉米灰斑病。玉米銹病、玉米灰斑病和玉米葉枯病都是由病菌侵染發生在葉片上的玉米病害[21-22]。玉米銹病發病后,整張葉片都布滿銹褐色長橢圓型病斑,病斑呈散生;玉米灰斑病和玉米葉枯病在發病后,病斑多會沿著玉米葉脈方向擴展,寬度受葉脈限制,逐漸擴展為橢圓形。因此,可以推斷各個模型識別3種病害圖片效果的差異可能是由于3種病害病斑的形態學特征。為了驗證這一推斷,本文利用識別效果最好的DenseNet121模型保存好的權重參數,對3種病害圖片進行特征圖可視化,選取conv1relu、conv2_block1_0relu、conv3_block1_0relu、conv4_block1_0relu 層的 3 種病蟲害特征圖可視化圖片,如圖10所示。通過觀察各個層3種病蟲特征圖可視化圖片可以發現,較淺的卷積層conv1relu提取的為整張葉片的信息,隨著卷積層數的加深,提取的特征主要為葉片的邊緣信息、葉片的葉脈信息以及葉片的病斑信息,玉米灰斑病與玉米葉枯病提取的葉斑信息都順著葉脈的方向,而玉米銹病提取的葉斑信息呈散狀分布。通過以上的分析可驗證,玉米病蟲害病斑的形態特征會影響模型的識別情況。

圖10 經過卷積可視化的3種病蟲害樣本圖片

3 結論

(1)本文以3種玉米病害為例,對比5種模型結構,發現DenseNet121準確率、精確率、召回率、特異率最好,并且參數量最少、模型訓練時間相對比較短,因此,表明DenseNet121模型是最適合的玉米病害識別方法。

(2)采用遷移學習可以在一定的程度上提高模型的準確率。本文對表現最為優異的DenseNet121模型,不采用遷移學習與采用遷移學習訓練60epoch的模型性能進行對比,其準確率分別為97.86%和99.73%,采用遷移學習機制可以較大程度地提高玉米病害識別模型的準確率。

(3)在模型訓練過程中,采用先凍結卷積層訓練再解凍進行整個模型訓練的方法,相比于不凍結分類層直接進行模型訓練的方法更為合理,在提高準確率的同時,大大縮短訓練時間。

(4)玉米病害病斑的形態特征會在一定程度上影響模型的識別精準率。本文通過卷積可視化發現,病斑形狀及分布相似的玉米灰斑病與玉米葉斑病識別準確率明顯低于玉米銹病的識別準確率。

猜你喜歡
分類模型
一半模型
分類算一算
垃圾分類的困惑你有嗎
大眾健康(2021年6期)2021-06-08 19:30:06
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
分類討論求坐標
數據分析中的分類討論
教你一招:數的分類
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 精品人妻无码中字系列| 亚洲欧美激情小说另类| 亚洲日产2021三区在线| 国产精品露脸视频| 在线观看国产精美视频| 国产又色又爽又黄| 国产原创第一页在线观看| 国产成人亚洲无吗淙合青草| 福利姬国产精品一区在线| 狠狠综合久久久久综| 亚洲91精品视频| 亚洲欧洲日产无码AV| 手机精品福利在线观看| 亚洲欧洲国产成人综合不卡| 91精品国产情侣高潮露脸| 在线看AV天堂| 任我操在线视频| 亚洲午夜天堂| 亚洲第一国产综合| 亚洲bt欧美bt精品| 久久人体视频| 久久永久视频| 国产极品粉嫩小泬免费看| 日本欧美视频在线观看| 亚洲日韩日本中文在线| 亚洲精品动漫| 精品国产一区91在线| 中文字幕在线播放不卡| 国产18在线| 欧美亚洲另类在线观看| 啪啪永久免费av| 国产在线视频欧美亚综合| 亚洲三级视频在线观看| 免费人成视网站在线不卡| 国产精品hd在线播放| 2020久久国产综合精品swag| 亚洲天堂网在线播放| 国产精品妖精视频| 日韩欧美中文| 久久综合久久鬼| 亚洲区视频在线观看| 久久无码av三级| 免费在线a视频| 色综合激情网| 精品精品国产高清A毛片| 国产乱人伦偷精品视频AAA| 亚洲乱伦视频| 国产对白刺激真实精品91| 亚洲婷婷丁香| 一本综合久久| 一级一级特黄女人精品毛片| 国内精品久久久久鸭| 国产免费精彩视频| 毛片久久网站小视频| 亚洲国产成人精品无码区性色| 国产欧美日韩免费| 亚洲欧美日韩视频一区| 国产真实乱子伦视频播放| 另类专区亚洲| 在线国产欧美| 99九九成人免费视频精品| 色亚洲成人| 91人人妻人人做人人爽男同| 正在播放久久| 国产福利小视频高清在线观看| 日韩福利视频导航| 国产免费久久精品99re丫丫一| 久996视频精品免费观看| 国产成人亚洲毛片| 亚洲色无码专线精品观看| 亚洲av日韩av制服丝袜| 老司机aⅴ在线精品导航| 国产亚洲欧美日韩在线一区二区三区 | 天天综合网色中文字幕| 亚洲IV视频免费在线光看| 黄色网在线免费观看| 二级毛片免费观看全程| 欧美日韩中文国产| 福利国产在线| 人妻丰满熟妇啪啪| 午夜精品久久久久久久99热下载 | 2020国产在线视精品在|