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