梁長梅,劉正乾,李艷文,楊 華
(山西農(nóng)業(yè)大學 信息科學與工程學院,山西 太谷 030801)
葡萄是深受國人喜愛的四大水果之一,不僅富含葡萄糖、有機酸、礦質(zhì)元素等營養(yǎng)物質(zhì)[1],而且富含花色苷、酚酸、黃烷醇、黃酮、白藜蘆醇等多酚類物質(zhì)[2],具有明顯的抗氧化功能。目前,國內(nèi)葡萄品種繁多,不乏承載悠久歷史的地方品種,如龍眼、莎巴珍珠等,更有育成、引進的品種,如陽光玫瑰、早黑寶等。為了更好地利用眾多葡萄品種,對其加以識別、分類已成為葡萄種質(zhì)資源研究和品種保護的基礎(chǔ)[3]。然而,長期以來葡萄品種識別由專業(yè)人士基于豐富的實踐經(jīng)驗進行,耗時、費力且易受視覺疲勞和直覺等主觀因素的影響[4];對于非專業(yè)人士,由于缺乏專業(yè)知識和訓練,再加上葡萄品種繁多,品種識別工作難以進行。因而,建立一種快速、省力、有效、易推廣的葡萄品種識別方法,開展優(yōu)良品種的識別和甄選對于品種分類、種質(zhì)資源保護與利用、親緣關(guān)系和進化規(guī)律分析、抗性育種、新品種快速鑒定、原產(chǎn)地質(zhì)量標識、良種推廣等具有重要意義。
近年來,隨著計算機硬件成本下降、運算速度大幅提升以及數(shù)碼相機的普及和數(shù)字圖像處理、模式識別、機器學習等技術(shù)的飛速發(fā)展,圖像識別技術(shù)已逐漸應用于作物營養(yǎng)診斷、品種識別、病蟲害監(jiān)測、雜草識別等方面[5],提高了作物產(chǎn)量和品質(zhì),推動了品種信息化、精細農(nóng)業(yè)、數(shù)字農(nóng)業(yè)的發(fā)展。由于植物葉片紋理、顏色、形態(tài)因品種不同而存在明顯差異,富含較為明顯的品種鑒定表象特征[6]。而且葉片采集方便、采集時間較長,因而許多研究者基于葉片對玉米[7-8]、大豆[9]、蘋果[10]、棗樹[11]、茶樹[12-13]、草地早熟禾[14]、苧麻[15]等開展了品種識別研究。對于葡萄而言,張誠[16]利用葡萄葉形結(jié)構(gòu)、葉面積對21 個釀酒葡萄品種進行識別;林豐艷[17]通過提取圖像紋理特征,采用植物葉片圖像結(jié)合多分辨率分析進行識別研究,其識別正確率達90.97%;宋真等[18]以葡萄葉片為對象,提取包括葉周長、葉面積等11 維特征向量開展了葡萄品種識別研究;張航[19]使用PCA 對提取到的葡萄葉片的表征進行降維,隨后將得到的特征參數(shù)進行分類識別,最后分類器的識別率達到79.90%;孫宏杰[4]開發(fā)了基于DCNN(Dynamic Convolutional Neural Network)算法的葡萄品種識別,準確率可達88.33%;馬媛等[20]通過提取葡萄葉片圖像的方向梯度直方圖(HOG)作為試驗的分類特征,通過分類器對葡萄品種進行識別分類,最后得到圖像的識別結(jié)果能夠達到95.5%;杜璇[6]構(gòu)建了基于支持向量機和VGG-NET 葡萄品種識別,識別率可達90.33%;章林忠等[21]利用判別分析(DA)模型,識別精度可達92.11%。
深度神經(jīng)網(wǎng)絡(luò)在經(jīng)過大量數(shù)據(jù)集訓練的基礎(chǔ)上,能夠自動學習、獲取目標的差異,完成圖像的識別分類,其識別效果甚至超過了人類的識別能力[22],而被大量應用于品種識別中。但由于算法參數(shù)量大、運行時間長、存儲量大等,極大地受到了硬件條件的限制,無法在輕便型設(shè)備上運行[23]。因而,壓縮模型存儲量、提高計算速度,從而使其能夠應用在移動端和嵌入端設(shè)備,成為計算機自動品種識別的關(guān)鍵技術(shù)。
本研究以2019年公布的新一代輕量型深度卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3-large[24]為模型,將遷移學習與神經(jīng)網(wǎng)絡(luò)結(jié)合,針對自然環(huán)境下葡萄品種識別準確率低、模型訓練時間長等問題,解決常規(guī)深度神經(jīng)網(wǎng)絡(luò)無法嵌入實際生產(chǎn)環(huán)境中的問題,旨在構(gòu)建一種滿足移動端和嵌入式端應用需求的葡萄品種識別模型。
本研究數(shù)據(jù)集的訓練和測試均基于深度學習框架PaddleX 完成,編程語言為Python 3.6。硬件環(huán)境采用Intel(R) Core(TM)i5-10210U CPU@1.60 GHz 2.11 GHz,內(nèi)存16 GB,GPU 采用NVIDIA GeForce MX350 顯卡,8 GB 顯存,Windows 10 操作系統(tǒng)。
葡萄葉片數(shù)據(jù)增強示意圖(早黑寶)如圖1所示。
圖1 葡萄葉片數(shù)據(jù)增強示意(早黑寶)Fig.1 Sketch map of grape leaf data augmentation(Zaoheibao)
葡萄葉片數(shù)據(jù)集包含夏黑、早黑寶、陽光玫瑰、無核早紅和紅地球5 個葡萄品種的葉片圖像,均自野外自然環(huán)境下采用華為Mate 4.0 手機拍攝采集,共170 幅原始圖像。數(shù)據(jù)集按照7∶3 的比例分為訓練集和測試集。在訓練時,將圖像分辨率調(diào)整到224×224 像素。因數(shù)據(jù)集樣本較少,為了提高網(wǎng)絡(luò)模型的識別性能,首先在驗證完遷移學習對模型訓練結(jié)果的影響后,將大型數(shù)據(jù)集ImageNet 作為數(shù)據(jù)預訓練的源域,然后再對各個種類的葉片圖像進行隨機旋轉(zhuǎn)和翻轉(zhuǎn),對圖像進行亮度調(diào)整、增強對比度等操作以增強數(shù)據(jù)的多樣性,達到擴充數(shù)據(jù)集樣本的目的(經(jīng)過數(shù)據(jù)增強后原始圖像從170 幅增加到510 幅)。
MobileNetV3-large 結(jié)合了MobileNetV1-large的深度可分離卷積(depthwise separable convolutions)和MobileNetV2-large 的線性瓶頸的逆殘差結(jié)構(gòu)(Inverted residual with linear bottleneck),同時采用了h-swish激活函數(shù)。具體網(wǎng)絡(luò)結(jié)構(gòu)如表1所示。其中,第1 列Input 表示mobilenetV3-large 每個特征層的shape 變化;第2 列Operator 代表每次特征層即將經(jīng)歷的block 結(jié)構(gòu);第3、4 列分別代表bneck 內(nèi)逆殘差結(jié)構(gòu)上升后的通道數(shù)和輸入到bneck 時特征層的通道數(shù);第5 列SE 代表是否在這一層引入注意力機制(用√表示是,用-表示否);第6 列NL 代表激活函數(shù)的種類,HS 代表h-swish,RE 代表RELU;第7 列s 代表了每一次block 結(jié)構(gòu)所用的步長。
表1 MobileNetV3-large 網(wǎng)絡(luò)結(jié)構(gòu)Tab.1 Network structure of MobileNetV3-large
為了驗證遷移學習對訓練效果的影響,通過MobileNetV3-large 網(wǎng)絡(luò)模型分別使數(shù)據(jù)集在基于ImageNet 預訓練集權(quán)重參數(shù)的基礎(chǔ)上進行訓練與數(shù)據(jù)集直接在網(wǎng)絡(luò)模型上進行訓練作對比分析。由圖2 可知,數(shù)據(jù)在網(wǎng)絡(luò)遷移學習訓練前存在明顯、大幅度的波動,導致訓練曲線難以進行收斂;在網(wǎng)絡(luò)遷移學習訓練后的數(shù)據(jù)在波動后逐漸趨于收斂。進一步由圖3 遷移學習前后混淆矩陣可知,遷移學習前,品種識別的正確率較低,如無核早紅品種正確識別的可能性僅為57.14%;遷移學習后,識別正確率明顯提高,如無核早紅品種正確識別的可能性達100%。說明普通學習準確率較低且不穩(wěn)定,遷移學習能夠明顯提高網(wǎng)絡(luò)的訓練準確率,且極大地提高網(wǎng)絡(luò)訓練速度、縮短訓練時間、提升訓練效果。
圖2 網(wǎng)絡(luò)遷移學習訓練前(左)后(右)訓練曲線Fig.2 Training curve before(left) and after(right)network transfer learning training
圖3 網(wǎng)絡(luò)遷移學習前(左)后(右)混淆矩陣Fig.3 Confusion matrix before(left) and after(right) network transfer learning
為了明確學習率對網(wǎng)絡(luò)訓練效果的影響,分別將學習率設(shè)置為0.010(圖4-A)、0.005(圖4-B)、0.001(圖4-C)進行MobileNetV3-large 網(wǎng)絡(luò)訓練,不同學習率下網(wǎng)絡(luò)訓練曲線圖趨勢相同,均表現(xiàn)為曲線逐漸收斂;但是不同學習率下,數(shù)據(jù)波動不同。
圖4 不同學習率下MobileNetV3-large 網(wǎng)絡(luò)訓練效果Fig.4 Effect of MobileNetV3-large network training under different learning rates
不同學習率下MobileNetV3-large 網(wǎng)絡(luò)模型訓練精準率、召回率、F1-score、曲線下面積(Area Under the Curve,AUC)如表2 所示,不同學習率下,MobileNetV3-large 訓練結(jié)果的準確率、召回率、F1-score、AUC 互不相同。同一品種,隨著學習率降低,MobileNetV3-large 訓練準確率逐步增加,AUC 則逐漸降低,召回率和F1-score 則表現(xiàn)為先增加后降低。此外,5 個葡萄品種中,紅地球葡萄準確率、召回率、F1-score、AUC 在不同學習率下均高于或與其他品種相同,特別是在學習率為0.01 時,表現(xiàn)更為明顯,可能由紅地球葡萄葉片特征更明顯所致。
表2 不同學習率下MobileNetV3-large 模型的訓練數(shù)據(jù)Tab.2 Training data of MobileNetV3-large model under different learning rates
不同學習率下,MobileNetv3-large 模型損失值和準確率如表3 所示,當學習率為0.005 時,損失率最低,僅為0.0462,訓練集Top-1 準確率最高,為0.9056??梢?,當學習率為0.005 時,MobileNetV3-large 模型網(wǎng)絡(luò)訓練損失值最小,訓練集和測試集準確率差距最小,訓練中發(fā)生的擬合效果最好。
表3 不同學習率下MobileNetv3-large 模型訓練集和測試集的損失值和準確率Tab.3 Loss and accuracy of training set and verification set of MobileNetv3-large model under different learning rates
將訓練時迭代輪數(shù)(epochs)設(shè)置為60 輪,批處理大?。˙atch size)設(shè)置為10,學習率設(shè)置為0.005,MobileNetv1-large 、MobileNetv2-large 和Mobile Netv3-large 網(wǎng)絡(luò)模型在基于預訓練模型ImageNet數(shù)據(jù)集的遷移學習中的準確率曲線圖如圖5 所示,MobileNetV1-large 曲線在訓練達到第41 輪時開始收斂,MobileNetV2-large 曲線在訓練達到第31 輪時開始收斂,而MobileNetV3-large 曲線在訓練達到第27 輪時就開始收斂。表明MobileNetV3-large神經(jīng)網(wǎng)絡(luò)能更迅速地達到收斂。
圖5 不同MobileNet-large 網(wǎng)絡(luò)遷移學習中準確率曲線Fig.5 Accuracy curve of transfer learning of different MobileNet-large networks
就不同神經(jīng)網(wǎng)絡(luò)遷移學習的訓練數(shù)據(jù)準確率、召回率等(表4)而言,MobileNet-large 的3 種網(wǎng)絡(luò)模型表現(xiàn)各不相同,且因品種不同而不同。就準確率而言,MobileNetV3-large 網(wǎng)絡(luò)模型準確率最高,達0.9750,而MobileNetV2-large 網(wǎng)絡(luò)模型準確率最低,僅為0.8631,MobileNetV1-large 網(wǎng)絡(luò)準確率居中,為0.9333。就召回率而言,MobileNetV3-large召回率為0.9765,MobileNetV2-large 召回率為0.8543,MobileNetV1-large 召回率為0.9129,也表現(xiàn)為MobileNetV2-large 最低。同時,需要指出的是,準確率和召回率也因品種不同而表現(xiàn)不同。如MobileNetV1-large 網(wǎng)絡(luò)模型下,無核早紅的精準率低于其他品種,召回率則表現(xiàn)為夏黑最低。表明訓練數(shù)據(jù)的準確率、召回率等不僅受到神經(jīng)網(wǎng)絡(luò)的影響,而且與品種密切相關(guān)。
表4 MobileNet-large 系列模型的訓練數(shù)據(jù)Tab.4 Training data of MobileNet-large series models
此外,就損失率和Top-1 而言,3 種MobileNetlarge 系列模型表現(xiàn)也不盡相同(表5)。從表5 可以看出,MobileNetV3-large 模型訓練集損失值僅為0.0462,遠低于其他2 種模型,而其Top-1 準確率均高達1.0000;對于測試集,MobileNetV3-large 模型表現(xiàn)最佳,其準確率高于其他2 種模型。
表5 MobileNet-large 模型訓練集和測試集的損失值及Top1 的準確率Tab.5 Loss and accuracy of Top1 of training set and test set of MobileNet-large models
總體而言,MobileNetV3-large 神經(jīng)網(wǎng)絡(luò)模型在訓練中第27 輪開始收斂,且在訓練結(jié)果相差不大的情況下,其損失率最小,Top-1 準確率最高,因而更加穩(wěn)定、準確率更高,是適宜的葡萄品種識別網(wǎng)絡(luò)模型。
目前,圖像識別技術(shù)已廣泛應用于作物營養(yǎng)診斷、品種識別、雜草識別等領(lǐng)域,其中基于植物葉片特征開展了品種識別技術(shù)研究已廣泛應用于玉米、大豆、蘋果、棗、茶、葡萄等品種識別中[7-15]。張誠等[16]利用葡萄葉形對21 個鮮食和釀酒葡萄品種進行了識別,不僅證實了葡萄品種間存在葉形參數(shù)的差異,而且獲得了3 個線性回歸模型,成功地基于葉面積預測葡萄品種。張航等[19]利用葡萄葉片特征,基于Matlab 2009a 環(huán)境設(shè)計了葡萄品種分類識別系統(tǒng),平均識別率達79.90%。宋真等[18]以葡萄成熟葉片不變矩、面積、周長、主葉脈長度和葉柄長度等11 維特征向量為基礎(chǔ)數(shù)據(jù),運用形態(tài)分類方法和改進的歐式距離等技術(shù)開發(fā)一個基于葡萄葉片數(shù)字圖像的葡萄品種自動識別軟件,識別率高達87%。遺憾的是,由于葡萄品種間葉片形態(tài)差異較小,因而基于葉片形態(tài)結(jié)構(gòu)參數(shù)構(gòu)建向量特征,提取葉片的分形維數(shù)和形態(tài)結(jié)構(gòu)等低維特征進行識別,雖然具有極強的針對性,但是由于低維特征對葉片信息的表達能力有限,因而識別準確率有待于提高。
葡萄葉片圖像質(zhì)量直接影響葡萄品種識別準確度,孫宏杰[4]利用掃描儀獲得葡萄葉片高質(zhì)量圖像,開發(fā)了基于DCNN 算法的葡萄葉片品種識別,識別率達88.33%;本研究使用手機拍攝的自然田間環(huán)境下葡萄葉片圖像,雖然存在明顯的背景干擾(如葉片重疊干擾等),但操作簡便、節(jié)時,不受環(huán)境和拍攝硬件限制,有利于該技術(shù)的大面積推廣應用。
此外,特征提取作為分類識別的關(guān)鍵環(huán)節(jié),對品種識別準確度具有決定性作用。目前,葡萄葉片特征主要包括基于人工設(shè)計特征和深度學習特征2 類[4]。馬媛等[20]通過提取葡萄葉片圖像的方向梯度直方圖特征投入到支持向量機分類器中實現(xiàn)了葡萄葉片的自動識別,利用自然條件下成像的葉片圖像實現(xiàn)檢出率達80%以上。杜璇[6]利用卷積神經(jīng)網(wǎng)絡(luò)進行特征提取結(jié)合流形學習算法,其葡萄葉片的品種識別率高達90.33%。鑒于葉片的分形指數(shù)和形狀結(jié)構(gòu)等低維特征對于葉片信息表達能力有限,而且葡萄品種葉片間低維特征差異較小,本研究通過比較不同MobileNet-large 模型對葡萄品種識別的效果發(fā)現(xiàn),MobileNetV3-large 網(wǎng)絡(luò)模型使用深度可分離卷積,SE 結(jié)構(gòu)并將expansion layer的channel 減為原來的1/4,將模型末尾的1×1 的卷積層移到了全局平均池化層后面,用h-swish 替換原有的swish,在保證識別準確率的同時,追求模型的輕量化[24]。結(jié)果表明,利用新一代輕量級深度卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3-large,其Top-1 準確率高達90.56%。
總之,本研究以5 個鮮食葡萄品種為對象,針對自然環(huán)境下葡萄葉片品種識別準確率低、模型訓練時間長等問題,以新一代輕量型深度卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3-large 為模型,將遷移學習與神經(jīng)網(wǎng)絡(luò)結(jié)合,提取其深度學習特征,構(gòu)建了基于MobileNetV3-large 網(wǎng)絡(luò)模型的葡萄品種識別技術(shù),不僅實現(xiàn)了品種高精度識別(平均準確率為97.50%,平均召回率為97.65%),而且能夠滿足移動端和嵌入式端應用需求。但是,遷移學習會產(chǎn)生模型的災難性遺忘,識別時需對每個葡萄品種建立分類模型,為實現(xiàn)葡萄品種識別的通用性,后期將借鑒元學習的思想,使模型學會學習。再結(jié)合5G與云計算,實現(xiàn)前端實時圖像與云端系統(tǒng)精準識別,使其能夠應用在智能手機移動端和嵌入端,將遷移學習技術(shù)應用于農(nóng)業(yè)工程實際。