呂澤正 祁翔
摘?要:為了更好地服務(wù)于城市垃圾分類,提高垃圾分類前端收集的工作效率,本文提出了一種基于GINet的智能分類垃圾網(wǎng)絡(luò)。首先在Kaggle數(shù)據(jù)集和華為垃圾分類公開數(shù)據(jù)集的基礎(chǔ)上進(jìn)行了人工標(biāo)注,并建立了垃圾分類的訓(xùn)練數(shù)據(jù)集。其次,為了提高模型的泛化能力,擴(kuò)充訓(xùn)練樣本,設(shè)計(jì)了一種具有針對(duì)性的多背景圖像增強(qiáng)方法。最后,為了解決垃圾分類數(shù)據(jù)集中某些同類垃圾之間的尺寸、顏色差異巨大,以VGG-16為主干特征提取網(wǎng)絡(luò),構(gòu)建了一個(gè)融合多特征提取與注意力機(jī)制的垃圾識(shí)別網(wǎng)絡(luò)(Garbage Identification Net,GINet)。仿真實(shí)驗(yàn)表明,該算法在復(fù)雜環(huán)境下?lián)碛辛己玫聂敯粜院头€(wěn)定性,檢測(cè)準(zhǔn)確率可達(dá)到945%,很好地滿足了工業(yè)場(chǎng)景下垃圾檢測(cè)的準(zhǔn)確性。
關(guān)鍵詞: 垃圾分類;深度學(xué)習(xí);GINet
文章編號(hào): 2095-2163(2021)01-0152-05 中圖分類號(hào):TP391 文獻(xiàn)標(biāo)志碼:A
【Abstract】In order to better serve the classification of urban garbage and improve the efficiency of front-end collection of garbage classification, this paper proposes an intelligent garbage classification network based on GINet. Firstly, manual annotation is carried out on the basis of Kaggle and Huawei's public garbage classification data set, and a training data set for garbage classification is established. Second, in order to improve the generalization ability of the model and expand the training samples, a targeted multi-background image enhancement method is designed. Finally, in order to solve the huge difference in size and color between some similar garbage in the garbage classification data set, VGG-16 is used as the main feature extraction network, and a garbage identification network that combines multi-feature extraction and attention mechanisms is constructed named Garbage Identification Net (GINet). The simulation experiment shows that the algorithm has good robustness and stability in complex environments, the detection time is only 20 ms, and the accuracy can reach 94.5%, which satisfies the high efficiency detection of garbage targets in industrial scenarios.
【Key words】garbage classification; deep learning; GINet
0 引?言
近年來,中國(guó)國(guó)內(nèi)城市垃圾產(chǎn)生量每年都在不斷增長(zhǎng),因此,垃圾的科學(xué)分類與處理就顯得尤為重要。一般情況下,垃圾處理主要是通過焚燒與填埋方式,但是這種做法卻會(huì)導(dǎo)致土壤、空氣和水資源受到嚴(yán)重污染,存在很大的弊端。據(jù)統(tǒng)計(jì)可知,城市生活垃圾主要分為干垃圾、濕垃圾、可回收垃圾和有毒有害垃圾[1]。就目前來說,國(guó)內(nèi)關(guān)于垃圾回收大多采用了人工流水線處理,但在處理過程中則暴露出效率低、成本高且對(duì)工人身體健康影響較大的問題與不足。隨著工業(yè)機(jī)器人技術(shù)的快速發(fā)展,機(jī)器人代替人工作業(yè)已在多個(gè)領(lǐng)域開始落地實(shí)施,因此基于機(jī)器人的垃圾分類回收作業(yè)已經(jīng)成為該行業(yè)的未來發(fā)展趨勢(shì)。
當(dāng)前,垃圾分類的檢測(cè)研究相對(duì)較少,許多高效實(shí)用的檢測(cè)方法也仍處于研發(fā)階段,并且普遍存在著檢測(cè)速度慢、精準(zhǔn)率低、適應(yīng)性差等諸多問題。Diya等人[2]研發(fā)了一種垃圾分類系統(tǒng)。系統(tǒng)中包含了感應(yīng)功能、電壓調(diào)控、紅外傳感功能,與此同時(shí)卻又發(fā)現(xiàn)該系統(tǒng)的垃圾檢測(cè)量較小且抗干擾性極差。吳健等人[3]提出一種基于顏色分割的垃圾識(shí)別系統(tǒng)。但是,由于垃圾的背景、尺寸、質(zhì)量皆不相同, 依賴人工提取相應(yīng)數(shù)據(jù)不同的特征的傳統(tǒng)算法, 魯棒性較差, 處理方式十分復(fù)雜, 所需時(shí)間很長(zhǎng),因而無法滿足實(shí)時(shí)性。
近年來,隨著深度學(xué)習(xí)的飛速發(fā)展,基于卷積神經(jīng)網(wǎng)絡(luò)的垃圾分類方法顯示出了鮮明的優(yōu)越性[4-6]。其中,Abeywickrama等人[4]將垃圾分類視為圖像分類,通過支持向量機(jī)和卷積神經(jīng)網(wǎng)絡(luò)對(duì)6類垃圾進(jìn)行了識(shí)別分類,并取得了識(shí)別準(zhǔn)確率為83%的識(shí)別結(jié)果。Mittal等人[5]制作了由2 561張垃圾圖片構(gòu)成的數(shù)據(jù)集,并設(shè)計(jì)了準(zhǔn)確率高達(dá)87.69% 的GarbNet模型。Seredkin等人[6]通過融合Faster- RCNN[7]網(wǎng)絡(luò)進(jìn)行垃圾分類,其準(zhǔn)確度較高,較為有效地實(shí)現(xiàn)了垃圾的識(shí)別,但由于某些同類垃圾之間的尺寸、顏色差異巨大,導(dǎo)致垃圾識(shí)別的效果卻仍未臻至理想。
綜上所述,本文設(shè)計(jì)研發(fā)了一種基于多尺度特征提取與注意力機(jī)制融合的垃圾識(shí)別算法(Garbage Identification Net,GINet)。在網(wǎng)絡(luò)構(gòu)架中加入了多背景圖像增強(qiáng)方法,豐富了垃圾識(shí)別種類,增強(qiáng)了模型泛化能力;為了提高模型在垃圾分類任務(wù)上的準(zhǔn)確性,算法引入了注意力機(jī)制與多特征融合模塊。
1 算法設(shè)計(jì)
1.1 多背景圖像增強(qiáng)
圖像增強(qiáng)技術(shù)是提高模型泛化能力的重要途徑,主要可分為空域法和頻域法。其中,空域法是直接進(jìn)行圖像處理;頻域法是在變換域內(nèi)修正圖像系數(shù),得到增強(qiáng)的結(jié)果。合理運(yùn)用圖像增強(qiáng)技術(shù),既可以提升視覺效果,增強(qiáng)清晰度,也可以針對(duì)給定圖像的技術(shù)需求,在突出感興趣特征的同時(shí),抑制不感興趣特征。
本次研究提出了一種有針對(duì)性的多背景圖像增強(qiáng)方法。該方法主要是在訓(xùn)練的各個(gè)周期過程中,每4張圖片就保存一次最大激活特征圖,再上采樣至原圖大小,繼而進(jìn)行選擇性裁剪,并加以隨機(jī)組合,將組合后的圖像另行輸入至CNN中重新進(jìn)行訓(xùn)練。研究得到的算法偽代碼見如下。
for 每次迭代 do
輸入,目標(biāo)值=get_minibatch(數(shù)據(jù)集)
if 模式 == 訓(xùn)練 then
新輸入值,新目標(biāo)值=shuffle.miniback(輸入值,目標(biāo)值)
lambda= Unif(0,1)
r_x = Unif(0,W)
r_y = Unif(0,H)
r_w = Sqrt(i - lambda)
r_h = Sqrt(i - lambda)
x1 = Round(Clip(r_x - r_w/2,min=0))
x2 = Round(Clip(r_x + r_w/2,max=W))
y1 = Round(Clip(r_y - r_h/2,min=0))
y2 = Round(Clip(r_y + r_h/2,max=H))
輸入值[ :, :,x1 : x2,y1: y2 ] = 新輸入值[ :, :,x1 : x2,y1: y2 ]
lambda = 1 - (x2 - x1) * (y2 - y1)/(W * H)
新目標(biāo)值?= lambda *目標(biāo)值 + (1 - lambda) * 新目標(biāo)值
end if
輸出值?= model_forward(輸入值)
loss值 = compute_loss(輸出值,目標(biāo)值)
end for
算法通過將隨機(jī)的4張樣本圖片按比例混合,產(chǎn)生更加豐富的背景,從而提高模型局部視圖識(shí)別能力。與此同時(shí),在裁剪區(qū)域中添加其他樣本的信息,能夠進(jìn)一步增強(qiáng)模型定位能力,使其準(zhǔn)確性和魯棒性都變得更好。多背景圖像的增強(qiáng)效果如圖1所示。
1.2 模型結(jié)構(gòu)
當(dāng)前有著不錯(cuò)性能表現(xiàn)的目標(biāo)檢測(cè)框架都廣泛使用了特征金字塔,從而緩解對(duì)象實(shí)例由于不同比例大小變化而帶來的差異性問題。因此,本項(xiàng)目中提出了多層次特征金字塔網(wǎng)絡(luò)模塊來構(gòu)建更有效的特征金字塔,用于檢測(cè)不同尺度的對(duì)象。首先,將原始圖像輸入VGG-16,使用前13層卷積提取基本特征,然后,將由淺到深的基本特征分別送入3組交替連接的TUM模塊進(jìn)行特征融合,并利用每個(gè)TUM模塊的解碼器層作為檢測(cè)對(duì)象的特征。隨后使用SFAM模塊將TUM模塊提取的有效特征聚合起來。最后,根據(jù)學(xué)習(xí)的特征生成密集的邊界框和類別分?jǐn)?shù),并運(yùn)用非極大值抑制算法(NMS)生成最終預(yù)測(cè)結(jié)果。整體框架如圖2所示。
1.3 多特征提取TUM模塊
垃圾分類數(shù)據(jù)集中某些同類垃圾之間的尺寸、顏色差異巨大, 這會(huì)導(dǎo)致模型的識(shí)別性能變差。針對(duì)這一問題, 常用的方法是通過多個(gè)池化操作,擴(kuò)大特征提取層的感受野,提高識(shí)別性能,但這也會(huì)導(dǎo)致模型的訓(xùn)練難以收斂。
因此,本文構(gòu)建了一個(gè)多尺度的特征融合模塊(TUM模塊)。模塊中采用了簡(jiǎn)化的U形結(jié)構(gòu),如圖3所示。其中,編碼器是一系列3×3,步長(zhǎng)為2的卷積層,并且解碼器將這些層的輸出作為其參考特征,解碼器分支的上采樣層后添加1×1卷積層和按元素求和的操作,以增強(qiáng)學(xué)習(xí)能力并保持特征的平滑性。每個(gè)TUM的解碼器中的輸出都將會(huì)產(chǎn)生當(dāng)前級(jí)別的多尺度特征。TUM的輸出分為3層,具體就是:前TUM主要提供淺層特征,中間TUM提供中等特征,后TUM提供深層特征。
1.4 注意力機(jī)制SFAM模塊
由于相同類別垃圾的特征表征差異性可能較大, 不利于其正確識(shí)別, 這就要求準(zhǔn)確地關(guān)注圖像中的顯著區(qū)域。由此, 本文構(gòu)建了注意力機(jī)制模塊(SFAM), 使網(wǎng)絡(luò)模型重點(diǎn)關(guān)注有利于分類的特征區(qū)域, 以實(shí)現(xiàn)更好的特征提取功能。
SFAM旨在將由TUM生成的多級(jí)多尺度特征聚合成多級(jí)特征金字塔,如圖4所示。SFAM的第一階段是沿著信道維度將等效尺度的特征連接在一起。聚合金字塔中的每個(gè)比例都包含來自多級(jí)深度的特征。同時(shí),引入通道注意力機(jī)制促使特征集中在最有益的通道,如圖5所示。研究中,將不同比例的特征進(jìn)行上采樣,然后聚合在一起。在SE模塊[8]之后,則使用全局平均池化壓縮通道來生成統(tǒng)計(jì)值z(mì)∈RC。為了完全獲取通道的依賴性,算法通過2個(gè)全連接層學(xué)習(xí)注意力機(jī)制,其數(shù)學(xué)原理公式可寫為:
其中,σ表示ReLU激活函數(shù);δ表示sigmoid函數(shù);W1∈RC'×C,W2∈RC×C',而C'表示壓縮后的通道數(shù)。
最終,模型通過VGG-16融合TUM特征提取模塊和SFAM聚合模塊,得出了豐富的特征信息,然后根據(jù)學(xué)習(xí)到的特征生成密集的邊界框和類別分?jǐn)?shù),最后對(duì)邊界框采用非極大值抑制算法(NMS)產(chǎn)生最終結(jié)果。
2 實(shí)驗(yàn)結(jié)果與分析
2.1 實(shí)驗(yàn)平臺(tái)
本實(shí)驗(yàn)的操作系統(tǒng)為Ubuntu18.04,主要是利用 Python 語言和Tensorflow深度學(xué)習(xí)框架。本次實(shí)驗(yàn)中的硬件環(huán)境為Intel(R)Core(TM)i-9750H CPU@2.60GHz 2.59GHz,內(nèi)存大小為32GB,顯卡為NVIDIA GeForce RTX 2080Ti,顯存為8G。
2.2 數(shù)據(jù)采集
數(shù)據(jù)集是對(duì)象描述的集合,能夠精確地反映出對(duì)象的特征性質(zhì)與信息表現(xiàn)能力。本文中的垃圾分類數(shù)據(jù)主要來源于Kaggle和華為垃圾分類公開數(shù)據(jù)集,數(shù)據(jù)集中共包含20種物體、共91 024張圖片,結(jié)合垃圾分類的要求,將所有圖片分為4大類,即干垃圾、濕垃圾、可回收垃圾和有毒有害垃圾。具體分類及每種垃圾數(shù)量見表1。其中,訓(xùn)練集樣本占75%,有68 268張;驗(yàn)證集樣本占15%,有13 653張;測(cè)試集樣本占10%,有9 103張。
此外,為了減少數(shù)據(jù)集中數(shù)據(jù)噪聲與異常值帶來的影響,系統(tǒng)對(duì)樣本圖片進(jìn)行了數(shù)據(jù)清洗。處理流程如圖5所示。由圖5可知,處理中的2種主要情況分別是數(shù)據(jù)噪聲清洗與數(shù)據(jù)異常值清洗。對(duì)此可展開剖析分述如下。
(1)數(shù)據(jù)噪聲清洗:采用噪聲刪除原則,對(duì)噪聲數(shù)據(jù)進(jìn)行權(quán)值排序,刪除其中權(quán)重較小的數(shù)據(jù),并采用同概率分布的均值數(shù)據(jù)進(jìn)行自動(dòng)填充。
(2)數(shù)據(jù)異常值清洗:提取所有異常值,對(duì)其進(jìn)行K-means聚類,此后進(jìn)行向量化建模,去除非隨機(jī)因素產(chǎn)生的異常值,并重新對(duì)數(shù)據(jù)集填充同概率分布的均值數(shù)據(jù)。
2.3 實(shí)驗(yàn)設(shè)置
本實(shí)驗(yàn)的訓(xùn)練設(shè)置主要為:選用SGD優(yōu)化算法訓(xùn)練模型, 其動(dòng)量系數(shù)設(shè)置為0.98,一共設(shè)置100個(gè)迭代周期,批次batch size設(shè)置為16,最大訓(xùn)練次數(shù)為205,初始學(xué)習(xí)率0.001,在第600次和第900次時(shí)降低學(xué)習(xí)率,同時(shí)在訓(xùn)練過程中保存效果最好的loss值和最后一次的模型參數(shù)。
2.4 結(jié)果分析
衡量模型訓(xùn)練效果通常采用2個(gè)指標(biāo),即:精確度(accuracy)和損失值(loss)。其中,精確度是算法做出正確分類的樣本數(shù)占樣本總數(shù)的比例,損失值是實(shí)際預(yù)測(cè)輸出與樣本真實(shí)輸出間的差異。
圖6給出了本文研發(fā)算法實(shí)際的GINet和當(dāng)前優(yōu)秀的幾種分類檢測(cè)網(wǎng)絡(luò)在Kaggle數(shù)據(jù)集與華為垃圾分類公開數(shù)據(jù)集上進(jìn)行205次迭代訓(xùn)練后的精確度(accuracy)結(jié)果對(duì)比曲線,包括YOLOv3、RetinaNet、M2-det等。圖7給出了本文算法實(shí)際的GINet和當(dāng)前優(yōu)秀的幾種分類檢測(cè)網(wǎng)絡(luò)在Kaggle數(shù)據(jù)集和華為垃圾分類公開數(shù)據(jù)集上進(jìn)行205次迭代訓(xùn)練后的損失值(loss)結(jié)果對(duì)比曲線。
從圖6、圖7中可以得出,GINet的準(zhǔn)確率比YOLOv3、RetinaNet、M2-det高,損失值則要低于其他三者。當(dāng)?shù)?0 000次左右時(shí),GINet的精度已然達(dá)到了94.5%,由此可見TUM特征融合模塊和SFAM注意力機(jī)制模塊均能夠顯著提高模型的準(zhǔn)確率。通過精確度和損失值的量化對(duì)比,即可得出GINet性能優(yōu)異且分類準(zhǔn)確度很高的結(jié)論。
在與主流方法進(jìn)行了對(duì)比驗(yàn)證后,圖8則展示了GINet在測(cè)試集上的部分可視化結(jié)果。由此對(duì)照分析后發(fā)現(xiàn),GINet在各個(gè)類別的樣例檢測(cè)中,都取得了很好的結(jié)果。
3 結(jié)束語
本文針對(duì)垃圾圖像分類問題, 構(gòu)建了一種基于GINet的智能分類垃圾網(wǎng)絡(luò)。 該網(wǎng)絡(luò)有針對(duì)性地設(shè)計(jì)了一種多背景圖像增強(qiáng)方法,提高了模型的泛化能力,擴(kuò)充了訓(xùn)練樣本量,提升了算法的魯棒性。同時(shí),添加的TUM多特征融合和SFAM注意力機(jī)制模塊,能夠有效地提取圖像特征、減少類別差異性的影響,使模型在數(shù)據(jù)測(cè)試集上取得了高達(dá)94.5% 的準(zhǔn)確率, 相較于現(xiàn)有的分類算法有了顯著提升,同時(shí)也滿足了應(yīng)用需求,并且有著廣闊的應(yīng)用前景。未來的研究將進(jìn)一步增加垃圾分類的種類,同時(shí)也將致力提高垃圾分類的準(zhǔn)確率。
參考文獻(xiàn)
[1]廖如珺,黃建忠,楊丹蓉.中國(guó)城市生活垃圾分類處理現(xiàn)狀與對(duì)策[J].職業(yè)衛(wèi)生與病傷,2012,27(1):30-34.
[2]DIYA S Z, PROMA R A, lSLAM M N, et al. Developing an intelligent waste sorting system with robotic arm:A step towards green environment [C]// International Conference on Innovation in Engineering and Technology (ICIET 2018). Dhaka,Bangladesh:IEEE, 2018: 1-6.
[3]吳健,陳豪,方武. 基于計(jì)算機(jī)視覺的廢物垃圾分析與識(shí)別研究[J]. 信息技術(shù)與信息化, 2016 (10): 81-83.
[4]ABEYWICKRAMA T, CHEEMA M A, TANIAR D. K-nearest neighbours on road network: A journey in experimentation and in-memory implementation[J]. Proceedings of the VLDB Endowment, 2016, 9(6): 492-503.
[5]MITTAL G, YANGIK K B, GARG M, et al. SpotGarbage: Smartphone app to detect garbage using deep learning[C]// Proceedings of the 2016 ACM International Joint Conference on Pervasive and Ubiquitous Computing. Heidelberg, Germany:ACM, 2016: 940-945.
[6]SEREDKIN A V, TOKAREV M P, PLOHIH I A, et al. Development of a method detection and classification of waste objects on a conveyor for a robotic sorting system[J]. Journal of Physics Conference Series, 2019, 1359:012127.
[7]GIRSHICK R. Fast R-CNN[C]// Proceedings of the 2015 IEEE International Conference on Computer Vision.Washington DC: IEEE, 2015:1440-1448.
[8]HU J, SHEN L, SUN G. Squeeze-and-excitation networks[J]. arXiv preprint arXiv:1709.01507,2017.