王楊楊,曹 暉,莫文昊
(1.西安交通大學電氣工程學院,陜西西安 710049;2.中國電力科學研究院有限公司,北京 100192)
隨著輸電網(wǎng)絡的不斷深化和覆蓋區(qū)域的不斷擴大,確保輸電線路可靠、有序、經(jīng)濟運轉成為重中之重。輸電線路走廊上的鳥巢給電網(wǎng)設備帶來隱患,嚴重時甚至會造成跳閘。為此,需要結合輸電線路實際情況,利用適宜的方式開展定期巡檢。經(jīng)濟便捷的無人機智能巡檢是目前重要的方式之一[1-5],無人機獲取的巡檢圖片,可以用于輸電線路環(huán)境和通道設備的智能分析與應用。文獻[6]采用絕對誤差和算法建立圖像視差圖,然后利用閾值分割完成對輸電線路的提取。文獻[7]使用方向梯度直方圖法提取航拍圖像特征,基于增量特征選擇參數(shù)完成特征分類。
傳統(tǒng)檢測算法的特點是利用圖像特征分類器完成對象識別。文獻[8]采用自適應二值化、樹干/分支檢測和模式學習的方法,對高鐵接觸網(wǎng)中出現(xiàn)的鳥巢進行檢測,并以實驗驗證了其可行性。文獻[9]采用基于微結構的Gabor 濾波方法與主成分分析法來更精確地進行鳥巢的特征提取。文獻[10]提出了一種基于圖像配準的固定場景電力設備缺陷定位方法。
深度學習算法憑借優(yōu)越的性能表現(xiàn),在目標檢測和視覺學習領域得到大規(guī)模應用[11-13]。卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,CNN)能縮小權重參數(shù)范圍,提高算法的運算速度[14-15]。R-CNN(Region CNN)對圖片生成若干候選框,利用CNN 提取特征向量,使用支持向量機進行分類,通過非極大值提高檢測效率[16]。Fast R-CNN[17]在R-CNN 的基礎上,采用性能效果更優(yōu)的softmax,以降低時空復雜度,同時創(chuàng)新性地引入邊界框回歸技術,因此要比R-CNN 具有更高的魯棒性和精度。通過借鑒其他圖像識別算法中的結構,學者們提出了以Mask R-CNN 為代表的眾多優(yōu)化算法[18]。文獻[19]提出一種基于Retina Net 和注意力機制的多級目標檢測方法,文獻[20]對源圖像數(shù)據(jù)集進行了數(shù)據(jù)增強處理,同時采用初級YOLOv3 網(wǎng)絡對鳥巢進行預檢測,利用高級YOLOv3 網(wǎng)絡對鳥巢檢測結果進行修正,兼顧了算法的精度與效率,提高了網(wǎng)絡性能。文獻[21]利用圖像增強和深度可分離卷積提高網(wǎng)絡的運算速度,文獻[22]提出一種基于注意力機制和Squeeze Net 結構的目標檢測算法,文獻[23]提出一種基于多維特征融合的改進YOLOv4 算法,文獻[24]提出一種基于多尺度池化核的TS-YOLO 結構,提高了模型的檢測準確率。
為了得到一種高效的多尺度目標檢測網(wǎng)絡,本文提出了一種基于深度可分離卷積和最小凸集的改進型YOLOv4 算法。首先,對CSPDarknet53 網(wǎng)絡中的CSP 塊·N模塊引入深度可分離卷積,得到DS-CSP 塊·N,以增強特征信息提取;其次,基于Kmeans 存在受初始聚類簇數(shù)影響大的缺點,提出Kmeans++算法以優(yōu)化錨框尺寸和比例,基于最小凸集改進回歸損失函數(shù),改進后的YOLO Head 稱為DS-YOLO Head;最后,為了能夠在多尺度目標檢測中提取更多的特征信息,本文在PANet 和DSYOLO Head 之間增加SPP1 和SPP2 2 個新的空間金字塔池化模塊(Spatial Pyramid Pooling,SPP)。運用巡檢無人機獲取線路通道圖片,得到不同規(guī)格的圖片集,經(jīng)過歸一化處理、數(shù)據(jù)增強和圖像標注,得到模型所需格式的數(shù)據(jù)集。相較于改進之前,準確率和精度F1 值均得到有效提高;相較于其他算法,本文算法兼顧了精度和速度,具備更優(yōu)的綜合性能。
YOLOv4 是一種多層級、多尺度的智能檢測算法,其結構包括:(1)Head 模塊:采用多尺度滑動窗口的Anchor 機制;(2)backbone 模塊:引入殘差結構和softmax,采用輕量化的CSPDarknet53 結構[25],減少了網(wǎng)絡參數(shù)和計算開銷,提升了檢測的速度和精度;(3)Neck 模塊。
其中,Neck 模塊包括:(1)SPP 模塊:采用3×3卷積核,能實現(xiàn)將規(guī)格各異的圖片處理成同一規(guī)格的功能,拓展感受野的同時挖掘更完善的語義信息,提高精度的同時減少時空開銷;(2)PANet:一種雙向特征信息融合結構,可以兼顧深層語義特征和淺層位置特征,提高多尺度目標的檢測能力。
CSPDarknet53 包含5 個CSP 塊·N模塊,每個CSP 塊·N模塊由N個Res unit 單元和若干CBM 單元 組 成,CBM 單 元 包 括 卷 積Conv,BN(Batch Normalization)和Mish 激活函數(shù);Res unit 單元包含2 個CBM 單元,2 個CBM 單元之間通過殘差結構連接;CBM 單元包含提取特征的Conv 卷積層、促進收斂的BN 層和改善梯度的Mish 激活層。
SPP 可以對任何大小、比例的輸入圖像進行池化,以獲取維度一致的特征向量。SPP 利用不同規(guī)格的分割方式對輸入圖片進行處理,從而得到SPP的不同層,如圖1 所示,其中d為維度。
圖1 SPP示意圖Fig.1 Schematic of SPP
在第1 層中,將整張圖片作為1 張?zhí)卣鲌D;在第2 層中,把整張圖片分為了4 張?zhí)卣鲌D;在第3層中,把整張圖片分為了16 張?zhí)卣鲌D。然后提取上述21 張?zhí)卣鲌D的特征向量,輸入全連接層中進行訓練。通過在YOLOv4 中添加SPP 結構,可以增加感受野,同時提高檢測速度。
PANet 包括特征金字塔網(wǎng)絡(Feature Parymid Network,F(xiàn)PN)和路徑聚合網(wǎng)絡(Path Aggregation Network,PAN)兩部分,如圖2 所示。
圖2 PANet網(wǎng)絡結構圖Fig.2 PANet network structure
FPN 通過橫向連接方式把采樣得到的特征圖與同等尺寸的特征圖融合,并且采用自頂向下的特征提取結構,不僅可以改善特征圖的表征效果,還可以用于多尺度目標檢測;PAN 以橫向連接方式把采樣得到的特征圖與同等尺寸的特征圖融合,并且采用自底向上的特征提取結構,能夠兼顧上下文的定位信息和語義信息。
本文針對YOLOv4 存在的不足,基于低參數(shù)量的深度可分離卷積(Depthwise Separable Convolution,DSConv)和最小凸集技術,對YOLOv4 提出相應的改善措施:
1)在YOLOv4 中,對CSPDark-net53 網(wǎng)絡中的CSP 塊·N模塊引入深度可分離卷積,得到DS-CSP塊·N,降低了網(wǎng)絡的參數(shù)量和計算開銷,提高檢測速度。
2)利用K-means++算法對錨框尺寸和比例進行優(yōu)化,克服了K-means 算法選擇初始點時人為因素的影響,避免陷入局部最優(yōu)困境;基于最小凸集建立回歸損失函數(shù),克服了邊界框不重合時的缺陷,將改進后的YOLO Head 稱為DS-YOLO Head。
3)在PANet 和DS-YOLO Head 之間增加SPP1和SPP2 2 個新的SPP 模塊。新的SPP 模塊改變了池化核大小,使得池化層能夠對輸入特征層進行多尺度池化和信息融合,大大增強了網(wǎng)絡的接受域。
基于深度可分離卷積結構和最小凸集技術的改進型YOLOv4 算法的網(wǎng)絡結構如圖3 所示。
圖3 改進型YOLOv4示意圖Fig.3 Schematic of improved YOLOv4
深度可分離卷積DSConv[26]結構包括:(1)深度卷積層:每個卷積核各自對應1 張通道特征圖,各自生成1 張?zhí)卣鲌D;(2)逐點卷積層:每個卷積核將3 通道特征圖拼接成1 張?zhí)卣鲌D。本文采用DSConv 替換CSP 塊·N中的Conv 卷積層,得到DSCSP 塊·N,以降低參數(shù)量和計算開銷。
YOLOv4 利用錨框對圖像進行分割,通過聚類的方式得到錨框的尺寸和比例,進而檢測錨框中的物體。如圖4 所示。假設特征圖中被劃分到某一單元的左上角坐標為()cx,cy,錨框的寬和高為bw和bh。通過網(wǎng)絡不斷學習,得到其坐標和長寬值。其中,tx,ty為坐標偏移量,tw,th為寬和高縮放比,()bx,by,bw,bh為圖4中實線框的預測輸出坐標和寬高;σ(tx),σ(ty)為坐標偏移量補償;為寬高縮放比補償;pw,ph為圖4 中虛線框的實際寬度和高度。
圖4 預測框示意圖Fig.4 Schematic diagram of bounding box
YOLOv4 網(wǎng)絡使用K-means 算法求解出Q個錨框的大小和比例,使用交并比OIU為距離指標進行聚類。K-means 算法需人為給定初始點,如果給定的初始點不合適,最后迭代得到的結果可能為局部最優(yōu)值。K-means++算法初始點的選取是從整個數(shù)據(jù)集隨機選取,因此跳出了初始簇的范圍,使得算法有很大的概率跳出局部最優(yōu)解,從而在迭代過程中得到全局最優(yōu)解,其具體計算步驟如下:
1)給定M個候選框。
2)任意挑選1 個候選框,作為第1 個簇心。
3)對余下的M-1 個候選框,從中選出與第1 個簇心最遠(D(A,B)最大)的候選框,該候選框是第2 個簇心。
4)再次執(zhí)行以上步驟,最后從M個候選框中選出Q個簇心。
5)用選出的Q個簇心代替K-means 算法的初始點,按照算法流程選出Q個錨框。其中,D(A,B)的表達式為:
式中:A為候選框;B為簇心。
回歸損失函數(shù)是衡量預測框和真實框之間相似度誤差的關鍵指標之一,影響著目標檢測的精度。YOLOv4 采用交并比計算回歸損失函數(shù)LO,LO主要考慮了預測框C和真實框D公共部分的面積,當邊界框不重合時(此時LO的值為1)會造成很大誤差。為了解決這種不足,同時兼顧預測框縱橫比和真實框中心點之間的距離,提出基于最小凸集改進的回歸損失函數(shù)LC;當預測框C和真實框D的邊界框不重合時,OIU為0,LC大于1。最小凸集是包含C和D的最小外接矩形,基于最小凸集改進的回歸損失函數(shù)LC,公式如下:
式中:ρ2(b,bgt)為C的幾何中心b和D的幾何中心bgt之間的歐氏距離;c為最小凸集的對角線距離;wgt和hgt分別為C的寬度和高度;w和h分別為D的寬度和高度。
本文使用的圖像數(shù)據(jù)集是某省供電公司利用多臺無人機獲取的輸電線路高清照片。對于光線明暗程度和圖片大小不同的問題,將原始圖片統(tǒng)一轉換為相同規(guī)格,大小為416 px×416 px。無人機獲取的有效照片僅為1 000 張,尚不足以滿足訓練需求,因此通過引入Mosaic 圖像增強以豐富模型樣本集;通過縮放、平移、色域變化、旋轉等方式,將圖像數(shù)量擴增到3 000 張。
使用LabelImg 軟件,標注出數(shù)據(jù)集中鳥巢所處的位置和種類。將標注好的數(shù)據(jù)集分為3 組:驗證集480 幅;訓練集1 920 幅;測試集600 幅。網(wǎng)絡參數(shù)上,采取Adam 優(yōu)化器。在前80 訓練輪次中,學習率初值為0.01,每20 個訓練輪次學習率減半,屬于模型粗調(diào)階段;81 到100 訓練輪次的學習率為0.001,屬于模型微調(diào)階段;101 到120 訓練輪次的學習率為0.000 1,屬于模型精調(diào)階段。批大小設置為25,共進行120 個訓練輪次訓練。
本文采用評估準確率Acc,F(xiàn)1 值、召回率Rec和每秒傳輸幀數(shù)FPS作為模型性能的指標。TP和FN分別為“有鳥巢”樣本被模型正確和錯誤評估的數(shù)量;TN和FP分別為“無鳥巢”樣本被模型正確或錯誤評估的數(shù)量。
Acc,F(xiàn)1值,Rec的計算表達式如下:
利用標注好的數(shù)據(jù)集對原始YOLOv4 和改進型YOLOv4 進行訓練和驗證,得到訓練集和驗證集的損失函數(shù)(無量綱),如圖5 所示。
圖5 訓練集和驗證集損失Fig.5 Loss of training set and verification set
由圖5(a)可知,深度可分離卷積的引入,使得改進型YOLOv4 在大約50 個訓練輪次后比原始YOLOv4 的損失更低;而最小凸集的引入,使得算法改進后損失的梯度下降更快。
由圖5(b)可知,深度可分離卷積的引入,使得改進型YOLOv4 的損失在大約10 個訓練輪次后比原始YOLOv4 的損失更低;Adam 優(yōu)化器的引入,使得改進后算法最終的損失大約是改進前損失的一半。
改進前后算法的準確率Acc和F1 值變化曲線如圖6 所示。
圖6 精度指標變化圖Fig.6 Curves for precision index
由圖6 可知,由于引入DSConv 結構,減少了算法參數(shù)和運算時空開銷,同時使得算法F1的穩(wěn)定時間變長。經(jīng)過逐次訓練不斷優(yōu)化,改進型YOLOv4的檢測精度和速度不斷改善,整體性能表現(xiàn)都優(yōu)于YOLOv4。因此,本文所提出的模型在鳥巢檢測方面具有良好性能。
利用本文提出的改進型YOLOv4 和YOLOv4分別對輸電線路不同位置(間隔棒、均壓環(huán)和鐵塔橫擔)的鳥巢進行檢測,結果如圖7 所示。圖7(a),(c),(e)分別為YOLOv4 對間隔棒、均壓環(huán)、鐵塔橫擔處的鳥巢檢測結果,圖7(b),(d),(f)分別為改進型YOLOv4 對間隔棒、均壓環(huán)、鐵塔橫擔處的鳥巢檢測結果。
圖7 改進型YOLOv4和YOLOv4鳥巢檢測結果Fig.7 Bird’s nest detection results with improved YOLOv4 and YOLOv4
此外,本文設計了消融實驗,共分為6 組實驗。第1 組為原始YOLOv4 算法,第2 組為引入DSConv 的YOLOv4 算法,第3 組為引入DSConv 和SPP 的YOLOv4 算法,第4 組為引入DSConv,SPP和Mosaic 圖像增強的YOLOv4 算法,第5 組為引入DSConv,SPP,Mosaic 圖像增強和K-means++的YOLOv4 算法,第6 組為采用了DSConv,SPP,Mosaic 圖像增強,K-means++和Adam 學習率衰減的改進型YOLOv4 算法,結果如表1 所示。
表1 消融實驗結果Table 1 Results of ablation experiment
由表1 可知,DSConv 在略微降低精度的情況下提升速度;SPP 略微降低了速度,但提升了精度,并顯著提升了準確度;由于Mosaic 圖像增強技術的引入,各項精度指標得到了改善;K-means++算法提升了精度,但速度略微降低;Adam 優(yōu)化器提升了精度,并顯著提升了召回率。
利用已標注的數(shù)據(jù)集,把評估準確率Acc,F(xiàn)1值,Rec和FPS作為模型性能的指標,將所述的改進型YOLOv4 算法與其他3 種進行對比實驗,結果如表2 所示,其中SSD 為單目標多框檢測。
表2 對比實驗結果Table 2 Results of contrast experiment
分析可知,所述改進型YOLOv4 算法的FPS不及YOLOv5,但是提高了算法的Rec和F1;在Acc,F(xiàn)1 值,Rec和FPS方面,所述改進型YOLOv4 算法的表現(xiàn)均比SSD 有所提高;此外,相較于Faster RCNN,所述改進型YOLOv4 算法除了F1 有輕微降低,其他性能表現(xiàn)更優(yōu)。綜合看來,改進后的算法有更高的鳥巢檢測準確度和更低的運算開銷。
對于輸電線路無人機巡視圖像經(jīng)典鳥巢檢測算法權重參數(shù)范圍大、識別效率低、識別精度低的缺點,本文提出了一種改進型YOLOv4 輸電線路鳥巢檢測與識別方法,通過仿真分析得到如下結論:
1)引入Mosaic 圖像增強技術,能夠對數(shù)據(jù)集施加多種變換,從而豐富訓練樣本集,使網(wǎng)絡的F1 略有提高,準確率提高了0.18%,召回率提高了0.22%。
2)深度可分離卷積的引入減少了算法參數(shù)和運算時空開銷,在維持和值相對穩(wěn)定的情況下,將召回率從89.52%提高到90.95%。
3)增加2 個SPP 模塊以改進網(wǎng)絡結構,在召回率和略微降低的情況下,從91.58%提高到98.26%,值從0.90 提高到0.93。綜合看來,改進后的算法有更高的鳥巢檢測準確度和更低的運算開銷,整體性能優(yōu)于其他算法。
本文的探索為將來無人機大范圍巡檢和輸電線路異物檢測奠定了重要基礎。