?

基于卷積神經網絡和光譜特征的孵前種鴨蛋受精信息無損檢測

2020-12-04 13:25李慶旭王巧華馬美湖
光譜學與光譜分析 2020年12期
關鍵詞:光譜信息鴨蛋波長

李慶旭,王巧華,2*,顧 偉,高 升,馬美湖

1. 華中農業大學工學院,湖北 武漢 430070 2. 農業部長江中下游農業裝備重點實驗室,湖北 武漢 430070 3. 國家蛋品加工技術研發分中心 ,湖北 武漢 430070

引 言

我國是鴨蛋與鴨肉生產和消費大國,為此每年需要孵化大量雛鴨才能滿足鴨肉和鴨蛋生產需要。 由于無精蛋無法孵化出雛鴨,隨著孵化時間推移會變質且對受精蛋會造成污染,因此盡可能早地剔除出無精蛋,可以有效地減少資源的浪費,提高鴨蛋孵化業和種鴨養殖業的經濟效益。 目前國內鴨蛋孵化行業去除無精蛋的方法依然是在種鴨蛋孵化7天以后進行人工照蛋,效率低下且挑選出的無精蛋已失去食用價值,造成資源的巨大浪費。 在孵化之前鑒別出來無精蛋是目前禽蛋孵化產業需要解決的老大難問題,因此研究入孵前種鴨蛋的受精信息無損檢測技術,將會擁有廣闊的應用空間。

針對禽蛋孵化,國內外學者做了相關的研究,研究人員嘗試使用了生物電[1]、機器視覺[2]、光譜、高光譜成像[3]等技術手段實現了禽蛋入孵前及孵化早期受精信息的無損判別。 但大都針對的是雞蛋孵化,針對鴨蛋孵化的研究很少,由于種鴨蛋品種差異大、表面臟污多、蛋殼厚度差異大,故與種雞蛋相比種鴨蛋的檢測難度更大。 張偉等[4]提出利用機器視覺與敲擊振動相結合的方法實現了對孵化5 d的種鴨蛋受精信息檢測,這種使用敲擊振動裝置部署到實際生產難度較大。 Dong等[5]提出了利用可見-近紅外光譜技術初步實現了對入孵前種鴨蛋受精信息的無損判別,但是要求種鴨蛋顏色和尺寸一致,此研究證明了運用可見-近紅外光譜技術對入孵前種鴨蛋受精信息無損檢測的可行性,但還不適于實際應用。

可見-近紅外光譜由有機物的含氫基團振動的合頻與倍頻組成,譜圖中含有大量能夠反映物質差異的信息,具有快速、無損、簡單的特點,目前被廣泛應用于農產品無損檢測。 文獻[6]研究結果表明可見-近紅外光譜可以穿透禽蛋的表面,并將禽蛋的內部物質信息在光譜圖中反映出來。 深度學習中的卷積神經網絡(convolutional neural networks,CNN)目前被廣泛應用于農產品分類檢測中,卷積神經網絡含有更多的隱含層,通過卷積和非線性變換操作自動提取數據本身的大量特征可用于擬合復雜模型[7]。 近年有學者利用光譜信息與卷積神經網絡相結合檢測夏威夷果、煙葉、花椒等,但是利用兩者結合起來檢測禽蛋尚未有文獻記載。 本文利用可見-近紅外透射光譜技術與深度學習相結合對入孵前種鴨蛋受精信息進行無損檢測,探索一種更符合實際生產的區分入孵前無精鴨蛋和受精鴨蛋的鑒別技術。

1 實驗部分

1.1 儀器與材料

實驗樣品為499枚縉云麻鴨種蛋,均為新鮮生產的種蛋。 采購于湖北神丹種鴨場。 對種鴨蛋表面使用酒精進行清理消毒并編號。

種鴨蛋光譜采集系統如圖1,由Maya2000Pro光纖光譜儀、暗箱、光源、光纖探頭等組成。 光譜儀能夠采集的波長范圍在200~1 100 nm之間,光譜儀的最小采樣間隔為0.5 nm,光源為100 W鹵素燈。 另外還有智能孵化器1臺。

