楊海清,劉永輝
(浙江工業大學 信息工程學院,浙江 杭州 310023)
中國是一個煙草大國,其煙草行業發展史久遠,隨著科學技術的發展煙草的制造工藝也在不斷的改進[1]。目前,煙草制造業在我國的經濟發展中具有十分重要的地位,而且有大部分地區的農民以種植煙草作為主要的經濟來源,發展煙草行業的現代化對我國的經濟有著十分重要的意義[2]。煙草生產一般需要煙葉植株種植、煙葉采摘、煙葉烘烤和成品加工等幾個階段[3]。其中烘烤是煙葉生產過程中的一個重要的部分,煙葉烘烤質量的好壞直接影響后面煙草的等級。烘烤是一個將煙葉中的水分蒸干,顏色由綠變黃的過程[4],通過控制烘干室內的溫度以及通風來確保煙葉水分蒸發的速度和程度。在對煙葉進行烘烤時,烤煙工作人員必須實時檢測煙葉烘烤狀態,并根據煙葉狀態合理調節烘烤模式。這種烘烤模式對操作人員的依賴比較高,容易受到操作人員的經驗和主觀因素[5]影響,煙葉干燥質量無法得到保證。目前計算機視覺技術逐漸發展完善,通過該技術實時采集煙葉烘烤狀態[6],并將煙葉的當前狀態反饋到烘烤調溫系統實現煙葉烘烤工業自動化,提高煙葉烘烤質量及良品率。
針對煙葉烘烤階段的色澤及葉脈文理變化特點,筆者提出一種基于卷積神經網絡的煙葉特征提取算法。筆者算法通過多通道提取煙葉的色彩特征[7],通過網絡深度提取煙葉的高維紋理特征。通過算法模型設計及模型訓練得到煙葉識別模型,使用訓練后的模型通過圖像采集設備實時對煙葉的烘烤狀態進行特征提取并將提取的特征進行特征分類得到相應的煙葉狀態,實現煙葉烘烤狀態提取自動化。相比傳統人工,筆者算法能夠連續向控制器反饋當前煙葉的烘烤信息,使控制器的輸出更加平滑連續,同時煙葉的烘烤質量也得到了一定程度的提高,效率也更高。
深度卷積神經網絡可以提取高中低不同層次的特征[8],高維特征一般可以通過加深網絡的層次得到。從而在構建卷積神經網絡時,網絡的深度越高,可抽取的高維特征就越豐富。圖像識別一般傾向于使用更深層次的網絡結構,以便取得更高層次的特征。但是在深層網絡結構可能會導致梯度消失,梯度爆炸問題和網絡退化的問題[9]。殘差網絡的提出很大程度上解決了深度網絡的退化和梯度消失問題。
圖1是一個殘差網絡結構塊,其中X是這一層殘差塊的輸入,F1(X)是X經過第一層線性變化并激活后的輸出,F2(X)是F1(X)經過第二層進行線性變化后的輸出,最后F2(X)加入殘差塊的輸入值X后再進行激活后輸出。這種殘差結構全部采用的是3×3的卷積核,雖然通過反向更新解決梯度消失的問題,但是對圖像豐富的色彩特征提取能力有限,而這一點對煙葉烘烤狀態的識別十分重要。

