馬 雯,于 炯,,王 瀟,陳嘉穎
(1.新疆大學(xué) 軟件學(xué)院,烏魯木齊 830008;2.新疆大學(xué) 信息科學(xué)與工程學(xué)院,烏魯木齊 830046)
隨著我國經(jīng)濟(jì)的高速發(fā)展,城市規(guī)模逐漸擴(kuò)大,城鎮(zhèn)人口的日益增多,使得城市生活垃圾的產(chǎn)量迅猛增長[1]。針對目前的城市垃圾,加大治理力度,對垃圾進(jìn)行無害化、資源化處理是當(dāng)前急需解決的問題。垃圾的回收利用在現(xiàn)代社會中占有重要地位,對垃圾進(jìn)行有效分類是處理垃圾回收問題的前提[2]。目前,面對人工分揀垃圾環(huán)境差、回收任務(wù)繁重且分揀效率低等問題,研究人員提出垃圾識別與分揀實(shí)現(xiàn)智能化和自動(dòng)化。利用深度學(xué)習(xí)技術(shù)不但可以降低人工成本,節(jié)約人力資源,進(jìn)一步提高有限資源的重復(fù)利用率,有助于加速實(shí)現(xiàn)生態(tài)文明建設(shè)的目標(biāo)[3]。
本文提出一種基于改進(jìn)Faster R-CNN 的垃圾檢測與分類方法。利用改進(jìn)的Faster R-CNN 算法處理垃圾分類問題,克服垃圾分類的人工預(yù)處理難題。使用經(jīng)過預(yù)訓(xùn)練的Faster R-CNN 算法對物體進(jìn)行檢測,通過網(wǎng)絡(luò)在圖像的單個(gè)前向傳輸中提取全局和局部尺度的卷積特征。研究VGG16[4]網(wǎng)絡(luò)架構(gòu)與ResNet50[5]架構(gòu)對于垃圾分類算法性能的影響,從而選擇效果更好的網(wǎng)絡(luò)完成垃圾分類。
物體檢測是一項(xiàng)計(jì)算機(jī)視覺任務(wù),吸引了許多研究者的關(guān)注。2012 年提出的Alexnet 是一種卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),該架構(gòu)曾獲得ImageNet 挑戰(zhàn)賽的冠軍[6]。該競賽中使用的架構(gòu)具有結(jié)構(gòu)簡單與性能極高的特征。目前,深度學(xué)習(xí)已成為最受關(guān)注的研究主題,并且涌現(xiàn)了出色的神經(jīng)網(wǎng)絡(luò)算法[7],例如VGG、Xception、ResNet 等。GIRSHICK 提出的R-CNN[8]算法將卷積神經(jīng)網(wǎng)絡(luò)用于目標(biāo)檢測,它通過使用深度卷積網(wǎng)絡(luò)完成了圖像的特征提取。HE等[9]提出一種SPP-NET 方法,去掉了原始圖像上的crop/warp操作,并將其替換成在卷積特征上的空間金字塔池化層(Spatial Syramid Sooling,SPP)。OverFeat R-CNN[10]為使用CNN 的所有提案制定了ConvNet[11]功能,并且通過SVM 對每個(gè)區(qū)域進(jìn)行分類[12]。R-CNN在空間和時(shí)間上的訓(xùn)練成本較高,對于非常深的網(wǎng)絡(luò),需要較大的硬盤空間來存儲信息,在GPU 上使用VGG16 檢測一個(gè)圖像需要47 s。
為克服R-CNN 的耗時(shí)問題,F(xiàn)ast R-CNN[13]算法提出在對象提案中特征共享,感興趣區(qū)域(RoI)池化層旨在獲得同樣長度的特征向量作為結(jié)果,每個(gè)圖像僅提取一次特征。此外,由于SVM 過程被刪除,所有功能都臨時(shí)存儲在內(nèi)存中,沒有占用額外的磁盤空間。在相同的硬件平臺上,F(xiàn)ast R-CNN 僅需0.3 s 即可完成圖像檢測。但是,R-CNN 和Fast R-CNN都存在相似的缺陷,即它們在訓(xùn)練階段之外還需提取建議并依賴于外部區(qū)域建議。因此,它們不是完全的端到端物體檢測系統(tǒng)。為了解決這個(gè)問題,REN 等[14]提出一種區(qū)域提議網(wǎng)絡(luò)(RPN),該網(wǎng)絡(luò)可以直接連接到Fast R-CNN 網(wǎng)絡(luò)的最后一個(gè)卷積層,以得到對應(yīng)的檢測對象框和分?jǐn)?shù)信息,該網(wǎng)絡(luò)被稱作為Faster R-CNN。區(qū)域提議網(wǎng)絡(luò)是一個(gè)全卷積網(wǎng)絡(luò)(FCN),其主旨是生成更高質(zhì)量的區(qū)域提議。每個(gè)提議都有一個(gè)對應(yīng)的信心得分,同時(shí)它也可以預(yù)測每個(gè)坐標(biāo)位置的對象邊界及其分?jǐn)?shù)。為了生成圖像的區(qū)域提議,小網(wǎng)絡(luò)在頂部轉(zhuǎn)換層所輸出的卷積特征圖上滑動(dòng),通過使用不同尺度的錨,使得Faster R-CNN 的檢測效果針對變形圖像的表現(xiàn)比Fast R-CNN 的表現(xiàn)更加穩(wěn)健。因?yàn)樗cCNN 共享全圖卷積特征,所以可以大幅減少計(jì)算時(shí)間。使用VGG16 模型,檢測圖像中的所有區(qū)域提議僅需0.2 s。由此可見,F(xiàn)aster R-CNN 是從訓(xùn)練到檢測過程中真正的端到端網(wǎng)絡(luò)。
在通常情況下,F(xiàn)ast R-CNN 的VGG16 模型或Zeiler 和Fergus 模型(ZF)[15]預(yù)先訓(xùn)練都有特定的圖像數(shù)據(jù)集和相應(yīng)的注釋,例如Microsoft COCO 數(shù)據(jù)集[16]和Pascal VOC[17]。
由于關(guān)于垃圾分類研究未曾發(fā)現(xiàn)公開數(shù)據(jù)集,因此本文研究使用的數(shù)據(jù)由網(wǎng)絡(luò)采集和相機(jī)拍攝的方式獲得。網(wǎng)絡(luò)采集占總數(shù)據(jù)集的20%,其余80%均由索尼單反相機(jī)拍攝所得,保證了圖像質(zhì)量和清晰度。數(shù)據(jù)集中圖片總共5 000 張,其中包括卡紙、玻璃、紙、塑料、金屬等。圖片尺寸為1 891×1 263,格式為JPG 格式,為保證類別標(biāo)簽的可靠性[18],所有的垃圾類別都預(yù)先經(jīng)過了人工識別。
利用LabelImage軟件對所有的圖片進(jìn)行人工標(biāo)注,將數(shù)據(jù)集制作成Pascal_voc 數(shù)據(jù)格式,同時(shí)對樣本圖片重新進(jìn)行命名排序,根據(jù)產(chǎn)生的XML 格式文件編寫相應(yīng)的代碼使其生成訓(xùn)練集、驗(yàn)證集和測試集。
1)訓(xùn)練集
訓(xùn)練集是指在模型訓(xùn)練的過程中使用的數(shù)據(jù)圖像[19]。訓(xùn)練集起到對初始模型擬合與參數(shù)優(yōu)化的作用,本文采用了五折交叉驗(yàn)證的方法來測試該優(yōu)化算法的精確度。將5 000 張垃圾圖片作為模型的輸入,并平均分成6 個(gè)等份,然后輪流將其中5 份作為垃圾檢測訓(xùn)練數(shù)據(jù)集,剩余的1 份作為測試數(shù)據(jù)集用來對模型進(jìn)行測試(見圖1)。每次的模型訓(xùn)練與測試實(shí)驗(yàn)都會得出相應(yīng)的正確率,最終將5 次的正確率結(jié)果進(jìn)行平均值計(jì)算得出該目標(biāo)檢測算法精確度的估計(jì)。因此,實(shí)際使用的訓(xùn)練集占總數(shù)據(jù)集的4/5。
圖1 數(shù)據(jù)集劃分Fig.1 Division of datasets
2)驗(yàn)證集
驗(yàn)證集是指在每個(gè)Epoch 完成之后檢驗(yàn)?zāi)P偷臓顟B(tài)以及收斂情況[20],它并沒有參與梯度下降的過程而僅僅是調(diào)整迭代次數(shù)和學(xué)習(xí)率等超參數(shù),所以并不參與學(xué)習(xí)參數(shù)的確定。驗(yàn)證集根據(jù)5 組模型的表現(xiàn)決定哪一組的超參數(shù)擁有最好的性能并將其采納。與此同時(shí),驗(yàn)證集在訓(xùn)練的過程中還可以用來監(jiān)控模型是否發(fā)生過擬合從而判斷訓(xùn)練停止的時(shí)間。如圖1 所示,在訓(xùn)練數(shù)據(jù)集中隨機(jī)抽取1 份做驗(yàn)證集,剩余4 份做訓(xùn)練集,記錄精確度。依次循環(huán)直到每份都做過1 次驗(yàn)證集,交叉驗(yàn)證的過程就此結(jié)束。算得5 次精確度的均值后,留下精確度最高的模型,并以該模型的超參數(shù)定為最終模型的超參數(shù)。
3)測試集
測試集是指在完成訓(xùn)練得出最優(yōu)模型之后對模型進(jìn)行測試的數(shù)據(jù)集。本文測試集共有833 張圖片,通過測試確定該模型檢測與分類的精確度,進(jìn)一步驗(yàn)證其泛化能力,確保該模型在日后實(shí)際應(yīng)用時(shí)的正確性和有效性[21]。
本文探討了將對象檢測CNN 的特征用于垃圾分類任務(wù)的適用性。選擇Faster R-CNN 作為實(shí)驗(yàn)訓(xùn)練模型,并將其用作全局和局部尺度的特征提取。如圖2 所示,F(xiàn)aster R-CNN 算法利用卷積神經(jīng)網(wǎng)絡(luò)來提取輸入的垃圾圖像特征圖,通過共享卷積層將該特征圖分別送入Faster R-CNN 網(wǎng)絡(luò)和區(qū)域提議網(wǎng)絡(luò)中。一方面將特征圖輸入?yún)^(qū)域提議網(wǎng)絡(luò)使其經(jīng)過滑動(dòng)窗口來產(chǎn)生特征向量,并且將其連接到網(wǎng)絡(luò)后部的全連接層,然后再將其進(jìn)行分類和回歸生成區(qū)域建議;另一方面通過卷積神經(jīng)網(wǎng)絡(luò)提取特征圖,將區(qū)域建議和特征圖一并送入感興趣區(qū)域池化(ROI Pooling)使其固定成特定的尺寸,接下來通過所定義的2 個(gè)損失函數(shù)對其進(jìn)行分類和回歸,生成預(yù)測坐標(biāo)值從而得到目標(biāo)檢測框。
圖2 Faster R-CNN 算法框架Fig.2 Framework of Faster R-CNN algorithm
如圖3 所示,本文所提出的訓(xùn)練策略是首先利用ImageNet初始化模型使其獨(dú)立地利用垃圾數(shù)據(jù)集訓(xùn)練一個(gè)區(qū)域提議網(wǎng)絡(luò)(RPN)。其次運(yùn)用ImageNet模型初始化該模型,同時(shí)將區(qū)域提議的訓(xùn)練結(jié)果作為輸入用來訓(xùn)練Faster R-CNN網(wǎng)絡(luò),至此,設(shè)置RPN網(wǎng)絡(luò)和Faster R-CNN 網(wǎng)絡(luò)每一層的參數(shù)完全不共享。然后將其所得的網(wǎng)絡(luò)參數(shù)初始化成一個(gè)新的區(qū)域提議網(wǎng)絡(luò)(RPN2),設(shè)置Learning Rate 參數(shù)為0 來限制共享卷積層不再更新,只更新區(qū)域提議網(wǎng)絡(luò)中特有的網(wǎng)絡(luò)層,再次訓(xùn)練模型。此時(shí),設(shè)置2 個(gè)網(wǎng)絡(luò)共享所有公共卷積層并將其固定。最后將Faster R-CNN 特有的網(wǎng)絡(luò)加入進(jìn)來,從而形成獨(dú)立的統(tǒng)一網(wǎng)絡(luò)。
圖3 Faster R-CNN 訓(xùn)練策略Fig.3 Training strategy of Faster R-CNN
區(qū)域建議網(wǎng)絡(luò)作為該算法的核心部分是用一個(gè)全卷積網(wǎng)絡(luò)來實(shí)現(xiàn)的,其具體結(jié)構(gòu)如圖4 所示。在區(qū)域提議網(wǎng)絡(luò)結(jié)構(gòu)中,滑動(dòng)窗口對垃圾圖像特征圖進(jìn)行卷積操作產(chǎn)生n維特征向量,產(chǎn)生的特征向量分別輸入到回歸層和分類層?;瑒?dòng)窗口滑動(dòng)一次會預(yù)測出k個(gè)區(qū)域建議,其中回歸層需要預(yù)測出包圍框的寬、高和中心坐標(biāo),因此回歸層需要輸出4k個(gè)坐標(biāo),分別包括Proposal 的寬W、高H、中心點(diǎn)坐標(biāo)(X,Y)4 個(gè)參數(shù)。分類層則需要辨別建議框是前景還是背景的概率,總共預(yù)測2k得分,其中分類結(jié)果包括前景和背景[22]。
圖4 區(qū)域建議網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Structure of region proposal network
Faster R-CNN 的區(qū)域建議網(wǎng)絡(luò)RPN 是采用多任務(wù)進(jìn)行學(xué)習(xí),圖像中垃圾的位置定位任務(wù)和垃圾種類鑒定任務(wù)同時(shí)進(jìn)行。RPN 網(wǎng)絡(luò)在訓(xùn)練的過程中將會給每個(gè)標(biāo)簽分配一個(gè)二值標(biāo)簽,其中正值標(biāo)簽會分配給IoU 值最大的框以及與任意真實(shí)目標(biāo)區(qū)域框相比大于0.7 的IoU 候選框,負(fù)值標(biāo)簽將會分配給小于0.3 的IoU 候選框。其中垃圾圖像的損失函數(shù)定義如式(1)和式(2)所示:
其中:i表示垃圾圖片處理中的第i個(gè)檢測候選框的索引;Pi定義為第i個(gè)候選框會是預(yù)測目標(biāo)的概率,若i為候選目標(biāo)檢測框,則Pi*標(biāo)簽為1,否則標(biāo)簽為0;ti={tx,ty,tw,th}是一個(gè)坐標(biāo)向量,用來表示預(yù)測候選框的坐標(biāo);ti*是真實(shí)目標(biāo)框的坐標(biāo)向量,其向量定義如式(3)和式(4)所示:
其中:(x,y)為預(yù)測框的中心點(diǎn)坐標(biāo);(xa,ya)為候選檢測框的中心點(diǎn)坐標(biāo);(x*,y*)為真實(shí)目標(biāo)框的中心點(diǎn)坐標(biāo);w和h分別為預(yù)測框的寬和高。該算法致力于找到一種函數(shù)映射關(guān)系,將原始預(yù)測框映射到真實(shí)檢測框,使得其檢測效果更加接近真實(shí)框的回歸框。
垃圾圖像分類的損失函數(shù)定義如式(5)所示:
垃圾圖像回歸的損失函數(shù)定義如式(6)所示:
其中:R是式(7)所定義的具有魯棒性的損失函數(shù)。
本文將區(qū)域提議網(wǎng)絡(luò)分為2 個(gè)分支,圖5 表明上面的網(wǎng)絡(luò)分支通過錨獲得前景和背景(實(shí)際應(yīng)用過程中默認(rèn)目標(biāo)為前景)。下面的網(wǎng)絡(luò)分支用于計(jì)算對于錨邊界框回歸的偏移量,以獲得精確的目標(biāo)候選區(qū)。最后的Proposal 層綜合前景錨點(diǎn)和邊界框回歸偏移量來最終確定目標(biāo)的候選區(qū)域,同時(shí)剔除尺寸較小和超出邊界的目標(biāo)區(qū)域[23]。至此,即可得到區(qū)域提議網(wǎng)絡(luò)對于垃圾數(shù)據(jù)集中的目標(biāo)定位。
圖5 區(qū)域提議網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Structure of regional proposal network
網(wǎng)絡(luò)模型設(shè)計(jì)包括以下2 個(gè)部分:
1)網(wǎng)絡(luò)結(jié)構(gòu)
本文基于現(xiàn)有Faster R-CNN 目標(biāo)檢測模型進(jìn)行算法改進(jìn),針對目標(biāo)垃圾體積較小、圖像分辨率較低等特點(diǎn),用更深的網(wǎng)絡(luò)且更小的運(yùn)算量ResNet50 模型代替該算法原始的VGG16 網(wǎng)絡(luò)來提取更豐富的特征。本文所提出的VGG16 模型在優(yōu)化之后使用了3 個(gè)3×3 卷積核來代替原始的7×7 卷積核,同時(shí)使用2 個(gè)3×3 卷積核來代替5×5 卷積核,其原理基于多個(gè)非線性層增加網(wǎng)絡(luò)深度,保證學(xué)習(xí)更復(fù)雜的模型,而且代價(jià)較小,參數(shù)較少,并且在一定程度上提升了垃圾檢測與分類的實(shí)驗(yàn)效果。如圖6 所示,VGG16 有16 個(gè)隱藏層,其中包括13 個(gè)卷積層和3 個(gè)全連接層。
圖6 VGG16 網(wǎng)絡(luò)架構(gòu)Fig.6 Architecture of VGG16 network
本文提出運(yùn)用殘差模塊來訓(xùn)練更深層的網(wǎng)絡(luò)架構(gòu),主要使用3×3 卷積,其內(nèi)部的殘差塊使用跳躍連接通道,緩解了在VGG16 網(wǎng)絡(luò)中增加深度帶來的梯度消失問題。如圖7 所示為殘差網(wǎng)絡(luò)模型,其中:X為輸入;F(x)是殘差映射;ReLu 為該算法的激活函數(shù)。為減少訓(xùn)練誤差,本文提出使用ResNet 的深度為50 層,相較于VGG16 有著層數(shù)更深、參數(shù)更少、檢測精度更高的特征。
圖7 ResNet 殘差塊結(jié)構(gòu)Fig.7 Structure of ResNet residual block
2)Soft-NMS 算法
非極大值抑制算法是對象檢測中的基本問題,該原理是基于物體檢測分?jǐn)?shù)產(chǎn)生檢測框,其中分?jǐn)?shù)最高的檢測框會被選中,與被選中檢測框有明顯重疊的檢測框?qū)灰种?,該過程會被不斷遞歸應(yīng)用于其余的目標(biāo)檢測框。根據(jù)該算法的設(shè)計(jì),如果該檢測目標(biāo)處于算法預(yù)設(shè)的重疊閾值之內(nèi),可能會導(dǎo)致最終結(jié)果檢測不到該物體。因此,BODLA 等[24]提出了Soft-NMS 算法,該連續(xù)函數(shù)算法對非最大檢測框的檢測分?jǐn)?shù)進(jìn)行衰減而非像傳統(tǒng)NMS 算法一樣將其徹底移除。同時(shí),Soft-NMS 也是一種貪心算法,因此并不能保證找到全局最優(yōu)的檢測框。但是,該算法是一種更加通用的非最大值抑制算法,傳統(tǒng)的非極大值抑制算法可以看為是它的一個(gè)采用不連續(xù)二值權(quán)重函數(shù)的特例[25],如式(8)所示:
其中:M為當(dāng)前預(yù)測得分最高的候選框;bi為等待處理的候選框。傳統(tǒng)的NMS 算法采用將IoU 大于閾值的候選框得分全部置為0 的方法。經(jīng)過改進(jìn)的Soft-NMS 算法如式(9)所示,將M和bi的IoU 值超過Nt閾值部分的檢測分?jǐn)?shù)進(jìn)行衰減而不是徹底移除。
本文優(yōu)化調(diào)整了Soft-NMS 的參數(shù),為對參數(shù)進(jìn)行敏感分析,通過在數(shù)據(jù)集上不斷地改變參數(shù)值來觀察平均準(zhǔn)確率的變化。經(jīng)過研究,Soft-NMS 在0.4~0.7 的參數(shù)變化范圍內(nèi)具有更優(yōu)的性能,超出該范圍內(nèi),平均準(zhǔn)確率(AP)明顯降低。在0.4~0.7 的參數(shù)變化范圍內(nèi),與傳統(tǒng)的非極大值抑制算法相比,使用Soft-NMS 得到的平均準(zhǔn)確率提升了4.26 個(gè)百分點(diǎn)。與此同時(shí),Soft-NMS 有著更加卓越的定位效果。經(jīng)研究對比發(fā)現(xiàn),當(dāng)被檢測垃圾有著高度重疊的情況下,Soft-NMS 所選擇的垃圾分類預(yù)測框要更加準(zhǔn)確。
綜上所述,本文所提出的方法是將原始網(wǎng)絡(luò)模型的層數(shù)增多以達(dá)到精確分類、減少信息丟失、避免梯度爆炸的目的。與此同時(shí),將非極大抑制算法進(jìn)行優(yōu)化來更精確地挑選預(yù)測框。如圖8 所示,改進(jìn)后的Faster R-CNN 算法有著更優(yōu)化的性能。本文使用的深度學(xué)習(xí)框架為TensorFlow,采用VGG16、ResNet50 2 種網(wǎng)絡(luò)結(jié)構(gòu)以及非極大值抑制算法與Soft-NMS 聯(lián)合訓(xùn)練方式,在數(shù)據(jù)集上進(jìn)行參數(shù)調(diào)整,經(jīng)對比選擇最優(yōu)結(jié)果組成改進(jìn)后的算法模型。
圖8 Faster R-CNN 模型和改進(jìn)的Faster R-CNN 模型Fig.8 Faster R-CNN model and improved Faster R-CNN model
本節(jié)選擇改進(jìn)后的Faster R-CNN 模型預(yù)先訓(xùn)練數(shù)據(jù)集。針對本文提出的模型與改進(jìn)算法,分別進(jìn)行了對比實(shí)驗(yàn)來檢測性能。為實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)端到端的訓(xùn)練,該模型訓(xùn)練采用Faster R-CNN 和區(qū)域提議網(wǎng)絡(luò)近似聯(lián)合訓(xùn)練方式[26]。
在多類別目標(biāo)檢測及其分類的評價(jià)指標(biāo)中,平均精度均值(mean Average Precision,mAP)作為目前最重要的目標(biāo)檢測中檢測精度的評價(jià)指標(biāo),是個(gè)體平均準(zhǔn)確率的均值[27]。因此,本文采用mAP 作為垃圾檢測與分類的評價(jià)指標(biāo)。其中每個(gè)種類的垃圾記錄了各自的平均精確度,記為AP。如表1 為各個(gè)種類的垃圾在改進(jìn)的Faster R-CNN 算法中的精確度比較。
表1 不同垃圾類別的精確度比較Table 1 Precision comparison of different garbage types %
本文對比實(shí)驗(yàn)結(jié)果如下:
1)本文實(shí)驗(yàn)對比了VGG16 和ResNet50 基于Faster R-CNN 在垃圾分類處理上的不同表現(xiàn)。由表2 可見,使用ResNet50 作為垃圾特征提取網(wǎng)絡(luò)來代替原始的VGG16 基礎(chǔ)特征網(wǎng)絡(luò),綜合平均識別率提高了2.96 個(gè)百分點(diǎn),由原來的73.51% 提高至76.47%,由此可以看出,ResNet50 的表現(xiàn)要比VGG16 更好,時(shí)間消耗也較少,精度有所提高。
表2 不同模型的mAP 和時(shí)間比較Table 2 mAP and time comparison between different models
2)本文實(shí)驗(yàn)對傳統(tǒng)的非極大值抑制算法(NMS)進(jìn)行改進(jìn),對比了Soft-NMS 與NMS 在不同網(wǎng)絡(luò)框架下的表現(xiàn),其綜合識別率相比傳統(tǒng)Faster R-CNN算法提高了5.93 個(gè)百分點(diǎn),達(dá)到79.44%。相較于ResNet50 框架下的Faster R-CNN 算法提高了2.97 個(gè)百分點(diǎn)。由此可見,利用Soft-NMS 算法,相較于傳統(tǒng)的非極大值抑制算法,在垃圾圖像檢測與分類中精確度有顯著提升。
3)將本文算法與其他目標(biāo)檢測算法比較可見,YOLOv3 算法在時(shí)間上的消耗有著很大的優(yōu)勢,每張圖片的檢測時(shí)間降低到2.391 s,但是對于該垃圾數(shù)據(jù)集的精確度只能達(dá)到67.63%,相比原始的Faster R-CNN 算法仍低了5.88 個(gè)百分點(diǎn),而SSD 算法綜合識別率達(dá)到了74.02%的mAP 值,時(shí)間的消耗相較于YOLOv3 有所提升,達(dá)到了3.112 s。
4)由以上數(shù)據(jù)可以看出,采用ResNet50 的VGG16 網(wǎng)絡(luò)與Soft-NMS 本文算法模型,綜合識別率達(dá)到了81.77%,相較于YOLOv3 算法提高了14.14%,相較于傳統(tǒng)Faster R-CNN 提高了8.26%。這驗(yàn)證了調(diào)整過后的ResNet 網(wǎng)絡(luò)架構(gòu)與參數(shù)優(yōu)化下的Soft-NMS 算法相結(jié)合有著更加優(yōu)化的檢測性能。圖9 所示為改進(jìn)后的Faster R-CNN 算法在不同種類垃圾中的識別結(jié)果。
圖9 改進(jìn)Faster R-CNN 算法的識別結(jié)果Fig.9 Recognition results of improved Faster R-CNN algorithm
本文針對人工分揀垃圾環(huán)境差、任務(wù)繁重且分揀效率較低等問題,基于現(xiàn)有深度卷積神經(jīng)網(wǎng)絡(luò)的模型,提出運(yùn)用卷積神經(jīng)網(wǎng)絡(luò)處理垃圾分類與檢測方法,解決對垃圾人工預(yù)處理的難題。研究VGG16 網(wǎng)絡(luò)架構(gòu)與ResNet 網(wǎng)絡(luò)架構(gòu)對于垃圾分類算法性能的影響,選擇經(jīng)過優(yōu)化的網(wǎng)絡(luò)架構(gòu)完成垃圾檢測與分類任務(wù)。實(shí)驗(yàn)結(jié)果表明,本文算法模型相比傳統(tǒng)的Faster R-CNN算法、SSD 算法、YOLOv3 算法,平均精確度分別提高了8.26、7.75、14.14 個(gè)百分點(diǎn),綜合識別率達(dá)到了81.77%。采用級聯(lián)深度卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行卷積共享策略簡化神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,檢測網(wǎng)絡(luò)的測試可節(jié)約算法所需的時(shí)間[28]。同時(shí),由于卷積層的共享,實(shí)現(xiàn)了卷積神經(jīng)網(wǎng)絡(luò)完全端到端的優(yōu)化,對于垃圾目標(biāo)檢測的檢測框采用最大值衰減,經(jīng)敏感分析后得到最優(yōu)參數(shù),從而提高整體卷積神經(jīng)網(wǎng)絡(luò)性能。下一步將在網(wǎng)絡(luò)和訓(xùn)練模型改進(jìn)的基礎(chǔ)上,針對較小垃圾檢測以及垃圾遮檔問題進(jìn)行研究,以提高垃圾分類的精確度及細(xì)小垃圾物體識別的準(zhǔn)確度。