圖1 光譜采集系統1: 計算機; 2: 光源; 3: Maya2000Pro光纖光譜儀; 4: 光纖探頭; 5: 鴨蛋; 6: 暗箱Fig.1 Spectrum acquisition system1: Computer; 2: Light source; 3: Maya2000Pro fiber optic spectrometer; 4: Fiber optic probe; 5: Duck eggs; 6: Dark box

1.2 方法

1.2.1 光譜采集

使用可見-近紅外透射光譜采集系統對清洗消毒后的入孵前種鴨蛋進行透射光譜采集,采集光譜時將種蛋豎直放置,大頭向上。 考慮到模型后續將部署到生產中,將光譜儀的采集積分時間設置為100 ms,掃描次數設置為3。

1.2.2 受精結果的人工判別

將智能孵化箱預熱1 h,把采集數據后的499枚種蛋同時放入智能孵化箱中。 設置智能孵化箱模式為“鴨”,智能孵化箱會根據模式自動調節適用于鴨蛋孵化的最佳溫濕度。 鴨蛋入孵后7 d對其進行破殼處理,蛋殼含有血絲為受精蛋,得到準確的受精結果。

1.3 數據處理與建模

1.3.1 樣本集劃分

為了避免樣本分布不均勻,利用了Kennard-Stone法對樣本集進行劃分,將變量空間中的相對歐式距離差異較大的樣本劃入訓練集,其余樣本劃入測試集[8]。 為了更好地驗證模型的泛化能力,從測試集樣本中再劃出一個驗證集。 本實驗共采集499個入孵前種鴨蛋樣本,按照7∶2∶1的比例對應劃分出訓練集、測試集和驗證集樣本。 其中訓練集樣本數量為350個(無精197個,受精153個),測試集樣本數量為100個(受精54個,無精46個),驗證集樣本數量為49個(受精27個,無精22個)。

1.3.2 譜區選擇與光譜預處理

譜區選擇對光譜信息分析十分重要,若選取范圍較大會帶入大量噪聲和冗余信息導致后續建模出現過擬合現象,反之選取范圍較小會丟失大量信息導致后續建模出現欠擬合現象。 采集得到的入孵前種鴨蛋原始譜圖如圖2所示,由于譜圖兩端的噪音較大無法有效地反映出種鴨蛋內部真實的物質信息,故截取400~1 000 nm范圍內的透射光譜信息用于后續的分析與處理,選擇的譜區范圍如圖3所示。

圖2 入孵前種鴨蛋原始光譜圖Fig.2 Original spectrum of duck eggs before hachted

圖3 入孵前種鴨蛋400~1 000 nm光譜圖Fig.3 400~1 000 nm spectrum of duck eggs before hachted

由于儀器操作、溫度變化和雜散光的原因會使采集得到的原始光譜數據引入噪聲與無關信息,選取的400~1 000 nm范圍內的透射原始光譜依然含有較為明顯的噪聲(光譜信號中含有雜波)。 為此,采用SG卷積平滑處理對截取后的種鴨蛋光譜進行預處理。 經反復嘗試,本實驗使用窗口寬度為9的2階微分進行平滑處理。 平滑后的曲線如圖4所示,可以看出SG平滑處理后消除了雜波干擾,光譜曲線變得更加平滑[12]。

圖4 入孵前種鴨蛋SG平滑后光譜圖Fig.4 SG smoothed spectrum of duck eggs before hachted

1.3.3 光譜特征波段選擇

預處理后的光譜信息依然高達1 361維,部分波段依然存在很強的相關性,高維光譜信息中不僅含有反映內部物質差異的信息還包含大量冗余信息,若直接使用高維光譜信息建立種鴨蛋受精信息判別模型會導致模型出現過擬合現象,進而導致模型的泛化能力變差。 同時考慮將光譜信息輸入給卷積神經網絡,若光譜波段存在很強的相關性則不利于卷積神經網絡自動學習光譜的有效特征,從而導致網絡過擬合現象的出現,且數據維數太高會大大降低網絡的訓練速度,不利于后期模型的部署。 因此對預處理后的光譜數據進行特征波長選取,降低光譜數據的維數顯得十分重要。 本文使用了CARS與SPA這兩種較為常用的特征波長篩選算法,篩選出能夠反映受精蛋與無精蛋差異的關鍵波長點。