圖1 殘差結構
煙葉烘烤分為變黃、定色和干筋等3 個階段,將煙葉分為原葉期(烘烤前的煙葉)、漸黃期、定色前期、定色期、干筋期5 個狀態,以便更精細的控制烘烤模式。由于煙草的數據集不完善,手動采集煙草圖片約1 萬張,并從煙農烤煙室監控視頻中提取5 萬張左右煙葉圖片。將采集到的圖片進行模糊過濾、標注篩選出較高質量的圖片;最后對圖片進行鏡像、旋轉、亮度增強等數據增強處理[10-12]得到約10 萬張數據。其中數據集包含燈光不同明暗程度的照片增加訓練圖片的復雜程度,以提高模型泛化性和多場景適應性[13-15]。
softmax函數經常用在神經網絡的最后一層,對網絡輸出進行多分類[16]。它將多個神經元的特征輸出映射到(0,1)區間并且和為1,將神經網絡的輸出變成一個概率分布,softmax函數公式為
(1)
式中:yi(i=1,2,3,…,n)為神經網絡的輸出;S(yi)為神經網絡輸出yi的置信度。
一般分類問題可以選取輸出數值最大的作為預測目標。但這種方式不能充分應用每一個特征輸出而且分類效果也不好,且當softmax輸出的部分數值相近時就很難具體確定屬于某一類別。為解決此問題,提出將煙葉原葉期、漸黃期、定色前期、定色期、干筋期等5 個類別數值化標注為1,2,3,4,5。將softmax的輸出結果對應的煙葉類別分別相乘加權求和,這樣可以更好的利用每一個輸出特征值。特征值經過softmax后輸出Si,然后將Si與相應的煙葉類別Li進行相乘,最后再將所有結果進行疊加即是煙葉狀態預測結果,其計算式為
(2)
式中:Hout為最終的輸出類別;Si為神經網絡輸出第i個輸出的softmax輸出;Li為對應的第i個標注類別。
壓縮激勵網絡(Squeeze-and-Excitation Networks,SE Net)結構[17]能夠表達特征通道之間的相互依賴關系。此外,現有網絡嵌入SE結構后并未引入新的空間維度來進行特征通道間的融合,而是采用了一種特征重標定的方法。在加入SE結構后,網絡通過訓練學習的方式計算每個特征通道的重要程度,然后根據通道的重要性去增強重要的特征并抑制不重要的特征。
在圖2中,SE結構的輸入是上層網絡輸出Xin特征為c×h×w,通過一個全局池化層(Global pooling)進行特征壓縮輸出大小為1×1×c,Global pooling能夠讓特征值響應全局分布[18],使接近輸入的層也可以獲得全局感受野;池化層輸出的特征經過第一個卷積層Conv1對輸出通道空間維度進行壓縮,輸出大小為1×1×(c/r),通道由c降為c/r,壓縮率為r,減少了輸出通道個數從而降低計算量。Conv1的輸出經過Relu激活函數后經過從Conv2進行卷積擴張,輸出通道由c/r提升為c同輸入保持一致;同時引入Relu激活函數后增加了網絡的非線性,增強了網絡的擬合能力。其中Conv1和Conv2都是在一些通道的特征圖里進行操作,起到了融合各通道的特征圖的信息而不會增加過多計算量的作用。卷積層Conv2的輸出經過Sigmoid激活函數后將輸出特征映射到[0,1]之間,再一次增加網絡的非線性,最后是經過Scale操作。通過前面卷積層層和激活函數學習得到的權重通過乘法逐通道加權到初始的特征上,完成在通道維度上對原始特征的重標定。

圖2 SE結構圖
圖3是筆者提出的一種改進的殘差網絡算法。該結構的輸入Xin經過激活函數LeakyRelu激活后傳遞給卷積核為3×3的卷積層;第一層卷積輸出在經過LeakyRelu函數后進行卷積核為3×3的第二層卷積;第二層卷積輸出后并列進入SE結構和卷積核為5×5的卷積層,使用5×5的大卷積核可以提取到更多的局部信息,相比小卷積核而言能夠更充分的對局部信息的采集與利用;在進入Conv5×5卷積層之前將3×3卷積層的輸出經過LeakyRelu激活函數來增加網絡的非線性,提升神經網絡模型表達能力;在經過5×5的卷積層后將輸出進行池化操作,可以有效地壓縮卷積參數,減少卷積層Conv5×5增加的部分參數同時也可抑制訓練集較少帶來的過擬合問題。最后將SE結構的輸出、Conv5×5卷積結構的輸出及最原始的輸入相加。

