摘要:文章針對(duì)環(huán)境污染日益嚴(yán)峻的問(wèn)題,提出使用YOLOv5輔助清理水面垃圾。YOLOv5使用Mosaic數(shù)據(jù)增強(qiáng)和自適應(yīng)錨框計(jì)算,具有較高的處理精度。利用YOLOv5目標(biāo)檢測(cè)網(wǎng)絡(luò)對(duì)水面垃圾檢測(cè),可快速準(zhǔn)確地搜尋水面垃圾,從而減輕環(huán)衛(wèi)工人的負(fù)擔(dān)。筆者利用Labelimg軟件對(duì)水面垃圾圖像數(shù)據(jù)進(jìn)行標(biāo)注,整理并獲得訓(xùn)練集。實(shí)驗(yàn)結(jié)果表明:基于YOLOv5的水面垃圾目標(biāo)檢測(cè)在檢測(cè)精度和速率上都取得良好的結(jié)果。
關(guān)鍵詞:目標(biāo)檢測(cè);圖像處理;深度學(xué)習(xí);YOLOv5;水面垃圾
中圖分類號(hào):TP319" " " " 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2022)33-0028-03
隨著人們逐步認(rèn)識(shí)到環(huán)保的重要性,清理水面垃圾成為人們需要解決的一大難題,如何快速尋找水面垃圾成為提高清理工作效率的一個(gè)重要問(wèn)題。目前,水面目標(biāo)的檢測(cè)算法大致可以分為三類,分別是基于紅外成像傳感器、基于激光雷達(dá)和基于視覺可見光的方法。然而,通過(guò)基于激光雷達(dá)和紅外成像傳感器的方法獲取的圖像在顏色、紋理和角點(diǎn)等圖像處理特征上不具備顯著差異,所以本項(xiàng)目使用一種基于深度學(xué)習(xí)的水面垃圾檢測(cè)算法——YOLOv5,該算法具有檢測(cè)精度高、體積小、速度快等優(yōu)勢(shì),與本項(xiàng)目的垃圾目標(biāo)檢測(cè)最為契合[1]。
1 YOLOv5
YOLO算法用一個(gè)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)目標(biāo)檢測(cè)的分類和定位,在目標(biāo)檢測(cè)領(lǐng)域有較為廣泛的應(yīng)用。Ultralytics公司于2020年5月推出的YOLOv5繼續(xù)沿用 YOLOv3和YOLOv4 的整體布局,它的優(yōu)點(diǎn)是速度快、體積小、精度高等,其圖像處理速度最快可達(dá)0.007s,即連續(xù)處理140幀圖片僅需要1s。YOLOv5中共有四種模型,分別是YOLOv5s、YOLOv5m、YOLOv5x和YOLOv5l[2]。本文采用YOLOv5s。
YOLOV5s模型的基本組成部分:Input(數(shù)據(jù)輸入端)、Backbone(主干部分)、Neck、Prediction(數(shù)據(jù)輸出端)。YOLOv5的網(wǎng)絡(luò)模型如圖1。
1.1 Input
輸入端使用Mosaic的處理方式來(lái)增強(qiáng)數(shù)據(jù),對(duì)多張水面垃圾圖片先進(jìn)行隨機(jī)的縮放和裁剪處理,之后再進(jìn)行隨機(jī)分布和拼接,極大地?cái)U(kuò)充并充實(shí)了模型數(shù)據(jù)集,提升了對(duì)較小的水面漂浮物的檢測(cè)能力。
YOLOv5在訓(xùn)練過(guò)程中添加自適應(yīng)計(jì)算錨框功能,每次訓(xùn)練都自動(dòng)計(jì)算不同訓(xùn)練集中的最優(yōu)錨框值。
YOLOv5在對(duì)原始水面垃圾圖片進(jìn)行縮放操作時(shí),會(huì)根據(jù)圖片的尺寸,自適應(yīng)地添加黑邊,使得黑邊最少。經(jīng)過(guò)這樣處理后,計(jì)算量大幅降低,從而使水面垃圾檢測(cè)工作的執(zhí)行速率得到大幅度的提高[3]。
1.2 Backbone
Backbone中包含有CSP結(jié)構(gòu)與Focus結(jié)構(gòu)。Focus的切片操作為,將原始尺寸為608*608*3的水面垃圾圖片輸入Focus結(jié)構(gòu),先采用切片操作,再經(jīng)過(guò)一次卷積操作,最后結(jié)果為304*304*32的水面垃圾特征圖[3]。
使用CSP模塊能夠提高網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)能力,在確保模型具有較高準(zhǔn)確性的同時(shí),也使模型輕量化,而且還能減少內(nèi)存成本和計(jì)算瓶頸。
YOLOv5中主要設(shè)計(jì)并實(shí)現(xiàn)了CSP1_X和CSP2_X兩種CSP結(jié)構(gòu),其中,Backbone主干網(wǎng)絡(luò)中主要應(yīng)用的是CSP1_X結(jié)構(gòu),可解決主干部分網(wǎng)絡(luò)優(yōu)化的梯度信息重復(fù)的問(wèn)題[3]。有效提高了模型對(duì)空間布局和對(duì)象變形的魯棒性。
1.3 Neck
在水面垃圾的檢測(cè)系統(tǒng)中,在Backbone和輸出層之間插入一些層能夠更好地提取融合特征,稱為“Neck”。是目標(biāo)檢測(cè)網(wǎng)絡(luò)的頸部,也是算法組成中十分重要的一部分。
YOLOv5s的Neck采用FPN(自上而下)+PAN(自底向上結(jié)構(gòu)的特征金字塔)的結(jié)構(gòu)[4-5]。通過(guò)自頂向下的FPN層傳達(dá)強(qiáng)語(yǔ)義特征;利用自底向上的特征金字塔傳達(dá)強(qiáng)定位特征,在不同的主干層對(duì)應(yīng)于不同的檢測(cè)層,實(shí)現(xiàn)參數(shù)的整合,可縮短推理周期,減少內(nèi)存占用[6]。
1.4 Prediction
輸出端主要由兩大部分組成:非極大值抑制[7]和Bounding box。GIOU_Loss函數(shù)作為Bounding box的損失函數(shù),可以有效解決水面垃圾圖片邊界框不重合的問(wèn)題[8]。GIOU_Loss函數(shù)采用相交尺度的衡量方式有利于解決邊界框可能不重合的問(wèn)題[9]。而針對(duì)出現(xiàn)的多目標(biāo)框的挑選,采用NMS函數(shù)把GIOU_Loss貢獻(xiàn)值不是最大的預(yù)測(cè)結(jié)果都去掉,從而獲得最優(yōu)目標(biāo)框。
2 實(shí)現(xiàn)水面垃圾檢測(cè)流程
2.1 水面垃圾檢測(cè)框架圖
本文中的水面垃圾檢測(cè)框架圖如圖2所示。由圖2可以看出,實(shí)現(xiàn)水面垃圾檢測(cè)的步驟首先通過(guò)Labeling對(duì)圖片標(biāo)注水面垃圾,然后建立數(shù)據(jù)集并將其轉(zhuǎn)變?yōu)閅OLO格式,數(shù)據(jù)集經(jīng)過(guò)YOLOv5訓(xùn)練后可以獲得權(quán)重?cái)?shù)據(jù),然后使用YOLOv5s利用水面垃圾權(quán)重?cái)?shù)據(jù)對(duì)無(wú)人機(jī)回傳的視頻圖像進(jìn)行處理,最終輸出檢測(cè)結(jié)果。
2.2 樣本集訓(xùn)練
水面垃圾的樣本集是水面垃圾檢測(cè)效果優(yōu)秀與否的關(guān)鍵,樣本集是否可行會(huì)對(duì)訓(xùn)練后模型的質(zhì)量產(chǎn)生重大影響。為保證訓(xùn)練后的模型質(zhì)量,本文采集的樣本集盡量選用接近實(shí)際應(yīng)用場(chǎng)景的圖片。最后經(jīng)過(guò)篩選,共收集水面垃圾圖片790張,對(duì)收集的圖片按順序編號(hào)后進(jìn)行重命名,組合為訓(xùn)練集和測(cè)試集,訓(xùn)練集和測(cè)試集的比例為7:3,通過(guò)Labelimg軟件對(duì)水面垃圾進(jìn)行標(biāo)注,并將圖片的標(biāo)注的圖片格式由 xml 轉(zhuǎn)換成 YOLOv5s 的格式。
2.3 網(wǎng)絡(luò)訓(xùn)練
首先,搭建水面垃圾檢測(cè)環(huán)境并對(duì)模型進(jìn)行訓(xùn)練,文中實(shí)驗(yàn)應(yīng)用的操作系統(tǒng)為Windows10,開發(fā)語(yǔ)言選擇Python語(yǔ)言。本文實(shí)驗(yàn)所使用具體配置情況見表1。
在訓(xùn)練的過(guò)程中,具體的訓(xùn)練參數(shù)及參數(shù)設(shè)置情況說(shuō)明如下:網(wǎng)絡(luò)模型訓(xùn)練階段,物體檢測(cè)驗(yàn)證集不衰減,總迭代次數(shù)為50次。輸入圖片尺寸為640*640,batch-size為4。
2.4 實(shí)驗(yàn)操作流程
首先,使用Labelimg軟件對(duì)數(shù)據(jù)集圖片中的垃圾分類框選,并對(duì)框選的垃圾標(biāo)注其垃圾種類名稱,最后將圖片的標(biāo)注格式轉(zhuǎn)換為YOLOv5格式。圖3為部分?jǐn)?shù)據(jù)集的標(biāo)注情況。
之后,通過(guò)YOLOv5s對(duì)數(shù)據(jù)集進(jìn)行訓(xùn)練獲得水面垃圾的權(quán)重?cái)?shù)據(jù)。
如圖4,使用Python調(diào)用train.py文件,通過(guò)VOC_rubbish.yaml和YOLOv5s_rubbish.yaml對(duì)訓(xùn)練模型的檢測(cè)種類進(jìn)行定義,之后對(duì)預(yù)訓(xùn)練權(quán)重文件的路徑進(jìn)行設(shè)置,同時(shí)設(shè)定size=4,epoch=50。通過(guò)訓(xùn)練即可獲得水面垃圾的權(quán)重?cái)?shù)據(jù)。
最后,通過(guò)YOLOv5s利用水面垃圾的權(quán)重?cái)?shù)據(jù)對(duì)無(wú)人機(jī)回傳的視頻進(jìn)行處理。
如圖5,通過(guò)Python調(diào)用detect.py文件,設(shè)置檢測(cè)視頻的路徑為testfiles/2.mp4 ,調(diào)用權(quán)重文件的路徑為weights/best.pt,并且將檢測(cè)的置信度設(shè)置為0.4。
3 處理結(jié)果及總結(jié)
通過(guò)使用YOLOv5s算法對(duì)水面垃圾進(jìn)行檢測(cè),所得結(jié)果如圖6所示。
通過(guò)對(duì)比處理前后的圖像可以發(fā)現(xiàn),YOLOv5s算法檢測(cè)可以較為準(zhǔn)確地識(shí)別圖片中的水面垃圾,并且對(duì)不同種類的垃圾分類標(biāo)注。如圖6(a)中存在較小的水面垃圾,圖6(b)中不但將其一一框選標(biāo)注,而且精確地識(shí)別出框選的垃圾種類。當(dāng)水面垃圾數(shù)量較多時(shí),如圖6(c),圖片中共有水面垃圾8處,而圖5(d)中不僅將所有水面垃圾成功框選出來(lái),而且對(duì)框選水面垃圾的種類識(shí)別全部正確。同時(shí),由圖6(b)和(d)可以發(fā)現(xiàn),YOLOv5s對(duì)水面垃圾識(shí)別的平均置信度為0.6,基本可以滿足輔助環(huán)衛(wèi)工人搜尋水面垃圾的需求。所以采用這種方法可以準(zhǔn)確迅速地搜尋并識(shí)別水面垃圾,從而極大提高環(huán)衛(wèi)工人搜尋水面垃圾的效率。
4" 結(jié)束語(yǔ)
本文介紹了基于YOLOv5的水面垃圾目標(biāo)檢測(cè)方法,初步看來(lái),此模型在水面垃圾的檢測(cè)方向是極具可行性的??蓪?shí)現(xiàn)對(duì)水面垃圾的智能化搜尋,輔助環(huán)衛(wèi)工人清理水面垃圾,提高工作效率,減少人力物力的投入。但仍有待完善的地方,比如在大片水面垃圾堆積的水面有概率出現(xiàn)垃圾識(shí)別不完全的情況,在水面情況復(fù)雜的地方有較小概率出現(xiàn)識(shí)別錯(cuò)誤的情況等。計(jì)劃下一步將從網(wǎng)絡(luò)模型的方面修改Loss函數(shù) , 從而提高性能,同時(shí)對(duì)數(shù)據(jù)集中水面垃圾的種類進(jìn)一步細(xì)分,從而提高精確度。
參考文獻(xiàn):
[1] 周飛.水面清污機(jī)器人垃圾檢測(cè)算法的研究[D].綿陽(yáng):西南科技大學(xué),2020.
[2] 吳志新,聶留陽(yáng),董容君,等.基于深度學(xué)習(xí)的機(jī)場(chǎng)道面表觀缺陷檢測(cè)[J].電子技術(shù)與軟件工程,2021(8):174-177.
[3] 馬琳琳,馬建新,韓佳芳,等.基于YOLOv5s目標(biāo)檢測(cè)算法的研究[J].電腦知識(shí)與技術(shù)(學(xué)術(shù)版),2021(23):100-103.
[4] 楊曉玲,蔡雅雯.基于YOLOv5s的行人檢測(cè)系統(tǒng)及實(shí)現(xiàn)[J].電腦與信息技術(shù),2022,30(1):28-30.
[5] 王莉,何牧天,徐碩,等.基于YOLOv5s網(wǎng)絡(luò)的垃圾分類和檢測(cè)[J].包裝工程,2021,42(8):50-56.
[6] 趙冬.基于改進(jìn)目標(biāo)檢測(cè)算法的吸煙行為檢測(cè)[J].電子技術(shù)與軟件工程,2021(24):116-117.
[7] 楊曉玲,羅順利,梁皓添.基于YOLOv5的交通路面障礙物目標(biāo)檢測(cè)[J].智能城市,2021,7(20):121-122.
[8] 談世磊,別雄波,盧功林,等.基于YOLOv5網(wǎng)絡(luò)模型的人員口罩佩戴實(shí)時(shí)檢測(cè)[J].激光雜志,2021(2):147-150.
[9] 肖博健,萬(wàn)爛軍,陳俊權(quán).采用YOLOv5模型的口罩佩戴識(shí)別研究[J].福建電腦,2021,37(3):35-37.
【通聯(lián)編輯:唐一東】