趙一 陳震
摘要:目前,全國(guó)對(duì)于“互聯(lián)網(wǎng)+”智能垃圾分類系統(tǒng)、智能垃圾桶等軟硬件需求已處于白熱化狀態(tài)。垃圾分類機(jī)器人依靠計(jì)算機(jī)視覺(jué)來(lái)識(shí)別不同材料之間的差異,其背后應(yīng)用了AI系統(tǒng)來(lái)賦予機(jī)器識(shí)別的規(guī)范和技術(shù)。通過(guò)深度學(xué)習(xí)技術(shù),機(jī)器人可采用多層神經(jīng)網(wǎng)絡(luò)和視覺(jué)系統(tǒng),以與人的方式類似的方式查看和識(shí)別物體。
關(guān)鍵詞:智能分類;AI體貼;深度學(xué)習(xí);CNN神經(jīng)網(wǎng)絡(luò)
我國(guó)每年產(chǎn)生近10億噸垃圾,且每年以5%~8%的倍速遞增,全國(guó)約2/3的城市,正在被垃圾“大軍”包圍。生活垃圾中有30%~40%都可以變廢為寶,通過(guò)垃圾分類,既能減少占地,又能減少環(huán)境污染。傳統(tǒng)上填埋和焚燒處理垃圾并不是優(yōu)化的處理方式,如果經(jīng)過(guò)垃圾分類,我們能大大提高垃圾資源的利用率。在現(xiàn)實(shí)生活中,大部分人對(duì)垃圾分類知識(shí)的了解并不全面,對(duì)于垃圾分類的意識(shí)較為薄弱,而傳統(tǒng)的垃圾分類箱需要用戶對(duì)垃圾分類的知識(shí)有一定的了解,它并不能高效地進(jìn)行垃圾分類,也難以提高用戶的分類意識(shí),導(dǎo)致實(shí)際垃圾分類的效果并不如預(yù)期。而隨著計(jì)算機(jī)科學(xué)技術(shù)、人工智能技術(shù)、圖像分類等技術(shù)的產(chǎn)生和發(fā)展,讓垃圾分類的智能化成為可能。針對(duì)以上垃圾分類存在的問(wèn)題,本小組將開(kāi)發(fā)一款基于圖像分類的智能分類垃圾箱,同時(shí)配套小程序輔助,幫助人們高效地進(jìn)行垃圾分類,同時(shí)在分類的過(guò)程中提高人們的環(huán)保意識(shí)。
一、深度學(xué)習(xí)
(一)數(shù)據(jù)集采集與整理
(1)前期:對(duì)CSDN、GitHub等中現(xiàn)成垃圾數(shù)據(jù)集進(jìn)行下載,同時(shí)采取網(wǎng)上爬蟲(chóng)和線下手機(jī)拍照的形式擴(kuò)充數(shù)據(jù)集,令每張圖片重新處理至同一分辨率和大小,數(shù)據(jù)集分成一定數(shù)量類別,對(duì)每個(gè)類別的垃圾重量范圍進(jìn)行手動(dòng)標(biāo)注。
(2)后期:垃圾箱攝像頭拍照后上傳用戶丟人垃圾的圖片,并對(duì)每張圖片進(jìn)行標(biāo)注與手工分類,形成標(biāo)準(zhǔn)數(shù)據(jù)集。
(二)模型輸入
(1)模型訓(xùn)練輸入:垃圾數(shù)據(jù)集。
(2)模型部署輸入:攝像頭和壓力傳感器分別獲取垃圾的圖像和重量。
(三)數(shù)據(jù)預(yù)處理
對(duì)圖像進(jìn)行水平/垂直翻轉(zhuǎn)、旋轉(zhuǎn)、縮放、裁剪、剪切、平移等數(shù)據(jù)增廣技術(shù)。
(四)模型網(wǎng)絡(luò)結(jié)構(gòu)
服務(wù)端:CNN的圖像分類性能與其網(wǎng)絡(luò)深度存在著重要的關(guān)系,網(wǎng)絡(luò)越深,CNN的擬合能力就越強(qiáng),但進(jìn)一步增加CNN的深度不但不能提高網(wǎng)絡(luò)的精準(zhǔn)度,反而會(huì)因?yàn)樘荻认Фa(chǎn)生更高的訓(xùn)練誤差,使CNN的圖像分類性能降低。殘差網(wǎng)絡(luò)緩解在深度神經(jīng)網(wǎng)絡(luò)中增加深度帶來(lái)了梯度消失的問(wèn)題,它是目前應(yīng)用最為廣泛的CNN特征提取網(wǎng)絡(luò)之一,由此也產(chǎn)生了許多Resnet變種網(wǎng)絡(luò)。本模型以ResNeSt為基礎(chǔ)結(jié)構(gòu),它結(jié)合了許多ResNet變種結(jié)構(gòu)的優(yōu)點(diǎn):
(1)ResNeXt網(wǎng)絡(luò)的切片思想,對(duì)輸入的通道進(jìn)行切片,均分每組的通道數(shù),不同于Inception的需要人工設(shè)計(jì)每個(gè)分支,ResNeXt的每個(gè)分支的拓?fù)浣Y(jié)構(gòu)是相同的,即采用分組卷積。
(2)SENet注意力模塊,可以自動(dòng)學(xué)習(xí)到不同channel的重要程度,然后依照這個(gè)重要程度去提升有用的特征并抑制對(duì)當(dāng)前任務(wù)用處不大的特征。
(3)SKNet的選擇核模塊,其靈感來(lái)源是,我們?cè)诳床煌叽?、不同遠(yuǎn)近的物體時(shí),視覺(jué)皮層神經(jīng)元接受域大小是會(huì)根據(jù)刺激來(lái)進(jìn)行調(diào)節(jié)的。對(duì)應(yīng)于CNN網(wǎng)絡(luò)來(lái)說(shuō),就是可以根據(jù)輸入信息的多個(gè)尺度自適應(yīng)的調(diào)節(jié)接受域大小,與傳統(tǒng)人工設(shè)計(jì)卷積核大小相比,讓網(wǎng)絡(luò)學(xué)會(huì)找到適合自己的卷積核可以增強(qiáng)網(wǎng)絡(luò)的泛化能力。
硬件端:以MobileNetV3為基本網(wǎng)絡(luò)結(jié)構(gòu),它綜合了V1的深度可分離卷積和v2的具有線性瓶頸的逆殘差結(jié)構(gòu)的特點(diǎn),同時(shí)加入了輕量集的注意力模型,保證了在極小Params和Flops的情況下,模型擁有較高的準(zhǔn)確率。最后加上邏輯回歸層和softmax層,一層用于學(xué)習(xí)網(wǎng)絡(luò)輸出和垃圾重量的權(quán)重,另一層對(duì)輸出進(jìn)行分類,最終從多類到四類(可回收垃圾、有害垃圾、廚余垃圾、其他垃圾)的映射表中輸出垃圾類目。
(五)模型訓(xùn)練
(1)前期:輸入“前期”收集到的圖片,得到準(zhǔn)確率并進(jìn)行分析,進(jìn)一步修改超參數(shù)優(yōu)化模型。
(2)后期:不斷收集到垃圾箱上傳的圖片數(shù)據(jù)后,輸入之前的模型中,進(jìn)一步訓(xùn)練、提高模型的準(zhǔn)確率。
(六)測(cè)試
基于python的垃圾分類程序,用戶丟人垃圾后,調(diào)用python程序?qū)D片進(jìn)行拍照并分類,同時(shí)導(dǎo)入request庫(kù)將圖片上傳至服務(wù)器。通過(guò)Pyqt5設(shè)計(jì)一套圖形化界面對(duì)垃圾分類程序進(jìn)行測(cè)試,能夠完成對(duì)上傳圖片進(jìn)行識(shí)別并把識(shí)別結(jié)果進(jìn)行輸出的功能。
二、程序開(kāi)發(fā)
基于微信框架設(shè)計(jì)的WXML語(yǔ)法、WXS語(yǔ)法、WXSS語(yǔ)法,使用微信web開(kāi)發(fā)工具對(duì)垃圾分類小程序進(jìn)行開(kāi)發(fā)。使用小程序第三方組件庫(kù)以及自定義組件進(jìn)行頁(yè)面搭建。調(diào)用小程序API實(shí)現(xiàn)網(wǎng)絡(luò)請(qǐng)求、圖片上傳、獲取位置(騰訊位置服務(wù))等功能。后端服務(wù)器使用HTTPS請(qǐng)求調(diào)用的API,完成各類數(shù)據(jù)分析、管理和查詢等操作。采用云開(kāi)發(fā)提供的云函數(shù)、數(shù)據(jù)庫(kù)、存儲(chǔ)、云調(diào)用,盡可能輕松地完成后端的操作和管理。
(一)運(yùn)用深度學(xué)習(xí)模型
區(qū)別于傳統(tǒng)的淺層學(xué)習(xí),深度學(xué)習(xí)的不同在于強(qiáng)調(diào)了模型結(jié)構(gòu)的深度,明確特征學(xué)習(xí)的重要性。通過(guò)逐層特征變換,將樣本在原空間的特征表示變換到一個(gè)新特征空間,從而使分類和預(yù)測(cè)更容易。與傳統(tǒng)的人工規(guī)則構(gòu)造特征的方法相比,利用大數(shù)據(jù)來(lái)學(xué)習(xí)數(shù)據(jù)的特征值,更能夠刻畫(huà)數(shù)據(jù)豐富的內(nèi)在信息。
(二)軟硬件結(jié)合
本項(xiàng)目結(jié)合了硬件設(shè)施(智能分類垃圾箱)、軟件端(垃圾分類小程序)研發(fā)形成了一套完整的體系。智能分類垃圾箱通過(guò)CNN進(jìn)行圖像分類,識(shí)別出垃圾的類別,并投放到對(duì)應(yīng)的垃圾桶,簡(jiǎn)化傳統(tǒng)分類垃圾的過(guò)程。而在小程序端,用戶可進(jìn)行垃圾分類知識(shí)的學(xué)習(xí),我們通過(guò)積分制的方式調(diào)動(dòng)用戶使用智能分類垃圾箱和學(xué)習(xí)垃圾分類知識(shí)的積極性,從而在潛移默化中提高人們對(duì)于垃圾分類的意識(shí)。
三、硬件設(shè)施
(一)硬件結(jié)構(gòu)
(1)人性化:將分揀模塊置后,與市場(chǎng)的垃圾桶相比,無(wú)須等待垃圾分類完成后才能投入垃圾;無(wú)須記憶太多垃圾對(duì)應(yīng)類目,做到解放人類大腦,垃圾即丟即走,方便快捷,無(wú)須煩惱。
(2)語(yǔ)音播報(bào)功能:經(jīng)過(guò)圖像識(shí)別出垃圾類別后,經(jīng)揚(yáng)聲器播報(bào)垃圾類別。
(3)結(jié)構(gòu)化創(chuàng)新:由1:1全金屬打造,擁有四種垃圾分類,可拆卸式垃圾桶。本產(chǎn)品采用氧焊電焊鐵絲等技術(shù)實(shí)現(xiàn)模塊拼接。具有高度自動(dòng)化、能自動(dòng)開(kāi)合、自動(dòng)識(shí)別、精準(zhǔn)投放垃圾的功能。
(二)硬件關(guān)聯(lián)客戶端
(1)可隨時(shí)隨地通過(guò)圖像識(shí)別垃圾進(jìn)行分類,瀏覽垃圾分類小知識(shí)。
(2)可根據(jù)地圖查找附近的智能垃圾箱。
(3)設(shè)置積分制,用戶可通過(guò)使用垃圾箱積累使用記錄、辨別垃圾類別提高自己的“段位”,同時(shí)開(kāi)設(shè)游戲問(wèn)答模塊,使積分制度引導(dǎo)用戶潛移默化地掌握垃圾分類知識(shí)。
(三)開(kāi)發(fā)步驟
(1)進(jìn)行需求分析以及系統(tǒng)的整體設(shè)計(jì),并收集數(shù)據(jù)。
(2)搭建深度學(xué)習(xí)模型,構(gòu)建神經(jīng)網(wǎng)絡(luò)并訓(xùn)練模型;垃圾分類小程序界面的UI設(shè)計(jì);智能分類垃圾箱整體結(jié)構(gòu)設(shè)計(jì)及優(yōu)化。
(3)小程序后臺(tái)與深度學(xué)習(xí)對(duì)接并測(cè)試;硬件模型實(shí)現(xiàn)。
(4)樹(shù)莓派后臺(tái)與深度學(xué)習(xí)對(duì)接并測(cè)試;小程序拓展功能實(shí)現(xiàn)。
(5)項(xiàng)目整體完善,提高垃圾識(shí)別類目精度;小程序端體驗(yàn)優(yōu)化。
作者簡(jiǎn)介:趙一(1984— ),男,漢族,湖北武漢人,博士,副教授,研究方向:人工智能;陳震(2001— ),男,漢族,廣東河源人,本科在讀,研究方向:人工智能。