陳思雨,付章杰
1.南京信息工程大學 數(shù)字取證教育部工程研究中心,南京 210044
2.綜合業(yè)務網(wǎng)理論及關(guān)鍵技術(shù)國家重點實驗室,西安 710126
得益于北斗系統(tǒng)以及GPS導航系統(tǒng)的不斷完善,無人機(unmanned aerial vehicles,UAV)技術(shù)得到了巨大發(fā)展,無人機的民用化普及更使無人機架空輸電線路巡檢逐漸成為了一種趨勢[1]。新興的巡檢技術(shù)不僅大幅提升了架空輸電線路巡檢安全性,同時也在極大程度上節(jié)省了人力成本。無人機搭載的高清攝像頭可以采集到更高分辨率的圖像,幫助人們更加充分地去把握當前架空輸電線路的真實情況。
當然,數(shù)據(jù)采集技術(shù)的發(fā)展也推動著數(shù)據(jù)處理技術(shù)的升級。隨著深度學習浪潮的推進,將通用目標檢測算法運用于電力部件檢測方面也已成為一大潮流。通用的目標檢測算法主要分為兩大類別,一種是單階段回歸型目標檢測算法,如SSD[2]、RetinaNet[3]、YOLO v1-YOLO v5[4-8],通過此類算法可直接輸出目標類別和相應的定位;另一種是兩階段目標檢測算法,如RCNN[9]、Fast RCNN[10]、Faster RCNN[11],此類算法先定位包含目標大致位置信息的候選區(qū)域,再對候選區(qū)域進行分類及位置精修后確定目標位置。
基于以上兩大類目標檢測算法,王萬國等[12]針對無人機采集到的輸電線路巡檢圖像,分別使用SPPnet、DPM、Faster RCNN三種目標檢測算法進行檢測并進行了對比分析,同時也討論了不同方法的優(yōu)劣。戚銀城等[13]使用改進的SSD算法,在輸電線路航拍巡檢圖像中針對金具進行目標檢測。應用多角度旋轉(zhuǎn)、自適應裁剪等方法擴充樣本??紤]到金具存在分布較為密集且有遮擋的情況,設計了具有針對性的損失函數(shù)。郭敬東等[14]利用YOLO v1這種單階段檢測算法在檢測速度上的優(yōu)勢,結(jié)合K-means 聚類算法進行改進,實現(xiàn)了對輸電塔桿狀態(tài)的實時監(jiān)測。張鷗等[15]使用改進的Faster RCNN 算法對無人機巡檢所拍攝圖像進行電力部件識別,并考慮分析了網(wǎng)絡參數(shù)對檢測效果的影響。趙振兵等[16]使用動態(tài)焦點損失函數(shù)以及基于二階矩的樣本平衡方法,有效緩解了航拍絕緣子圖像中不同類型缺陷間存在的樣本數(shù)不平衡、困難樣本學習低效等問題。韓漢賢等[17]為提高無人機電力巡檢效率,將特征金字塔網(wǎng)絡FPN與SSD目標檢測算法進行結(jié)合,局部融合層間特征信息,在絕緣子部件檢測方面取得了良好的檢測效果。董召杰[18]構(gòu)建了包含玻璃絕緣子、復合絕緣子、屏蔽環(huán)、均壓環(huán)、防震錘在內(nèi)的5 種電力線關(guān)鍵部件數(shù)據(jù)集,應用YOLO v3算法在該數(shù)據(jù)集上實現(xiàn)了高精度的實時部件檢測。Zhai等[19]針對輸電線路背景復雜、金具形狀多樣、多金具檢測目標密集等問題,提出了一種級聯(lián)推理圖網(wǎng)絡(CRGN),用于輸電線路的多重擬合檢測,顯著提高了對輸電線路上多種金具的檢測效果。
綜上所述,輸電線路部件檢測目前已是一個新興的研究熱點話題,但是大多研究都只針對同種或同一尺度大小的部件進行,鮮有研究直接探討高分辨輸電線路圖像中針對多尺度目標的檢測方法。經(jīng)過深入調(diào)研后發(fā)現(xiàn),此領(lǐng)域尚存如下幾點亟待解決的問題:
(1)現(xiàn)已公開的架空輸電線路高清數(shù)據(jù)集圖片數(shù)量較少,創(chuàng)新檢測技術(shù)需要較大數(shù)據(jù)量的支持,數(shù)據(jù)量不足對開展深入研究是一大挑戰(zhàn)。
(2)直接使用目前最先進的目標檢測算法,如YOLO、Faster RCNN、SSD 等,均會將輸入圖像壓縮至統(tǒng)一大小后再進行特征提取,對于高分辨率圖像來說,壓縮會導致有效信息損失嚴重,影響檢測效果。
(3)采集的圖像分辨率越高,圖像中的小尺度目標像素占比越小,也就越難以被檢測。
針對上述問題,本文提出了一種融合高效注意力的多尺度輸電線路部件檢測算法,主要貢獻包括以下3個方面:
(1)提出了一種基于高效注意力ECBAM 改進的YOLO v5 算法,增強了YOLO v5 算法的特征提取能力,提升了模型整體檢測性能。
(2)提出了一種與高分辨率輸電線路圖像統(tǒng)計特性相適應的滑窗切片方法,并相應提出了檢測結(jié)果的拼接方法,既擴充了數(shù)據(jù)量,又對不同尺度大小的目標進行了針對性檢測。
(3)設計了一種多尺度模型檢測結(jié)果集成策略,綜合保留了各尺度的檢測優(yōu)勢,全面提升了跨越尺度較大的多尺度輸電線路部件檢測精度。
YOLO v5 算法屬于經(jīng)典的單階段目標檢測算法,因其高效性常被應用于工業(yè)場景中。YOLO v5模型主要由輸入端、骨干網(wǎng)絡(Backbone)、瓶頸塊(Neck)、預測頭(Head)四個部分組成,總體結(jié)構(gòu)如圖1所示。
YOLO v5輸入端負責完成Mosaic數(shù)據(jù)增強以及自適應錨框計算,將圖像縮放至模型定義輸入的統(tǒng)一尺寸;Backbone 部分為主干特征提取網(wǎng)絡,對輸入圖片進行特征提取,并將提取到的特征提煉成三個有效特征層作為Neck部分的輸入;Neck部分進一步加強特征提取,通過特征金字塔(feature pyramid networks,F(xiàn)PN)以及PANet結(jié)構(gòu)將不同尺度的特征信息進行結(jié)合;Head部分對深度提煉的特征進行分類與回歸,完成對于輸入圖像的預測。
YOLO v5各個部分具體由以下若干結(jié)構(gòu)組成:
(1)Focus結(jié)構(gòu),將640×640×3的輸入圖片進行切片和卷積后得到320×320×12 的特征圖,再將寬高信息統(tǒng)一集中到通道信息中,減少信息丟失。
(2)Conv2D_BN_SiLU 結(jié)構(gòu),其中Conv2D 層用于提取輸入圖像的特征信息;BN(batch normal)層對提取到的輸入圖像特征進行標準化處理,在加快網(wǎng)絡收斂速度的同時防止出現(xiàn)梯度消失及過擬合現(xiàn)象;SiLU 激活函數(shù)是Sigmoid 和ReLU 激活函數(shù)的改進版,具有無上界有下界、平滑、非單調(diào)的特性,可視作平滑的ReLU激活函數(shù)。
(3)CSPLayer結(jié)構(gòu),將原來的殘差塊堆疊(即圖1中每個虛線框框出部分)拆分成兩個部分,主干部分繼續(xù)堆疊原來的殘差塊,另一分支部分類似于殘差邊操作,經(jīng)過少量處理后直接連接到最后。
(4)SPPBottleneck 結(jié)構(gòu)(可見圖1 中右上角),利用不同大小的池化核進行多尺度特征提取,用于提高網(wǎng)絡的感受野。
(5)Concat 結(jié)構(gòu),在通道維度將兩個及兩個以上的特征圖進行拼接,以融合不同層次的特征信息。
(6)UpSample、DownSample 結(jié)構(gòu),分別表示上采樣和下采樣操作,用于在不同層次特征信息融合前統(tǒng)一特征維度。
為提升YOLO v5算法性能,在YOLO v5中加入高效卷積注意模塊(efficient convolutional block attention module,ECBAM)進行改進。ECBAM 結(jié)構(gòu)主要添加于YOLO v5 中的Neck 部分,即圖2 中顏色加深處,經(jīng)過ECBAM后,新的特征圖可以獲得通道和空間維度上的注意力加權(quán),增加各個特征在通道和空間上的聯(lián)系,更有利于提取目標的有效特征。
圖2 改進的YOLO v5總體結(jié)構(gòu)Fig.2 Overall structure of improved YOLO v5
ECBAM 由卷積注意模塊(convolutional block attention module,CBAM)[20]改進而來,可以在卷積神經(jīng)網(wǎng)絡中實現(xiàn)即插即用,使輸入特征圖中的特征具備自適應細化的能力,以較小的計算成本來達到提升模型特征提取性能的目的。與CBAM的主體結(jié)構(gòu)相似,ECBAM也采用串聯(lián)的方式來連接通道注意力模塊和空間注意力模塊兩部分。不同的是,ECBAM借鑒了高效通道注意力(efficient channel attention,ECA)[21]的思想,改進了通道注意力模塊中的權(quán)值參數(shù)共享操作,改進前后的對比如圖3所示。
圖3 CBAM與ECBAM中的通道注意力模塊Fig.3 Channel attention module in CBAM and ECBAM
在CBAM 中,用以實現(xiàn)全通道交互的共享全連接層是一個多層感知機(multi-layer perceptron,MLP)模塊,多層感知機由最底層的輸入層,中間的隱藏層,最后的輸出層組成,至少包含三個層結(jié)構(gòu),層與層間全連接,因此在計算時會產(chǎn)生較多冗余計算。鑒于卷積操作具有參數(shù)共享性質(zhì),引入一維卷積可以在一定程度上減少通道注意力模塊的參數(shù)量,故考慮在ECBAM中使用一維卷積操作替代CBAM中的全連接層來完成通道特征聚合,僅實現(xiàn)適當?shù)目缤ǖ澜换?,在一定程度上提高計算效率?/p>
圖4展示了ECBAM的完整結(jié)構(gòu)。對于給定輸入為(C,W,H)的特征圖F,其中C、W、H分別表示特征圖的通道數(shù)、寬度、高度,在ECBAM中依次通過通道注意力模塊、空間注意力模塊后完成加權(quán)操作,得到加權(quán)后的特征圖F′′。
圖4 ECBAM結(jié)構(gòu)Fig.4 Sturcture of ECBAM
首先通過通道注意力模塊,分別對輸入特征圖F進行一次全局最大池化及平均池化操作,對池化后得到的兩個一維向量使用一維卷積進行通道特征聚合后將卷積運算結(jié)果進行相加,一維卷積核的大小為聚合鄰域內(nèi)的通道數(shù),經(jīng)過Sigmoid 運算后獲得通道注意力Mc∈RC×1×1,具體過程表達可見公式(1):
其中,F(xiàn)表示輸入特征圖,MaxPool()和AvgPool()分別表示最大池化和平均池化操作,C1D表示一維卷積操作,σ表示Sigmoid 運算,Mc(F)表示通道注意力模塊的輸出。
再按公式(2)將Mc∈RC×1×1與輸入特征圖F對應元素相乘,得到由通道注意力調(diào)整后的特征圖F′。
其中,?表示同位元素相乘操作,F(xiàn)′ 表示通過通道注意力調(diào)整后得到的新特征圖。
其次通過空間注意力模塊,對特征圖Mc按空間進行全局最大池化及平均池化操作,將池化后得到的兩個二維向量進行拼接并對拼接結(jié)果進行卷積操作,經(jīng)過Sigmoid 運算后獲得空間注意力Ms∈R1×H×W,具體過程表達可見公式(3):
其中,F(xiàn)′ 表示輸入特征圖,f()表示卷積層中進行的矩陣運算,MaxPool(·)、AvgPool(·)、σ的含義與公式(1)中相同,Ms(F′)表示空間注意力模塊的輸出。
再按照公式(4)將Ms∈R1×H×W與特征圖F′ 對應元素相乘,得到經(jīng)過空間注意力調(diào)整后的特征F′,由此走完一個ECBAM結(jié)構(gòu)的完整流程。
其中,?表示同位元素相乘操作,F(xiàn)′ 表示通過通道注意力以及空間注意力調(diào)整后得到的新特征圖。
由于架空輸電線路場景中所包含的目標尺寸跨度較大,電線桿塔尺寸和其他部件尺寸往往不屬于同一個層級,而極小尺寸的防震錘更使此場景下的目標檢測難度直線上升。因此,為同時考慮多尺度目標檢測的平衡性,分別訓練兩個模型來處理中小尺度目標以及大尺度目標。其中一個模型將原圖進行滑窗切片之后使用目標檢測算法進行訓練,測試時也采用同樣的方式對測試圖像進行滑窗切片,并且在對各切片進行目標檢測之后通過設計的拼合機制將所屬同一幅圖像的檢測結(jié)果進行拼合,這樣既能保留并放大圖片中的高分辨率細節(jié),又能擴充原有圖片的數(shù)量。另外,再構(gòu)建一個模型直接將整張圖片放入目標檢測器中進行訓練,相應地同樣使用整幅圖像進行測試,保證對于大尺度目標的檢測。最后將兩個模型得到的多尺度目標檢測結(jié)果進行集成后得到最終完整的檢測結(jié)果,所設計的模型結(jié)構(gòu)如圖5所示。
圖5 多尺度輸電線路部件檢測模型結(jié)構(gòu)Fig.5 Sturcture of multi-scale transmission line component detection model
1.3.1 滑窗切片
使用滑動窗口對高分辨率圖像進行切片,不可避免地會將大尺度目標切分開,大尺度目標的檢測效果可由對切片前圖像訓練好的模型來保證,因此對于切片后圖像,無需擔憂其中大尺度目標的檢測效果,只需均衡其中中小尺度目標的檢測效果,要求能夠在檢測到小尺度目標的同時,不過度切分中等尺度目標。
考慮上述切片需求后,對圖像中的目標尺寸進行統(tǒng)計分析,確定采用1 400×1 000 大小的滑動窗口從左到右,從上到下依次劃過整幅圖像,將窗口在橫向滑動時與前一個窗口的重疊區(qū)域設置為20%,在縱向滑動時與上一個窗口的重疊區(qū)域設置為15%,這樣左右以及上下都有200像素左右的重疊距離,可以保證圖像切片后各個切片之間的邊緣的平滑度,降低切片與切片之間的邊緣不平滑特性。當窗口滑動到圖像邊界有超出時,從所觸碰邊界向前切片作為收尾,以保證切片覆蓋全圖?;扒衅木唧w方法如圖6所示。
圖6 滑窗切片方法示意圖Fig.6 Schematic diagram of sliding window slicing method
另外,考慮到目標檢測數(shù)據(jù)集標簽的特殊性,對圖像切片的同時也需要考慮對圖像中目標的切片方法。根據(jù)目標框左上角點、右下角點與當前切片所采用滑動窗口的位置關(guān)系,共可討論出9種滑動窗口將目標切開的情況,如圖7所示,并在表1中做出了不同情況下位置關(guān)系詳細描述。
表1 不同切片情況下的位置關(guān)系Table 1 Position relationship under different sections
圖7 不同切片情況Fig.7 Different slice conditions
對于不同位置關(guān)系,統(tǒng)一采用如下切片機制對當前滑動窗口中的目標進行篩選保留:
(1)根據(jù)識別目標的完整性,認為只觀察目標的1/9不足以判斷出原始目標,因此當待切目標與滑動窗口交疊部分的長或?qū)挸^目標自身長或?qū)挼?/3 時,在滑動窗口邊沿處截斷目標并保留至當前滑動窗口。
(2)經(jīng)機制(1)篩選后,當待切目標與滑動窗口交疊部分的長或?qū)挷蛔?4 個像素點,即小于數(shù)據(jù)集最小目標框尺寸時,在當前滑動窗口中舍棄該目標。
1.3.2 切片檢測結(jié)果拼合策略
對切片后圖像進行檢測,同一個目標的不同部分可能會被多個相鄰切片檢測到,因此需要根據(jù)切分機制相應地設計拼合機制對圖像及其檢測結(jié)果進行拼合。
首先,按照滑窗切片時的起點位置標記,采用切片逆向操作將帶有預測框的切片拼合成整幅圖。其次,根據(jù)滑窗切片時的步距長度,給予50 像素左右的容錯范圍,設定150 像素點為預測框拼合閾值,若待拼合圖像中同種預測框相交區(qū)域的任意邊長超過這個閾值,或者兩預測框的交并比超過0.5,則判定這兩個預測框所屬同一個目標,將其拼合成一個完整的目標。
在拼合時,分別取兩預測框的左上角點橫縱坐標中的最小值作為拼合預測框左上角點的橫縱坐標,取兩預測框的右下角點橫縱坐標中的最大值作為拼合預測框右下角點的橫縱坐標。同時,取拼合前兩個預測目標中的較高得分作為拼合后的預測目標得分。圖8 展示了通過此種拼合方式拼合前后效果對比。
1.3.3 模型檢測結(jié)果集成策略
由于分別訓練了兩個模型同時對切片前后的圖像進行全類別檢測,直接整合檢測結(jié)果會產(chǎn)生較多冗余預測框,因此需要對這些預測框進行進一步篩選保留。
通過觀察檢測結(jié)果發(fā)現(xiàn),能夠同時被兩個關(guān)注不同尺度的模型檢測到的僅有電線桿塔、絕緣子、間隔棒類中等尺度以上的目標,因此不用再對塔號牌、防震錘這兩類小尺度目標做進一步篩選。
使用預測框的交并比大小作為篩選條件。由于不滿足保留條件的目標會在切片時被舍棄,一個大目標在切片時可能會橫跨9個滑動窗口甚至更多,但可能僅有一個滑動窗口保留下了此目標。這樣就會出現(xiàn)同一個目標被切片前訓練所得模型完整檢測,而僅被切片后訓練所得模型檢測出很小一部分的情況,從而產(chǎn)生較小的交并比。在經(jīng)過多次實驗之后,發(fā)現(xiàn)以0.1 作為篩選閾值較為合理。當同類別預測框交并比超過0.1時,只保留置信度得分較高的預測框,舍棄另外的冗余預測框。
本文實驗所采用的PLAD 數(shù)據(jù)集[22]是基于高分辨率無人機所采集的多尺度電力線資產(chǎn)檢測數(shù)據(jù)集,包含5 472×3 078及5 472×3 648兩種分辨率的架空輸電線路圖片。對圖片中的電線桿塔、絕緣子、間隔棒、塔號牌和防震錘等5 種架空輸電線路部件進行了標注,圖9 為數(shù)據(jù)集圖片及標注示例。
圖9 數(shù)據(jù)集圖片及標注示例Fig.9 Examples of dataset images and labels
PLAD數(shù)據(jù)集[22]中包含253個電線桿塔、312個絕緣子、253 個間隔棒、86 個塔號牌、1 505 個防震錘,共計2 409 個目標。按照PLAD 原文提及的數(shù)據(jù)集劃分方式,將訓練集與測試集的比例設置為8∶2,并從訓練集中劃分出10%作為驗證集輔助訓練。
圖10(a)所示為PLAD數(shù)據(jù)集[22]中的目標框尺寸分布情況,縱坐標表示目標框相對于原圖高度的占比,橫坐標表示目標框相對于原圖寬度的占比。紅色、黃色、綠色、紫色、藍色圓圈分別表示電線桿塔、絕緣子、間隔棒、塔號牌、防震錘這5類目標的寬高分布位置,從圖中可以直觀地看出不同類別的目標框大小分布不均,小目標數(shù)量占比較大,除大型電線桿塔以外的其他類目標所占像素范圍基本處于1 400×1 000 像素之內(nèi),占整幅圖像的比例不足10%,因此在檢測時需要更多關(guān)注到圖像的細節(jié)特征。
圖10 目標框特征分布統(tǒng)計Fig.10 Ground truth box feature distribution statistics
圖10(b)所示為PLAD數(shù)據(jù)集中目標框的形狀分布情況,框線顏色及部件類別的對應關(guān)系同圖10(a)??梢钥吹讲煌N類的部件形狀差異較大,紅色所代表的電線桿塔類別的尺寸明顯大于其他類別部件的尺寸,并且各類目標的長寬比不固定,也為檢測增加了難度。
本文在結(jié)合觀察圖10(a)以及圖10(b)之后,將電線桿塔歸類于大尺度目標,將絕緣子、間隔棒歸類于中等尺度目標,將塔號牌、防震錘歸類于小尺度目標。
本文實驗均在CPU 為Intel?Core ?i5-10400F@2.90 GHz、內(nèi)存為16 GB、GPU為NVIDIA GeForce RTX 2080 Ti 的硬件配置下進行;軟件配置為Windows10 操作系統(tǒng),深度學習框架采用Pytorch 1.6.0,并行計算架構(gòu)版本為CUDA 10.1。
為加快模型收斂速度,縮短訓練時間,使用在Pascal VOC數(shù)據(jù)集上的預訓練權(quán)重初始化網(wǎng)絡參數(shù)。將圖像輸入尺寸設置為640×640 像素,采用隨機梯度下降法,將batch-size設置為8,動量參數(shù)設置為0.937,權(quán)值衰減設置為0.000 5,初始學習率設置為0.01,之后采用余弦衰減策略自適應調(diào)整學習率。
本文采用目標檢測領(lǐng)域常用的平均精度均值(mean average precision,mAP)、查準率(Precision)以及查全率(Recall)作為模型性能的評價指標。mAP 由平均精度(average precision,AP)求平均所得:
其中,Num_Classes表示檢測部件類別數(shù),AP是用積分的方式來計算查準率-查全率(Precision-Recall,P-R)曲線與坐標軸圍成的面積,具體計算方式如公式(6)所示:
其中,p表示Precision,r表示Recall,p(r) 表示當前Recall所對應的Precision。p和r的定義如下:
其中,TP為預測為正的正樣本,表示預測正確;FP表示預測為正的負樣本,表示誤檢;FN表示預測為負的正樣本,表示漏檢。
3.4.1 模型參數(shù)靈敏度分析
在搭建多尺度輸電線路部件檢測模型的過程中,涉及較多的靜態(tài)參數(shù),因此,本小節(jié)就切片以及拼合時所選取的重要參數(shù)進行靈敏度分析,提供參數(shù)選取依據(jù)。具體實驗數(shù)據(jù)如表2、表3所示。
表2 滑窗切片參數(shù)靈敏度分析Table 2 Sensitivity analysis of sliding window slicing parameters
表3 切片檢測結(jié)果拼合參數(shù)靈敏度分析Table 3 Sensitivity analysis of parameters for collocation of slicing test results
表2 展示了滑窗切片參數(shù)的靈敏度分析。實驗過程中,依次對滑動窗口大小、橫向滑動重疊率、縱向滑動重疊率、目標保留比例閾值等參數(shù)按照控制變量法進行設置并測試檢測效果。通過比較7 組不同設置下的mAP值,可以得出將滑動窗口大小設置為1 400×1 000,將橫向滑動重疊率設置為20%、縱向滑動重疊率設置為15%,目標保留比例閾值設置為1/3時檢測效果最佳。
表3 展示了切片檢測結(jié)果拼合參數(shù)的靈敏度分析。在統(tǒng)一使用表2 中選出的滑窗切片參數(shù)進行前期切片檢測后,對拼合時如何選取像素閾值以及交并比閾值的靈敏度進行探討。此步驟共設置了5 組不同對照組,通過比較不同設置下的mAP值,可以得出將像素閾值設為150、交并比閾值設置為0.5時能夠達到最佳檢測效果。
3.4.2 檢測效果對比
為評估融合高效注意力的多尺度部件檢測算法(以下簡稱本文算法)性能,在相同實驗條件下,分別使用SSD512[2]、RetinaNet[3]、Faster RCNN[11]、YOLO v5[8]四種經(jīng)典的目標檢測算法與本文算法一同對PLAD 數(shù)據(jù)集進行測試,將實驗結(jié)果記錄在表4中。
表4 不同模型檢測效果對比Table 4 Comparison of detection effects of different models 單位:%
另外,表4 也給出了PLAD 數(shù)據(jù)集作者所提MSPAD 算法[22]的實驗結(jié)果數(shù)據(jù)。MS-PAD 同樣采用了切片思想來提升對高分辨率圖像中小尺度目標的檢測精度。但與本文算法不同的是,MS-PAD只是單純的將圖像以2×2的形式平均切分為4塊來檢測最小尺度的防震錘目標,而對其余種類的目標直接采用SSD算法進行檢測,整體檢測結(jié)構(gòu)設計較為簡單。
通過縱向觀察表4中的Precision、Recall、mAP三個指標值并結(jié)合公式(5)、(6)可以較為直觀地看出,mAP值受Precision與Recall兩個值的綜合影響,直接將高分辨率圖像不做任何處理就放入現(xiàn)有目標檢測模型中進行檢測,Pricision 平均水平不足50%,Recall 值均在25%以下,mAP 值也均未達到40%。使用切片思想后,MS-PAD 算法對塔號牌、防震錘的檢測性能提升顯著,相應的mAP值的提升也有了質(zhì)的飛躍。本文算法更是在MS-PAD算法的基礎上進一步將mAP值提升了1.6個百分點,使其達到了90.8%,對應Precision值可達83.2%,Recall值可達92.8%。
再對表4中不同模型對于5類輸電線路部件的檢測效果進行細致的橫向觀察,可以發(fā)現(xiàn)直接使用SSD512[2]、RetinaNet[3]、Faster RCNN[11]、YOLO v5[8]四個現(xiàn)有目標檢測模型僅能檢測出電線桿塔、絕緣子、間隔棒等一些稍大尺寸的目標,而對于塔號牌、防震錘這兩類小尺度目標的檢測效果不佳。綜合觀察四個模型的表現(xiàn),可以發(fā)現(xiàn)YOLO v5在檢測中等尺度以及大尺度目標時性能更加穩(wěn)定。MS-PAD算法在SSD512算法的基礎上加入圖像切分策略單獨放大最小尺度的防震錘目標特征,較好地平衡了其與其他4類不同尺度目標的檢測精度,使綜合mAP 值達到了89.2%。本文算法在針對PLAD 數(shù)據(jù)集中的待檢測目標特征進行統(tǒng)計分析后,采用特定的滑動窗口對高分辨率圖像進行切片,并對YOLO v5 算法做出改進,運用改進后的算法同時對切片前后的圖像進行全類別目標不做區(qū)分的檢測,而后再將結(jié)果進行集成,相比MS-PAD 單獨檢測小尺度種類目標而言,更符合常規(guī)目標檢測流程。又由于YOLO v5與SSD算法本身的檢測原理不同,加之本文算法針對PLAD數(shù)據(jù)集進行了特定處理,最終實現(xiàn)了比MS-PAD算法更好的檢測效果。
3.4.3 消融實驗
本小節(jié)設置了三組消融實驗,以進一步驗證在本文算法中加入高效注意力ECBAM 以及使用集成策略的有效性。
首先,為判斷加入高效注意力ECBAM之后對于算法性能是否有提升,設計了兩組消融實驗。分別使用YOLO v5、YOLO v5+CBAM、YOLO v5+ECBAM三個算法對切片前后的數(shù)據(jù)集進行訓練測試。
表5 展示了對切片前圖像使用三個算法訓練模型的效果對比,表6展示了對切片后圖像使用三個算法訓練模型的效果對比。
表5 加入注意力前后的模型效果對比ITable 5 Comparison I of effect of model before and after adding attention 單位:%
表6 加入注意力前后的模型效果對比ⅡTable 6 Comparison Ⅱof effect of model before and after adding attention 單位:%
兩表中的指標趨勢變化相似,對于Precision 值,使用YOLO v5、YOLO v5+CBAM、YOLO v5+ECBAM三個算法,測出的結(jié)果數(shù)值依次提升,說明加入注意力機制后確實能夠提取到更多的圖像特征,減小錯誤檢測的概率,有效提高YOLO v5算法的預測準確程度,并且優(yōu)化了通道注意力模塊之后得到的ECBAM 性能相比CBAM 而言更勝一籌;對于Recall 值,使用三個算法測出的結(jié)果數(shù)值接近,相差不大,說明加入注意力機制前后,漏檢率并沒有受到太大的影響,能夠保持相對穩(wěn)定;對于mAP 值,由于Precision 值依次提升,Recall 值相對不變,因此在Precision、Recall 兩個指標的綜合影響下,mAP值的變化呈現(xiàn)與Precision值相同的趨勢??傊?,使用三個算法測出的結(jié)果數(shù)值依次提升,均在加入高效注意力機制ECBAM之后達到了最佳值,并因此證明了在算法中加入高效注意力ECBAM的有效性。
其次,為了便于觀察使用滑動窗口將高分辨率圖像進行切片訓練,并將切片前后分別訓練得到的模型結(jié)果進行集成這一做法對于提升檢測效果的有效性,設計了第三組消融實驗。在同樣使用YOLO v5+ECBAM模型的情況下,分別測試切片前后兩個未經(jīng)集成的模型以及集成模型的檢測效果,將結(jié)果記錄在了表7中。
表7 集成策略的有效性對比Table 7 Comparison of ettectiveness of integration strategy 單位:%
由于在2.2 節(jié)中已將電線桿塔歸類于大尺度目標,將絕緣子、間隔棒歸類于中等尺度目標,將塔號牌、防震錘歸類于小尺度目標,結(jié)合表7 中數(shù)據(jù)可以看出,在對圖像切片前使用YOLO v5+ECBAM 模型,能夠較好地檢測出中等尺度以及大尺度目標。在對圖像切片后使用YOLO v5+ECBAM模型,大尺度目標檢測效果變差,但對于中等尺度目標檢測效果有了近30個百分點的提升,對小尺度目標能夠從檢測不到提升到有80%以上的檢測精度。集成之后兩個單獨訓練的模型優(yōu)勢均被保留,最終對于多尺度目標檢測,Precision 可達83.2%,Recall可達92.8%,mAP可達90.8%。
3.4.4 檢測結(jié)果展示
圖11 所示為不同模型對PLAD 數(shù)據(jù)集進行檢測后得到的結(jié)果對比,圖中紅色標簽代表電線桿塔目標、黃色標簽代表絕緣子目標、綠色標簽代表間隔棒目標、紫色標簽代表塔號牌目標、藍色標簽代表防震錘目標。
圖11 檢測結(jié)果比較Fig.11 Comparison of detection results
圖11(a)~(e)分別給出了SSD512、RetinaNet、Faster RCNN、YOLO v5以及本文算法的結(jié)果,MS-PAD模型因未公開官方代碼,具有不可復現(xiàn)性,故其結(jié)果未在圖中展示,圖11(f)給出了標注數(shù)據(jù)。
整體比較來看,使用SSD512模型檢測,誤檢概率較大,且完全無法檢測出小尺度的防震錘目標以及稍微大一些尺度的塔號牌目標;使用RetinaNet模型,對于能夠檢測到的目標,定位較為準確,但同樣無法檢測出小尺度的防震錘目標,漏檢情況較為嚴重;使用Faster RCNN模型能夠發(fā)揮一定雙階段模型檢測的優(yōu)勢,檢測出更多種類的目標,也包括了其中一些小尺度防震錘目標,但依然存在一定的誤檢及漏檢情況;使用YOLO v5模型的檢測結(jié)果與使用RetinaNet 模型的檢測結(jié)果相似,只在大尺度目標的檢測方面效果略優(yōu)于RetinaNet;使用本文所提出的模型,基本可以檢測出所有標注數(shù)據(jù),甚至可以檢測出多種多個在原圖中未經(jīng)標注的目標,漏檢率小,定位精準。
本文以目標檢測中應用廣泛的單階段目標檢測算法YOLO v5為基礎,針對高分辨率輸電線路圖像中,不同種類部件尺度跨越大,難以均衡檢測的問題進行改進。融合高效注意力機制ECBAM 綜合提升了YOLO v5算法的特征提取能力,增強了模型檢測性能。使用滑動窗口將高分辨率圖像切片,放大了其中中小尺度目標特征。使用改進后的目標檢測算法分別對切片前后圖像進行訓練,并集成兩個模型檢測結(jié)果,實現(xiàn)了多尺度目標檢測。不同模型的對比結(jié)果表明:本文算法檢測效果較現(xiàn)有目標檢測算法提升顯著,Precision 達到了83.2%,Recall達到了92.8%,且mAP值比數(shù)據(jù)集原作者提出的方法提升了1.6 個百分點,達到了90.8%,漏檢少,可檢測出較為隱蔽的目標,定位更加準確。在下一步的研究中,將結(jié)合知識蒸餾方法,對模型進行輕量化改進,提升部件檢測效率。