圖3 改進的殘差結構塊
表1中網絡輸入112×112的圖片數據,首先經過卷積核為3×3的卷積層輸出大小為112×112,通道為64;中間連續使用4 個步長為2的增強殘差網絡結構,輸出大小為7×7,通道為512;然后經過全局平均池化層將網絡輸出降為1×1,通道為512;最后一層是分類數為5(根據煙葉分類數確定)的全鏈接層。此外該網絡在訓練時加入Batch Normalization(批處理規范化)以加快網絡訓練速度,防止梯度消失而造成網絡難以訓練的問題。

表1 增強后殘差網絡結構配置
表2為模型訓練環境配置,在硬件上使用英偉達圖形加速顯卡GeForce 1080Ti、英特爾九代CPU i7-9700k,內存為DDR4-32 G、操作系統為Ubuntu 18.04、顯卡驅動為CUDA 10.0、深度學習框架為Tensorflow-GPU版本;在該環境配置下對筆者提出的網絡模型進行訓練,其中訓練數據為標注后的約10 萬張分辨率為112×112的包含煙草烘烤過程中5 個狀態的圖片,測試數據為3 000 張。訓練學習率設置為[0.1,0.01,0.001,0.000 1,0.000 01],Batch Size為128,優化器為AdamOptimizer,并進行批處理正則化處理以加快網絡收斂的速度。

表2 實驗環境配置
表3是對筆者所提模型和標準的殘差網絡模型在相同的實驗配置下的實驗結果。其中筆者提出的模型(1.0指輸入輸出通道未進行縮放,0.5指輸入輸出通道縮減為原來的1/2)所占內存為53.3 Mb,這比標準的ResNet-18的42.7 Mb稍大,這是由于增強后的殘差模型結構中加入了卷積核為5×5的卷積層及帶有兩層1×1卷積層的SE結構層增加了網絡的深度造成模型參數量增加,但提高了模型對圖片高維特征的提取能力同時增加了激活函數提高了模型的泛化能力;而且其參數量和模型推理時間并未增加太多且測試精度達到99.1%。此外當模型的通道縮小一半時,模型所占內存僅為13.3 Mb,CPU測試時間僅為5 ms,且精度達到97.5%,這與標準版的ResNet-18相比識別準確率相近但參數量更少、速度更快、占用內存更小。

表3 模型比較
表4是分別針對煙葉的原葉期、漸黃期、定色前期、定色期和干筋期等5 個時期進行識別精度測試。通過與標準的ResNet-18對比,改進后的殘差網絡對煙葉各個時期的識別精度更高;在對筆者模型進行通道縮減1/2后,該模型對煙葉各個時期仍能達到97.2%以上的分類精度。在對煙葉的5 個時期進行識別精度對比中可以看出:原葉期分類精度最高,半黃期分類精度最低。通過觀察分析數據庫中煙葉特征,模型對原葉期分類精度高的原因是原葉期的煙葉特征較其它時期更易于分辨,前期人工對訓練集的標注也更加精確;而定色前期煙葉的顏色及葉筋與漸黃期和定色期較為相似,人工對訓練集的標注也會有更大的錯誤概率,從而造成模型對該部分圖片分類精度偏低。

表4 模型測試精度對比
針對實現煙草烘烤狀態識別自動化的問題,提出一種改進的殘差網絡結構,在該網絡結構中加入了SE結構能夠在給網絡增加極少參數的情況下增強網絡的非線性,提高了網絡的泛化性和擬合能力;SE結構中增加1×1的卷積層相當于增加了網絡的深度,有助于煙葉復雜的高維特征提取;而且SE結構能夠通過學習對特征進行篩選,達到一種留主去次的作用。此外在殘差結構中加入5×5的卷積結構能夠增加模型對局部特征提取的作用,能夠更好地提取煙葉豐富的局部特征。通過對該網絡進行訓練和分類精度測試結果分析,表明筆者提出的網絡算法具有收斂速度快,分類精度高的特點。下一步研究方向將針對模型對部分階段的煙葉分類精度較低的情況,以及面對小訓練數據集時模型容易過擬合,提升模型效率等問題進行深入研究。