王浩
基于深度殘差網絡ResNet的廢料瓶分類系統(tǒng)
王浩
(武漢理工大學 信息工程學院,湖北 武漢 430070)
為探索深度學習在資源回收領域中的應用,采用深度殘差網絡ResNet18網絡模型將廢料瓶分類為塑料瓶、金屬瓶、玻璃瓶、紙瓶四類。在圖像采集過程中,利用Opencv識別出主體對象,并去除多余的背景,將圖像預處理為224×224矩陣數據,以減少模型運算量,再以TF2.0框架為后臺搭建ResNet18殘差網絡,并在卷積層后激活函數前增加BN層減少模型訓練時間。最終基于深度殘差網絡ResNet18的廢料瓶分類識別正確率為89.4%,實現了對廢料瓶子的有效分類,但識別正確率仍有待提高。
廢料瓶分類;Opencv;深度學習;ResNet18
在再生資源回收領域,廢料瓶是生活中最主要的可回收利用資源。資料顯示,中國每年需要生產的包裝瓶數量在 2 000億個左右。但在實際回收操作中,由于人工分類廢料瓶成本較高,使得廢料瓶的回收率不高。
計算機硬件水平以及運行速度的提升,使得計算機圖像數據處理能力不斷提高。由機器視覺加深度學習的圖像處理逐漸可替代人的重復性識別勞動,與人眼識別相比,深度學習識別圖像的能力與準確度更強,深度學習中的卷積神經網絡模型(CNN)由最初的LeNet模型到 AlexNet、VGGNet、InceptionNet再到ResNet,模型的深度逐漸加深,識別準確率逐漸提高。所以,本文采用訓練深度殘差網絡ResNet網絡模型實現對廢料瓶的識別分類。
本文所用數據集來源為像機采集與網絡圖片爬取,并將采集到的數據在圖像預處理過程中進行數據增強,避免因為訓練樣本數據量小而模型過于復雜出現過擬合使測試集準確率降低。由此建立數據集塑料瓶、金屬瓶、玻璃瓶、紙瓶共4個類別,按訓練樣本集與測試集比例8∶2進行分類。為盡可能縮小模型運算量并保留數據集中有效的特征,本文先對圖像中待識別的主要物體進行目標定位、高斯模糊二值化與框選裁剪掉多余背景留下主體的256×256像素RGB圖像。在實際模型建構中,考慮到訓練條件的影響,為提高模型收斂速率縮短模型訓練時間,在ResNet模型中添加了BN層,最后輸入測試樣本集進行模型訓練,并用測試集進行模型測試,直至測試達到正確率方可應用。
本文在數據集采集中為了減少背景噪聲對識別正確率的影響,人工拍攝時背景為白色。因人力勞動資源有限,無法獲得大量的廢料瓶數據訓練模型。在深度學習模型訓練過程中,隨著模型深度的逐漸提高,意味著訓練模型的數據集數量也需適應模型的復雜程度而逐漸增大。深度殘差ResNet18網絡模型在訓練過程中需要數量極大的訓練樣本數據集,否則會加大因為輸入數據量過小出現過擬合的可能,導致在測試集測試時模型預測正確率下降,所以本文在圖像預處理中采取了將數據集進行數據增強以擴展數據集數量的方法,同時數據增強也有利于提高模型的泛化能力。
圖像預處理如圖1所示。由于現實拍攝圖像的尺寸過大,往往背景比廢料瓶主體部分還要大,為了減少無用數據量和模型的運算量,并盡可能保留圖像的主體特征,本文在圖像預處理過程中對圖像背景進行裁剪。具體實現步驟如下:①首先將輸入的RGB圖像轉化為單通道灰度圖像,并對灰度圖進行高斯模糊處理(將灰度圖像每個像素與高斯分布進行卷積),增強圖像在不同比例大小下的圖像效果并弱化反光點,有助于接下來保證二值化操作的準確性。得到圖像如圖1(a)所示。②再對圖1(a)進行二值化,并將圖像進行黑白反色得到圖像,如圖1(b)所示。③對圖像(b)進行主體的輪廓識別,得到圖像主體輪廓的邊界矩形。④將圖像裁剪為256×256像素的RGB圖像,如圖1(d)所示。
在CNN網絡結構的發(fā)展中,基本思想為通過不斷加深網絡層數以豐富特征的層次,來提高分類精度。但簡單地堆疊層數不但沒提高模型的精度反而導致出現梯度消失問題。
2015年何愷明及其團隊提出深度殘差網絡ResNet,可將模型層數提高到上百層,ResNet殘差網絡不再讓下一層直接擬合我們想得到的底層映射,而是令其對一種殘差映射進行擬合。其核心思路為:對一個準確率達到飽和的淺層網絡,在它后面加幾個輸出等于輸入的恒等映射層,增加網絡深度的同時不增加誤差。這使得神經網絡的層數又可以繼續(xù)加深,提高了準確率。
ResNet模型仍然沿用了VGG網絡的多個3×3小卷積核的結構方法,這使得ResNet模型的計算量變得更小,且相比于其他網絡尺寸較大的5×5卷積核來說,小卷積核對提取的特征具有更好的表征能力。
在代碼編寫中恒等映射的具體實現方法分為兩種情況,當兩層堆疊卷積沒有改變特征圖的維度時可直接將前一層的輸出疊加到當前層;相反,當兩者改變了特征圖維度時,則需要對前一層的輸出用1×1的卷積核進行降維后再與當前層相加。
ResNet模型逐漸加深了CNN網絡結構的同時,模型中需要迭代確定的權重、訓練中需要計算的復雜度也隨之增加,導致訓練時資源占用過多,對訓練設備的要求也高,訓練效率低。
本文為了提高模型訓練時的收斂速率,縮短了模型的訓練時間。在ResNet網絡模型的卷積層后增加批標準化BN層,即把神經網絡每層的輸入進行數據預處理為符合均值為0、標準差為1的分布,因此經過BN層后的數據落入到非線性激活函數后對輸入變化更敏感的區(qū)域,從而減少了模型的過擬合,避免模型出現梯度爆炸的問題。另外添加BN操作后就不需要Dropout進行隨機踢出神經元的過程,BN層能替代Dropout層實現抑制模型的過擬合,添加BN層后,模型訓練時間縮短,收斂速率加快。
在本文實際實現過程中,首先使用相機拍攝與網絡爬取獲得廢料瓶圖像數據,經過數據增強與圖像預處理后制作成ResNet模型可用的三通道矩陣數據集,并在ResNet殘差網絡的卷積層后增加BN層提高收斂速率,將三通道矩陣樣本集送入ResNet網絡模型中進行殘差神經網絡模型訓練,再用測試數據集調用模型驗證生成的殘差神經網絡識別廢料瓶的準確率。經過測試集測試結果表明本文方案將廢料瓶分類為塑料瓶、金屬瓶、玻璃瓶、紙瓶四類的準確率為89.4%。
本文采用深度殘差網絡ResNet18網絡模型并為避免模型訓練過程中出現過擬合的現象,在網絡的卷積層后增加BN層以減少模型的訓練時間方便進行模型訓練,有效實現了將廢料瓶分類為塑料瓶、金屬瓶、玻璃瓶、紙瓶四類的目的,經過測試集測試,識別正確率為89.4%,有助于解決廢料瓶分類領域中人工勞動價值比分類所獲價值更高的窘境,可應用于工業(yè)分揀廢品系統(tǒng)中。
因在實際過程中采集圖像較困難,本文網絡采集的部分數據集中出現圖像與標簽不一致現象,使模型適應性降低,導致相比較于深度學習在其他方面的應用,本文所訓練的模型正確率仍有待提升。
[1]林云森,范文強,姜佳良.基于深度學習的水果識別技術研究[J].光電技術應用,2019,34(6):45-48,58.
[2]李力涵.基于計算機視覺的智能廢料瓶分類系統(tǒng)[D].杭州:浙江工商大學,2019.
[3]楊劍,劉方濤,張濤,等.基于改進型殘差網絡煙霧圖像識別[J].科學技術與工程,2019,19(32):236-243.
X705;TP391.41
A
10.15913/j.cnki.kjycx.2020.14.026
2095-6835(2020)14-0071-02
〔編輯:王霞〕