徐煥良 孫云曉 曹雪蓮 季呈明 陳 龍 王浩云
(南京農(nóng)業(yè)大學人工智能學院, 南京 210095)
近年來,我國蘋果產(chǎn)業(yè)發(fā)展較為迅速,蘋果總產(chǎn)量穩(wěn)步上升,但是進入國際市場的數(shù)量與蘋果產(chǎn)量卻不成正比。除蘋果品質(zhì)不理想外,還與蘋果品質(zhì)檢測和分級技術落后有關[1-3]。在這種背景下,實現(xiàn)蘋果品質(zhì)的無損檢測對提升我國蘋果出口競爭力具有重要意義。
水果組織的光學特性參數(shù)[4-5]包括吸收系數(shù)μa和散射系數(shù)μs,與水果所含成分密切相關。其中吸收系數(shù)主要反映組織內(nèi)部化學信息,而散射系數(shù)與表面的組織結(jié)構(gòu)或物理特性相關。因此,測得的光學特性參數(shù)可用于水果品質(zhì)的無損檢測。然而,用于研究果蔬組織光學特性參數(shù)的理論模型在表征果蔬組織異質(zhì)性方面存在缺陷,每次測量只能得到一個像素點的光學特性參數(shù)[6],而高光譜圖像技術則結(jié)合了光譜檢測和二維圖像的優(yōu)點[7-8]。目前,高光譜圖像技術在農(nóng)產(chǎn)品品質(zhì)分析方面具有較大的優(yōu)勢。通過高光譜成像系統(tǒng)拍攝得到的高光譜圖像包含大量光譜信息和圖像信息,光譜信息反映水果的物理結(jié)構(gòu)及化學成分, 圖像信息反映水果的外在特征[9]。因此采用高光譜成像技術與光學特性參數(shù)關聯(lián)是一種比較有效的檢測手段。
目前,大多數(shù)研究在實際測量中存在樣本數(shù)量不足及耗費大量人力、物力的問題,可以使用光子傳輸模擬的方法得到大量無噪聲的數(shù)據(jù)。蒙特卡洛模擬方法可以作為光子在水果組織模型傳輸模擬的標準算法。石舒寧[10]采用蒙特卡洛方法模擬了雙層蘋果模型在波長808 nm下的光子傳輸過程。李細榮等[11]測量了蘋果、番茄和桃子組織的光學特性參數(shù),研究表明,利用蒙特卡洛方法更有助于了解影響水果無損檢測精度的相關因素。學者們也對光學特性參數(shù)反演進行了研究。BARMAN等[12]利用最小二乘支持向量機算法建立了光學特性參數(shù)求解模型,該模型能夠較好地預測光學特性參數(shù)值。謝丹丹等[13]使用偏最小二乘法建立了基于光學參數(shù)的草莓糖度及含水率的預測模型,其吸收系數(shù)和散射系數(shù)的平均相對誤差為8.23%和3.71%。趙會娟等[14]利用蒙特卡洛方法模擬實現(xiàn)了單層和雙層薄層組織光學參數(shù)的反演,單層組織的相對誤差為3%,雙層組織相對誤差為10%,試驗表明,當反演的組織模型層數(shù)超過1時,反演效果會下降。深度學習方法在光學參數(shù)反演中取得了較好的效果,但卷積神經(jīng)網(wǎng)絡的訓練需要大量數(shù)據(jù),且時間長、訓練成本高,遷移學習可以很好地彌補深度學習的缺陷。許景輝等[15]、余小東等[16]和趙立新等[17]將遷移學習應用到農(nóng)業(yè)領域,提高了模型的魯棒性。徐煥良等[18]建立了基于遷移學習方法的蘋果光學參數(shù)反演模型,其反演結(jié)果高于其他算法,但是仿真及實測數(shù)據(jù)都是基于點光源條件,在使用點光源采集數(shù)據(jù)時,入射光強度較低,導致探頭捕獲的信息并不充分、存在誤差,因此效果提升有限。
本文以蘋果為研究對象,提出一種基于光子傳輸模擬的蘋果品質(zhì)檢測方法。首先,使用高光譜成像系統(tǒng)采集面光源條件下的蘋果光譜圖像,同時構(gòu)造雙層平板模型,利用蒙特卡洛方法仿真得到大量面光源條件下的蘋果表面光亮度分布圖,將仿真圖像輸入卷積神經(jīng)網(wǎng)絡得到預訓練模型,再將模型遷移到蘋果實測數(shù)據(jù)上進行微調(diào),最后建立品質(zhì)預測模型,以實現(xiàn)蘋果糖度和硬度的無損檢測。
1.1.1試驗材料
試驗選取山東省煙臺市的紅富士蘋果,樣本共118個,均為表面光滑、大小均勻、無明顯損壞的正常樣本。試驗前將其標號后在低溫環(huán)境下存儲。在進行數(shù)據(jù)采集前,先將蘋果樣本取出置于試驗環(huán)境下一段時間,使其達到室溫(20℃)。測量過程中避免周圍環(huán)境的溫度及濕度發(fā)生變化。
1.1.2蘋果面光源高光譜圖像采集
使用上海五鈴光電科技有限公司的HSI-VNIR-0001型高光譜成像系統(tǒng),結(jié)構(gòu)如圖1所示,采集波段為373.79~1 029.22 nm。該系統(tǒng)主要由Raptor EM285CL型高感相機、IT3900型線性鹵素光導管組(150 W)、步進電機和Inspector V10E型光譜儀組成,使用HSI Analyzer軟件將高光譜圖像數(shù)據(jù)導出。
1.1.3蘋果光學特性參數(shù)采集
使用上海五鈴光電科技有限公司的雙積分球系統(tǒng),結(jié)構(gòu)如圖2所示,采集得到118個蘋果樣本的反射率、透射率,通過反向倍加(Inverse adding-doubling, IAD)法迭代計算蘋果組織的光學特性參數(shù)。得出蘋果組織的果皮吸收系數(shù)μa1(0.4~6.5 mm-1)、果肉吸收系數(shù)μa2(0.03~8.7 mm-1)、果皮散射系數(shù)μs1(1.69~260 mm-1)、果肉散射系數(shù)μs2(0.01~75 mm-1)。
1.1.4蘋果糖度及硬度采集
使用ATAGO PAL-1型數(shù)顯糖度計測量蘋果糖度,選取感興趣區(qū)域處的蘋果果肉組織,擠出果汁后滴入棱鏡處,記錄屏幕顯示的數(shù)字。每個樣本測量3次取平均值作為該樣本的糖度;使用托普GY-4型數(shù)顯水果硬度計測量蘋果硬度,測量時將手柄均勻壓入果肉組織至探測頭刻度線處為止,記錄屏幕顯示的數(shù)字。每個樣本測量3次取平均值得到該樣本的硬度。
蒙特卡洛(Monte Carlo,MC)方法的基本思想是通過產(chǎn)生一系列隨機數(shù)的方法,構(gòu)造一個與實際物理過程一致的隨機概率模型,并根據(jù)試驗計算將其作為問題的解。蒙特卡洛方法[19]因其對生物組織的光源和邊界條件沒有限制、不需要解傳輸方程、對組織的光學特性參數(shù)要求沒有限制、計算簡單等優(yōu)點,在生物組織的光傳輸領域被廣泛應用。
用蒙特卡洛方法模擬光子傳輸時,光子進入生物組織之后會移動一個隨機步長,之后會與組織中的顆粒碰撞發(fā)生吸收和散射。吸收導致權(quán)重衰減,散射會使行進方向改變。其中光子剩余權(quán)重w′計算公式為
(1)
式中w——光子上一步的權(quán)重
而光子的傳播方向主要由方位角β和散射偏轉(zhuǎn)角θ決定,計算公式分別為
β=2πε
(2)
式中ε——(0,1)區(qū)間上的隨機數(shù)
(3)
式中g——各向異性因子
這個步長走完之后,光子會繼續(xù)移動隨機步長重復上述過程。光子可能會出界逸出,從上表面逃逸出來的光子發(fā)生漫反射,從下表面逃逸出來的光子發(fā)生透射,光子的權(quán)重衰減到足夠小時,會被組織所吸收而消亡。光束中的所有光子重復這個過程,完成蒙特卡洛模擬。具體流程如圖3所示[20]。
研究發(fā)現(xiàn),光子在仿真蘋果組織中傳輸時,99%的光子傳輸深度不足1 cm,只有極少部分的光子能到達果核[21],為了簡化計算,建立蘋果果皮、果肉雙層組織平板模型,該模型為層狀非均勻的半無限介質(zhì),將果肉層視作無限大厚度的介質(zhì),只需設置果皮層厚度。
使用Matlab R2016b的軟件環(huán)境,編寫程序模擬光子在蘋果組織中的傳輸過程。根據(jù)1.1.3節(jié)采集得到的蘋果樣本在350~1 020 nm范圍內(nèi)的1 342個波段下的光學參數(shù)分布數(shù)據(jù),去掉波段兩端誤差與噪聲較大的數(shù)據(jù),選取波段450~900 nm內(nèi)的光學參數(shù)值,按照統(tǒng)計樣本數(shù)量的方式劃分區(qū)間范圍,設置每個區(qū)間內(nèi)的中值作為仿真參數(shù)的輸入,取均勻分布的5×4×5×5=500個光學參數(shù)組合,設置模擬試驗的光學參數(shù)數(shù)值,其中μa1分為5類,μa2分為4類,μs1分為5類,μs2分為5類。具體分類方式如表1所示。根據(jù)實測的樣本厚度區(qū)間(0.01~0.05 mm),將果皮厚度d設置為間隔0.01 mm的5個值,各向異性因子g為0.9,空氣折射率n0為1,果皮折射率n1、果肉折射率n2均為1.38,模擬光子數(shù)設置為106。
表1 光學參數(shù)分類
采用點光源和面光源兩種不同的光源映射得到200像素×200像素的無噪聲光亮度分布圖,仿真圖像如圖4所示。
從圖4可以看到,面光源圖像相比于點光源覆蓋的區(qū)域更大,能夠提取到的圖像和光譜信息更多。此外考慮到點光源應用場景受限,為了更好地模擬真實情況,提高模型的普適性,使用面光源仿真平行光光源下的光子傳輸過程。
卷積神經(jīng)網(wǎng)絡是用來處理二維數(shù)據(jù)而設計的一種特殊的神經(jīng)網(wǎng)絡,與其他的神經(jīng)網(wǎng)絡相比,最大的不同點是卷積層和池化層的引入。卷積神經(jīng)網(wǎng)絡包含輸入層、卷積層、池化層、全連接層和輸出層,卷積神經(jīng)網(wǎng)絡具有更少的權(quán)值參數(shù)[22-25],因此降低了模型的復雜度。圖像可以直接作為網(wǎng)絡的輸入,減少了復雜的特征提取過程。
本文建立的卷積神經(jīng)網(wǎng)絡模型如圖5所示,包括3層卷積層、1層池化層和1層全連接層。將30像素×30像素的蘋果仿真光亮度分布圖作為輸入,通道數(shù)為1。第1層卷積層的卷積核大小為2×2,通道數(shù)為40,步長為1,第2層池化層的窗口大小為2×2,第3、4層卷積層的卷積核大小均為2×2,步長均為1,通道數(shù)分別是30和20。全連接層是一維的1×40向量,最后一層為網(wǎng)絡輸出層,完成對μa2和μs2的分類。
隨著越來越多機器學習應用場景的出現(xiàn),利用少量的有標簽訓練樣本或者源領域數(shù)據(jù),建立一個可靠的模型進行預測成為了研究者關注的問題[26-27]。而遷移學習就是遷移已經(jīng)訓練好的模型或算法到新領域,解決由于數(shù)據(jù)量不足等條件而無法訓練出更好的模型的方法?;谀P偷倪w移學習方法可以重用一部分層的參數(shù),通過替換預訓練網(wǎng)絡模型的輸出層并利用目標數(shù)據(jù)集對深層卷積層的參數(shù)進行微調(diào),進一步訓練出一個小規(guī)模的網(wǎng)絡結(jié)構(gòu)。
本研究中源數(shù)據(jù)集為仿真光亮度圖像,是根據(jù)實測蘋果樣本的光學參數(shù)數(shù)值進行仿真獲得的,與實測高光譜圖像具有相似的分布,且仿真數(shù)據(jù)集規(guī)模比實測數(shù)據(jù)集大,不需要對整個網(wǎng)絡模型進行調(diào)整,故使用基于模型的遷移學習方法。為了減少試驗誤差,提高模型反演精度,對波段450~900 nm范圍內(nèi)的蘋果高光譜數(shù)據(jù)進行處理,去除掉兩端噪聲較大的數(shù)據(jù)后得到400個波段。由于相鄰波段的高光譜圖像差異性較小,為了取得更好的效果,每間隔4個波段篩選出一幅高光譜圖像,最終得到50個蘋果樣本的5 000幅實測高光譜圖像,每幅圖像尺寸為40像素×40像素。以4∶1的比例隨機劃分訓練集和測試集,分別微調(diào)預訓練模型的全連接層和最后幾層卷積層,確定最理想的微調(diào)深度。
在本文研究的基于光學特性參數(shù)反演的遷移模型的基礎上,提取模型全連接層的深度特征建立蘋果品質(zhì)預測模型,并與常規(guī)的高光譜、光學參數(shù)關聯(lián)方法進行對比。采用預測準確率(ACC)、預測值與實測值之間的決定系數(shù)(R2)和均方根誤差(Root mean square error,RMSE)作為評價蘋果品質(zhì)預測模型性能的指標。
由文獻[18]可知,當光學參數(shù)發(fā)生變化時,蘋果果肉比果皮表面逸出光子數(shù)變化更為明顯,表明果肉光學參數(shù)的變化對光子傳輸?shù)挠绊懜?,研究果肉的光學參數(shù)結(jié)果更有實際應用價值。故在本研究中只對μa2和μs2兩個指標進行反演。
卷積神經(jīng)網(wǎng)絡的訓練在Python 3.6.12、Tensorflow-GPU 1.13.1軟件環(huán)境下完成。硬件環(huán)境為AMD Ryzen 5 1600 Six-core Processor 3.2 GHz,NVIDIA GeForce RTX 2080 Ti顯卡。采用蒙特卡洛模擬的方法,經(jīng)過旋轉(zhuǎn)變換得到20 000幅仿真蘋果表面光亮度圖像,以4∶1的比例隨機劃分訓練集與測試集。批次大小為256,學習率為0.000 1,迭代2 000次完成訓練。
輸入圖像的感興趣區(qū)域大小不同,對蘋果光學參數(shù)分類效果也不同,仿真數(shù)據(jù)為理想情況下得到的200像素×200像素的光亮度分布圖,而光亮度分布基本是中心對稱的。為簡便運算,以100為起點位置,分別取光亮度分布圖的([100,115],[100,115])、([100,120],[100,120])、([100,125],[100,125])、([100,130],[100,130])范圍作為網(wǎng)絡的輸入,比較光學參數(shù)的分類準確率,如表2所示。
表2 輸入范圍對反演結(jié)果的影響
根據(jù)表2的結(jié)果,選擇([100,130],[100,130])的輸入范圍時,蘋果的光學特性參數(shù)反演效果最佳,這是因為30像素×30像素的區(qū)域大小能夠提取到更多的特征。
同時對比了卷積層及卷積核數(shù)與調(diào)節(jié)不同參數(shù)下的網(wǎng)絡找到準確率最高的組合解。在調(diào)參好的網(wǎng)絡結(jié)構(gòu)上,采用線性歸一化處理方式,選擇光亮圖的([100,130],[100,130])區(qū)域作為輸入,對μa2、μs2同時進行反演,仿真數(shù)據(jù)的光學參數(shù)反演結(jié)果為果肉吸收系數(shù)90.15%、果肉散射系數(shù)81.10%。由結(jié)果看出果肉的光學參數(shù)反演結(jié)果較穩(wěn)定,均達到了81%以上。
基于模型的遷移學習方法可以將預訓練得到的深度神經(jīng)網(wǎng)絡權(quán)值參數(shù)遷移到與源數(shù)據(jù)集相似的目標小數(shù)據(jù)集上,對于不能共享特征及權(quán)值參數(shù)的深層網(wǎng)絡再進行微調(diào),即實現(xiàn)淺層共享、深層微調(diào)。
試驗中源數(shù)據(jù)集為仿真光亮度圖像,與實測高光譜圖像具有相似的分布,故使用基于模型的遷移學習方法對實測數(shù)據(jù)集進行訓練。提取預訓練模型的網(wǎng)絡結(jié)構(gòu)及權(quán)值,分別微調(diào)全連接層Fc1和最后兩層卷積層conv2、conv3與非遷移的效果作比較,從而找到效果最理想的微調(diào)深度。
由表3可知,非遷移的方法效果最差,這是因為實測數(shù)據(jù)較少,導致?lián)p失值出現(xiàn)波動。遷移的方式比非遷移的效果均有提升,其中只調(diào)整最后一層卷積層和全連接層的反演效果最佳,原因在于仿真數(shù)據(jù)和實測數(shù)據(jù)分布存在差異,僅改變?nèi)B接層無法達到理想的訓練效果,而改變最后兩層卷積層和全連接層時反演準確率已經(jīng)達到峰值,出現(xiàn)了一定程度的波動。最終μa2和μs2的反演準確率分別達到了93.24%和92.54%,比直接訓練的結(jié)果提高了9.61、12.13個百分點。結(jié)果表明,遷移學習的方法提高了光學參數(shù)反演準確率,有效解決了因?qū)崪y數(shù)據(jù)不足導致準確率無法提高的問題。
表3 實測數(shù)據(jù)不同方式下光學參數(shù)反演準確率
為了驗證基于面光源的光學參數(shù)反演方法的有效性,分別建立基于高光譜圖像數(shù)據(jù)、光學參數(shù)數(shù)據(jù)以及通過遷移學習得到的點光源條件下與面光源條件下的深度特征的蘋果品質(zhì)分類與回歸模型。
在對品質(zhì)進行分類時,為了使得每個標簽下的樣本數(shù)量近似相等,根據(jù)1.1.4節(jié)采集得到的糖度(8.33~18.26°Brix)及硬度(3.06~10.53 kg/cm2)數(shù)值,采用統(tǒng)計樣本數(shù)量的方法對蘋果糖度和硬度進行分類。糖度和硬度均分為4類,糖度的每類區(qū)間為[8.33°Brix,11.67°Brix)、[11.67°Brix,13.14°Brix)、[13.14°Brix,14.74°Brix)和[14.74°Brix,18.26°Brix),硬度的每類區(qū)間為[3.06 kg/cm2,4.50 kg/cm2)、[4.50 kg/cm2,6.07 kg/cm2)、[6.07 kg/cm2,7.32 kg/cm2)和[7.32 kg/cm2,10.53 kg/cm2)。
使用高光譜圖像對蘋果品質(zhì)進行關聯(lián)時,選擇1.1.2節(jié)采集的蘋果樣本高光譜圖像距中心處直徑40像素的正方形區(qū)域作為感興趣區(qū)域。首先使用S-G平滑對數(shù)據(jù)進行去噪,預處理后的光譜如圖6所示。采用隨機劃分數(shù)據(jù)的方法挑選92個樣本作為校正集,24個樣本為預測集,使用隨機蛙跳算法進行特征波段的選擇,糖度和硬度均篩選出11個波段,如圖7所示。最后使用誤差反向傳遞人工神經(jīng)網(wǎng)絡(BP-ANN)算法構(gòu)建基于高光譜信息的蘋果品質(zhì)分類與回歸模型,隱藏層節(jié)點數(shù)設置為16,學習率設置為0.001,迭代次數(shù)為10。由于該算法存在隨機性,試驗重復5次取平均值作為預測結(jié)果。
使用光學參數(shù)數(shù)據(jù)進行關聯(lián)時,由于光學參數(shù)每部分反映的組織信息不同,在模型中會相互影響,故將實測蘋果樣本的果肉吸收系數(shù)和果肉散射系數(shù)數(shù)據(jù)組合起來進行建模,采用與高光譜數(shù)據(jù)同樣的處理方法,其中μa2和μs2各篩選出10個波段進行建模。
使用深度特征對蘋果品質(zhì)進行關聯(lián)時,將實測的4 000幅點光源圖像與5 000幅面光源圖像分別輸入到預訓練模型,將遷移學習后的模型中全連接層的輸出作為輸入,其中點光源深度特征維度為4 000×40,面光源深度特征維度為5 000×40,將糖度或硬度作為輸出,建立蘋果品質(zhì)模型。
由表4、5可知,用面光源深度特征做分類的蘋果糖度和硬度的準確率為92.22%和86.97%,相比高光譜數(shù)據(jù)和光學參數(shù)數(shù)據(jù)的方法分別提高了6.54、5.87個百分點和8.25、6.48個百分點,相比點光源模型提高了1.88、3.71個百分點?;诿婀庠瓷疃忍卣鹘⒌奶O果品質(zhì)回歸模型得到的蘋果糖度及硬度的決定系數(shù)R2分別為0.914 4和0.813 1,較單獨使用高光譜和光學參數(shù)進行回歸的方法分別提高了0.154 9、0.139 7和0.109 5、0.088,較點光源模型提高了0.012 1和0.034 9。
表4 蘋果品質(zhì)不同數(shù)據(jù)來源的分類準確率
表5 蘋果品質(zhì)不同數(shù)據(jù)來源的回歸效果
由結(jié)果可知,光學參數(shù)的分類及回歸效果優(yōu)于高光譜信息,這是由于高光譜信息相比于光學參數(shù)增加了光子的隨機性,目前用于高光譜信息的算法不能較好地提取指定特征。而將光譜信息和光學參數(shù)信息結(jié)合的深度學習模型比單獨使用光譜信息及光學參數(shù)信息的預測效果好,其中面光源模型比點光源模型更能準確提取到光譜和光學參數(shù)特征,說明了基于面光源和高光譜反演光學參數(shù)的方法可以更好地檢測蘋果的品質(zhì)。
(1)采用蒙特卡洛模擬的方法快速得到大量蘋果仿真面光源的亮度分布圖像,彌補了實測數(shù)據(jù)量少且噪聲大的缺陷。與點光源條件相比,在面光源條件下進行測量能夠獲得更多圖像和光譜信息,減少了試驗誤差,更好地模擬了實際情況下光子的傳輸軌跡,提高了模型的普適性。
(2)基于模型的遷移學習能夠有效提高光學參數(shù)反演的精度,解決了實測數(shù)據(jù)不足而導致準確率無法提高的問題。
(3)使用卷積神經(jīng)網(wǎng)絡提取的深度特征作為輸入,能夠較好地預測蘋果品質(zhì)。結(jié)果優(yōu)于通過高光譜信息和光學特性參數(shù)信息直接關聯(lián)蘋果品質(zhì)的方法,且使用面光源的預訓練模型效果優(yōu)于點光源,證明了基于面光源下光子傳輸模擬的光學參數(shù)反演方法在蘋果品質(zhì)檢測領域的可行性和有效性。