高明星,關(guān)雪峰,范井麗,姚立慧
(1.內(nèi)蒙古農(nóng)業(yè)大學(xué) 能源與交通工程學(xué)院,呼和浩特 010018;2.內(nèi)蒙古路橋集團(tuán)有限責(zé)任公司,呼和浩特 010051;3.赤峰市公路管護(hù)與運(yùn)輸保障中心,赤峰 024000)
裂縫與坑洞是路面中出現(xiàn)較多的病害類型,其嚴(yán)重影響路面結(jié)構(gòu)的強(qiáng)度及駕駛安全,因此快速準(zhǔn)確檢測(cè)路面病害信息并清晰直觀傳達(dá)給養(yǎng)護(hù)作業(yè)人員具有重要的工程意義。傳統(tǒng)的公路養(yǎng)護(hù)檢測(cè)方式大多采用人工作業(yè),由于作業(yè)周期長(zhǎng)、主觀性強(qiáng)和影響交通等,很難適應(yīng)公路養(yǎng)護(hù)快速發(fā)展的需求。對(duì)于公路檢測(cè)車這種路面病害檢測(cè)方式,只能獲取行駛車道上病害的局部特征,且采集質(zhì)量與路況呈現(xiàn)正相關(guān),在顛簸路面采集的照片往往存在大量失焦與運(yùn)動(dòng)模糊情況。近年來,結(jié)合無人機(jī)(UAV)與機(jī)器視覺的檢測(cè)方法受到大量關(guān)注[1-3]。
傳統(tǒng)機(jī)器視覺的道路病害檢測(cè)方法是通過人工提取單一病害的相應(yīng)特征進(jìn)行檢測(cè),容易受多種干擾因素影響,普適性較差,如程玉柱等[4]基于布谷鳥算法搜索路面裂縫,通過得到分割閾值實(shí)現(xiàn)裂縫識(shí)別,但由于實(shí)際情況中背景復(fù)雜,導(dǎo)致閾值的泛化性較差,實(shí)際工程價(jià)值較低。唐偉等[5]結(jié)合改進(jìn)MASK勻光與K-means聚類方法實(shí)現(xiàn)對(duì)橋梁裂縫的提取,改善亮度對(duì)提取效果的影響,但該方法考慮的影響因素較少,普適性較差。
隨著近年來深度學(xué)習(xí)技術(shù)高速發(fā)展,各種道路病害檢測(cè)方法得到了井噴式的研究和應(yīng)用[6-8]。Zhang等[9]將深度卷積神經(jīng)網(wǎng)絡(luò)用于裂縫信息提取的研究中,該算法展現(xiàn)出比傳統(tǒng)方法更高的準(zhǔn)確度。Mandal等[10]研究了CSPDarknet53、Hourglass-104和EfficientNet 等不同骨干模型對(duì)裂縫識(shí)別的效果,最后YOLO模型取得最佳效果,得到了59%準(zhǔn)確率和57.3%召回率。李海東[11]利用二階段目標(biāo)檢測(cè)算法Faster R-CNN模型檢測(cè)路面破損,獲得了較高的準(zhǔn)確率和召回率,但其無法滿足實(shí)時(shí)性的要求。章世祥等[12]采用Mask R-CNN實(shí)現(xiàn)對(duì)路面裂縫的檢測(cè)與分割,但只能對(duì)單幀圖片中的病害做出實(shí)例分割。斯新華等[13]基于YOLOv4實(shí)現(xiàn)對(duì)橋梁鋼結(jié)構(gòu)表面病害的檢測(cè),但檢測(cè)精度只達(dá)到70.8%,精度較低。羅暉等[14]基于Focal loss改進(jìn)YOLOv4進(jìn)行路面病害檢測(cè),與其他目標(biāo)檢測(cè)方法相比,檢測(cè)精度較高。廖延娜等[15]通過熱力圖改進(jìn)YOLOv4解決檢測(cè)框重疊及定位問題,這種方法可以解決裂縫在一張圖片中被重復(fù)檢測(cè)的問題,但當(dāng)同一裂縫在不同照片中重復(fù)出現(xiàn)時(shí),仍會(huì)被重復(fù)檢測(cè)。李永上等[16]通過改進(jìn)YOLOv5s網(wǎng)絡(luò)與DeepSORT網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)監(jiān)控視頻下的車流量計(jì)數(shù),但其未驗(yàn)證在運(yùn)動(dòng)場(chǎng)景下的檢測(cè)性能。
通過對(duì)研究現(xiàn)狀分析發(fā)現(xiàn),目前大多數(shù)利用深度神經(jīng)網(wǎng)絡(luò)檢測(cè)病害的方法研究了路面復(fù)雜紋理及表面干擾對(duì)病害識(shí)別的影響,針對(duì)排除圖像中路域以外干擾信息的研究較少。實(shí)際檢測(cè)過程中為快速收集路面病害信息,通常會(huì)采取錄制視頻或是設(shè)定拍攝間隔閾值進(jìn)行拍照采集,因此在連續(xù)幀圖像中會(huì)出現(xiàn)大量重復(fù)的病害信息,傳統(tǒng)的檢測(cè)算法只可根據(jù)類別信息對(duì)檢測(cè)到的病害分類保存,無法進(jìn)一步區(qū)分重復(fù)出現(xiàn)的病害,造成大量冗余的檢測(cè)結(jié)果,導(dǎo)致檢測(cè)人員進(jìn)行篩選耗時(shí)較長(zhǎng),實(shí)際工程價(jià)值較低。多數(shù)研究側(cè)重于獲得病害在圖片中的形位信息,忽略了檢測(cè)路段總體的病害數(shù)量信息。檢測(cè)車通常只能采集其行駛路線上的局部病害信息,不能獲取待檢公路的全局病害信息。
綜合以上問題,為保證在多尺度與復(fù)雜背景情況下檢測(cè)路面病害的準(zhǔn)確性與實(shí)時(shí)性,本研究提出一種基于改進(jìn)YOLOv5-DeepSORT與無人機(jī)系統(tǒng)的路面病害檢測(cè)與重識(shí)別方法。改進(jìn)的檢測(cè)算法與主流檢測(cè)算法相比,在保持輕量高效的同時(shí),能準(zhǔn)確檢測(cè)出路面病害,構(gòu)建的病害重識(shí)別二級(jí)檢測(cè)機(jī)制實(shí)現(xiàn)對(duì)病害的重識(shí)別與量化統(tǒng)計(jì),較原模型的計(jì)數(shù)精度有較大提升。
在目標(biāo)檢測(cè)任務(wù)中,模型通常分為單階段與雙階段2種,YOLO模型是一種高效準(zhǔn)確的單階段目標(biāo)檢測(cè)模型[17-20],雙階段目標(biāo)檢測(cè)算法則以R-CNN系列為代表,YOLOv5算法在檢測(cè)無人機(jī)采集的數(shù)據(jù)時(shí)精度及速度達(dá)到了較好的平衡[21],因此本研究選擇YOLOv5算法作為多尺度道路病害檢測(cè)任務(wù)的基準(zhǔn)模型。其網(wǎng)絡(luò)結(jié)構(gòu)大致分為3個(gè)部分:Input輸入端、Backbone主干網(wǎng)絡(luò)、Head輸出端。第一部分輸入端控制著檢測(cè)的類別數(shù)(nc)、通道的縮放系數(shù)(depth_multiple)、C3模塊層的縮放系數(shù)(width_multiple)及錨框(anchors)個(gè)數(shù),并在訓(xùn)練階段使用自適應(yīng)錨框計(jì)算和馬賽克(Mosaic)數(shù)據(jù)增強(qiáng)等方法;第二部分主干網(wǎng)絡(luò)實(shí)現(xiàn)特征提取功能,包括Focus模塊、Conv模塊、C3模塊和空間金字塔池化(SPP)[22]模塊;第三部分Head分為2個(gè)結(jié)構(gòu),結(jié)構(gòu)1是基于PANet的特征融合模塊,結(jié)構(gòu)2為檢測(cè)頭部分,負(fù)責(zé)提取模型檢測(cè)結(jié)果,結(jié)構(gòu)如圖1所示。
圖1 YOLOv5模型網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 YOLOv5 model network structure
在檢測(cè)車或無人機(jī)采集的道路視頻畫面中,由于畫面的連續(xù)性,同一個(gè)病害會(huì)出現(xiàn)在不同幀的畫面中,這往往需要大量時(shí)間剔除重復(fù)出現(xiàn)的病害,而傳統(tǒng)的目標(biāo)檢測(cè)算法無法對(duì)重復(fù)出現(xiàn)的病害進(jìn)行判斷,因此本研究利用多目標(biāo)跟蹤算法(DeepSORT)提取視頻中出現(xiàn)的路面病害特征,并對(duì)每個(gè)目標(biāo)進(jìn)行軌跡跟蹤及ID分配,通過OpenCV模塊構(gòu)建計(jì)數(shù)單元與效果可視化,實(shí)現(xiàn)快速直觀篩查重復(fù)病害并統(tǒng)計(jì)檢測(cè)路段中的病害數(shù)量信息。
DeepSORT算法為SORT算法的改進(jìn)版本,SORT算法首先使用卡爾曼濾波算法(Kalman filetr)來預(yù)測(cè)目標(biāo)的運(yùn)動(dòng)狀態(tài),然后將軌跡預(yù)測(cè)框與目標(biāo)檢測(cè)網(wǎng)絡(luò)輸出預(yù)測(cè)框的IOU 值作為匹配因素,通過匈牙利算法(Hungarian algorithm)完成數(shù)據(jù)匹配,實(shí)現(xiàn)目標(biāo)跟蹤,SORT算法運(yùn)算較快,但當(dāng)病害被車輛遮擋后重新出現(xiàn)時(shí)會(huì)存在病害ID變化的問題。DeepSORT在SORT基礎(chǔ)上對(duì)新產(chǎn)生的軌跡進(jìn)行篩選,將新軌跡分為確定態(tài)和不確定態(tài),對(duì)于確定態(tài)的軌跡,其在和預(yù)測(cè)框連續(xù)失配30次后被刪除,而不確定態(tài)的軌跡,必須和預(yù)測(cè)框連續(xù)匹配3次才能轉(zhuǎn)為確定態(tài)。DeepSORT算法結(jié)合運(yùn)動(dòng)特征和外觀特征來計(jì)算代價(jià)矩陣,其通過引入神經(jīng)網(wǎng)絡(luò)提取的目標(biāo)特征信息作為匹配準(zhǔn)則,利用目標(biāo)檢測(cè)預(yù)測(cè)框與軌跡預(yù)測(cè)框之間的馬氏距離(Mahalanobis distance)表示目標(biāo)的運(yùn)動(dòng)特征,計(jì)算目標(biāo)框與軌跡框之間的余弦距離作為目標(biāo)的外觀特征,并對(duì)兩者加權(quán)求和得到代價(jià)矩陣,進(jìn)而根據(jù)該代價(jià)矩陣使用匈牙利算法進(jìn)行目標(biāo)的匹配。其利用級(jí)聯(lián)匹配解決目標(biāo)被遮擋時(shí)的 ID 切換問題,級(jí)聯(lián)匹配根據(jù)丟失目標(biāo)的次數(shù)對(duì)軌跡進(jìn)行優(yōu)先級(jí)排序,對(duì)更活躍的軌跡進(jìn)行優(yōu)先級(jí)排序可以顯著減少 ID 切換。即該算法主要分為軌跡跟蹤模塊和數(shù)據(jù)匹配模塊,其中軌跡跟蹤模塊通過匹配軌跡和目標(biāo)框進(jìn)行卡爾曼濾波預(yù)測(cè)和更新,數(shù)據(jù)匹配模塊利用級(jí)聯(lián)匹配和IOU匹配將軌跡框與目標(biāo)框關(guān)聯(lián)。
OpenCV(Open Source Computer Vision Library)是一款常用的處理計(jì)算機(jī)視覺問題的開源軟件庫,本研究通過該軟件庫中的函數(shù)將DeepSORT的跟蹤與病害計(jì)數(shù)結(jié)果可視化。
針對(duì)公路路面病害檢測(cè)過程中存在病害尺度變化大、無人機(jī)視角下存在過多的路域復(fù)雜背景和檢測(cè)框精度差等問題,本研究對(duì)YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)提出3點(diǎn)改進(jìn),命名為ECB-YOLOv5,結(jié)構(gòu)如圖2所示。一是通過構(gòu)建ECIoU損失函數(shù)替換GIoU損失函數(shù),本研究將EIOU[23]的寬高損失和CIOU[24]的橫縱比引入GIoU損失函數(shù)中,提升預(yù)測(cè)框的預(yù)測(cè)結(jié)果,加快模型的回歸速度;二是在原PANet[25]的特征融合網(wǎng)絡(luò)結(jié)構(gòu)上結(jié)合BiFPN[24]網(wǎng)絡(luò)結(jié)構(gòu)的思想,將Backbone第6層輸出的中等尺度特征與中等尺度的檢測(cè)頭之間添加了新的特征融合通路,以構(gòu)建新的重復(fù)多尺度特征融合模塊,使得模型融合更多尺度的特征信息,提升模型對(duì)多尺度病害的檢測(cè)能力;三是將坐標(biāo)注意力機(jī)制(Coordinate Attention)[27]加入Backbone第10層,使模型更加關(guān)注病害特征,減少模型對(duì)路域外的物體做出誤檢,并提升檢測(cè)精度。
圖2 ECB-YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 ECB-YOLOv5 network architecture
YOLOv5用以計(jì)算預(yù)測(cè)框(predicted box,PB)和真實(shí)框(ground truth,GT)差距的函數(shù)為GIoU損失函數(shù)表示,其原理是找到最小封閉矩形A,從而計(jì)算損失,見式(1)和式(2)。
(1)
LGIoU=1-GIoU。
(2)
式中:GIoU為表示廣義交并比;LGIoU為GIoU損失函數(shù);IOU為預(yù)測(cè)框與真實(shí)框的交并比;SA、SPB和SGT分別表示各框的面積。
GIoU通過重疊面積計(jì)算損失,但當(dāng)檢測(cè)框包含真實(shí)框時(shí)則會(huì)導(dǎo)致GIoU失效。目前多數(shù)研究將GIoU損失改進(jìn)為CIoU損失,其通過計(jì)算中心點(diǎn)距離和縱橫比,提升了模型的檢測(cè)精度并加快了收斂速度,見式(3),其中縱橫比計(jì)算因子見式(4)和式(5)。
(3)
(4)
(5)
式中:b和bgt為PB和GT中心點(diǎn)坐標(biāo);ρ為上述2點(diǎn)的歐式距離;c為能夠同時(shí)包含PB和GT的最小外接框的對(duì)角線距離;α·v代表預(yù)測(cè)框縱橫比擬合真實(shí)框縱橫比的因子;α代表權(quán)重函數(shù);v代表長(zhǎng)寬比;w、wgt和h、hgt分別表示PB和GT的寬度和高度。
但縱橫比描述的是相對(duì)值,并不能精確表達(dá)預(yù)測(cè)框長(zhǎng)寬與真實(shí)框長(zhǎng)寬的差距。本研究提出一種新的損失函數(shù)ECIoU,該損失函數(shù)與CIoU相比精確地計(jì)算了寬度損失及高度損失,見式(6)。
(6)
式中:LECIoU為ECIoU損失函數(shù);Cw和Ch表示覆蓋PB和GT的最小外接框的寬度和高度。
相比于GIoU損失函數(shù)ECIoU損失函數(shù)進(jìn)一步增強(qiáng)損失函數(shù)的表達(dá)并加速模型收斂,提升模型的預(yù)測(cè)精度。
注意力機(jī)制目前在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用非常廣泛,其可使模型關(guān)注關(guān)鍵區(qū)域,即強(qiáng)化重要信息并抑制無效信息,同時(shí)起到結(jié)合全局信息的作用。本研究通過合理的添加注意力機(jī)制提升模型在復(fù)雜背景中準(zhǔn)確定位病害位置的能力。主流的注意力算法會(huì)同時(shí)計(jì)算通道注意力與空間注意力,這會(huì)大大降低YOLOv5s這種輕量模型的計(jì)算速度。坐標(biāo)注意力機(jī)制(Coordinate Attention,CA)將位置信息嵌入到了通道注意力中,從而快速獲取對(duì)方向和位置敏感的特征圖,增加模型的檢測(cè)精度,使網(wǎng)絡(luò)能在避免大量計(jì)算開銷的前提下參與較大的區(qū)域特征計(jì)算,結(jié)構(gòu)如圖3所示。
圖3 CA模塊Fig.3 Coordinate Attention module
(7)
(8)
(9)
對(duì)于坐標(biāo)注意力生成部分,首先級(jí)聯(lián)(concat)之前模塊生成的2個(gè)特征圖,依次使用1×1卷積(Conv2d)、歸一化模塊(BN)和非線性激活函數(shù)(Act)生成中間特征圖f,接下來沿著水平和豎直將f切分(Split)成2個(gè)單獨(dú)的張量,再次使用1×1卷積(Conv2d)和激活函數(shù)(sigmoid)變換將2個(gè)張量變換為具有相同通道數(shù)的注意力圖,最終將2個(gè)注意力圖與輸入特征圖相乘來形成對(duì)方向和位置敏感的注意力權(quán)重。
YOLOv5的特征融合模塊為路徑聚合網(wǎng)絡(luò)(PANet),如圖4(a)所示,首先通過一條自上而下的通路進(jìn)行特征融合,獲得具有更高語義信息的特征圖,有利于物體分類;其次通過一條自下而上的通路,獲得具有更多位置信息的特征圖,有利于物體定位。EfficientDet中提出的雙向特征金字塔網(wǎng)絡(luò)(BiFPN)結(jié)構(gòu)如圖4(b)所示,其中虛線部分可使模型重復(fù)獲取初始特征信息,其使用的帶權(quán)重的特征融合機(jī)制一定程度上提升了網(wǎng)絡(luò)獲取特征的能力,但增加了模型計(jì)算復(fù)雜度。
圖4 特征融合網(wǎng)絡(luò)Fig.4 Feature fusion network
本研究構(gòu)建的重復(fù)特征融合網(wǎng)絡(luò)結(jié)構(gòu)如圖4(c)所示,為簡(jiǎn)化模型結(jié)構(gòu)并降低計(jì)算量,在PANet網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上增加一條傳遞初始特征信息的通路,增強(qiáng)了模型對(duì)特征的提取能力,并使用級(jí)聯(lián)融合作為新結(jié)構(gòu)的特征融合機(jī)制,減少加權(quán)帶來的計(jì)算復(fù)雜度。
目前公開的路面病害數(shù)據(jù)集均由手持設(shè)備或是道路檢測(cè)車拍攝,只包含局部的路面病害信息。為獲得完整的公路病害信息,本研究利用無人機(jī)采集病害的宏觀信息并結(jié)合道路檢測(cè)車獲取病害微觀信息,以此來構(gòu)建具有多尺度病害及復(fù)雜背景的路面病害數(shù)據(jù)集。在采集階段為保證采集質(zhì)量、飛行安全、交通安全且綜合考慮光照條件、拍攝角度和偏移距離等因素,設(shè)定無人機(jī)勻速飛行并垂直向下拍攝,使用的無人機(jī)型號(hào)為DJI Mini2,采集效果如圖5所示。
圖5 無人機(jī)采集的病害圖片F(xiàn)ig.5 Disease pictures collected by UAV
為對(duì)所提出的ECB-YOLOv5網(wǎng)絡(luò)進(jìn)行訓(xùn)練驗(yàn)證,構(gòu)建了1個(gè)含有940張圖片的公路路面病害數(shù)據(jù)集。該數(shù)據(jù)集由自行采集的700張病害圖片及部分公開數(shù)據(jù)集[28]中收集的240張圖片構(gòu)成,按照8.5∶1.5的比例劃分為訓(xùn)練集和驗(yàn)證集,并進(jìn)行統(tǒng)一的細(xì)粒度標(biāo)注。本研究直接在訓(xùn)練階段進(jìn)行數(shù)據(jù)增強(qiáng),因此未使用增強(qiáng)方式對(duì)數(shù)據(jù)集進(jìn)行擴(kuò)充。
模型訓(xùn)練均基于云平臺(tái),其顯卡為Tesla V100 GPU,32.0 GB內(nèi)存,試驗(yàn)?zāi)P突赑ython3.8計(jì)算機(jī)語言及PyTorch深度學(xué)習(xí)框架構(gòu)建[29]。因本研究對(duì)YOLOv5模型結(jié)構(gòu)進(jìn)行了修改,為保證訓(xùn)練結(jié)果具有可比較性,均不使用預(yù)訓(xùn)練權(quán)重訓(xùn)練,且在訓(xùn)練時(shí)使用統(tǒng)一的超參數(shù)。參與網(wǎng)絡(luò)進(jìn)行訓(xùn)練的單個(gè)批次圖片示例如圖6所示,超參數(shù)數(shù)值與數(shù)據(jù)增強(qiáng)方式概率見表1。
表1 超參數(shù)配置Tab.1 Hyperparameters
圖6 參與訓(xùn)練的圖片F(xiàn)ig.6 Take part in the training picture
在訓(xùn)練階段,模型訓(xùn)練效果良好,損失函數(shù)曲線如圖7所示,其中box_loss為ECIoU損失函數(shù)均值,該數(shù)值代表檢測(cè)框的準(zhǔn)確程度。obj_loss判斷每個(gè)網(wǎng)格是否存在物體,該數(shù)值代表目標(biāo)檢測(cè)準(zhǔn)確程度。cls_loss為分類損失均值,該數(shù)值代表分類準(zhǔn)確程度。經(jīng)過300輪訓(xùn)練后,box_loss、obj_loss、cls_loss均低于0.03,逐漸趨于穩(wěn)定,說明在訓(xùn)練階段ECB-YOLOv5網(wǎng)絡(luò)模型各項(xiàng)超參數(shù)設(shè)置合理,學(xué)習(xí)效果較為理想。
圖7 訓(xùn)練中各損失數(shù)值Fig.7 The value of each loss in training
采用mAP50、FPS(Frames Per Second)、F1分?jǐn)?shù)和GFLOPs等指標(biāo)作為模型性能的評(píng)價(jià)指標(biāo)。mAP50表示IoU閾值為0.5時(shí)模型裂縫與坑槽的平均檢測(cè)精度,反映模型對(duì)不同類別目標(biāo)的綜合識(shí)別能力,以mAP表示;FPS是指模型每秒推斷幀數(shù),用于衡量模型的速度指標(biāo),試驗(yàn)結(jié)果基于本地平臺(tái)GTX960M顯卡計(jì)算得出;F1分?jǐn)?shù)為P(精確率,Precision)和R(召回率,Recall)的調(diào)和平均值,可以為類別數(shù)量不均衡情況下模型的性能提供綜合評(píng)價(jià);GFLOPs為1時(shí)代表每秒10億次的浮點(diǎn)運(yùn)算,用于衡量訓(xùn)練模型時(shí)的計(jì)算復(fù)雜度。
為驗(yàn)證本研究提出的損失函數(shù)的有效性,分別訓(xùn)練以GIOU、EIOU及ECIOU作為損失函數(shù)的YOLOv5s模型,訓(xùn)練結(jié)果見表2。試驗(yàn)結(jié)果表明使用ECIOU損失函數(shù)的mAP相較于使用GIOU的YOLOv5s模型提升0.32%,較EIOU損失函數(shù)提升0.14%。GFLOPs值未改變,說明模型的復(fù)雜度基本不變。因此證明ECIoU有更好的性能,在后續(xù)的試驗(yàn)中均使用ECIoU作為模型的損失函數(shù)。
表2 不同損失函數(shù)訓(xùn)練結(jié)果Tab.2 Results of different loss function training
2)注意力模塊性能驗(yàn)證
通過對(duì)比TR[30]自注意力模塊(Transformer),CBAM[31](Convolutional Block Attention Module)注意力模塊及CA注意力模塊驗(yàn)證注意力機(jī)制對(duì)提升病害檢測(cè)能力的有效性,試驗(yàn)結(jié)果見表3。模型1為基準(zhǔn)網(wǎng)絡(luò)的訓(xùn)練結(jié)果,模型2在基準(zhǔn)網(wǎng)絡(luò)基礎(chǔ)上加入了CA注意力機(jī)制,與基準(zhǔn)模型相比GFLOPs值未改變,mAP提升1.21%,FPS降低0.78幀/s,說明CA注意力模塊可以有效提升模型對(duì)于病害的檢測(cè)精度,但檢測(cè)幀率有所下降。在基準(zhǔn)網(wǎng)絡(luò)加入CBAM的模型3相較于基準(zhǔn)模型,GFLOPs增大0.2,mAP降低1.43%,FPS降低3.23幀/s,模型4在基準(zhǔn)模型增加TR模塊后GFLOPs增大0.3,mAP降低5.14%,FPS降低3.68幀/s,說明CBAM與Transformer模塊在基于YOLOv5s的無人機(jī)多尺度路面病害檢測(cè)任務(wù)中不能合理分配注意力權(quán)重,且占用更多的計(jì)算資源;在模型5和模型6訓(xùn)練結(jié)果中mAP分別降低0.86%、2.97%,且網(wǎng)絡(luò)計(jì)算復(fù)雜度進(jìn)一步加大,mAP值與單獨(dú)使用CA及CBAM的模型相比較低,說明注意力機(jī)制與自注意力機(jī)制的結(jié)合并不能增強(qiáng)YOLOV5s模型對(duì)路面病害的檢測(cè)效果。綜合分析試驗(yàn)結(jié)果,CA注意力機(jī)制可以提升模型對(duì)病害的檢測(cè)精度且FPS降低程度最小,可以滿足精確度與實(shí)時(shí)性的要求,因此本研究選擇CA注意力機(jī)制對(duì)YOLOv5s模型改進(jìn)。
表3 注意力模塊選擇試驗(yàn)Tab.3 Attention module selection experiment
為驗(yàn)證提出的ECB-YOLOV5模型的有效性,本研究逐步累加改進(jìn)方法對(duì)模型進(jìn)行性能驗(yàn)證,試驗(yàn)結(jié)果見表4。在消融試驗(yàn)中:試驗(yàn)2結(jié)果表明,使用ECIOU損失函數(shù)替換GIOU損失函數(shù),mAP提升0.32%,GFLOPs未增加,FPS保持不變;試驗(yàn)3表明,CA注意力機(jī)制與ECIOU損失函數(shù)的結(jié)合在未增加大量計(jì)算量的情況下,模型性能提升較大,mAP較試驗(yàn)2增加了1.53%;試驗(yàn)4在試驗(yàn)3基礎(chǔ)上加入了改進(jìn)重復(fù)特征融合網(wǎng)絡(luò),mAP比基準(zhǔn)模型提升3.11%,比試驗(yàn)3提升1.58%,GFLOPs增加0.3,模型復(fù)雜度略微提升,F1分?jǐn)?shù)增加了2.49%,表明改進(jìn)模型在處理病害數(shù)量分布不均勻的數(shù)據(jù)集時(shí)預(yù)測(cè)效果更好。由上述試驗(yàn)可見,隨著模塊逐漸加入,mAP逐步提升,F1分?jǐn)?shù)總體呈現(xiàn)上升趨勢(shì),驗(yàn)證了本研究改進(jìn)的模型對(duì)于公路路面病害檢測(cè)的有效性。FPS在加入注意力機(jī)制和新的特征融合網(wǎng)絡(luò)之后略微下降,但仍能滿足實(shí)時(shí)檢測(cè)的要求。
表4 改進(jìn)模型消融試驗(yàn)Tab.4 Improved model ablation experiment
訓(xùn)練結(jié)果證明了建立的改進(jìn)模型的有效性,與基準(zhǔn)模型的mAP隨著訓(xùn)練輪次的變化曲線如圖8所示,由圖8可明顯看出迭代輪次在0~70時(shí),mAP提升速度較快,隨后增長(zhǎng)速率放緩;迭代輪次在240后,mAP逐漸趨于平穩(wěn),模型訓(xùn)練情況穩(wěn)定。在mAP快速增長(zhǎng)階段,達(dá)到同樣的mAP改進(jìn)模型所需的訓(xùn)練輪次更短,在mAP緩慢增長(zhǎng)階段,改進(jìn)模型達(dá)到了更高的mAP值。
(1) 該3-面為(3,3,7)-面,由R2.1和R3.3得3-面和面上的3-點(diǎn)最多從7-點(diǎn)拿走的權(quán)值為
圖8 mAP變化曲線Fig.8 mAP change curve
為驗(yàn)證本文的改進(jìn)網(wǎng)絡(luò)相對(duì)于目前主流目標(biāo)檢測(cè)算法的優(yōu)勢(shì),選擇mAP與FPS作為評(píng)價(jià)指標(biāo)并將改進(jìn)模型與主流目標(biāo)檢測(cè)網(wǎng)絡(luò)模型在本研究構(gòu)建的數(shù)據(jù)集中進(jìn)行對(duì)比試驗(yàn),其中FPS統(tǒng)一由RTX A5000 GPU計(jì)算得出。試驗(yàn)結(jié)果見表5。
表5 經(jīng)典算法對(duì)比Tab.5 Comparison of classical algorithms
本研究改進(jìn)YOLOv5模型的平均檢測(cè)精度最高,與Faster R-CNN、SSD、CentNet、RetinaNet、Efficientdet、YOLOv3、YOLOv4相比,改進(jìn)模型的mAP分別提升了21.33%、11.63%、13.75%、41.94%、55.67%、21.13%、44.42%;FPS分別提升了63.36、41.49、18.88、42.92、56.23、38.37、48.88。
各模型平均檢測(cè)精度與檢測(cè)速度的關(guān)系如圖9所示,X軸從左至右檢測(cè)速度遞減,Y軸從下至上檢測(cè)精度遞增,可見改進(jìn)模型處于圖中左上角位置,與其余主流算法相比,本研究改進(jìn)算法在檢測(cè)速度與平均檢測(cè)精度均達(dá)到最值。該模型計(jì)算復(fù)雜度低可在低算力平臺(tái)部署,便于在實(shí)際工程環(huán)境中運(yùn)用。
圖9 幀率與平均檢測(cè)精度Fig.9 FPS with mAP
為評(píng)估改進(jìn)算法在實(shí)際場(chǎng)景中對(duì)不同尺度病害的檢測(cè)性能,在5種典型場(chǎng)景中對(duì)YOLOv5模型與ECB-YOLOv5模型進(jìn)行檢測(cè)效果對(duì)比,如圖10所示,圖中實(shí)線框?yàn)槟P蜋z測(cè)結(jié)果,白色虛線框?yàn)閷?duì)檢測(cè)不準(zhǔn)確位置進(jìn)行的人工標(biāo)注。
圖10(a)是在無人機(jī)高空拍攝場(chǎng)景下的檢測(cè)效果對(duì)比,該場(chǎng)景中病害尺度較小,道路周圍背景復(fù)雜,原模型在白框處對(duì)同一病害做出重復(fù)檢測(cè),改進(jìn)后的算法準(zhǔn)確檢測(cè)出所有目標(biāo)病害,說明改進(jìn)模型能夠精準(zhǔn)識(shí)別小目標(biāo)并有效降低誤檢。圖10(b)是模型在光照不良圖像中對(duì)病害的檢測(cè)效果對(duì)比,圖中白框?yàn)樵P皖A(yù)測(cè)框相較改進(jìn)模型預(yù)測(cè)框冗余的部分,通過計(jì)算2個(gè)模型預(yù)測(cè)框與標(biāo)注框的交并比得出,改進(jìn)模型的預(yù)測(cè)框精度提升了23.3%,說明改進(jìn)模型在低光照強(qiáng)度情況下預(yù)測(cè)框更加精確。圖10(c)是在路面存在干擾情況下的檢測(cè)效果對(duì)比,見圖中白框,原模型未能排除車道線的干擾,只識(shí)別出局部裂縫,改進(jìn)模型預(yù)測(cè)框精度較原模型提升了22.2%。圖10(d)中由于無人機(jī)高速飛行導(dǎo)致采集的圖像產(chǎn)生運(yùn)動(dòng)模糊的情況且存在小目標(biāo),改進(jìn)模型準(zhǔn)確檢測(cè)出所有病害,而原模型在白框處誤檢1處病害,說明改進(jìn)算法在無人機(jī)高速飛行情況下具有較好的魯棒性。圖10(e)為相機(jī)失焦情況下的檢測(cè)對(duì)比,2種模型均可以檢測(cè)出路面病害。結(jié)合5種典型情況下的病害檢測(cè)結(jié)果分析,本研究的改進(jìn)算法對(duì)復(fù)雜背景下的多尺度病害具有更好的檢測(cè)能力。
為實(shí)現(xiàn)對(duì)病害的全局檢測(cè)與重識(shí)別,通過無人機(jī)獲取路面信息,并基于YOLOv5-DeepSORT算法提取每個(gè)病害的全局特征信息并賦予唯一編號(hào),實(shí)現(xiàn)對(duì)病害的重識(shí)別。通過編號(hào)信息與類別信息的雙重限定,即可快速準(zhǔn)確剔除重復(fù)的病害信息。
為實(shí)現(xiàn)上述效果,建立了基于YOLOv5-DeepSORT的二級(jí)檢測(cè)器結(jié)構(gòu)。病害計(jì)數(shù)過程如圖11所示,首先通過獲取目標(biāo)檢測(cè)器檢測(cè)框的左下角坐標(biāo)作為標(biāo)記點(diǎn),其次通過OpenCV軟件庫在無人機(jī)檢測(cè)畫面的下方設(shè)置2條檢測(cè)帶,隨著無人機(jī)向前飛行,當(dāng)標(biāo)記點(diǎn)被上方藍(lán)色檢測(cè)帶感應(yīng)到時(shí),該編號(hào)病害將被儲(chǔ)存在緩存空間中,若繼續(xù)前進(jìn)使標(biāo)記點(diǎn)被第2條檢測(cè)帶捕獲,該編號(hào)病害將會(huì)被記錄并根據(jù)病害類型及編號(hào)進(jìn)行分類儲(chǔ)存,總病害數(shù)顯示在畫面左上角。
圖11 病害計(jì)數(shù)過程Fig.11 Disease counting process
病害數(shù)量統(tǒng)計(jì)測(cè)試數(shù)據(jù)由5段無人機(jī)拍攝的路面視頻拼接而成,對(duì)采集的路面病害視頻進(jìn)行人工統(tǒng)計(jì)并與模型檢測(cè)結(jié)果進(jìn)行對(duì)比,模型對(duì)病害量的統(tǒng)計(jì)結(jié)果如圖12所示。圖12(a)為原模型的最終檢測(cè)結(jié)果,其檢測(cè)出38處病害,發(fā)生20處漏檢,且有4處誤檢情況,但因檢測(cè)框不穩(wěn)定未被病害計(jì)數(shù)器檢出,說明檢測(cè)過程中原模型的檢測(cè)框不穩(wěn)定,計(jì)數(shù)精度較差;圖12(b)為改進(jìn)模型最終檢測(cè)結(jié)果,其檢測(cè)出54處病害,存在4處漏檢及1處誤檢。病害量分類統(tǒng)計(jì)結(jié)果見表6,從左至右分別代表檢測(cè)到的裂縫數(shù)量、坑洞數(shù)量及病害總數(shù),改進(jìn)算法的統(tǒng)計(jì)準(zhǔn)確率達(dá)到91.38%,較原模型統(tǒng)計(jì)準(zhǔn)確度提升25.86%,說明改進(jìn)模型計(jì)數(shù)精度較高,可以有效降低漏檢率,適合作為實(shí)現(xiàn)道路病害檢測(cè)的算法。
表6 病害量統(tǒng)計(jì)試驗(yàn)結(jié)果Tab.6 Results of disease statistics experiment
圖12 病害量統(tǒng)計(jì)結(jié)果Fig.12 Statistical results of disease amount
在實(shí)際檢測(cè)中可能出現(xiàn)病害被車輛遮擋而后重新出現(xiàn)的情況,導(dǎo)致病害出現(xiàn)ID變化造成重復(fù)檢測(cè)或漏檢。通過實(shí)際場(chǎng)景可視化驗(yàn)證,改進(jìn)模型的魯棒性更強(qiáng),如圖13和圖14所示,圖13為坑洞被遮擋的前一幀,改進(jìn)算法檢測(cè)出2個(gè)坑洞:ID-114和ID-3,原模型僅檢測(cè)出一處坑洞,隨后病害被車輛遮擋而消失,圖14為7幀之后該病害重新出現(xiàn),病害ID-3恢復(fù)編號(hào),目標(biāo)重識(shí)別成功,ID-114則被車輛陰影遮擋導(dǎo)致ECB-YOLOv5漏檢;而原算法則在車輛遮擋后完全丟失病害及編號(hào)。
圖13 病害遮擋前Fig.13 Before the disease is occluded
圖14 病害ID恢復(fù)Fig.14 Disease ID recovery
本研究針對(duì)路面常見的裂縫及坑洞病害構(gòu)建了基于YOLOv5-DeepSort框架的病害檢測(cè)與重識(shí)別模型,為實(shí)際養(yǎng)護(hù)過程中在復(fù)雜背景下的病害檢測(cè)任務(wù)及篩選冗余病害信息提供了新的思路與方法。
在構(gòu)建的無人機(jī)多尺度道路病害數(shù)據(jù)集上進(jìn)行的試驗(yàn)證明了本研究改進(jìn)方法的有效性,其中ECIoU損失函數(shù)使得模型mAP較基準(zhǔn)模型提升0.32%,加入CA注意力機(jī)制后mAP進(jìn)一步提升1.21%,改進(jìn)特征提取網(wǎng)絡(luò)后的模型mAP達(dá)到89.19%,相較于基準(zhǔn)模型提升3.11%,F1分?jǐn)?shù)較基準(zhǔn)模型提升2.49%達(dá)到0.8514。與其他檢測(cè)算法相比,性能提升明顯。FPS在本地平臺(tái)達(dá)到26.39幀/s,滿足無人機(jī)圖檢測(cè)病害實(shí)時(shí)檢測(cè)要求。
通過實(shí)際檢測(cè)效果對(duì)比,發(fā)現(xiàn)基于無人機(jī)的檢測(cè)方法可快速準(zhǔn)確地獲取全局病害信息,并且通過構(gòu)建YOLOv5-DeepSORT方法實(shí)現(xiàn)對(duì)病害的重識(shí)別與統(tǒng)計(jì)。該方法在病害量統(tǒng)計(jì)試驗(yàn)中表現(xiàn)出良好的準(zhǔn)確率,相比于原始網(wǎng)絡(luò)模型,模型統(tǒng)計(jì)準(zhǔn)確率提升25.86%,達(dá)到91.38%,誤檢率由6.9%下降1.72%,魯棒性強(qiáng)。未來的工作將豐富模型檢測(cè)病害的種類,完善病害被車輛陰影遮擋時(shí)產(chǎn)生漏檢的情況以及優(yōu)化追蹤網(wǎng)絡(luò)的性能。