馬 睿, 王 佳, 趙 威, 郭宏杰, 馬德新,2
(青島農業大學動漫與傳媒學院1,青島 266109)(青島農業大學智慧農業研究院2,青島 266109)
玉米(ZeamaysL.)是禾本科的一年生草本植物,是世界重要的糧食作物,廣泛分布于中國、美國、巴西等國家。同時,玉米是畜牧業、養殖業重要的飼料來源,是眾多行業中不可或缺的原材料之一。品種純度是種子質量檢測的一個重要指標。由于玉米種子的形態特征和視覺上的相似性,很難憑借肉眼識別,從而耗費大量的人力和時間進行鑒別。
近年來,計算機視覺技術在農業領域得到了廣泛的應用。楊杭等[1]運用Wilk-lambda逐步判別法進行波段選擇并建立判別模型,對玉米籽粒交叉驗證平均識別精度為91.6%。程洪等[2]利用支持向量機(SVM)算法對玉米籽粒圖像進行訓練,識別率達到92.3% 。Moges[3]提出混合CNN和HOG特征用SVM分類器進行訓練,準確率為99%。
深度學習是機器學習的一個重要分支,與傳統機器學習相比,深度學習減少了人工提取特征的不完備性,具有更強的客觀性。與手工設計的特征提取方法相比,基于深度學習的卷積神經網絡(CNN)可以從輸入數據中自動提取復雜特征。Keling Tu等[4]使用VGG16網絡進行遷移學習,檢測玉米品種“京科968”的真實性,結果表明,最佳檢測精度超過99%。
Keya等[5]為了識別種子的圖像,使用了CNN算法,訓練精度為87%~89%,驗證精度為90%~93%。Zhou等[6]提出了一種CNN重塑像素光譜圖像的方法,并建立了訓練模型,結果顯示,對于6個品種的普通玉米種子,測試識別胚面和非胚面的準確性分別為93.33%和95.56%,對于6個品種的甜玉米種子,胚面和非胚面的測試準確率分別為97.78%和98.15%。Kurtulmus[7]利用多種深度學習方法識別4個品種的葵花籽,其中GoogleNet實現了最高分類精度達95%。
隨著遷移學習[8](Transfer Learning)和卷積神經網絡(Convolutional Neural Networks,CNN)的發展,不同于VGG16[9]等網絡的龐大參數,越來越深層的輕量化神經網絡被研究和關注,如DenseNet[10],NASNet[5],MobileNetV2[11],SqueezeNet[12],Xception[13],用于更方便的部署在移動端。
Moyazzoma等[14]使用MobileNetV2網絡分類農作物疾病,得到90.38%的驗證準確率。Khan等[15]對嚴重影響柑橘類水果產量和質量的6種不同的柑橘類疾病進行分類,使用SqueezeNet和MobileNetV2,通過使用鯨魚優化算法進行優化,最終SqueezeNet模型優于MobileNetV2,達到了96%的準確率。Mia等[16]提出了基于CNN的遷移學習方法, MobileNetV2的準確率最高,達到93.23%。馮曉等[17]使用 MobileNetV2,構建玉米籽粒圖像進行品種識別,結果表明,玉米籽粒雙面特征建模的識別準確率達99.83%,優于單面特征建模及識別。Elfatimi等[18]使用MobileNetV2模型進行訓練,提出的模型在豆葉訓練數據集上的分類平均準確率超過了97%,在測試數據上的分類平均準確率超過了92%。Zhang等[19]提出了一種基于雙路徑卷積神經網絡結合了VGG-16和Resnet-50的優點,平均分類精度為97.23%。Chakraborty等[20]基于MobileNetV2網絡,在Kaggle數據集上測試了所提模型的性能,它在訓練數據中達到了最高的準確率99.46%,在驗證集中達到了99.61%。Hamid等[21]研究使用MobileNetV2對14種不同類別的種子進行分類。結果表明,訓練和測試集的準確率分別為98%和95%。
本研究以MobileNetV2為基準模型,探索在遷移學習時對MobileNetV2的微調方法,以提高基準模型的準確率與泛化能力,提出MobileNetV2-2D-8模型,為玉米種質資源數字化保護提供技術參考。
研究選取11種玉米種子,包括奧玉116、鄭單958、小金黃、京粘1號、科諾58、鐵研、登海605、立原、錦玉118、蕓玉、BT506(山東農科院提供)。在實驗室自然光照條件下,搭建拍照操作臺,選用EOS 80D型數碼相機垂直對多粒玉米種子圖像進行拍攝,以黑色絨布為背景,玉米種子擺放見圖1。