(1)競爭性自適應重加權(CARS)算法利用自適應重加權采樣手段選出PLS模型中回歸系數絕對值相對較大的波長點,去除權重相對較小的波長點,并使用交叉驗證來選擇RMSECV值最低的子集,可以有效地尋找到變量的最優組合[9]。 對預處理后的訓練集光譜數據使用CARS進行特征波長選擇,選取入孵前種鴨蛋受精信息預測最優波長組合過程如下: 經反復嘗試,本實驗將蒙特卡羅采樣次數設定為50,采用10折交叉驗證。 由圖5(a)可知,隨著取樣運行次數的增加,選取變量的數量逐步遞減 。 由圖5(b)可知,RMSECV值先緩慢遞減后遞增,RMSECV值遞減,說明種鴨蛋光譜數據中部分無用的信息被剔除,RMSECV值遞增,說明種鴨蛋光譜數據中有部分重要信息被剔除。 當RMSECV值達到最小時,各變量的回歸系數如圖5(c)中豎線處,此時的采樣運行次數是35,CARS提取的最優波長點數量為15。

(2)連續投影算法(SPA)是使向量空間的共線性最小化的前向變量選擇算法,能夠從原始光譜信息中將冗余信息去除,從而解決共線性問題。 對于處理后的訓練集光譜數據使用SPA選擇特征波長,由SPA的原理可知,利用均方根誤差(RMSE)最小化的原則,選出均方根誤差的導數變小的過渡點,在過渡點之前冗余信息被剔除,過渡值之后冗余信息已基本被剔除[10]。 SPA選取入孵前種鴨蛋受精信息預測最優波長組合如圖6(a,b)所示,SPA選取的特征波長數為11。

圖5 (a)取樣變量數; (b)RMSECV; (c)回歸系數路徑Fig.5 (a) Number of sampling variables; (b) RMSECV; (c) Regression coefficient path

圖6 (a)RMSE; (b)選取的最優波長編號索引Fig.6 (a) RMSE; (b) Selected optimal wavelengthnumber index

2 結果與討論

2.1 卷積神經網絡搭建

經過CARS或SPA提取特征波長后,數據維數已經降到較低維度,若繼續對其進行降維處理可能會導致光譜有用信息的丟失。 針對分類問題,一般使用機器學習或者深度學習進行建模。 本研究先使用邏輯回歸(logistic regression, LR)和支持向量機(support vector machines, SVM)兩種常用的機器學習算法并使用十折交叉驗證對CARS和SPA提取的特征波長建立入孵前種鴨蛋受精信息判別模型。 為方便起見,此處KS劃分的測試集和驗證集合并為測試集,判別結果如表1,不難發現LR和SVM模型不能完全擬合光譜數據導致模型效果不佳,但證明了使用CARS或SPA提取的特征波長建立區分無精蛋和受精蛋的可行性。 由于機器學習模型對較為復雜的模型擬合效果不佳,往往會產生過擬合或欠擬合的現象,本研究兩種機器學習模型則是出現了輕微欠擬合現象。 卷積神經網絡引入了局部連接和權值共享的機制,使其能含有更多的隱層,這種機制使得卷積神經網絡在擬合復雜模型時具有明顯的優勢,故考慮使用卷積神經網絡對入孵前種鴨蛋是否受精進行判別。

表1 CARS和SPA提取的特征波長建模結果Table 1 Characteristic wavelength modelingresults of CARS and SPA extraction

卷積神經網絡主要用于圖像的分類與識別,圖像數據一般為2維或3維矩陣,而本研究使用CARS或SPA提取的特征波長數據為1維數據。 因此需要將一維光譜數據轉換為二維光譜信息矩陣,轉換公式如式(1)

S=XTX

(1)

