







摘要:在聚集遮擋等復(fù)雜園林環(huán)境下,現(xiàn)有的目標(biāo)檢測算法很難對(duì)球形綠籬進(jìn)行準(zhǔn)確檢測。針對(duì)這一問題,提出一種基于YOLOv5s的算法YOLO-CBS,用于提高園林球形綠籬的檢測精度。首先,將坐標(biāo)注意力(CA)引入YOLOv5s的主干網(wǎng)絡(luò),CA不僅考慮通道間的關(guān)系還考慮特征空間的位置信息,因而能夠使模型更準(zhǔn)確地識(shí)別和定位目標(biāo)綠籬;其次,用雙向特征金字塔網(wǎng)絡(luò)(BiFPN)替換路徑聚合網(wǎng)絡(luò)(PANet),以提高特征融合的效率;最后,將輸出端的非極大值抑制(NMS)改為Soft-NMS,以提高對(duì)遮擋綠籬、聚集綠籬等復(fù)雜場景下的目標(biāo)綠籬檢測精度。典型綠籬數(shù)據(jù)集試驗(yàn)結(jié)果表明,與YOLOv5s算法相比,YOLO-CBS算法平均精度提高3.4%。
關(guān)鍵詞:綠籬檢測;YOLOv5s;注意力機(jī)制;特征金字塔網(wǎng)絡(luò);非極大值抑制
中圖分類號(hào):TP391.4; S688" " " 文獻(xiàn)標(biāo)識(shí)碼:A" " " 文章編號(hào):2095?5553 (2024) 08?0262?08
Detection method of garden spherical hedge based on YOLOv5s
Wang Ketao, Chen Shifeng, Chen Gui, Wei Jin, Meng Liwen, Chen Quancheng
(School of Mechanical Engineering, Guangxi University, Nanning, 530000, China)
Abstract: Under complex garden environment such as aggregation and occlusion, it is difficult for the existing target detection algorithms to accurately detect spherical hedge. In order to solve this problem, an algorithm YOLO-CBS based on YOLOv5s is proposed to improve the detection accuracy of spherical hedge in gardens. Firstly, coordinate attention (CA) is introduced into the backbone network of YOLOv5s, which considers the relationship between channels and the location information of the feature space, so that the model can more accurately identify and locate the target hedge. Secondly, the path aggregation network (PANet) is replaced by bidirectional feature pyramid network (BiFPN) to improve the efficiency of feature fusion. Finally, the non?maximum suppression (NMS) at the output is changed to Soft-NMS to improve the detection accuracy of target hedges under complex scenes such as occluded hedges and dense hedges. The results of experiments on a typical hedgerow data set show that the average accuracy of the YOLO-CBS algorithm is improved by 3.4% compared to the YOLOv5s algorithm.
Keywords: hedge detection; YOLOv5s; attention mechanism; feature pyramid network; non?maximum suppression
0 引言
目前園林綠籬的養(yǎng)護(hù)主要靠工人手持油鋸進(jìn)行修剪,不僅勞動(dòng)強(qiáng)度大而且工作效率低,迫切需要自動(dòng)化的綠籬修剪設(shè)備以代替人工完成養(yǎng)護(hù)工作,而快速準(zhǔn)確地檢測到目標(biāo)綠籬成為要解決的首要問題。
計(jì)算機(jī)視覺是實(shí)現(xiàn)農(nóng)業(yè)自動(dòng)化和智能化的一項(xiàng)關(guān)鍵技術(shù),而目標(biāo)檢測是計(jì)算機(jī)視覺研究領(lǐng)域中的一個(gè)重要分支。目標(biāo)檢測的發(fā)展大致可以劃分為兩個(gè)時(shí)期,傳統(tǒng)的目標(biāo)檢測時(shí)期和基于深度學(xué)習(xí)的目標(biāo)檢測時(shí)期。基于深度學(xué)習(xí)的目標(biāo)檢測方法又可以分為兩階段檢測算法和單階段檢測算法。其中,基于候選區(qū)域的兩階段檢測算法主要包括:R-CNN、Fast R-CNN、Faster R-CNN、Mask R-CNN以及Cascade R-CNN等,而基于回歸的單階段檢測算法主要包括YOLO系列、SSD、Retina-Net以及CenterNet等。從原理上來說,兩階段的目標(biāo)檢測算法首先產(chǎn)生候選區(qū)域,然后對(duì)候選區(qū)域進(jìn)行分類,此類方法雖檢測精度較高,但是檢測速度較慢,不能滿足實(shí)時(shí)檢測場景的需求。相比之下,單階段的目標(biāo)檢測算法直接回歸物體的類別概率和位置坐標(biāo)值,其檢測速度遠(yuǎn)快于兩階段的目標(biāo)檢測算法,因而可以滿足實(shí)時(shí)檢測場景的需求。進(jìn)一步地,隨著近年來YOLO算法的不斷改進(jìn),基于YOLO算法的單階段的目標(biāo)檢測算法在精度上已經(jīng)接近于兩階段的檢測算法,逐漸在目標(biāo)檢測領(lǐng)域占據(jù)重要地位。
迄今為止,已有許多學(xué)者將基于YOLO算法的目標(biāo)檢測技術(shù)應(yīng)用在農(nóng)林業(yè)領(lǐng)域。張志遠(yuǎn)等[1]通過添加Transformer模塊、改進(jìn)特征融合以及增加淺層下采樣的P2模塊,提出了一種基于改進(jìn)YOLOv5的自然環(huán)境下櫻桃果實(shí)的識(shí)別網(wǎng)絡(luò)。閆彬等[2]設(shè)計(jì)了BottleneckCSP?B特征提取模塊,改進(jìn)了網(wǎng)絡(luò)的初始錨框尺寸,并將SE模塊嵌入骨干網(wǎng)絡(luò),提出了一種改進(jìn)YOLOv5m的蘋果采摘實(shí)時(shí)識(shí)別方法。張偉康等[3]在主干網(wǎng)絡(luò)中引入CBAM注意力模塊來提高網(wǎng)絡(luò)對(duì)蔬菜目標(biāo)的關(guān)注度,加入Transformer模塊來增強(qiáng)模型對(duì)全局信息的捕捉能力,提出了一種改進(jìn)YOLOv5算法的蔬菜苗田雜草檢測方法。楊其晟等[4]結(jié)合協(xié)同注意力模塊設(shè)計(jì)了新的主干網(wǎng)絡(luò),利用新的檢測尺度和拆分的卷積運(yùn)算設(shè)計(jì)了新的特征融合網(wǎng)絡(luò),最后選用了CIoU作為邊框回歸的損失函數(shù),提出了一種改進(jìn)YOLOv5的蘋果花朵生長狀態(tài)檢測方法。黃彤鑌等[5]通過引入CBAM注意力機(jī)制來提高網(wǎng)絡(luò)的特征提取能力,采用α-IoU損失函數(shù)代替GIoU損失函數(shù)來提高邊界框定位精度,提出了一種基于YOLOv5改進(jìn)模型的柑橘識(shí)別方法。
在綠籬檢測過程中,綠籬和背景環(huán)境經(jīng)常融為一體,現(xiàn)有的目標(biāo)檢測算法很難準(zhǔn)確檢測出目標(biāo)綠籬,此外,綠籬之間往往出現(xiàn)相互聚集、相互遮擋的情況,進(jìn)一步增加了檢測的難度。盡管傳統(tǒng)的YOLOv5及其改進(jìn)算法具有訓(xùn)練時(shí)間短、推理速度快以及權(quán)重文件小的特點(diǎn),但是在檢測球形綠籬時(shí)往往精度較低。換言之,現(xiàn)有文獻(xiàn)所提出的改進(jìn)YOLOv5算法并不完全適用于球形綠籬檢測。為此,本文提出一種基于YOLOv5s的園林球形綠籬檢測方法YOLO-CBS。具體來說,通過在主干網(wǎng)絡(luò)中加入坐標(biāo)注意力機(jī)制、將特征融合網(wǎng)絡(luò)由PANet替換為BiFPN、將輸出端的NMS替換為Soft-NMS的方法,提高模型在各種園林場景中對(duì)球形綠籬的檢測能力,并通過試驗(yàn)加以驗(yàn)證。
1 YOLOv5s的網(wǎng)絡(luò)架構(gòu)
1.1 YOLO的發(fā)展歷程
YOLOv5s網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
Redmon等[6]首次提出一種單階段的目標(biāo)檢測網(wǎng)絡(luò)YOLOv1,其核心思想是將整張圖片作為網(wǎng)絡(luò)的輸入,在輸出層直接回歸預(yù)測框的位置和所屬的類別,該方法具有檢測速度快、遷移能力強(qiáng)的優(yōu)點(diǎn),但對(duì)小目標(biāo)、密集目標(biāo)的檢測效果不盡如人意,且定位誤差較大。為了克服YOLOv1在召回率和定位精度方面的不足,Redmon等[7]通過將主干網(wǎng)絡(luò)由24層卷積層更換為Darknet-19、采用細(xì)粒度特征并引入錨框機(jī)制等方法,提出了YOLOv2算法。為了提高網(wǎng)絡(luò)的檢測精度,解決小目標(biāo)難以檢測的問題,Redmon等[8]通過將主干網(wǎng)絡(luò)由Darknet-19更換為Darknet-53、引入多尺度預(yù)測和使用多標(biāo)簽分類等策略,提出了YOLOv3算法。Bochkovskiy等[9]將主干網(wǎng)絡(luò)由Darknet-53更換為CSPDarkent53,并采用空間金字塔池化(Spatial Pyramid Pooling, SPP)[10]來擴(kuò)大感受野,以及引入路徑聚合網(wǎng)絡(luò)(Path Aggregation Network, PANet)[11]來改善特征融合,在YOLOv3的基礎(chǔ)上提出了YOLOv4算法,與YOLOv3相比,YOLOv4算法在檢測精度和檢測速度上均得到了提高。
YOLOv5目標(biāo)檢測算法是在YOLOv4的基礎(chǔ)上提出的單階段檢測算法,具有訓(xùn)練時(shí)間短、推理速度快以及權(quán)重文件小的優(yōu)點(diǎn)。進(jìn)一步地,根據(jù)網(wǎng)絡(luò)深度和寬度的不同,YOLOv5可以劃分為YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x五個(gè)模型。YOLOv5s模型相對(duì)較小,可以兼顧檢測速度和檢測精度,因此本文基于YOLOv5s模型進(jìn)行綠籬檢測研究。YOLOv5s的網(wǎng)絡(luò)模型由四部分組成,分別為輸入端、Backbone、Neck、Head。
1.2 YOLOv5s的輸入端
原始YOLOv5s算法輸入端主要由Mosaic數(shù)據(jù)增強(qiáng)、自適應(yīng)錨框計(jì)算以及自適應(yīng)圖片縮放等模塊組成。
1) Mosaic數(shù)據(jù)增強(qiáng)方法:主要思想是抽取四張圖片進(jìn)行隨機(jī)裁剪、縮放后,再隨機(jī)排列拼接形成一張圖片。該方法不僅可以豐富數(shù)據(jù)集而且可以大幅提高網(wǎng)絡(luò)的訓(xùn)練速度,并且降低模型對(duì)內(nèi)存的需求,具體的效果如圖2所示。
2) 自適應(yīng)錨框計(jì)算:在訓(xùn)練過程中,針對(duì)不同的數(shù)據(jù)集來設(shè)定初始長寬的錨框,網(wǎng)絡(luò)在初始錨框的基礎(chǔ)上輸出預(yù)測框,進(jìn)而和真實(shí)框進(jìn)行比對(duì)計(jì)算得到二者的偏差,最后再反向傳播更新模型的參數(shù)。
3) 自適應(yīng)圖片縮放:將采集到的長寬各不相同的原始圖片統(tǒng)一縮放到一個(gè)標(biāo)準(zhǔn)尺寸再送入網(wǎng)絡(luò)模型中。
1.3 YOLOv5s的Backbone
原始YOLOv5s算法的Backbone主要由CBS模塊、CSP1_X以及空間金字塔池化(Spatial Pyramid Pooling-Fast, SPPF)組成(圖1)。相比之前的版本,YOLOv5s把網(wǎng)絡(luò)的第一層Focus模塊換為一個(gè)6×6大小的卷積層,使模型運(yùn)算變得更加高效。此外,YOLOv5s的空間金字塔池化由SPP換成了SPPF,即將并行的最大池化改成了串行的最大池化,在不損失計(jì)算精度的前提下提高計(jì)算速度。
1.4 YOLOv5s的Neck
原始YOLOv5s算法的Neck采用路徑聚合網(wǎng)絡(luò)(PANet),相比于特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network, FPN)[12],PANet增加了一條自下向上的信息傳遞路徑,因而充分利用了底層特征的精準(zhǔn)定位信息,縮短了底層與頂層特征之間的信息路徑。由于PANet從不同的主干層對(duì)不同的檢測層進(jìn)行參數(shù)聚合,所以可以更好地實(shí)現(xiàn)特征融合。
1.5 YOLOv5s的Head
原始YOLOv5s算法的Head主要包括損失計(jì)算和非極大值抑制(Non?Maximum Suppression, NMS)[13]。定位損失計(jì)算采用CIoU_Loss,CIoU_Loss不僅考慮了真實(shí)框和預(yù)測框的重疊面積、中心點(diǎn)距離,還考慮了真實(shí)框和預(yù)測框的長寬比。分類損失和置信度損失計(jì)算采用BCE_Loss。其中定位損失和分類損失只計(jì)算正樣本,而置信度損失則計(jì)算所有樣本。NMS的本質(zhì)是搜索局部極大值,抑制非極大值元素。在目標(biāo)檢測中,將NMS用于消除多余的檢測框,避免一個(gè)目標(biāo)出現(xiàn)多個(gè)檢測框。
2 基于YOLOv5s的綠籬檢測方法
當(dāng)綠籬的背景顏色與目標(biāo)綠籬本身顏色接近時(shí),現(xiàn)有的YOLOv5s算法無法準(zhǔn)確檢測出目標(biāo)綠籬。此外,當(dāng)綠籬之間出現(xiàn)聚集、遮擋時(shí),現(xiàn)有的YOLOv5s算法往往出現(xiàn)漏檢、錯(cuò)檢的情況。針對(duì)以上問題,本文通過在主干網(wǎng)絡(luò)添加注意力機(jī)制、改進(jìn)特征融合網(wǎng)絡(luò)、修改輸出端的非極大值抑制,提出新的算法YOLO-CBS,以提高綠籬檢測的精度。
2.1 Backbone改進(jìn)
人類在觀察圖像的時(shí)候,并不是把整幅圖像的每個(gè)位置像素都掃視一遍,而是根據(jù)需求將注意力集中到圖像的特定部分。受此啟發(fā),科學(xué)家們?cè)谏窠?jīng)網(wǎng)絡(luò)中引入注意力機(jī)制,讓神經(jīng)網(wǎng)絡(luò)具有將注意力集中到一部分特征的能力。
常用的注意力機(jī)制主要包括SENet[14]和CBAM[15]等。SENet只考慮編碼通道間信息而忽略了重要的位置信息,CBAM嘗試在通道上進(jìn)行全局池化來引入位置信息,但這種方式只能捕獲局部的信息,而無法獲取長范圍依賴的信息。相比之下,坐標(biāo)注意力(CA)[16]不僅可以獲取跨通道信息,還可以獲取方向感知和位置敏感信息,使模型更準(zhǔn)確地識(shí)別和定位感興趣的目標(biāo)。
CA是一個(gè)靈活且輕量的模塊,可以即插即用到現(xiàn)有的目標(biāo)檢測模型中,能夠在不明顯增加計(jì)算量的前提下,有效提高網(wǎng)絡(luò)模型的檢測精度。因此,本文在Backbone 最后一層添加CA模塊,以提高綠籬檢測的精度。CA將通道注意力分解為兩個(gè)一維特征進(jìn)行編碼,沿著空間兩個(gè)方向聚合特征,分別捕獲遠(yuǎn)程依賴關(guān)系和精確位置信息,編碼成方向感知和位置敏感的注意力特征圖,從而增強(qiáng)對(duì)感興趣目標(biāo)的檢測能力。實(shí)現(xiàn)CA主要包含兩個(gè)步驟,即坐標(biāo)信息嵌入和坐標(biāo)注意力生成。其網(wǎng)絡(luò)如圖3所示。
1) 坐標(biāo)信息嵌入。沿水平方向和垂直方向通過全局平均池化對(duì)每個(gè)通道進(jìn)行一維特征編碼,具體來說,對(duì)于輸入維度為[C×H×W]的特征圖[X,]分別沿水平方向和垂直方向使用大小為[(1,W)]和[(H,1)]的池化層對(duì)每個(gè)通道進(jìn)行平均池化操作,進(jìn)而得到特征圖[zh∈RC×H×1]和[zw∈RC×1×W]。池化公式如式(1)、式(2)所示。
[zhc(h)=1W0≤j≤Wxc(h,j)] (1)
[zwc(w)=1H0≤i≤Hxc(i,w)] (2)
式中: [C]——特征圖的通道數(shù)目;
[W]——通道的寬度;
[H]——通道的高度;
[xc(h,j)]——輸入特征圖第[c]個(gè)通道中第[h]行、第[j]列的元素;
[xc(i,w)]——輸入特征圖第[c]個(gè)通道中第[i]行、第[w]列的元素。
2) 坐標(biāo)注意力生成。首先將特征圖[zh]進(jìn)行維度移位得到[zh∈RC×1×H,]然后將其與[zw]進(jìn)行拼接得到[C×1×(H+W),]接著使用卷積核個(gè)數(shù)為r、大小為1×1卷積變換函數(shù)[F1]對(duì)其進(jìn)行卷積操作,然后通過非線性激活函數(shù)[δ]獲得中間特征圖[f。]計(jì)算過程如式(3)所示。
[f=δ(F1([zh,zw]))] (3)
式中: [[zh,zw]]——沿空間維度的拼接運(yùn)算。
進(jìn)一步地,沿空間維度將[f]分解為兩個(gè)張量[fh∈RC/r×H]和[fw∈RC/r×W,]然后利用兩個(gè)1×1卷積運(yùn)算函數(shù)[Fh]和[Fw]分別對(duì)[fh]和[fw]進(jìn)行卷積運(yùn)算,進(jìn)而獲得與[X]相同通道數(shù)的特征圖[gh]和[gw。]計(jì)算如式(4)、式(5)所示。
[gh=σ(Fh(fh))] (4)
[gw=σ(Fw(fw))] (5)
式中: [σ]——sigmod激活函數(shù)。
CA的最終輸出如式(6)所示。
[yc(i,j)=xc(i,j)×ghc(i)×gwc(j)] (6)
式中: [xc(i,j)]——輸入特征圖第[c]個(gè)通道中第[i]行、第[j]列的元素;
[yc(i,j)]——輸出特征圖第[c]個(gè)通道中第[i]行、第[j]列的元素。
2.2 Neck改進(jìn)
YOLOv3的Neck模塊采用的是特征金字塔網(wǎng)絡(luò)(FPN),該網(wǎng)絡(luò)通過一條自上而下的通路進(jìn)行特征融合,如圖4(a)所示,然后利用具有更深語義信息的特征層進(jìn)行預(yù)測,但是該網(wǎng)絡(luò)由于采用的信息傳遞是單方向的,因而會(huì)丟失部分位置信息,進(jìn)而會(huì)降低目標(biāo)檢測的精度。YOLOv5s采用的是路徑聚合網(wǎng)絡(luò)(PANet),如圖4(b)所示,該網(wǎng)絡(luò)在FPN的基礎(chǔ)上添加一條自下而上的通路,因此可以將底層的位置信息傳遞到特征圖中,使得特征圖既有頂層的語義信息又有底層的位置信息,有利于提高目標(biāo)檢測的精度,然而PANet不能實(shí)現(xiàn)連接的跨尺度以及特征的加權(quán),特征融合能力不能滿足綠籬檢測的需求。
為了克服PANet的不足,本文將原始YOLOv5s中的特征融合網(wǎng)絡(luò)置換為雙向特征金字塔網(wǎng)絡(luò)(Bidirectional Feature Pyramid Network, BiFPN)[17],如圖4(c)所示,以加強(qiáng)網(wǎng)絡(luò)的特征融合能力,提高球形綠籬的檢測精度。BiFPN是在PANet的基礎(chǔ)上引入了跨尺度連接和加權(quán)特征融合兩部分。由于只有一條輸入路徑的節(jié)點(diǎn)對(duì)特征融合網(wǎng)絡(luò)的貢獻(xiàn)很小,相比PANet,BiFPN刪除了此類節(jié)點(diǎn),以降低模型的復(fù)雜度,進(jìn)而提高計(jì)算效率;對(duì)于屬于同一層級(jí)的節(jié)點(diǎn),相比PANet,BiFPN在輸入節(jié)點(diǎn)與輸出節(jié)點(diǎn)之間新增一條信息傳輸路徑,以融合更多的特征信息。此外,由于分辨率不同的輸入特征對(duì)輸出特征的貢獻(xiàn)是不同的,BiFPN為每個(gè)輸入特征賦予可學(xué)習(xí)的權(quán)重,以實(shí)現(xiàn)特征的加權(quán)融合。進(jìn)一步地,BiFPN采用一種快速歸一化的特征融合方法,如式(7)所示。
[O=1≤i≤Nωiε+1≤i≤Nωi×Ii] (7)
式中: [Ii]——輸入特征圖;
[O]——輸出特征圖;
[ωi]——可學(xué)習(xí)的權(quán)重,采用ReLU激活函數(shù)來" " " " " " " " "確保[ωi∈(0,1)];
[ε]——確保數(shù)值的穩(wěn)定的小值,取0.000 1;
N——輸入特征圖的個(gè)數(shù)。
2.3 Head改進(jìn)
原始YOLOv5s算法的Head模塊采用的是非極大值抑制(NMS),其基本思想是利用置信度高的邊框抑制置信度低且重疊度高的邊框,目的是消除對(duì)于同一物體多余的預(yù)測框。NMS雖然簡單且高效,但是當(dāng)要檢測的目標(biāo)物出現(xiàn)聚集和遮擋情況時(shí),簡單地過濾掉置信度低且重疊度高的邊框可能會(huì)導(dǎo)致漏檢問題,而本文要檢測的球形綠籬經(jīng)常以多株聚集的形式出現(xiàn)在園林環(huán)境中,因此采用NMS不適用于本文球形綠籬的檢測。
為解決上述問題,本文引入Soft-NMS[18]方法。相比于傳統(tǒng)的NMS,該方法根據(jù)交并比(Intersection over Union, IoU)的大小為相鄰檢測框設(shè)置衰減函數(shù)而非徹底將其置信度置為0,就是不直接刪除IoU大于閾值的框,而是降低其置信度。相比于傳統(tǒng)的NMS,Soft?NMS算法可以有效提高綠籬檢測的召回率,減少漏檢情況的發(fā)生。計(jì)算如式(8)所示。
[Si=SiIoU(M,bi)lt;NtSi[1-IoU(M,bi)]IoU(M,bi)≥Nt] (8)
式中: [M]——當(dāng)前置信度最高的預(yù)測框;
[bi]——相鄰待篩選預(yù)測框;
[IoU(M,bi)]——交并比;
[Si]——[bi]的置信度;
[Nt]——交并比的閾值。
2.4 YOLO?CBS算法的網(wǎng)絡(luò)架構(gòu)
為提高園林環(huán)境中聚集、遮擋球形綠籬的檢測精度,本文在原始YOLOv5s算法的主干網(wǎng)絡(luò)加入CA機(jī)制,將特征融合網(wǎng)絡(luò)由PANet改為BiFPN,以及將輸出端的NMS改為Soft-NMS,提出YOLO-CBS算法,其網(wǎng)絡(luò)架構(gòu)如表1所示。其中,F(xiàn)rom列表示輸入特征來自哪一層網(wǎng)絡(luò),Params列表示該層網(wǎng)絡(luò)的參數(shù)量,Module列表示該層的網(wǎng)絡(luò)模塊。
3 試驗(yàn)結(jié)果與分析
3.1 數(shù)據(jù)集
本文數(shù)據(jù)采集地點(diǎn)為廣西大學(xué)校園以及廣西南寧市內(nèi)的公園,一共包含2 380張圖片,其中訓(xùn)練集、驗(yàn)證集、測試集的圖片分別為1 558張、422張、400張。數(shù)據(jù)的采集綜合考慮了場景、角度、光照條件、綠籬的生長狀態(tài)等因素,使得數(shù)據(jù)集具有足夠的泛化屬性。數(shù)據(jù)集中的部分樣本如圖5所示。
本文首先采用圖片標(biāo)注工具LabelImg對(duì)采集到的數(shù)據(jù)中的球形綠籬樣本進(jìn)行標(biāo)注,命名為sphere。標(biāo)注結(jié)果顯示,訓(xùn)練集、驗(yàn)證集、測試集中的球形綠籬分別為3 964張、1 058張、1 335株,共同組成了球形綠籬的數(shù)據(jù)集。然后,將標(biāo)注好的圖像信息保存為.xml格式,包括目標(biāo)物體的類別信息和目標(biāo)框的坐標(biāo)信息。其中,訓(xùn)練集中球形綠籬株數(shù)的統(tǒng)計(jì)和綠籬中心點(diǎn)的分布如圖6所示。
3.2 試驗(yàn)環(huán)境
本文的試驗(yàn)環(huán)境如表2所示。在模型的訓(xùn)練過程中,輸入圖像的尺寸為640像素×640像素,初始學(xué)習(xí)率設(shè)置為0.01,最終學(xué)習(xí)率設(shè)置為0.1,采用隨機(jī)梯度下降(Stochastic Gradient Descent, SGD)作為優(yōu)化器,SGD動(dòng)量設(shè)為0.937,權(quán)重衰減系數(shù)設(shè)為0.000 5。批訓(xùn)練數(shù)據(jù)大小為16,模型迭代輪數(shù)為200輪。
3.3 評(píng)價(jià)指標(biāo)
本文對(duì)模型的評(píng)價(jià)指標(biāo)有:精確率P(Precision)、召回率R(Recall)、平均精度(Average Precision, AP)、平均精度均值(mean Average Precision, mAP)以及檢測速度(Frames Per Second, FPS)。
1) 精確率:模型預(yù)測是正樣本并且真實(shí)也是正樣本的數(shù)量占模型預(yù)測是正樣本的總數(shù)的比例。計(jì)算如式(9)所示。
[P=TPTP+FP×100%] (9)
式中: [TP]——模型預(yù)測是正樣本并且真實(shí)也是正樣" " " " " " " " " 本的數(shù)量;
[FP]——模型預(yù)測是正樣本但是真實(shí)是負(fù)樣本" " "的數(shù)量。
2) 召回率:模型預(yù)測是正樣本并且真實(shí)也是正樣本的數(shù)量占真實(shí)是正樣本的總數(shù)的比例。計(jì)算如式(10)所示。
[R=TPTP+FN×100%] (10)
式中: [FN]——模型預(yù)測是負(fù)樣本但是真實(shí)是正樣本的數(shù)量。
3) 平均精度:以精確率為縱軸,以召回率為橫軸,輸出的曲線與坐標(biāo)軸所圍成圖形的面積。計(jì)算如式(11)所示。
[AP=01P(R)dR] (11)
4) 平均精度均值:數(shù)據(jù)集中所有類別的平均精度的均值。計(jì)算如式(12)所示。
[mAP=1Ni=1NAPi] (12)
3.4 結(jié)果分析
為驗(yàn)證本文提出的YOLO-CBS模型的性能,采用相同的綠籬數(shù)據(jù)集和參數(shù)設(shè)置分別對(duì)YOLOv5s模型和YOLO-CBS模型進(jìn)行訓(xùn)練和驗(yàn)證。進(jìn)一步地,通過測試集輸出兩種模型的P-R曲線(圖7)。從圖7可以看出,YOLOv5s模型的mAP@0.5的指標(biāo)值為85.6%,而本文YOLO-CBS為89.0%,比YOLOv5s提高了3.4%。
3.4.1 消融試驗(yàn)
為了進(jìn)一步驗(yàn)證本文所提的YOLO-CBS算法的有效性和優(yōu)越性,本文設(shè)計(jì)了五組消融試驗(yàn),所有試驗(yàn)均使用相同的數(shù)據(jù)集和參數(shù)設(shè)置,結(jié)果如表3所示。其中,“√”表示在YOLOv5s中采用了該改進(jìn)方法,“×”表示不采用該改進(jìn)方法。在YOLOv5s的Backbone中加入CA注意力機(jī)制得到的模型1,在檢測速度略微降低的情況下平均精度相比YOLOv5s提高了0.8%;將特征融合網(wǎng)絡(luò)由PANet置換為BiFPN得到的模型2,在檢測速度略微降低的情況下平均精度相比YOLOv5s提高了0.7%;將NMS置換為Soft-NMS得到的模型3的平均精度相比YOLOv5s提高了2.6%。綜上,試驗(yàn)結(jié)果表明,本文針對(duì)綠籬目標(biāo)提出的三種改進(jìn)方法在不明顯降低檢測速度的情況下均可以提高綠籬的檢測精度。相比于原始YOLOv5s算法,本文提出的YOLO-CBS算法在綠籬檢測的平均精度上提高了3.4%,大大提升綠籬檢測的水平。
3.4.2 實(shí)例檢測
為了更為直觀地驗(yàn)證所提出的YOLO-CBS算法的優(yōu)越性,本文在綠籬測試集中選取了三組典型代表性圖片進(jìn)行測試,進(jìn)一步對(duì)比YOLOv5s算法和YOLO-CBS算法在不同園林場景下綠籬的檢測結(jié)果,如圖8所示。
針對(duì)第一組圖片,如圖8(a)、圖8(b)所示,球形綠籬和周圍環(huán)境極其相似,肉眼近乎無法分辨出來,從檢測結(jié)果可以看出,YOLOv5s模型有一株綠籬漏檢(虛線方框位置),而本文YOLO-CBS模型可以檢測出所有的綠籬。針對(duì)第二組圖片,如圖8(c)、圖8(d)所示,共有5株球形綠籬,雖然兩種模型都沒有漏檢,但針對(duì)同一株綠籬的置信度來說,YOLOv5s的檢測結(jié)果的置信度分別為(序號(hào)由15):0.48、0.76、0.76、0.70、0.91,而本文YOLO-CBS的檢測結(jié)果中相應(yīng)的置信度分別為0.90、0.81、0.90、0.88、0.91。易知,相比原始YOLOv5s算法,本文提出的YOLO-CBS算法在綠籬檢測場景相對(duì)簡單時(shí)所檢測出綠籬的置信度更高。針對(duì)第三組圖片,如圖8(e)、圖8(f)所示,球形綠籬出現(xiàn)聚集遮擋的情況,與YOLO-CBS的檢測結(jié)果相比,YOLOv5s出現(xiàn)一次誤檢(箭頭位置)和一次漏檢(虛線方框位置)。綜上,三組典型圖片的檢測結(jié)果證明,相比YOLOv5s模型,本文提出的YOLO-CBS模型在精確率和召回率上都有明顯的提高,尤其對(duì)園林環(huán)境干擾強(qiáng)以及綠籬出現(xiàn)聚集遮擋等復(fù)雜檢測場景,本文YOLO-CBS模型具有更高的檢測精度。
3.4.3 對(duì)比試驗(yàn)
為了更全面地驗(yàn)證本文YOLO-CBS算法的優(yōu)越性,設(shè)置5組對(duì)比試驗(yàn),比較本文算法與其他主流檢測算法的檢測結(jié)果,其中所有試驗(yàn)均使用相同的數(shù)據(jù)集,試驗(yàn)結(jié)果如表4所示。
從表4可以看出,與兩階段的檢測算法Faster R-CNN相比,本文YOLO-CBS算法的檢測精度提高了1.7%,并且檢測速度FPS為Faster R-CNN的6倍,換言之,本文算法可以滿足實(shí)時(shí)性的綠籬檢測;與單階段的算法SSD相比,本文YOLO-CBS算法在檢測精度上提高12.6%,在檢測速度FPS上提高了21 幀/s;相比于YOLOv4,本文YOLO-CBS算法不僅檢測精度提高了2.3%,在檢測速度FPS上提高了19幀/s,而且權(quán)重體積大大降低,更容易部署到嵌入式設(shè)備上。因此,對(duì)于園林球形綠籬的檢測,本文所提YOLO-CBS算法在檢測精度和檢測速度兩方面相比于其他主流目標(biāo)檢測算法均有明顯的優(yōu)越性。
4 結(jié)論
1) 針對(duì)現(xiàn)有的目標(biāo)檢測算法很難滿足在聚集遮擋等復(fù)雜園林環(huán)境下對(duì)球形綠籬進(jìn)行快速準(zhǔn)確檢測的問題,本文基于目標(biāo)檢測算法YOLOv5s提出YOLO-CBS算法,從而改善對(duì)園林中球形綠籬的檢測效果。通過在YOLOv5s主干網(wǎng)絡(luò)的最后一層加入坐標(biāo)注意力機(jī)制加強(qiáng)模型提取綠籬特征的能力,通過將特征融合網(wǎng)絡(luò)由PANet替換為BiFPN提高模型融合綠籬特征的能力,通過將輸出端的NMS替換為Soft-NMS的方法提高模型檢測聚集遮擋綠籬的能力。
2) 與YOLOv5s模型相比,本文YOLO-CBS模型在不明顯降低檢測速度的情況下檢測精度提高3.4%。與Faster R-CNN、SSD、YOLOv4算法相比,YOLO-CBS的檢測精度分別提高1.7%、12.6%、2.3%,并且YOLO-CBS的檢測速度分別是Faster R-CNN、SSD、YOLOv4的6.3倍、1.8倍、1.7倍。
參 考 文 獻(xiàn)
[ 1 ] 張志遠(yuǎn), 羅銘毅, 郭樹欣, 等. 基于改進(jìn)YOLOv5的自然環(huán)境下櫻桃果實(shí)識(shí)別方法[J]. 農(nóng)業(yè)機(jī)械學(xué)報(bào), 2022, 53(S1): 232-240.
Zhang Zhiyuan, Luo Mingyi, Guo Shuxin, et al. Cherry fruit detection method in natural scene based on improved YOLOv5 [J]. Transactions of the Chinese Society for Agricultural Machinery, 2022, 53(S1): 232-240.
[ 2 ] 閆彬, 樊攀, 王美茸, 等. 基于改進(jìn)YOLOv5m的采摘機(jī)器人蘋果采摘方式實(shí)時(shí)識(shí)別[J]. 農(nóng)業(yè)機(jī)械學(xué)報(bào), 2022, 53(9): 28-38, 59.
Yan Shan, Fan Pan, Wang Meirong, et al. Real?time apple picking pattern recognition for picking robot based on improved YOLOv5m [J]. Transactions of the Chinese Society for Agricultural Machinery, 2022, 53(9): 28-38, 59.
[ 3 ] 張偉康, 孫浩, 陳鑫凱, 等. 基于改進(jìn)YOLOv5的智能除草機(jī)器人蔬菜苗田雜草檢測研究[J]. 圖學(xué)學(xué)報(bào), 2023, 44(2): 346-356.
Zhang Weikang, Sun Hao, Chen Xinkai, et al. Research on weed detection in vegetable seedling fields based on the improved YOLOv5 intelligent weeding robot [J]. Journal of Graphics, 2023, 44(2): 346-356.
[ 4 ] 楊其晟, 李文寬, 楊曉峰, 等. 改進(jìn)YOLOv5的蘋果花生長狀態(tài)檢測方法[J]. 計(jì)算機(jī)工程與應(yīng)用, 2022, 58(4): 237-246.
Yang Qisheng, Li Wenkuan, Yang Xiaofeng, et al. Improved YOLOv5 method for detecting growth status of apple flowers [J]. Computer Engineering and Application, 2022, 58(4): 237-246.
[ 5 ] 黃彤鑌, 黃河清, 李震, 等. 基于YOLOv5改進(jìn)模型的柑橘果實(shí)識(shí)別方法[J]. 華中農(nóng)業(yè)大學(xué)學(xué)報(bào), 2022, 41(4): 170-177.
Huang Tongbin, Huang Heqing, Li Zhen, et al. Citrus fruit recognition method based on the improved model of YOLOv5 [J]. Journal of Huazhong Agricultural University, 2022, 41(4): 170-177.
[ 6 ] Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real?time object detection [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 779-788.
[ 7 ] Redmon J, Farhadi A. YOLO9000: Better, faster, stronger [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017: 7263-7271.
[ 8 ] Redmon J, Farhadi A. YOLOv3: An incremental improvement [J]. ArXiv Preprint ArXiv: 1804.02767, 2018.
[ 9 ] Bochkovskiy A, Wang C Y, Liao H Y M. YOLOv4: Optimal speed and accuracy of object detection [J]. ArXiv Preprint ArXiv: 2004.10934, 2020.
[10] He K, Zhang X, Ren S, et al. Spatial pyramid pooling in deep convolutional networks for visual recognition [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904-1916.
[11] Liu S, Qi L, Qin H, et al. Path aggregation network for instance segmentation [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 8759-8768.
[12] Lin T Y, Dollár P, Girshick R, et al.Feature pyramid networks for object detection [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017: 2117-2125.
[13] Neubeck A, Xan Gool L. Efficient non?maximum suppression [C]. 18th International Conference on Pattern Recognition (ICPR), IEEE, 2006, 3: 850-855.
[14] Hu J, Shen L, Sun G. Squeeze?and?excitation networks [C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 7132-7141.
[15] Woo S, Park J, Lee J Y, et al. CBAM: Convolutional block attention module [C]. Proceedings of the European Conference on Computer Vision (ECCV), 2018: 3-19.
[16] Hou Q, Zhou D, Feng J. Coordinate attention for efficient mobile network design [C]. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021: 13713-13722.
[17] Tan M, Pang R, Le Q V. EfficientDet: Scalable and efficient object detection [C]. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020: 10781-10790.
[18] Bodla N, Singh B, Chellappa R, et al. Soft?NMS: Improving object detection with one line of code [C]. Proceedings of the IEEE International Conference on Computer Vision, 2017: 5561-5569.
中國農(nóng)機(jī)化學(xué)報(bào)2024年8期