圖1 多粒玉米籽粒圖像
使用單粒種子圖像對玉米籽粒進行分類識別,因此需要將單粒玉米種子籽粒圖像分割出來,具體操作流程如圖2所示。

圖2 玉米籽粒分割
建立玉米胚面與非胚面雙面混合數據集[17]。將原始數據集按照7∶2∶1的比例劃分為訓練集、驗證集和測試集。詳細情況如表1所示。

表1 玉米籽粒(雙面混合)數據集
許多卷積神經網絡模型(CNNs)如NASNet、DenseNet121、MobileNetV2、Xception 已在ImageNet等大型數據集上訓練以用于圖像識別。在遷移學習時,這些模型不需要從頭開始訓練。預訓練的模型可以輔助網絡泛化,加快收斂速度。因此遷移學習被廣泛用于提高模式識別和計算機視覺領域中若干任務的準確性。圖3為遷移學習算法流程圖。

圖3 基于遷移學習的玉米籽粒圖像識別算法流程圖
MobileNetV2利用殘差結構取代了原始的卷積堆疊方式,提出了Inverted ResidualBlock結構;然后采用Depthwise Convolution先升維,后降維的方法,執行了擴張→卷積特征提取→壓縮的過程。
在深度學習中,全連接層可以整合特征用于分類或者回歸。隨著全連接層數或者維度的加深,模型的非線性表達能力會得到一定提升,學習能力得以加強,準確率得到一定提高。基于遷移學習,提出了MobileNetV2-2D-8玉米籽粒圖像分類模型,模型架構如圖4所示。
采用準確率(Accuracy),精確率(Precision),召回率(Recall),F1-score作為模型性能評價指標。
Accuracy為所有被正確識別的樣本數占總樣本數的比例。Precision是衡量模型正確預測能力的指標,代表了預測正確的樣本數量占總體的比例。Recall又被稱為召回率,表示在真實樣本中,被正確預測的樣本數量占總樣本的比例。F1-Score是結合Precision和Recall的綜合指標,取值為Precision和Recall的調和平均數,其取值范圍是0~1,為模型的最優輸出,0為模型的最差輸出。

(1)

(2)

(3)
(4)
式中:TP為實際為正被預測為正的樣本數量;FP為實際為負但被預測為正的樣本數量;FN為實際為正但被預測為負的樣本數量;TN為實際為負被預測為負的樣本數量。
玉米籽粒識別模型的訓練與測試均在Colab平臺下完成。軟件環境:keras 2.1.2;TensorFlow 2.6.0;Python3.7。實驗具體參數配置如表2所示。

表2 實驗詳細參數
從實驗結果可以看出(表3),未微調的MobileNetV2取得了最好分類效果,準確率達到0.948 7。因此研究選擇未微調的MobileNetV2為基準模型(將此操作規定為處理A)。