式(1)中,X為一維光譜數據,XT為一維光譜數據的轉置。 二維光譜信息矩陣包含了一維光譜數據的原有信息,體現了樣本的方差和協方差,同時適用卷積神經網絡的輸入結構。 以SPA提取的種鴨蛋光譜特征矩陣為例,單個種鴨蛋樣本的一維光譜數據為x=[x1,x2, …,x11]二維光譜信息矩陣如式(2)

(2)

卷積神經網絡通常由卷積、池化與全連接等層構成。 卷積(conv2d)層用于提取大量特征; 池化層可以減小卷積層提取的特征的維數,從而能夠加速神經網絡收斂; 全連接層可將網絡前端輸出的特征還原給輸出層,最后由輸出層輸出分類結果。 考慮到運用CARS和SPA提取的二維光譜信息矩陣尺寸較小,SPA提取的二維矩陣大小為11×11、CARS為15×15,若搭建的網絡層數過深,容易出現過擬合現象。 結合入孵前種鴨蛋二維光譜信息矩陣的特點,搭建了4層的卷積神經網絡,包括了3個卷積層和1個全連接層,網絡的結構如圖7所示,具體實現過程如下,其網絡參數如表2所示(以CARS提取的入孵前種鴨蛋特征波長為例,SPA與之結構相同):

(1) 輸入層: 將CARS提取的入孵前種鴨蛋特征波長使用式(1)轉換為二維光譜信息矩陣作為輸入層,輸入層尺寸為15×15;

圖7 入孵前種鴨蛋網絡結構Fig.7 Pre-incubation duck egg network structure

表2 入孵前種鴨蛋網絡參數Table 2 Network parameters of duck eggs before hatching

(2) 卷積層1: 考慮到輸入的種鴨蛋二維光譜信息矩陣尺寸較小,conv操作的核尺寸與步長不宜設置過大,將卷積核尺寸設定為3×3,卷積核數量設定為64,步長設定為1。 輸入層經過卷積操作后使用ReLU函數進行激活(可使種鴨蛋光譜矩陣變得更加稀疏),ReLU函數的實現公式如式(3)

(3)

ReLU函數具有加速模型收斂的作用。 為了提高模型的性能,在ReLU激活后的光譜特征矩陣執行局部響應歸一化(LRN)操作,卷積操作可以提取光譜矩陣中的大量信息,種鴨蛋二維光譜信息矩陣經過卷積操作之后輸出特征矩陣尺寸為15×15×64;

(3) 池化層1: 將卷積層1的輸出特征矩陣進行降維操作,能夠提高模型的收斂速度。 池化核的尺寸和步長均設置為2,池化(pool)處理后的輸出特征矩陣尺寸為8×8×64;

(4) 卷積層2: 設置卷積核的尺寸為1×1,卷積核的數目設置為192,并將步長設置為1。 池化層1的輸出經過卷積后,加入ReLU和LRN操作,輸出尺寸為8×8×192;

(5) 池化層2: 池化核的尺寸和步長均設置為2,卷積層2的輸出特征矩陣經過池化操作后,輸出尺寸為4×4×192;

(6) 卷積層3: 卷積內核的尺寸設置為1×1,卷積內核的數量設置為384,步長設定為1。 池化層2的輸出經過卷積后,加入ReLU和LRN操作后輸出尺寸為4×4×384;

(7) 全連接層: 全連接層(FC)的神經元個數設置512,通過將卷積層3輸出的光譜特征矩陣轉換為1×6 144的數據,輸入給512個全連接的神經元后輸出512個權值,為了防止模型出現過擬合現象,在輸出之前使用dropout層隨機失活部分神經元。

(8) 輸出層: 將全連接層的512個權值經過softmax函數得到一個二維得分矩陣,分別是受精蛋和無精蛋的得分系數。

2.2 卷積神經網絡訓練與測試

