蘇仕芳,喬 焰,饒 元
基于遷移學(xué)習(xí)的葡萄葉片病害識別及移動端應(yīng)用
蘇仕芳,喬 焰,饒 元※
(安徽農(nóng)業(yè)大學(xué)信息與計算機(jī)學(xué)院,合肥 230036)
為解決已有的卷積神經(jīng)網(wǎng)絡(luò)在小樣本葡萄病害葉片識別的問題中出現(xiàn)的收斂速度慢,易產(chǎn)生過擬合現(xiàn)象等問題,提出了一種葡萄葉片病害識別模型(Grape-VGG-16,GV),并針對該模型提出基于遷移學(xué)習(xí)的模型訓(xùn)練方式。將VGG-16網(wǎng)絡(luò)在ImageNet圖像數(shù)據(jù)集上學(xué)習(xí)的知識遷移到本模型中,并設(shè)計全新的全連接層。對收集到的葡萄葉片圖像使用數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)充數(shù)據(jù)集?;跀U(kuò)充前后的數(shù)據(jù)集,對全新學(xué)習(xí)、訓(xùn)練全連接層的遷移學(xué)習(xí)、訓(xùn)練最后一個卷積層和全連接層的遷移學(xué)習(xí)3種學(xué)習(xí)方式進(jìn)行了試驗。試驗結(jié)果表明,1)遷移學(xué)習(xí)的2種訓(xùn)練方式相比于全新學(xué)習(xí)準(zhǔn)確率增加了10~13個百分點,并在僅訓(xùn)練25輪達(dá)到收斂,該方法有效提升了模型分類性能,縮短模型的收斂時間;2)數(shù)據(jù)擴(kuò)充有助于增加數(shù)據(jù)的多樣性,并隨著訓(xùn)練次數(shù)的增加,訓(xùn)練與測試準(zhǔn)確率同步上升,有效緩解了過擬合現(xiàn)象。在遷移學(xué)習(xí)結(jié)合數(shù)據(jù)擴(kuò)充的方式下,所構(gòu)建的葡萄葉片病害識別模型(GV)對葡萄葉片病害的識別準(zhǔn)確率能達(dá)到96.48%,對健康葉、褐斑病、輪斑病和黑腐病的識別準(zhǔn)確率分別達(dá)到98.04%、98.04%、95.83%和94.00%。最后,將最終的研究模型部署到移動端,實現(xiàn)了田間葡萄葉片病害的智能檢測,為葡萄病害的智能診斷提供參考。
圖像識別;病害;葡萄葉片;遷移學(xué)習(xí);數(shù)據(jù)擴(kuò)充;移動端
目前,葡萄在世界水果生產(chǎn)中占有重要地位,中國葡萄栽培總面積達(dá)到67萬hm2,葡萄產(chǎn)量1 000萬t。但是葡萄的種植過程極易受到天氣、環(huán)境、蟲害和病害等影響,從而對葡萄植株的生長發(fā)育、產(chǎn)量品質(zhì)等造成不可逆的損害[1]。隨著葡萄產(chǎn)業(yè)的發(fā)展,葉片病害的種類不斷增多、病害對植株的傷害也不斷加重,初期的病害如果不及時發(fā)現(xiàn)并采取措施,病害就會迅速蔓延到整個植株,從而嚴(yán)重影響葡萄果實的正常生長,給種植戶造成嚴(yán)重的經(jīng)濟(jì)損失。所以在初期階段快速準(zhǔn)確的識別葡萄病害是目前葡萄種植行業(yè)亟待解決的問題。目前葡萄種植過程中普遍存在的病害主要有褐斑病、輪斑病、黑腐病等。早期的病害檢測主要是靠有經(jīng)驗的葡萄病蟲害專家通過對葡萄葉片的感官識別來判定,而單純依靠人工判定病蟲害方式耗時費力[2-3],對于日益增加的葡萄種植戶來說并不可行,并且憑經(jīng)驗判斷的結(jié)果差異較大,很難確保檢驗結(jié)果的一致性和準(zhǔn)確性。因此,利用人工智能手段,對葡萄病害進(jìn)行自動的、智能的檢測具有重要意義。
深度學(xué)習(xí)作為機(jī)器學(xué)習(xí)的一個分支,在計算機(jī)視覺領(lǐng)域應(yīng)用廣泛,其中卷積神經(jīng)網(wǎng)絡(luò)[4-5](Convolutional Neural Networks,CNN)作為最經(jīng)典的深度學(xué)習(xí)算法之一,已經(jīng)被廣泛應(yīng)用到圖像識別領(lǐng)域(如車輛檢測[6]、人臉識別[7-8]、語音識別[9]等),并取得了較好的成果。在農(nóng)作物病害識別中,孫俊等[10]提出一種批歸一化(Batch Normalization,BN)與全局池化相結(jié)合的改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練PlantVillage所收集的21 917張葉片圖像,僅經(jīng)過3次訓(xùn)練,就達(dá)到90%以上的識別準(zhǔn)確率;王璨等[11]利用卷積神經(jīng)網(wǎng)絡(luò)提取圖像的多尺度分層特征,再對圖像進(jìn)行超像素分割,精確地實現(xiàn)了玉米與雜草的識別;周云成等[12]將深度卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于番茄主要器官的分類與識別,實現(xiàn)了對番茄果、花、莖的精確識別。雖然基于卷積神經(jīng)網(wǎng)絡(luò)的圖像識別方法已經(jīng)廣泛應(yīng)用到多種農(nóng)作物病害的識別與檢測領(lǐng)域,但是針對葡萄病害的檢測卻少有應(yīng)用。主要是因為葡萄相對其他大規(guī)模種植的農(nóng)作物來說,其病害圖像較難獲得,而較小的訓(xùn)練樣本集難以使深度卷積神經(jīng)網(wǎng)絡(luò)模型獲得穩(wěn)定的識別精度。為此,針對小樣本數(shù)據(jù)集的訓(xùn)練問題,龍滿生等[13]提出了一種基于AlexNet網(wǎng)絡(luò)的遷移學(xué)習(xí)方法,通過對小數(shù)據(jù)樣本的數(shù)據(jù)擴(kuò)充和遷移學(xué)習(xí),能夠?qū)⒎诸悳?zhǔn)確率提升到96.53%;蘇婷婷等[14]運用深度遷移學(xué)習(xí)的方法識別花生葉部病害,識別準(zhǔn)確率可達(dá)到95.30%;趙立新等[15]將遷移學(xué)習(xí)的多種網(wǎng)絡(luò)進(jìn)行了對比,證明了AlexNet網(wǎng)絡(luò)的遷移學(xué)習(xí)分類效果相對較好,使用數(shù)據(jù)增強(qiáng)技術(shù)后再訓(xùn)練能夠?qū)⑵骄鶞y試準(zhǔn)確率提高到97.16%。以上研究表明,通過遷移學(xué)習(xí)和樣本擴(kuò)充能在一定程度上解決小樣本數(shù)據(jù)集在卷積神經(jīng)網(wǎng)絡(luò)上模型訓(xùn)練問題,然而較成熟的卷積神經(jīng)網(wǎng)絡(luò)模型分類種類較多,在訓(xùn)練僅有4類病害的葡萄葉片時難以收斂,且極易產(chǎn)生過擬合現(xiàn)象。
針對以上問題,本文提出一種基于VGG-16[16]的葡萄葉片病害識別模型(Grape-VGG-16,GV),利用遷移學(xué)習(xí)將VGG-16在ImageNet[17]數(shù)據(jù)集上訓(xùn)練成熟的特征提取能力遷移到葡萄葉片病害識別模型中,通過設(shè)計全新的全連接層實現(xiàn)了葡萄病害的精確識別。通過18組對比試驗,證明了遷移學(xué)習(xí)的訓(xùn)練方法能加快收斂速度,有效地緩解過擬合現(xiàn)象的產(chǎn)生,并將葡萄病害的識別準(zhǔn)確度提高到96.48%。最后,采用Google發(fā)布的針對移動設(shè)備或嵌入式設(shè)備的輕量化解決方案——TensorFlow_Lite將提出的GV模型部署到智能手機(jī)等移動終端,實現(xiàn)了移動端對葡萄葉片病害的快捷智能化診斷。
本試驗的圖像數(shù)據(jù)采集于2020年5-9月合肥高新產(chǎn)業(yè)農(nóng)業(yè)園和合肥大圩葡萄園,相機(jī)型號為尼康D7200,分辨率設(shè)為640×480像素,分別采集了葡萄葉片褐斑病、輪斑病、健康葉和黑腐病圖像各300張。拍攝采用自然環(huán)境下的多角度與多時間段拍攝方法。
每個類的圖像為300張,首先選取250張為訓(xùn)練集,其余50張用于測試。再使用隨機(jī)旋轉(zhuǎn)度數(shù)、隨機(jī)水平和豎直平移、水平翻轉(zhuǎn)等方法進(jìn)行數(shù)據(jù)擴(kuò)充,訓(xùn)練的過程中對圖片進(jìn)行歸一化處理,并將圖片統(tǒng)一縮放為224′224×3像素。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)能夠通過逐層抽取圖像,獲得代表一幅圖像高級語義的結(jié)構(gòu)化特征[18]?;镜木矸e神經(jīng)網(wǎng)絡(luò)包括輸入層、卷積層、激活層、池化層和全連接層。
本文選取經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)VGG-16進(jìn)行遷移學(xué)習(xí)[19-21],由13個卷積層、5個池化層和3個全連接層組成(如圖1所示)。網(wǎng)絡(luò)只使用3×3的小型卷積核和2×2的最大池化層,通過小卷積核進(jìn)行特征提取,并增加了卷積子層數(shù),提升了網(wǎng)絡(luò)的擬合能力。
卷積層通過卷積運算完成對圖像特征的提取。卷積核以滑動窗口的形式在輸入圖像上進(jìn)行逐行掃描,進(jìn)行圖像與網(wǎng)絡(luò)參數(shù)的卷積操作[22],最終得到圖像的特征圖矩陣。在卷積層中,對輸入特征的卷積運算如下所示
式中為卷積層的輸出結(jié)果。ReLU函數(shù)可用來增加神經(jīng)網(wǎng)絡(luò)間的非線性,VGG-16除了輸出層之外,每一層都選擇ReLU激活函數(shù),相比于Sigmoid和tanh,ReLU具有收斂速度快、計算簡單等特點[25],更適用于深度網(wǎng)絡(luò)模型。
池化也叫下采樣或欠采樣,主要作用是對特征圖進(jìn)行特征壓縮,其方法主要包括最大池化(Max Pooling)和平均池化(Average Pooling)[26],分別在池化操作中計算并保留圖像某一區(qū)域上特定特征的最大值或平均值,VGG-16所有2×2的池化層均使用最大池化。
全連接層出現(xiàn)在多個卷積和池化操作之后,在卷積神經(jīng)網(wǎng)絡(luò)中起到“分類器”的作用,可整合卷積層和池化層中具有類別區(qū)分性的局部信息[27]。全連接層的輸出值直接傳遞給輸出層,輸出層利用Softmax函數(shù)進(jìn)行葡萄葉片病害的檢測。
Softmax分類器用S表示第個樣本的分類概率,其計算公式為
遷移學(xué)習(xí)(Transfer Learning)是運用已有的知識對與原領(lǐng)域不同但相關(guān)領(lǐng)域問題進(jìn)行求解的一種機(jī)器學(xué)習(xí)方法[28],是把一個領(lǐng)域(源領(lǐng)域)的知識,遷移到另外一個領(lǐng)域(目標(biāo)領(lǐng)域),使得目標(biāo)領(lǐng)域能夠取得更好的學(xué)習(xí)效果。遷移學(xué)習(xí)的目的是遷移已有的知識來解決目標(biāo)領(lǐng)域中僅有少量樣本數(shù)據(jù)時的模型訓(xùn)練。微調(diào)[29](fine-tune)是進(jìn)行遷移學(xué)習(xí)的一種手段,它通過使用別人訓(xùn)練好的權(quán)重參數(shù),不凍結(jié)最后一個卷積層和全連接層,對這2個層進(jìn)行參數(shù)的更新和訓(xùn)練。本文使用的數(shù)據(jù)集共4類,每類包含300張圖片,由于樣本量很小,一般的卷積神經(jīng)網(wǎng)絡(luò)無法達(dá)到滿意的訓(xùn)練效果。因此,本文采用2種遷移學(xué)習(xí)方式(訓(xùn)練全連接層與訓(xùn)練最后一個卷積層和全連接層)對模型進(jìn)行訓(xùn)練。相比非遷移學(xué)習(xí)的全新學(xué)習(xí)(即訓(xùn)練模型的全部層),遷移學(xué)習(xí)更有助于在小樣本條件下加快網(wǎng)絡(luò)的收斂,并有效地提高識別精度。
原始的VGG-16網(wǎng)絡(luò)在ImageNet數(shù)據(jù)集上進(jìn)行訓(xùn)練,并將結(jié)果分為1 000類。而目前能夠采集到的葡萄葉片數(shù)量有限,無法達(dá)到與ImageNet數(shù)據(jù)集等同的規(guī)模。若僅靠小樣本數(shù)據(jù)對VGG-16進(jìn)行全新訓(xùn)練,一方面會導(dǎo)致泛化效果差,極易產(chǎn)生過擬合現(xiàn)象;另一方面會占用大量的計算資源,且隨著訓(xùn)練輪數(shù)的增加,模型易發(fā)生波動。因此,為避免小數(shù)據(jù)集易導(dǎo)致的模型過擬合和識別效果不穩(wěn)定現(xiàn)象,本文在VGG-16基礎(chǔ)上,保留圖1中卷積模塊5之前的網(wǎng)絡(luò)結(jié)構(gòu),并重新設(shè)計新的全連接層代替VGG-16的全連接層,提出了葡萄葉片病害識別模型(Grape-VGG-16,GV)。
GV的模型結(jié)構(gòu)如圖2所示,該模型由5個卷積模塊1~5和2個全連接模塊(全連接層1和全連接層2)構(gòu)成。全連接層不僅包括ReLU激活函數(shù)和Softmax函數(shù),還采用正則化方法Dropout[30]技術(shù)來避免訓(xùn)練過擬合。輸入圖像經(jīng)過卷積與池化模塊1~5的操作之后圖像尺寸大小為7×7×512像素。首先經(jīng)過Flatten層,該層是卷積層到全連接層的過渡層,使用Flatten()類將多維的輸入一維化,即將特征矩陣轉(zhuǎn)化為一個1×25 088的向量,再通過全連接層1降維到1×512,之后進(jìn)入非線性激活函數(shù)ReLU。再進(jìn)入Dropout層,Dropout可通過隨機(jī)丟棄掉網(wǎng)絡(luò)中的一些神經(jīng)元來有效地抑制過擬合現(xiàn)象的發(fā)生,Dropout中的正則化參數(shù)一般設(shè)置為0.5或0.3(即丟棄50%或30%的神經(jīng)元),在GV模型中,正則化參數(shù)設(shè)置為0.5。屏蔽掉某些神經(jīng)元之后進(jìn)入全連接層2,該層將向量維度降到1×64,該層同樣使用ReLU函數(shù)。最后一層首先將向量降維到1×4,再利用Softmax函數(shù)計算最終的分類概率。
在模型的遷移學(xué)習(xí)中,將VGG-16網(wǎng)絡(luò)在ImageNet上訓(xùn)練好的卷積層權(quán)重和參數(shù)遷移到GV模型的卷積層中,最后用葡萄葉片病害數(shù)據(jù)集對該模型進(jìn)行訓(xùn)練,實現(xiàn)葡萄葉片病害的識別。
試驗運行環(huán)境操作系統(tǒng)為Windows10,內(nèi)存為8GB,搭載Intel Core i5 8400處理器,采用Anaconda 4.5.11,cuda10.1編程平臺,cudnn 7.6,以Tensorflow作為開發(fā)環(huán)境,編程使用Python3.7。試驗批次(batchsize)為32,訓(xùn)練輪數(shù)為300,動量參數(shù)設(shè)置為0.9,采用隨機(jī)梯度下降法(Stochastic Gradient Descent,SGD)來實現(xiàn)模型優(yōu)化,并利用Dropout函數(shù)減輕過擬合。訓(xùn)練方式包括全新學(xué)習(xí)、訓(xùn)練全連接層的遷移學(xué)習(xí)和訓(xùn)練最后一個卷積層及全連接層的遷移學(xué)習(xí),數(shù)據(jù)集采用無擴(kuò)充數(shù)據(jù)和擴(kuò)充數(shù)據(jù),針對每一種訓(xùn)練方式和每一組數(shù)據(jù)集,學(xué)習(xí)率分別設(shè)置為0.01,0.001,0.000 1,共進(jìn)行18組試驗。GV模型經(jīng)過300輪訓(xùn)練后,各組試驗的訓(xùn)練與測試結(jié)果如表1所示。
由表1可知,不同的訓(xùn)練方式,數(shù)據(jù)集和學(xué)習(xí)率均對模型的性能產(chǎn)生了不同的影響。
3.2.1 訓(xùn)練方式對模型的影響
學(xué)習(xí)率為0.001,使用無擴(kuò)充數(shù)據(jù)集進(jìn)行訓(xùn)練時,3種訓(xùn)練方式的訓(xùn)練和測試準(zhǔn)確率如圖3所示。
表1 GV模型訓(xùn)練與測試的損失值和準(zhǔn)確率
注:A、B為數(shù)據(jù)擴(kuò)充方式,A表示無擴(kuò)充,僅將輸入圖像統(tǒng)一縮放為224×224像素;B表示將輸入數(shù)據(jù)縮放到224×224像素后再進(jìn)行隨機(jī)旋轉(zhuǎn)度數(shù)、隨機(jī)水平和豎直平移、水平翻轉(zhuǎn)等增強(qiáng)操作進(jìn)行擴(kuò)充。NaN表示損失無窮大。訓(xùn)練輪數(shù)為300。
Note: A and B are two data augmentation methods. A means no data augmentation, where input images are only scaled to 224×224 pixels; B means the data is augmented by random rotation, random horizontal, vertical translation and horizontal flip after being scaled to 224×224 pixels. NaN means the loss is infinite. The number of training epochs is 300。
由圖3a可知,進(jìn)行全新學(xué)習(xí)時,模型在一開始伴隨較大波動,在訓(xùn)練約75輪后才達(dá)到收斂。訓(xùn)練全連接層的遷移學(xué)習(xí)與訓(xùn)練最后一個卷積層和全連接層的遷移學(xué)習(xí)在訓(xùn)練過程中產(chǎn)生的波動較小,并且在僅訓(xùn)練25輪后模型就達(dá)到收斂。
由圖3b可知,相比遷移學(xué)習(xí),全新學(xué)習(xí)的測試準(zhǔn)確率較低,初始的測試準(zhǔn)確率僅達(dá)到0.25,收斂也較慢。這是因為葡萄葉片病害數(shù)據(jù)集與ImageNet圖像數(shù)據(jù)集在數(shù)量上存在較大差異,小樣本數(shù)據(jù)的全新學(xué)習(xí)很難達(dá)到理想的測試效果。而采用遷移學(xué)習(xí)的方式可顯著地提高模型的測試準(zhǔn)確率且加快收斂速度。
以上試驗表明遷移學(xué)習(xí)可以極大地縮短模型訓(xùn)練的收斂時間。由圖3可知,遷移學(xué)習(xí)不僅加快了模型的收斂速度,而且對于提高模型的訓(xùn)練與測試準(zhǔn)確率具有明顯的促進(jìn)作用,其中訓(xùn)練最后一個卷積層與全連接層的遷移學(xué)習(xí)模型性能更加穩(wěn)定,相比全新學(xué)習(xí),準(zhǔn)確率約增加13個百分點,而訓(xùn)練全連接層的準(zhǔn)確率約增加10個百分點。表明遷移學(xué)習(xí)的訓(xùn)練全連接層與訓(xùn)練最后一個卷積層和全連接層兩種網(wǎng)絡(luò)模型的性能要優(yōu)于全新學(xué)習(xí),后者性能更佳。
3.2.2 數(shù)據(jù)擴(kuò)充對模型的影響
為了驗證數(shù)據(jù)擴(kuò)充對于模型訓(xùn)練的影響,在其他參數(shù)相同的條件下,分別針對2種數(shù)據(jù)集進(jìn)行訓(xùn)練與測試的準(zhǔn)確率曲線如圖4所示。由圖4可知,在全新學(xué)習(xí)模式下,擴(kuò)充數(shù)據(jù)下的訓(xùn)練和測試準(zhǔn)確率曲線表現(xiàn)出較大的波動,但隨著訓(xùn)練次數(shù)的增加,兩者的波動幅度逐漸減小,準(zhǔn)確率在逐步上升,并沒有產(chǎn)生過擬合現(xiàn)象,表明數(shù)據(jù)擴(kuò)充可以有效的緩解過擬合現(xiàn)象,提升模型性能。在遷移學(xué)習(xí)模式下,擴(kuò)充數(shù)據(jù)的測試準(zhǔn)確率并沒有顯著提高,這是因為VGG-16網(wǎng)絡(luò)在ImageNet這個大型數(shù)據(jù)集上已經(jīng)學(xué)習(xí)到了很好的特征提取能力,因而數(shù)據(jù)擴(kuò)充的作用被弱化。但是數(shù)據(jù)擴(kuò)充對模型的訓(xùn)練是必要的,它不僅充分增加了訓(xùn)練樣本,更有助于防止過擬合,增強(qiáng)模型的泛化能力。
分別對表1中第14組(數(shù)據(jù)無擴(kuò)充)和第17組(數(shù)據(jù)擴(kuò)充)試驗經(jīng)過300輪訓(xùn)練后的模型進(jìn)行測試,分別命名為GV-14、GV-17,分別得出這2個模型對 4類病害識別的準(zhǔn)確率,結(jié)果如表2所示。由表2可知,GV-17對葡萄葉片病害的識別準(zhǔn)確率更高,可達(dá)到99%的準(zhǔn)確率,而GV-14雖然識別出了病害類型,但是準(zhǔn)確率不高并且存在識別為其他類別的可能性,例如,GV-14在識別黑腐病圖片時,可能性為69.5%,因此識別為其他類別的可能性為30.5%。因此,數(shù)據(jù)擴(kuò)充提升了模型的魯棒性與圖片的識別準(zhǔn)確率。
表2 經(jīng)擴(kuò)充數(shù)據(jù)訓(xùn)練后GV模型(GV-17)與無擴(kuò)充數(shù)據(jù)訓(xùn)練后GV模型(GV-14)病害識別準(zhǔn)確率
3.2.3 學(xué)習(xí)率對模型的影響
在分類問題中,僅僅用訓(xùn)練和測試準(zhǔn)確率來判定模型性能的好壞是不準(zhǔn)確的。在數(shù)據(jù)集不平衡時,就可能會存在準(zhǔn)確率很高,而對少數(shù)類樣本分類錯誤的情況。分類模型的評價指標(biāo)除了準(zhǔn)確率之外,還有精準(zhǔn)率、召回率和1得分。1得分可綜合考量精準(zhǔn)率和召回率,可由以下公式計算
本小節(jié)對性能較優(yōu)的第9組試驗(訓(xùn)練方式為遷移學(xué)習(xí)訓(xùn)練全連接層,學(xué)習(xí)率為0.001,使用無擴(kuò)充數(shù)據(jù)集)訓(xùn)練300輪之后的模型進(jìn)行測試,使用200張圖片作為測試數(shù)據(jù),計算模型的精準(zhǔn)率、召回率、1得分與準(zhǔn)確率,結(jié)果如表3所示。計算得出該模型在測試后的平均準(zhǔn)確率為96.48%,分類性能最好的是健康葉和褐斑病,識別準(zhǔn)確率為98.04%,最低的是黑腐病,識別準(zhǔn)確率為94.00%。
表3 模型的識別精度
為了使最終的神經(jīng)網(wǎng)絡(luò)模型更加快捷智能的進(jìn)行病害檢測,將其開發(fā)為移動端應(yīng)用,安裝到手機(jī)或其他智能終端。移動端可以利用手機(jī)自帶的相機(jī)拍攝病害圖片并上傳到PC服務(wù)器端進(jìn)行處理。服務(wù)器端對圖片進(jìn)行相應(yīng)的預(yù)處理后,選擇基于遷移學(xué)習(xí)的葡萄病害識別模型病害進(jìn)行病害識別,最終將該圖片的有效信息及識別結(jié)果反饋到移動端。如圖6所示,或者直接選擇圖片后上傳到服務(wù)器端,再將結(jié)果反饋給移動終端。
本文在VGG-16基礎(chǔ)上構(gòu)建了葡萄葉片病害識別模型GV,并分別以全新學(xué)習(xí)、訓(xùn)練全連接層的遷移學(xué)習(xí)和訓(xùn)練最后一個卷積層與全連接層的遷移學(xué)習(xí)3種方式對GV模型進(jìn)行訓(xùn)練。通過對訓(xùn)練方式、數(shù)據(jù)擴(kuò)充、學(xué)習(xí)率對模型的影響進(jìn)行了分析,得出以下結(jié)論:
1)在同時訓(xùn)練300輪的情況下,遷移學(xué)習(xí)的訓(xùn)練方式在25輪達(dá)到收斂,而全新學(xué)習(xí)在約75輪收斂,表明遷移學(xué)習(xí)可以縮短模型訓(xùn)練的收斂時間,并在相同試驗條件下,遷移學(xué)習(xí)相比于全新學(xué)習(xí)準(zhǔn)確率增加10~13個百分點。
2)相比全新學(xué)習(xí),遷移學(xué)習(xí)在訓(xùn)練過程中會弱化數(shù)據(jù)擴(kuò)充的作用。但數(shù)據(jù)擴(kuò)充能夠有效地減少訓(xùn)練準(zhǔn)確度與測試準(zhǔn)確度之間的較大差異(即過擬合現(xiàn)象),從而提高模型的泛化能力。
3)學(xué)習(xí)率對模型的收斂和識別準(zhǔn)確率會產(chǎn)生較大影響。在全新學(xué)習(xí)與遷移學(xué)習(xí)中,當(dāng)學(xué)習(xí)率取到0.01時損失值無窮大,并且較大的學(xué)習(xí)率會導(dǎo)致?lián)p失函數(shù)發(fā)生震蕩,無法達(dá)到收斂。因此,選取合適的學(xué)習(xí)率對模型的訓(xùn)練至關(guān)重要。
本文對葡萄葉片的4類病害進(jìn)行識別,在圖片背景單一、數(shù)量少的情況下,基于遷移學(xué)習(xí)的葡萄葉片病害圖像識別具有較好的識別效果。模型的準(zhǔn)確率能夠達(dá)到96.48%。而實際的農(nóng)田采集的圖像,一張圖片可能包含多種病害并且背景復(fù)雜。在后續(xù)工作中,將重點研究如何在復(fù)雜背景下分割葡萄葉片,并進(jìn)一步優(yōu)化模型,提升模型的性能,并把研究成果深入到其他作物病害中,提升模型實際應(yīng)用價值。
[1] 劉媛,馮全. 葡萄病害的計算機(jī)識別方法[J]. 中國農(nóng)機(jī)化學(xué)報,2017,38(4):99-104.
[2] 栗苗苗. 葡萄種植產(chǎn)業(yè)現(xiàn)狀與發(fā)展對策探討[J]. 農(nóng)業(yè)與技術(shù),2020,40(11):110-111.
Li Miaomiao. Discussion on current situation and development countermeasures of grape planting industry[J]. Agriculture and Technology, 2020, 40(11): 110-111. (in Chinese with English abstract)
[3] Singh V, Misra A K. Detection of plant leaf diseases using image segmentation and soft computing techniques[J]. Information Processing in Agriculture, 2017, 4(1): 41-49.
[4] Zeiler M D, Fergus R. Visualizing and understanding convolutional networks[C]//European conference on computer vision. Springer, Cham, 2014: 818-833.
[5] LeCun Y, Kavukcuoglu K, Farabet C. Convolutional networks and applications in vision[C]//Proceedings of 2010 IEEE international symposium on circuits and systems. IEEE, 2010: 253-256.
[6] 徐子豪,黃偉泉,王胤. 基于深度學(xué)習(xí)的監(jiān)控視頻中多類別車輛檢測[J]. 計算機(jī)應(yīng)用,2019,39(3):700-705.
Xu Zihao, Huang Weiquan, Wang Yin. Multi-class vehicle detection in surveillance video based on deep learning[J]. Journal of Computer Applications, 2019, 39(3): 700-705. (in Chinese with English abstract)
[7] Li Y, Lu Z, Li J, et al. Improving deep learning feature with facial texture feature for face recognition[J]. Wireless Personal Communications, 2018, 103, 1195-1206.
[8] Li Y, Wang G, Nie L, et al. Distance metric optimization driven convolutional neural network for age invariant face recognition[J]. Pattern Recognition, 2018, 75: 51-62.
[9] 侯一民,周慧瓊,王政一. 深度學(xué)習(xí)在語音識別中的研究進(jìn)展綜述[J]. 計算機(jī)應(yīng)用研究,2017,34(8):2241-2246.
Hou Yimin, Zhou Huiqiong, Wang Zhengyi. Overview of speech recognition based on deep learning[J]. Application Research of Computers, 2017, 34(8): 2241-2246. (in Chinese with English abstract)
[10] 孫俊,譚文軍,毛罕平,等. 基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的多種植物葉片病害識別[J]. 農(nóng)業(yè)工程學(xué)報,2017,33(19):209-215.
Sun Jun, Tan Wenjun, Mao Hanping, et al. Recognition of multiple plant leaf diseases based on improved convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(19): 209-215. (in Chinese with English abstract)
[11] 王璨,武新慧,李志偉. 基于卷積神經(jīng)網(wǎng)絡(luò)提取多尺度分層特征識別玉米雜草[J]. 農(nóng)業(yè)工程學(xué)報,2018,34(5):152-159.
Wang Can, Wu Xinhui, Li Zhiwei. Recognition of maize and weed based on multi-scale hierarchical features extracted by convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(5): 152-159. (in Chinese with English abstract)
[12] 周云成,許童羽,鄭偉,等. 基于深度卷積神經(jīng)網(wǎng)絡(luò)的番茄主要器官分類識別方法[J]. 農(nóng)業(yè)工程學(xué)報,2017,33(15):219-226.
Zhou Yuncheng, Xu Tongyu, Zheng Wei, et al. Classification and recognition approaches of tomato main organs based on DCNN[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(15): 219-226. (in Chinese with English abstract)
[13] 龍滿生,歐陽春娟,劉歡,等. 基于卷積神經(jīng)網(wǎng)絡(luò)與遷移學(xué)習(xí)的油茶病害圖像識別[J]. 農(nóng)業(yè)工程學(xué)報,2018,34(18):194-201.
Long Mansheng, Ouyang Chunjuan, Liu Huan, et al. Image recognition of Camellia oleifera diseases based on convolutional neural network & transfer learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(18): 194-201. (in Chinese with English abstract)
[14] 蘇婷婷,牟少敏,董萌萍,等. 深度遷移學(xué)習(xí)在花生葉部病害圖像識別中的應(yīng)用[J]. 山東農(nóng)業(yè)大學(xué)學(xué)報:自然科學(xué)版,2019,50(5):865-869.
Su Tingting, Mu Shaomin, Dong Mengping, et al. Application of deep transfer learning in image recognition of peanut leaf diseases[J]. Jouournal of Shandong Agricultural University: Natural Science Edition, 2019, 50(5): 865-869. (in Chinese with English abstract)
[15] 趙立新,侯發(fā)東,呂正超,等. 基于遷移學(xué)習(xí)的棉花葉部病蟲害圖像識別[J]. 農(nóng)業(yè)工程學(xué)報,2020,36(7):184-191.
Zhao Lixin, Hou Fadong, Lyu Zhengchao, et al. Image recognition of cotton leaf diseases and pests based on transfer learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(7): 184-191. (in Chinese with English abstract)
[16] Simonyan K , Zisserman A . Very deep convolutional networks for large-scale image recognition[EB/OL]. [2017-09-04]. https://arxiv.org/abs/1409.1556v6.
[17] Deng J, Dong W, Socher R, et al. ImageNet: A large-scale hierarchical image database[C]// IEEE Conference on Computer Vision & Pattern Recognition. IEEE, 2009.
[18] 石祥濱,房雪鍵,張德園,等. 基于深度學(xué)習(xí)混合模型遷移學(xué)習(xí)的圖像分類[J]. 系統(tǒng)仿真學(xué)報,2016,28(1):167-173.
Shi Xiangbin, Fan Xuejian, Zhang Deyuan, et al. Image classification based on mixed deep learning model transfer learning[J]. Journal of System Simulation, 2016, 28(1): 167-173. (in Chinese with English abstract)
[19] 許景輝,邵明燁,王一琛,等. 基于遷移學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)玉米病害圖像識別[J]. 農(nóng)業(yè)機(jī)械學(xué)報,2020,51(2):230-236,253.
Xu Jinghui, Shao Mingye, Wang Yichen, et al. Recognition of corn leaf spot and rust based on transfer learning with convolutional neural network[J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(2): 230-236, 253. (in Chinese with English abstract)
[20] Pan S J, Yang Q. A Survey on Transfer Learning[J]. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10): 1345-1359.
[21] 楊國國,鮑一丹,劉子毅. 基于圖像顯著性分析與卷積神經(jīng)網(wǎng)絡(luò)的茶園害蟲定位與識別[J]. 農(nóng)業(yè)工程學(xué)報,2017,33(6):156-162.
Yang Guoguo, Bao Yidan, Liu Ziyi. Localization and recognition of pests in tea plantation based on image saliency analysis and convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(6): 156-162. (in Chinese with English abstract)
[22] 張軍陽,王慧麗,郭陽,等. 深度學(xué)習(xí)相關(guān)研究綜述[J]. 計算機(jī)應(yīng)用研究,2018,35(7):1921-1928,1936.
[23] 丁紅衛(wèi),萬良,周康,等. 基于深度卷積神經(jīng)網(wǎng)絡(luò)的入侵檢測研究[J]. 計算機(jī)科學(xué),2019,46(10):173-179.
[24] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM, 2017, 60(6): 84-90.
[25] Glorot X, Bordes A, Bengio Y. Deep sparse rectifier neural networks[C]//Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics, 2011: 315-323.
[26] Boureau Y L, Roux N L, Bach F, et al. Ask the locals: Multi-way local pooling for image recognition[C]// Proc. International Conference on Computer Vision (ICCV'11). IEEE, 2011.
[27] Sainath T N, Mohamed A R, Kingsbury B, et al. Deep convolutional neural networks for LVCSR[C]// IEEE International Conference on Acoustics. IEEE, 2013: 8614-8618
[28] 莊福振,羅平,何清,等. 遷移學(xué)習(xí)研究進(jìn)展[J]. 軟件學(xué)報,2015,26(1):26-39.
Zhuang Fuzhen, Luo Ping, He Qing, et al. Survey on transfer learning research[J]. Journal of Soft'ware, 2015, 26(1): 26-39. (in Chinese with English abstract)
[29] 陳立福,武鴻,崔先亮,等. 基于遷移學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)SAR圖像目標(biāo)識別[J]. 中國空間科學(xué)技術(shù),2018,38(6):45-51.
Chen Lifu, Wu Hong, Cui Xianliang, et al. Convolution neural network SAR image target recognition based on transfer learning[J]. Chinese Space Science and Technology, 2018, 38(6): 45-51. (in Chinese with English abstract)
[30] Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: A simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research, 2014, 15(1): 1929-1958.
Recognition of grape leaf diseases and mobile application based on transfer learning
Su Shifang, Qiao Yan, Rao Yuan※
(,,230036,)
Pests and diseases have posed a severe threat to the production of grapes, causing irreversible damage on the growth cycle of grapes. The treatments vary significantly in the types of grape diseases. Therefore, it is highly demanding to detect the diseases of grapes timely, while accurately identify the types of diseases to avoid the spread of diseases. In the early days, the diseases of grapes were mainly identified by experienced grape and pest experts recognizing the grape leaves manually, which is time-consuming and laborious. It is necessary to develop a grape disease recognition using computer science technology. Convolutional Neural Network (CNN) has been used to automatically recognize agricultural pests in the field of Artificial Intelligence (AI) in recent years. However, the general CNN cannot be well trained to achieve high accuracy, due mainly to few large datasets of diseased grape leaves. In this study, a new recognition network of grape leaf disease was proposed using CNN. Transfer learning and data enhancement were also applied for the new network to enlarge the small dataset of grape leaves. The new network was named Grape-VGG-16 (GV for short) using VGG-16 network (one of the most classical CNN). GV generally contained 5 convolutions, 2 full connection 1 flatten, 1 dropout, and 1 SoftMax layer. The knowledge was first learned from the ImageNet image dataset using transfer learning, and then be transferred to the GV in the disease recognition of grape leaf. The output number was modified to 4 for the last fully connected layer using fine tuning, representing the 4 types of grapes leaves (healthy, brown spot, wheel spot, and black rot). A TensorFlow framework was selected to verify the network in the experiments using Python programming language. 300 images were collected for each leaf category (the total number of images was 1200), 250 of which were randomly selected as the training set, and 50 of which as the testing set. Then the dataset of images was augmented under the operations, such as random rotation, random horizontal and vertical translation, as well as horizontal flipping on the image. Finally, the augmented dataset was used to train the GV network, which was uniformly scaled to 224×224 pixels. 18 groups of experiments were performed on a computing server with Nvidia GPU using a combination of three learning (new learning, transfer learning with training the full connection layer, as well as transfer learning with training both the last convolution and full connection layer), two dataset with/without augmentation, and three learning rates (0.01, 0.001, and 0.000 1). The experimental results demonstrated that: 1) Transfer learning improved the model accuracy, while shortened the convergence time of the model; 2) Data augmentation greatly increased the diversity of data, while effectively alleviated the over-fitting. Consequently, the GV network achieved an overall recognition accuracy of 96.48% under both transfer learning and data augmentation. The recognizing accuracies of healthy leaves, brown spot, wheel spot and black rot were 98.04%, 98.04%, 95.83%, and 94.00%, respectively. The GV network was also embedded in the mobile application, and then deployed on the mobile terminal, for the detection and recognition of grape leaf diseases in the field. The finding can offer a potential promising reference for the intelligent diagnosis of grape leaf diseases in fruit production.
image recognition; diseases; grape leaf; transfer learning; data augmentation; mobile terminal
10.11975/j.issn.1002-6819.2021.10.015
TP391.4;TP181
A
1002-6819(2021)-10-0127-08
蘇仕芳,喬焰,饒元. 基于遷移學(xué)習(xí)的葡萄葉片病害識別及移動端應(yīng)用[J]. 農(nóng)業(yè)工程學(xué)報,2021,37(10):127-134.doi:10.11975/j.issn.1002-6819.2021.10.015 http://www.tcsae.org
Su Shifang, Qiao Yan, Rao Yuan. Recognition of grape leaf diseases and mobile application based on transfer learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2021, 37(10): 127-134. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2021.10.015 http://www.tcsae.org
2020-12-07
2021-03-09
安徽省自然科學(xué)基金(2008085MF203);國家自然科學(xué)基金(31671589);安徽省重點研究和開發(fā)計劃面上攻關(guān)項目(201904a06020056)
蘇仕芳,研究方向為機(jī)器視覺。Email:2431947658@qq.com
饒元,教授,博士,研究方向為農(nóng)業(yè)信息化。Email:raoyuan@ahau.edu.cn