表3 未微調模型對玉米籽粒圖像分類準確率
基于MobileNetV2的玉米籽粒分類模型遷移學習,探討dropout層取值和全連接層維度與數量對模型性能的影響,以期獲得最高準確率模型。
3.2.1 全連接層探討分析
在深度學習中,全連接層可以整合已提取的特征用于之后的分類或回歸。圖4為全連接層的數量和維度對玉米籽粒圖像分類模型的影響。
從圖5中可以看出,隨著全連接層數或者維度加深,模型的準確率得到了一定程度的提升。當全連接層數為2且維度為2 048時,模型取得最高準確率0.966 2(將此操作規定為處理B)。這說明在添加全連接層后,模型的非線性表達能力得到一定提升,學習能力得以加強。隨著全連接層數量和維度的增加,模型的性能出現了一定的下降,這是因為增加全連接層數量和維度,可能導致模型參數增多,運算效率降低,并有過擬合趨勢。
3.2.2 dropout層探討分析
過擬合是深度神經網絡的一個嚴重問題。dropout是一種解決這個問題的技術。其關鍵思想是在訓練過程中從神經網絡中隨機刪除單元(連同其連接)[22]。
以2層全連接層為初始連接層數量,研究dropout在MobileNetV2遷移學習分類模型的最優值。圖6為2層全連接層下dropout取值對模型分類的影響。

圖6 2層全連接層下dropout取值對模型分類的影響
隨著dropout取值的增加,模型準確率呈先上升后下降的趨勢,說明dropout可以有效防止模型的過擬合并對泛化能力進行提升。當dropout>0.3時,準確率呈現下降趨勢,這是因為丟掉過多信息,必要信息不足導致模型性能下降。因此選擇0.3作為模型的最優參數。當dropout取值為0.3,全連接層維度為1 024時,模型準確率為0.964 1,優于其他模型(將此操作規定為處理C)。
3.2.3 解凍部分骨干網絡參與訓練
對MobileNetV2模型進行微調,對預訓練模型的頂部8層進行解凍,以便使訓練得到的特征與當前任務更加接近。
D、 E、 F處理對基準模型解凍頂部8層,其他操作分別與A、B、C處理保持一致。
對基準模型進行解凍后,D、E、F處理的準確率高于A、B、C處理。當基準模型解凍后并添加全連接層,準確率較未添加全連接層略有提高,在E處理時準確率達到最高,為0.979 5。
基于遷移學習,使用訓練好的MobileNetV2模型,其已擁有較好的對神經網絡淺層基礎特征和深層抽象特征的提取能力。通過上述實驗結果可以發現,當全連接層為2,維度為2 048,并解凍模型后8層,使用Flatten層進行一維化處理訓練時最優,準確率為0.979 5,優于基準模型未微調的MobileNetV2模型的準確率0.948 7。將此模型命名為MobileNetV2-2D-8。
為了分析所提出模型MobileNetV2-2D-8在具體類別中的識別性能,識別結果具體如表4所示。

表4 模型在具體玉米籽粒圖像類被的分類效果
從不同類別分類結果可以看出,具體的玉米籽粒圖像11分類中,提出的基于MobileNetV2-2D-8的玉米籽粒分類模型F1-score均超過0.95,在奧玉116、BT506、立原的分類識別中準確率達到100%,說明提出的模型在細粒度下具有較好的泛化性能,能夠出色的處理分類任務。
本研究將卷積神經網絡與深度學習技術運用到玉米籽粒圖像的識別中,采用遷移學習方法對MobileNetV2模型進行微調改進,通過實驗發現增加一定數量的全連接層以及增大一定的全連接層維度,可以有效提升玉米籽粒模型的分類性能。本研究提出的MobileNetV2-2D-8模型,為玉米種質資源智能化與數字化保護提供了方法支撐。
本研究中的數據集數量有限,只提出了對11種玉米種子的分類,在未來的工作中可以嘗試將數據集擴充,收集更多的種子進行分類識別與保護。同時,數據集制作時對單粒玉米籽粒切割也較為繁瑣,因此將進一步探索目標檢測算法在玉米籽粒識別中的應用,提高玉米籽粒識別效率,并部署在小程序、APP或Jetson Nano等移動端便攜設備中,以應用在更加復雜的實際生產場景中。