針對入孵前種鴨蛋光譜信息的卷積神經網絡搭建完成后開始對其進行訓練,雖然卷積神經網絡要求有大量數據進行訓練,本實驗共采集499個入孵前種鴨蛋光譜信息樣本做二分類,針對光譜信息分類問題樣本數量已經足夠。 卷積神經網絡訓練的核心思想是通過反向傳播連續的迭代,使得模型的預測值不斷地與實際值接近。 以CARS選取的特征波長進行訓練為例,使用Adam優化器選擇訓練過程中最佳梯度下降方向,可加速模型的收斂。 使用均值平方差作為損失(loss)函數用來計算預測值與實際值的差值。 學習率(learning rate)初始化為0.00001,每次抽選8個樣本進行訓練(BatchSize=8),dropout設置為0.5,迭代次數設置為20 000后開始訓練。 訓練過程中的損失函數變化趨勢如圖8,可以發現分類損失loss在訓練的前6000次一直處于快速下降狀態,迭代到10 000次之后loss一直維持在較低水平,說明模型達到收斂。

圖8 損失函數變化趨勢Fig.8 Trend of loss function

模型訓練20 000次后對其進行保存,然后將訓練集、測試集、驗證集共499個種鴨蛋二維光譜信息矩陣輸入到訓練好的模型進行測試,驗證模型的性能。 SPA提取的種鴨蛋光譜特征矩陣進行卷積操作與CARS類似,網絡的結構完全相同。 模型測試結果如表3,從測試結果可以看出,SPA和CARS提取的特征波長轉換為二維信息矩陣后,使用搭建的4層卷積神經網絡建立入孵前種鴨蛋受精信息判別模型,從驗證集和測試集的效果來看,模型未出現過擬合或者欠擬合現象,模型性能取得理想效果。

表3 模型測試結果Table 3 Model test results

3 結 論

利用可見-近紅外透射光譜技術及深度學習研究了種鴨蛋孵化前受精信息的無損檢測技術,通過研究分析獲得如下結論:

(1)通過對種鴨蛋孵化前光譜信息的分析,發現其特征波長點主要分布在可見-近紅外波段(400~1 000 nm)范圍內; 經過SG預處理后,使用CARS選取的孵前種鴨蛋特征波長分別建立了邏輯回歸、SVM、CNN判別模型,三者的測試集準確率分別為78.52%,79.94%,97.41%; 使用SPA選取的孵前種鴨蛋特征波長分別建立了邏輯回歸、SVM、CNN判別模型,三者的測試集準確率分別為72.48%,87.39%和97.41%。 無論使用CARS還是SPA選取特征波長后,使用卷積神經網絡建立判別模型都取得了最佳的效果,與傳統的機器學習方法相比性能提升明顯;

(2)光譜數據經過預處理和特征波長選取后,將一維光譜數據轉換為二維光譜信息矩陣,實現了將卷積神經網絡與光譜數據相結合,建立了種鴨蛋受精信息判別模型。 可以避免將1 361維數據直接用卷積神經網絡訓練帶來的維數爆炸問題,大大加快了模型訓練與測試的速度;

(3)采用3個卷積層和1個全連接層組成的神經網絡結構,對入孵前種鴨蛋光譜數據的分析取得了較好的效果。 為使用卷積神經網絡方法對禽蛋光譜數據進行分析提供了參考;

研究結果利用可見-近紅外透射光譜結合卷積神經網絡對種鴨蛋入孵前受精信息無損檢測具有可行性,使用CARS和SPA選取的特征波長建立的卷積神經網絡模型驗證集準確率均為97.44%和98.29%,可以滿足部署到實際生產的精度要求,為后續相應裝置的研發提供了模型支持。 但模型仍有再提高之處,使用的實驗樣本僅為縉云麻鴨種蛋,后續需要采集其他地區鴨品種的種蛋光譜數據來提高模型的通用性。

猜你喜歡
光譜信息鴨蛋波長
鴨蛋大約有多重
基于光譜和Gabor紋理信息融合的油桃品種識別
基于植被光譜信息的龜裂堿土堿化程度預測研究
傅立葉變換光譜儀的研究現狀與光譜信息分析原理
鴨蛋去哪兒了
鴨蛋小廚神
基于頻域分析方法的軌道高低不平順敏感波長的研究
日本研發出可完全覆蓋可見光波長的LED光源
一種基于區域生長的高分辨率遙感影像道路提取方法
RP—HPLC波長切換法同時測定坤泰膠囊中6個成分的含量
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合