毛昕蓉,趙嘉豪,史智帥
(西安科技大學(xué)通信與信息工程學(xué)院,陜西西安 710054)
目前,我國垃圾分類方式主要為居民自我判別垃圾種類后分揀和垃圾中轉(zhuǎn)站的人工再分類兩種[1],使用這兩種方法完成垃圾分類任務(wù)還需要居民自己識別垃圾種類,但我國居民目前對垃圾分類意識較為薄弱,人們無意中的錯扔錯分就會使第一種分類方法達(dá)不到理想效果,即使由引導(dǎo)員引導(dǎo)居民進(jìn)行垃圾分類,也存在著管控難度大、人工成本高等問題;而第二種方法是我國主要依賴的垃圾分類方法,雖然中轉(zhuǎn)站的專業(yè)人員在垃圾分類的專業(yè)程度上比一般居民高,分類的準(zhǔn)確率也有著一定的保證,但在實(shí)際操作中,由于運(yùn)到垃圾中轉(zhuǎn)站的垃圾數(shù)量都相當(dāng)龐大,在進(jìn)行分類工作時仍會面臨著人工費(fèi)用較多、工人身體健康面臨威脅、分類效率低下以及精度不足等問題。故尋找出一種高效的垃圾分類方法是推行垃圾分類政策的必然之道。
隨著技術(shù)手段的推陳出新,各種智能化技術(shù)也朝著垃圾分類方向上進(jìn)行拓展應(yīng)用,其中較為突出的方法有三大類,分別為基于圖像的識別算法、基于聲波的分析識別算法以及基于光譜分析的識別算法[2]。這三種方法的特征提取效果都很出色,識別效果較傳統(tǒng)的人工分類方法都有較大的提升,基于圖像的識別算法利用圖像顏色、角點(diǎn)、紋理、頻率等特征的不同進(jìn)行分類,該方法在同種類項(xiàng)目上已有較為成熟的經(jīng)驗(yàn),且配套軟硬件技術(shù)較為成熟,例如人臉識別支付、智能垃圾桶、自動分揀機(jī)器人等;基于聲波的分析識別算法的識別原理為通過聲波發(fā)生器向目標(biāo)發(fā)射超聲波,根據(jù)回波的聲色、頻率、振幅等特征的不同判斷目標(biāo)種類;基于光譜分析的識別算法根據(jù)不同種類的垃圾反射出的光譜特征的不同進(jìn)行分類,該方法的成果有室用智能分揀系統(tǒng)。與傳統(tǒng)方法和基于圖像的識別算法相比,后兩者都處于起步階段,因成本以及工藝要求等原因還未有相應(yīng)的產(chǎn)品面世,而基于圖像的識別算法中,深度學(xué)習(xí)算法又是當(dāng)下最主流的算法,其向人們展示了其在分類問題上穩(wěn)定且優(yōu)越的性能[2],理論上使用深度學(xué)習(xí)算法可自動準(zhǔn)確地完成垃圾分類,將深度學(xué)習(xí)技術(shù)與垃圾分類理論結(jié)合即形成了垃圾分類智能化的概念[3]。當(dāng)前我國在智能垃圾分類領(lǐng)域已進(jìn)行了大量研究,并且已有些許成果應(yīng)用于實(shí)際。文獻(xiàn)[4]設(shè)計(jì)的智能垃圾桶具有軟硬結(jié)合的優(yōu)勢,促使垃圾分類合理化、有效化;文獻(xiàn)[5]在垃圾分類系統(tǒng)中加入了語音識別分類、人體紅外感應(yīng)開蓋、溫濕度檢測等功能;還有一些發(fā)明專利獲得批準(zhǔn),例如文獻(xiàn)[6]提出一種基于深度學(xué)習(xí)的智能分類垃圾箱,該垃圾箱包括垃圾箱主體結(jié)構(gòu)和智能分類控制器,優(yōu)點(diǎn)是可以低成本地實(shí)現(xiàn)垃圾自動分類。
基于以上信息,文中依照目前已有的基于圖像的垃圾分類識別算法,嘗試以樹莓派作為控制單元,設(shè)計(jì)了一款能夠在短時間內(nèi)完成高準(zhǔn)確度垃圾識別任務(wù)的智能垃圾桶。
文中設(shè)計(jì)將當(dāng)前深度學(xué)習(xí)算法與垃圾分類問題結(jié)合,將卷積神經(jīng)網(wǎng)絡(luò)部署在嵌入式設(shè)備樹莓派上,以實(shí)現(xiàn)在小型化設(shè)備上對多種類垃圾的準(zhǔn)確識別。考慮到該研究目的是減輕垃圾分類給人帶來的負(fù)擔(dān),故需訓(xùn)練出高精度網(wǎng)絡(luò)模型來準(zhǔn)確地對垃圾的類型進(jìn)行識別。設(shè)計(jì)選擇使用殘差卷積神經(jīng)網(wǎng)絡(luò)Resnet-50 模型作為智能垃圾分類系統(tǒng)的分類算法。該系統(tǒng)采用樹莓派4B 作為主控核心,樹莓派配套的攝像頭作為圖像采集模塊,并以生活中常見的普通垃圾桶作為垃圾回收裝置。垃圾桶中放置兩塊隔板,兩隔板互相垂直,將垃圾桶內(nèi)部空間分割成四個區(qū)域,并在垃圾桶底安裝舵機(jī)來控制垃圾桶旋轉(zhuǎn)。系統(tǒng)開始運(yùn)行后,首先通過程序控制攝像頭對垃圾進(jìn)行拍照,將保存的照片與訓(xùn)練好的模型進(jìn)行比較,得出垃圾分類識別信息,同時將該信息傳遞給舵機(jī),由舵機(jī)控制垃圾桶旋轉(zhuǎn)至對應(yīng)垃圾種類的分區(qū),最后進(jìn)行垃圾的投放。
設(shè)計(jì)所用到的所有硬件模塊及參數(shù)如表1 所示,下面主要介紹樹莓派的選取。
表1 智能垃圾分類系統(tǒng)硬件配置
樹莓派的創(chuàng)始人指出目前市場上存在的樹莓派有兩種型號,分別為Model A 和Model B。Model A 為了降低成本和能耗,犧牲了一些功能,比如沒有網(wǎng)線接口,上網(wǎng)必須采用通用串行總線(Universal Serial Bus,USB)接口類型的無線網(wǎng)卡;同系列的樹莓派Model B 型號自發(fā)布以來,已經(jīng)開發(fā)到了第4 代,與Model A 相比,它有以太網(wǎng)接口,而且支持WiFi,與Model B+型相比,其成本較低,版本較新,可以完成Model B+大部分功能[7-10]。
樹莓派4B 包含了San Disk 16 GB 內(nèi)存卡一張、3 A 電源一套和樹莓派4B 主板,該型號擁有1.5 GHz的64 位四核處理器、板載BCM43143 WiFi、板載低功耗藍(lán)牙、2 GB RAM、兩個USB 3.0 接口、兩個USB 2.0接口以及40 GPIO 引腳擴(kuò)展[11],擁有十分強(qiáng)大的功能,這些功能可以滿足文中設(shè)計(jì)需求,故選擇樹莓派4B 作為硬件主控單元。
文中設(shè)計(jì)采用的是基于圖像的識別算法,并使用了殘差神經(jīng)網(wǎng)絡(luò)Resnet-50,該網(wǎng)絡(luò)的具體結(jié)構(gòu)如圖1 所示。對于Resnet-50,其輸入走完全程共需經(jīng)過5 個階段,其中第一階段為輸入圖像與64 個大小為7×7 的卷積核進(jìn)行卷積運(yùn)算;第二到第四階段均由兩個形狀相同的結(jié)構(gòu)塊構(gòu)成——卷積結(jié)構(gòu)塊與bottleneck 結(jié)構(gòu)塊,兩者結(jié)構(gòu)上的差別主要在于bottleneck 結(jié)構(gòu)塊比卷積結(jié)構(gòu)塊多一個并行的卷積層,其中bottleneck 結(jié)構(gòu)塊的輸入與輸出維度相等,故可以將多個bottleneck 結(jié)構(gòu)塊串聯(lián)使用;卷積結(jié)構(gòu)塊的輸入與輸出維度不相等,其作用就是改變特征向量的維度。卷積結(jié)構(gòu)塊與bottleneck 結(jié)構(gòu)塊對應(yīng)的具體結(jié)構(gòu)分別如圖2 與圖3 所示[13-15]。
圖1 殘差神經(jīng)網(wǎng)絡(luò)Resnet-50網(wǎng)絡(luò)結(jié)構(gòu)圖
圖2 bottleneck結(jié)構(gòu)塊結(jié)構(gòu)圖
圖3 卷積結(jié)構(gòu)塊結(jié)構(gòu)圖
文中設(shè)計(jì)在軟件部分還借鑒了遷移學(xué)習(xí)的思想。網(wǎng)絡(luò)訓(xùn)練以預(yù)訓(xùn)練模型為基礎(chǔ),再輸入訓(xùn)練集圖像來微調(diào)預(yù)訓(xùn)練模型的參數(shù)。此方法的優(yōu)勢在于若能保證輸入的訓(xùn)練集與預(yù)訓(xùn)練模型的訓(xùn)練集有足夠的相似度,那么訓(xùn)練時無需將神經(jīng)網(wǎng)絡(luò)中的所有參數(shù)隨機(jī)初始化,只需將末位的一到兩層參數(shù)暴露,其余卷積層或者結(jié)構(gòu)塊進(jìn)入凍結(jié)狀態(tài),其參數(shù)不隨著訓(xùn)練而更新,從而減少了模型訓(xùn)練的計(jì)算量,使模型能在更短的時間到達(dá)收斂狀態(tài)[16]。
設(shè)計(jì)的系統(tǒng)工作流程圖如圖4 所示,各模塊信息如下:
1)初始化模塊包含加載模型和暴露模型初始化兩個模塊;
2)對于拍照模塊,文中選擇直接調(diào)用OpenCV庫中的imwrite 函數(shù)來完成拍攝工作,并將拍好的圖片以“0.jpg”為名直接存放到源程序所在的文件夾下。為了減小內(nèi)存的消耗,這里設(shè)置成每次拍照所得的圖片會覆蓋掉前一次的圖片,更新成為新的“0.jpg”;
3)當(dāng)拍照任務(wù)完成后,系統(tǒng)會自動執(zhí)行讀取模塊來讀取圖片“0.jpg”,并將其作為輸入傳遞給匹配模塊;
4)匹配模塊將輸入的“0.jpg”與先前訓(xùn)練好的分類數(shù)據(jù)進(jìn)行比較,從而得出分類結(jié)果;
5)由延時函數(shù)來穩(wěn)定系統(tǒng)的工作速率,該設(shè)計(jì)所設(shè)定的延時間隔為5 s,這樣既可保證系統(tǒng)擁有足夠的反應(yīng)時間去完成硬件上的任務(wù),又可使整個系統(tǒng)處于一個較高效率的工作狀態(tài),此環(huán)節(jié)是整個設(shè)計(jì)具有可行性的根本保證。
每完成一次匹配,此系統(tǒng)就會根據(jù)預(yù)測結(jié)果自動調(diào)用所對應(yīng)的硬件驅(qū)動語句來完成硬件部分操作,具體為:當(dāng)判斷垃圾為可回收垃圾時,樹莓派會向舵機(jī)發(fā)出一個占空比為2.5%、脈寬為0.5 ms 的脈沖寬度調(diào)制(Pulse Width Modulation,PWM)信號,舵機(jī)收到后會轉(zhuǎn)到0°角;當(dāng)判斷垃圾為有害垃圾時,樹莓派會向舵機(jī)發(fā)出一個占空比為3.3%、脈寬為0.66 ms 的PWM 信號,舵機(jī)收到后會轉(zhuǎn)到60°角;當(dāng)判斷垃圾為廚余垃圾時,樹莓派會向舵機(jī)發(fā)出一個占空比為8.84%、脈寬為1.83 ms 的PWM 信號,舵機(jī)收到后會轉(zhuǎn)到120°角;當(dāng)判斷垃圾為其他垃圾時,樹莓派會向舵機(jī)發(fā)出一個占空比為12.5%、脈寬為2.5 ms 的PWM 信號,舵機(jī)收到后會轉(zhuǎn)到180°角。
在測試過程中共選取了生活中較為常見的垃圾作為輸入,對系統(tǒng)在強(qiáng)光、弱光、正常光照三種環(huán)境下分別進(jìn)行了50 次識別匹配,將所得到的相關(guān)數(shù)據(jù)及系統(tǒng)輸出的預(yù)測結(jié)果和實(shí)際情況進(jìn)行對比,得到的系統(tǒng)平均識別率如表2 所示。從表2 可以得出,在正常光照情況下,系統(tǒng)的平均識別準(zhǔn)確率可達(dá)93.2%,在光線變化較大的環(huán)境下也有82%以上的識別率,可以看出系統(tǒng)具有較高的識別精度,可基本滿足使用需求。
表2 按類測試結(jié)果
文中以樹莓派作為主控單元,利用深度學(xué)習(xí)的殘差網(wǎng)絡(luò)算法解決了垃圾分類中“分類難、成本高、時間長”等問題。但同時,該系統(tǒng)穩(wěn)定性和識別精度等方面仍存在一定缺陷,如對部分垃圾的識別準(zhǔn)確率還有所欠缺,在不同光照下識別準(zhǔn)確率變化較大;智能垃圾分類系統(tǒng)還可以根據(jù)人們在日常生活中的實(shí)際需求做出相應(yīng)的改進(jìn)和優(yōu)化,如在現(xiàn)有基礎(chǔ)上還可以增加語音提示等多種功能。