王興朝,唐瑞尹
(1.華北理工大學(xué),電氣工程學(xué)院,唐山 063210; 2.北華航天工業(yè)學(xué)院,電子與控制工程學(xué)院,廊坊 065000)
隨著我國經(jīng)濟(jì)的快速發(fā)展,我國城市每年產(chǎn)生的垃圾在逐年上漲,根據(jù)相關(guān)部門統(tǒng)計(jì),在2019年我國城市生活垃圾產(chǎn)出量為3.43億噸,同比去年增加6.2%,在這些生活垃圾中有很大一部分可以回收再利用,但我國的生活垃圾回收利用率不到5%,因此,城市生活垃圾的分類回收對環(huán)境治理和資源的再利用具有重大意義。各大城市針對垃圾分類回收制定了相關(guān)的政策,但由于監(jiān)管體系不健全,缺乏科學(xué)的有效的信息監(jiān)管手段與激勵(lì)機(jī)制,使得居民參與垃圾分類回收的積極性不高,嚴(yán)格遵守垃圾分類政策的意識的不足,導(dǎo)致城市垃圾分類回收的效果并不明顯。因此,使用自動(dòng)化技術(shù)降低人工成本是未來解決城市垃圾分類回收問題的發(fā)展趨勢,而機(jī)器視覺是實(shí)現(xiàn)垃圾自動(dòng)分類回收的一項(xiàng)重要科學(xué)技術(shù)。
近年來,隨著人工智能和物聯(lián)網(wǎng)的高速發(fā)展,尤其是神經(jīng)網(wǎng)絡(luò)的發(fā)展,為機(jī)器視覺在圖像識別和目標(biāo)檢測的應(yīng)用方面提供了新的理論基礎(chǔ)和實(shí)現(xiàn)方法。早期的圖像識別主要利用Harris、SIFT、SURF、LBF、HOG、DPM等方法對圖像特征進(jìn)行提取,再通過支持向量機(jī)SVM等分類器對特征進(jìn)行識別分類,由于傳統(tǒng)的圖像處理方法在圖像特征提取過程中需要人工參與,導(dǎo)致其識別的準(zhǔn)確率受經(jīng)驗(yàn)影響較大,泛化能力較弱。而基于神經(jīng)網(wǎng)絡(luò)的圖像識別方法不需要人為參與圖像特征提取的過程,而是通過大量數(shù)據(jù)集利用梯度下降法和反向傳播對神經(jīng)網(wǎng)絡(luò)的系數(shù)進(jìn)行自動(dòng)更新,從而使神經(jīng)網(wǎng)絡(luò)能夠?qū)D像進(jìn)行識別。相比于傳統(tǒng)的圖像識別方法,基于神經(jīng)網(wǎng)絡(luò)的圖像識別方法具有泛化能力強(qiáng)、可移植性好等特點(diǎn)。
針對家庭垃圾分類回收問題,本文提出一種基于神經(jīng)網(wǎng)絡(luò)的智能垃圾桶設(shè)計(jì)。垃圾桶的工作流程如圖1所示,首先利用基于神經(jīng)網(wǎng)絡(luò)的圖像識別模型對圖像中的垃圾進(jìn)行分類識別,再依據(jù)模型的分類識別結(jié)果通過控制系統(tǒng)將垃圾丟入相應(yīng)的垃圾回收桶中。經(jīng)實(shí)驗(yàn)結(jié)果證明,設(shè)計(jì)的智能垃圾桶能夠有效地實(shí)現(xiàn)生活垃圾的分類回收,具有較好的穩(wěn)定性和實(shí)用性,對降低生活垃圾分類回收的人工成本具有一定的實(shí)際意義。
圖1 智能垃圾桶工作流程
近年來,隨著神經(jīng)網(wǎng)絡(luò)的快速發(fā)展,各式各樣的基于神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測算法被提出,目前基于神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測算法主要分為One-stage和Two-stage兩類。Two-stage目標(biāo)檢測算法流程是先通過一個(gè)神經(jīng)網(wǎng)絡(luò)檢測出區(qū)域候選框,再通過另一個(gè)神經(jīng)網(wǎng)絡(luò)對候選框中的物體進(jìn)行分類識別,主要代表算法為Fast R-CNN、Faster R-CNN和Mask R-CNN等,此類算法的準(zhǔn)確率較高,但檢測速度較慢。One-stage目標(biāo)檢測算法的主要流程是通過神經(jīng)網(wǎng)絡(luò)模型直接回歸出目標(biāo)的類別及位置信息,代表算法為YOLOv1、YOLOv2、YOLOv3和SSD等,此類算法準(zhǔn)確率較低,但檢測速度較快。本設(shè)計(jì)的輸入圖像比較簡單且對模型的檢測速度有一定要求,因此選用One-stage系列算法作為神經(jīng)網(wǎng)絡(luò)的搭建框架。
YOLOv3是神經(jīng)網(wǎng)絡(luò)應(yīng)用在目標(biāo)檢測方面的一個(gè)經(jīng)典模型,其網(wǎng)絡(luò)結(jié)構(gòu)圖如圖2所示,骨干網(wǎng)絡(luò)采用DarkNet-53,該網(wǎng)絡(luò)由52個(gè)卷積層和一個(gè)全連接層組成,并采用了ResNet網(wǎng)絡(luò)的殘差塊思想。采用了類似FPN網(wǎng)絡(luò)的多尺度預(yù)測,經(jīng)過上采樣和卷積運(yùn)算分別產(chǎn)生8×8、16×16、32×32大小的特征圖。
圖2 YOLOv3 網(wǎng)絡(luò)結(jié)構(gòu)
在YOLO Detection層中。首先在通過對訓(xùn)練集采用聚類算法得到三個(gè)不同尺度先驗(yàn)框并分配給三種不同尺度的特征圖,然后特征圖的每個(gè)cell都會(huì)預(yù)測三個(gè)邊界框,每個(gè)邊界框的預(yù)測信息包含邊界框相對于先驗(yàn)框的四個(gè)位置信息tx、ty、tw和th,一個(gè)邊界框置信度objectness prediction以及N個(gè)類別的置信度。
在速度要求較高的項(xiàng)目中,YOLOv3網(wǎng)絡(luò)的表現(xiàn)性較差,尤其是在計(jì)算能力有限的邊緣設(shè)備中。由于本設(shè)計(jì)的目標(biāo)檢測模型需要部署在邊緣設(shè)備上,因此需要選用一種輕量級的目標(biāo)檢測網(wǎng)絡(luò)。
YOLOv3-tiny是一種基于YOLOv3的輕量級目標(biāo)檢測網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,它的特征提取網(wǎng)絡(luò)只使用卷積層和池化層,取消了殘差模塊并只使用兩種不同尺度的特征圖作為輸出,相較于DarkNet-53網(wǎng)絡(luò)參數(shù)數(shù)量降低,模型大小減小,適合部署在計(jì)算能力有限的邊緣設(shè)備上,因此本設(shè)計(jì)的目標(biāo)檢測模型選用YOLOv3-tiny網(wǎng)絡(luò)來搭建目標(biāo)檢測模型。
圖3 YOLOv3-tiny網(wǎng)絡(luò)結(jié)構(gòu)
系統(tǒng)的內(nèi)部結(jié)構(gòu)如圖4所示,由垃圾識別箱和控制系統(tǒng)組成。
圖4 垃圾桶內(nèi)部結(jié)構(gòu)圖
垃圾識別箱主要由攝像頭、LED燈和激光測距傳感器等組成,具體裝置信息如下所示:
攝像頭:Risym攝像頭,500萬像素,用于圖像的采集。
LED燈:用于增強(qiáng)圖像亮度。
激光測距傳感器:型號為ATK-VL53L0X,測量距離3cm~200cm,檢測是否有垃圾丟入。
識別箱的工作流程圖如圖5所示,當(dāng)有垃圾丟入垃圾識別箱中時(shí),控制核心會(huì)得到位于箱底的激光測距傳感器的反饋,從而得知有垃圾丟入,然后打開LED燈增加采集環(huán)境亮度,最后開啟攝像頭進(jìn)行圖像采集。
圖5 垃圾識別箱工作流程
控制系統(tǒng)主要由控制核心、主副舵機(jī)、轉(zhuǎn)動(dòng)盤和垃圾回收箱組成,具體裝置參數(shù)如下:
控制主板:樹莓派3b+、1.4 GHz四核CPU,博通Videocore-IV型GPU
舵機(jī):型號DS3218,扭矩為20 kg·cm
控制系統(tǒng)的工作流程如圖6所示,控制核心通過部署的神經(jīng)網(wǎng)絡(luò)模型對攝像頭采集的圖像中的垃圾進(jìn)行識別,根據(jù)識別結(jié)果,首先轉(zhuǎn)動(dòng)主舵機(jī),將轉(zhuǎn)動(dòng)盤上的垃圾識別箱轉(zhuǎn)動(dòng)到相應(yīng)垃圾類別的回收箱的上方,再轉(zhuǎn)動(dòng)副舵機(jī)打開垃圾識別箱的底板,使垃圾掉入回收箱中,最后舵機(jī)復(fù)位,開啟下一次垃圾回收。
圖6 控制系統(tǒng)工作流程
3.1.1 數(shù)據(jù)集采集
采集訓(xùn)練數(shù)據(jù)集時(shí),首先將垃圾識別箱的內(nèi)部涂成黑色,以減少背景對識別準(zhǔn)確率的影響,再將準(zhǔn)備的示例垃圾放入箱中進(jìn)行拍照,將收集的圖像通過數(shù)據(jù)增強(qiáng)技術(shù)增加數(shù)據(jù)集的數(shù)量,本設(shè)計(jì)采用的數(shù)據(jù)增強(qiáng)方法有翻轉(zhuǎn)變換、對比度變換和隨機(jī)修剪。最后利用labelImg軟件依據(jù)圖7中上海市垃圾分類的標(biāo)準(zhǔn)對數(shù)據(jù)及進(jìn)行標(biāo)注,標(biāo)注示例圖片如圖8所示。
圖7 上海市垃圾分類標(biāo)準(zhǔn)
圖8 標(biāo)注實(shí)例圖片
3.1.2 模型訓(xùn)練
對數(shù)據(jù)集采用聚類算法計(jì)算并設(shè)置YOLO層中的先驗(yàn)框大小,將YOLO層的最后輸出的類別維度改為4,分別對應(yīng)于可回收垃圾、干垃圾、濕垃圾和有害垃圾。
激活函數(shù)采用ReLU函數(shù),其數(shù)學(xué)公式如(1)所示,函數(shù)圖像如圖9所示。
(1)
ReLU采用單側(cè)抑制,使神經(jīng)網(wǎng)絡(luò)具有稀疏激活性,由于其非負(fù)期間的梯度為常數(shù),因此可以解決梯度消失的問題,使得神經(jīng)網(wǎng)絡(luò)模型的收斂速度穩(wěn)定,能夠更好地挖掘相關(guān)特性,擬合訓(xùn)練集。
圖9 ReLU 函數(shù)圖像
在特征提取網(wǎng)絡(luò)中加入batch normalization層,以采用更大的學(xué)習(xí)率,提高模型的收斂速度,并且避免梯度消失和梯度爆炸的問題。
訓(xùn)練模型采用Adam優(yōu)化器,batchsize設(shè)為32,epoch設(shè)為200,訓(xùn)練結(jié)果如圖10所示,模型在驗(yàn)證集和測試集上準(zhǔn)確率收斂于90%左右,整體表現(xiàn)良好。
圖10 模型訓(xùn)練結(jié)果
用VNC遠(yuǎn)程屏幕軟件連接樹莓派,以便觀察目標(biāo)檢測模型的輸出信息。當(dāng)向垃圾回收箱中丟入垃圾時(shí),模型的部分輸出如圖11所示。
圖11 模型的部分識別結(jié)果
實(shí)驗(yàn)平臺如圖12所示。
圖12 實(shí)驗(yàn)平臺
垃圾丟入垃圾桶后,垃圾桶能夠依據(jù)圖像識別結(jié)果準(zhǔn)確地將垃圾放入相應(yīng)的垃圾桶中,整個(gè)過程不需要人工參與,且運(yùn)行穩(wěn)定,實(shí)現(xiàn)了垃圾回收的智能化和自動(dòng)化。
針對傳統(tǒng)的家庭垃圾分類回收所需人工成本高和自動(dòng)化程度低等問題,本文提出一種基于神經(jīng)網(wǎng)絡(luò)的智能垃圾桶設(shè)計(jì),本設(shè)計(jì)將神經(jīng)網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)結(jié)合,首先運(yùn)用神經(jīng)網(wǎng)絡(luò)技術(shù)識別圖像中的垃圾類別,再利用基于嵌入式的控制系統(tǒng)對家庭垃圾進(jìn)行分類回收,降低了人工成本。但是垃圾桶對于小目標(biāo)垃圾的回收準(zhǔn)確率相對較低,且一次性回收的垃圾數(shù)量有所限制,因此提高小目標(biāo)垃圾的回收準(zhǔn)確率和優(yōu)化控制結(jié)構(gòu)是未來研究的方向。