屈志堅,高天姿,池 瑞,楊 行
(華東交通大學(xué)電氣與自動化工程學(xué)院,江西 南昌 330013)
接觸網(wǎng)是電氣化鐵路的動力輸電網(wǎng)絡(luò), 接觸網(wǎng)穩(wěn)定的工作狀況與鐵路安全穩(wěn)定運行密切相關(guān)[1-2]。 鳥類在接觸網(wǎng)上筑巢已不罕見,若不及時發(fā)現(xiàn)并處理鳥巢, 容易引起輸電線路跳閘或絕緣子擊穿等, 對鐵路運輸安全穩(wěn)定運行造成嚴重威脅[3]。傳統(tǒng)檢測識別鳥巢的方式是人工檢測法[4],即采用人工對車載視頻進行標記, 該方法費時費力且效率較低。
近幾年,隨著計算機圖像技術(shù)的發(fā)展,利用圖像處理技術(shù)對拍攝的車載視頻進行自動檢測,能提高接觸網(wǎng)故障檢測的效率。 祝振敏等[5]針對鳥巢的結(jié)構(gòu)特性, 對接觸網(wǎng)上疑似鳥巢區(qū)域進行粗提取,得到鳥巢可能存在的關(guān)鍵區(qū)域, 再利用HOG 特征和分類器訓(xùn)練對鳥巢進行精確提取。 金煒東等[6]分析鳥類筑巢特點,針對桿塔的中上部、圖片中最前景的硬橫梁結(jié)構(gòu),提出一種基于相對位置不變性的接觸網(wǎng)鳥巢識別檢測。 羅婷婷等[7]通過分析發(fā)現(xiàn)接觸網(wǎng)圖像中正常數(shù)據(jù)與異常數(shù)據(jù)樣本數(shù)量存在嚴重的不平衡,針對鳥巢的檢測問題,提出利用雙判別器生成對抗網(wǎng)絡(luò)來解決鳥巢樣本數(shù)據(jù)不平衡問題。 上述方法均能夠檢測到接觸網(wǎng)上的鳥巢,但存在如對于遮擋問題性能不太穩(wěn)定;或在鳥巢檢測前需要設(shè)定閾值;閾值的選擇影響鳥巢的檢測結(jié)果等問題。近年來,以卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的深度學(xué)習(xí)目標檢測算法主要分為一階段檢測和二階段檢測[8-9]。FasterR-CNN[10]等是基于目標候選框思想的二階段檢測,SSD[11],YOLO[12]等是基于回歸思想的一階段檢測,具有更高的檢測速度。
在接觸網(wǎng)鳥巢的檢測上,改進的YOLOv3 算法與目前比較熱門的SSD、RetinaNet[13]等算法相比,有更高的檢測精度。
鳥巢圖像預(yù)處理主要包含灰度化, 小波去噪,維納濾波,數(shù)據(jù)增強4 個階段,其中灰度化是鳥巢圖像預(yù)處理的首要步驟。 小波去噪,維納濾波,數(shù)據(jù)增強各階段順序不影響,可獨立完成對鳥巢圖像檢測。由于拍攝到的鳥巢圖像是彩色圖像,每個像素點有2563個顏色變化區(qū)間, 若直接對彩色圖像處理,計算量大且訓(xùn)練速度慢。 將鳥巢圖像灰度化后,計算量大大減小[14-15],且仍能反映圖像亮度等級分布以及整體和局部色度。 本文采用平均值法對鳥巢圖像進行灰度化處理, 將彩色的鳥巢圖像RGB 三分量取均值作為灰度圖的灰度值。 平均值灰度化結(jié)果圖如圖1 中平均值灰度化結(jié)果圖所示。
列車車載攝像機在拍攝過程中由于受到環(huán)境影響, 導(dǎo)致采集到的鳥巢圖像具有各種類型噪聲。為了將無效的噪聲信號過濾掉,本文采用小波閾值去噪, 其中閾值的選擇主要有硬閾值和軟閾值函數(shù)[16],如圖1 軟硬閾值去噪結(jié)果圖所示,分別為軟硬閾值的去噪效果。
列車的高速行駛導(dǎo)致車載攝像機拍攝到的鳥巢圖片存在一定程度的運動模糊,需要將帶有運動模糊的鳥巢圖片復(fù)原成原始圖像。 采用維納濾波方法,使得恢復(fù)后的鳥巢圖像與最初不帶運動模糊的鳥巢圖像間均方誤差最小。 維納濾波的傳遞公式為
式中:H*為分母的復(fù)共軛;Z 為噪聲功率譜;S 為原圖像功率譜。 結(jié)合式(1)可以得出
式中:Q^為去掉運動模糊后的圖像做傅里葉變換。
利用維納濾波去除運動模糊的結(jié)果圖如圖1(f)所示。
一般來說,拍攝到的高鐵接觸網(wǎng)鳥巢圖像僅占很少一部分,若直接對樣本數(shù)量如此匱乏的鳥巢圖像進行訓(xùn)練,神經(jīng)網(wǎng)絡(luò)易出現(xiàn)過擬合現(xiàn)象,即出現(xiàn)在訓(xùn)練集上效果好,而對于未參與訓(xùn)練的數(shù)據(jù)集上效果不好。 數(shù)據(jù)增強在一定程度上能避免過擬合現(xiàn)象的產(chǎn)生,基于此,采用數(shù)據(jù)增強[16]方法增加鳥巢數(shù)據(jù)集。 部分擴增結(jié)果如圖1(f)~圖1(h)所示。
圖1 鳥巢圖像預(yù)處理結(jié)果圖Fig.1 Bird nest image preprocessing result map
如圖1 所示,經(jīng)灰度化后的鳥巢圖像與原始圖像相比仍能反映鳥巢的形狀特征、邊緣特征;經(jīng)過軟硬閾值小波去噪處理后的鳥巢圖像顯示,軟閾值去噪后的圖像更平滑,去噪效果更好;維納濾波結(jié)果圖與原圖相比,能夠?qū)⑴臄z高鐵接觸網(wǎng)鳥巢圖像的過程中產(chǎn)生的運動模糊過濾; 數(shù)據(jù)增強采用翻轉(zhuǎn)、旋轉(zhuǎn)、改變亮度對比度等方式增加鳥巢數(shù)據(jù)集數(shù)量。
典型的深度學(xué)習(xí)模型有卷積神經(jīng)網(wǎng)絡(luò)、深度信任網(wǎng)絡(luò)、堆棧自編碼網(wǎng)絡(luò)三類模型。 卷積神經(jīng)網(wǎng)絡(luò)在計算機視覺等領(lǐng)域取得了很好的效果。 一般的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)主要包含卷積層、池化層、全連接層,基本結(jié)構(gòu)如圖2 所示。
圖2 卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)Fig.2 Basic structure of convolutional neural network
高鐵接觸網(wǎng)鳥巢圖像經(jīng)卷積神經(jīng)網(wǎng)絡(luò)輸入層并傳遞給卷積層, 卷積層利用卷積核從上到下,從左到右對輸入鳥巢圖像進行卷積操作,能夠提取數(shù)據(jù)的抽象特征和邊緣特征;池化層能夠?qū)?shù)據(jù)進行降維,對特征進行壓縮,減少參數(shù)量;全連接層綜合提取到的特征并映射為固定長度向量,一般包含類別概率及坐標位置等。 本文使用的深度學(xué)習(xí)算法首先直接將圖片作為輸入, 將圖片分割為G×G 個單元格,在每個單元格上通過邊界框預(yù)測,最終輸出每個邊界框預(yù)測的目標概率和坐標,包含邊界框的橫坐標,縱坐標,寬度,高度以及類別的共5 個置信度信息,分別用ax,ay,aw,ah,aconf表示,其中置信度aconf如下所示
若目標中心落在某一塊單元格內(nèi)部,則由該單元格預(yù)測該目標,以這個單元格為中心生成多尺度先驗框,比對先驗框與真實框的交并比選擇最合適尺度的先驗框進行尺度縮放和平移邊界框來判斷物體的位置。 記邊框預(yù)測值為(px,py,pw,ph),目標中心在單元格中相對于圖像左上角偏移量為(sx,sy),同時先驗框具有寬度和高度 (Aw,Ah), 則修正后(amend)的邊框為
本文使用的深度學(xué)習(xí)算法YOLOv3 網(wǎng)絡(luò)模型以卷積神經(jīng)網(wǎng)絡(luò)作為基礎(chǔ)結(jié)構(gòu),主要由特征提取模塊DarkNet-53[17]、FPN(feature pyramid network)組成[18]。其中,特征提取模塊DarkNet-53 共含有53 層卷積層, 除去最后一層由1×1 卷積組成的全連接層。網(wǎng)絡(luò)整體結(jié)構(gòu)如圖3 所示。
圖3 YOLOv3 網(wǎng)絡(luò)整體結(jié)構(gòu)Fig.3 The overall structure of the YOLOv3 network
增強后的鳥巢圖片尺寸為640×640, 首先經(jīng)過Reshape 將尺寸統(tǒng)一到416×416 后再輸入到Darkenet-53 網(wǎng)絡(luò)模型中。 經(jīng)過Darknet-53 結(jié)構(gòu)將后3個殘差模塊輸出的特征圖輸入到FPN 中。其中,13×13 的特征圖經(jīng)過5 次卷積輸入到檢測網(wǎng)絡(luò)中,再將該特征圖經(jīng)過一次卷積和上采樣與26×26 的特征圖拼接融合,將融合后的特征圖經(jīng)過5 次卷積輸入到檢測網(wǎng)絡(luò)中,再將該特征圖經(jīng)過一次卷積和上采樣與52×52 的特征圖拼接融合,經(jīng)過5 次卷積輸入到檢測網(wǎng)絡(luò)中。 最終檢測網(wǎng)絡(luò)輸出52×52,26×26,13×13 特征圖分別適合檢測小目標, 中等目標,大目標鳥巢。
由于高鐵接觸網(wǎng)鳥巢圖像的鳥巢目標輪廓不清晰,降維過程易發(fā)生信息丟失等問題,鳥巢圖像在預(yù)處理和多尺度預(yù)測過程中,存在拉伸成固定尺寸等操作導(dǎo)致信息失真影響后續(xù)檢測結(jié)果。 為了解決這個問題,引入空間金字塔池化。 空間金字塔池化的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖4 所示。
圖4 空間金字塔池化處理模塊Fig.4 Spatial pyramid pooling module
空間金字塔池化處理模塊如圖4 所示。 經(jīng)5 次殘差模塊后,鳥巢的輸入圖像尺寸從416×416×1 變成13×13×1 024,為了提取到鳥巢的多尺度信息,在經(jīng)過3 次卷積后,對特征圖進行分塊池化,本文選擇的池化核為5,9,13,其中為了不使輸入特征圖尺寸發(fā)生變化,采用步長為1 且填充的池化方式。 經(jīng)過3 個不同尺度的池化操作后的特征圖和原始全局特征圖融合后能夠獲得更多特征,消除由于鳥巢尺寸大小不一樣導(dǎo)致有效信息不一致的影響,有助于提高對鳥巢的檢測精度。
目標檢測常把均方誤差作為損失,但又使用交并比(IoU)[19]即真實框與預(yù)測框的交并比來衡量預(yù)測結(jié)果的好壞,模型對兩者的優(yōu)化并不等價,當真實框與預(yù)測框的均方誤差損失相等時,兩者交并比并不一定相等。 同時交并比能被反向傳播,若把交并比作為損失函數(shù)直接被優(yōu)化即直接優(yōu)化評價指標比選擇替代的損失函數(shù)好。 但交并比有兩個缺點:①當真實框與預(yù)測框不相交時,交并比為0,此時梯度也為0,無法進行優(yōu)化;②若真實框與預(yù)測框不相交時,如圖5 所示,兩者不相交,交并比為0,但無法反映哪個預(yù)測結(jié)果更好。
圖5 交并比為0 時兩種可能的情況Fig.5 Two possible situations when IoU is 0
如圖5 所示,雖然綠色的真實框與黃色預(yù)測框都不相交, 但明顯左邊的預(yù)測框與真實框距離更近,預(yù)測效果更好。
為了更好的評價預(yù)測框的質(zhì)量,本文利用GIoU(Generalized IoU,GIoU,令為GIoU)即廣義交并比作為新的預(yù)測框與真實框的距離的評價方法。GIoU 不僅關(guān)注真實框預(yù)測框交集,也關(guān)注兩者并集,更能評價兩者重疊關(guān)系。
GIoU 評價方法的計算步驟為:
1) 計算真實框與預(yù)測框的面積分別用TT、TP表示;
2) 計算兩者交集TT∩TP和并集TT∪TP;
3) 找到包含真實框與預(yù)測框的最小框,并計算其面積大小,用Tmin表示;
這種評價方式當真實框與預(yù)測框不相交時,也能進行優(yōu)化,改善了當IoU 為0 時難以優(yōu)化的問題。
本文使用Pytorch 平臺進行鳥巢檢測識別,使用GPU 加速,實驗環(huán)境配置如表1 所示。
表1 實驗環(huán)境配置Tab.1 Experimental environment configuration
針對某高鐵接觸網(wǎng)鳥巢圖像,經(jīng)6 種數(shù)據(jù)增強方法后得到的鳥巢圖像共716 張, 其中訓(xùn)練集共585 張,驗證集70 張,測試集61 張。 將鳥巢圖片尺寸歸一化至640×640 像素。 根據(jù)實驗需求將鳥巢數(shù)據(jù)集標注為數(shù)據(jù)格式并保存。 模型訓(xùn)練開始階段將學(xué)習(xí)率設(shè)置為0.001,在step 模式下更新學(xué)習(xí)率,訓(xùn)練迭代次數(shù)達到7 000 次時學(xué)習(xí)率下降為初始學(xué)習(xí)率的10%,訓(xùn)練迭代次數(shù)達8 000 次時,學(xué)習(xí)率降為初始學(xué)習(xí)率的1%。 訓(xùn)練過程對損失函數(shù)值進行記錄。
如圖6 所示,損失隨迭代次數(shù)增加逐漸趨于穩(wěn)定,GIoU 損失達到3.5 左右基本不超過4,Objectness 損失達到0.1 左右基本不超過0.25。 根據(jù)曲線收斂情況所示,9 000 次訓(xùn)練后可停止迭代。
圖6 損失變化曲線圖Fig.6 Loss change graph
在高鐵接觸網(wǎng)鳥巢圖像檢測中,網(wǎng)絡(luò)模型精度與召回率可由下列兩個公式計算得出。
式中:P 表示網(wǎng)絡(luò)模型精度;R 表示召回率;nTP表示鳥巢被正確框出的數(shù)量;sum1表示所有被框出數(shù)量的總和;sum2表示圖片中鳥巢的數(shù)量總和。 平均精度均值mAP 是衡量模型在不同類別中檢測效果的重要指標,計算方法為
式中:num(class)表示圖像檢測類別數(shù)目總和;AP(average precision) 表示精度與召回率關(guān)系曲線的有限積分值,與模型整體表現(xiàn)呈正相關(guān)。 改進后的YOLOv3 網(wǎng)絡(luò)在接觸網(wǎng)鳥巢數(shù)據(jù)集上鳥巢檢測的AP 曲線如圖7 所示。
圖7 改進后的YOLOv3 網(wǎng)絡(luò)在鳥巢數(shù)據(jù)集上的AP 曲線Fig.7 AP curves of the improved YOLOv3 network on the bird nest dataset
如圖7 所示,改進后的YOLOv3 網(wǎng)絡(luò)在鳥巢數(shù)據(jù)集上的AP 達到95.1%。 mAP 是AP 在不同類別下的均值,在本文單一類別數(shù)據(jù)集中,可作為鳥巢檢測的評價指標。 測試結(jié)果如表2 所示。
由表2 可知,基于層數(shù)50 層的RetinaNet 算法的鳥巢檢測,mAP 達到65.7%,基于SSD300 算法的鳥巢檢測,mAP 達到90.2%, 原始YOLOv3 算法在鳥巢上的檢測,mAP 達到90.4%,改進的YOLOv3算法在鳥巢上的檢測,mAP 達到95.1%。 結(jié)果表明,改進的YOLOv3 算法與層數(shù)50 層的RetinaNet 算法、SSD300 算法相比,在接觸網(wǎng)鳥巢上的檢測有更高的平均準確度。
表2 不同檢測算法在本文數(shù)據(jù)集上的檢測結(jié)果Tab.2 Detection results of different detection algorithms on the dataset in this paper
用改進后的YOLOv3 網(wǎng)絡(luò)對高鐵接觸網(wǎng)鳥巢圖片進行測試,部分檢測結(jié)果如圖8 所示。 檢測結(jié)果顯示,在高鐵接觸網(wǎng)復(fù)雜背景下,改進的YOLOv3網(wǎng)絡(luò)能檢測到部分不清晰、有遮擋的鳥巢,對于遠距離、部分形狀較小的鳥巢也能檢測到,具有較好的泛化能力。
圖8 改進后的YOLOv3 網(wǎng)絡(luò)在接觸網(wǎng)鳥巢數(shù)據(jù)集上的測試結(jié)果Fig.8 Test results of the improved YOLOV3 network on the Catenary Nest dataset
卷積神經(jīng)網(wǎng)絡(luò)由多個卷積層組成,每個卷積層利用卷積核對圖像進行卷積運算, 得到特征圖,每層提取的特征不同。 淺層卷積層提取較為局部、細節(jié)的信息,高層卷積層感知圖像更復(fù)雜、抽象的信息。 通過對部分卷積層輸出的鳥巢圖像特征圖的分析,得到卷積神經(jīng)網(wǎng)絡(luò)對鳥巢信息的提取過程。 如圖9 所示。
可以看出,神經(jīng)網(wǎng)絡(luò)對鳥巢圖像的信息提取過程與人認知圖像相似。 人在認知圖像時先感知圖片亮度信息與顏色信息,再是邊緣、輪廓等局部細節(jié),然后是紋理特征等更加復(fù)雜的信息,最后將所有信息綜合形成整體的概念。 如圖9 所示,神經(jīng)網(wǎng)絡(luò)先對桿塔邊緣仔細辨認,突出夾角位置,隨著網(wǎng)絡(luò)層數(shù)加深, 將桿塔與背景分開并尋找目標可能的重點部位。
圖9 卷積層輸出特征圖Fig.9 The convolutional layer outputs the characteristic graph
該文基于Pytorch 平臺使用以卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的深度學(xué)習(xí)模型,對高鐵接觸網(wǎng)鳥巢圖像進行檢測與識別。
1) 前期對鳥巢圖像的去噪處理,能有效降低各種噪聲對鳥巢目標的干擾,突出鳥巢目標;數(shù)據(jù)增強能提高鳥巢樣本數(shù)目,一定程度上解決了神經(jīng)網(wǎng)絡(luò)出現(xiàn)過擬合問題。
2) 將空間金字塔池化與改進的深度學(xué)習(xí)模型結(jié)合,有效提高對鳥巢的多尺度特征信息,同時引入廣泛交并比作為損失函數(shù), 與均方誤差相比,直接將評價真實框與預(yù)測框距離的方法作為損失函數(shù),改善了IoU 作為評價方法時,真實框與預(yù)測框不相交無法優(yōu)化的問題,更適合作為損失函數(shù)進行優(yōu)化。
3) 與傳統(tǒng)檢測鳥巢的方法相比,該方法檢測鳥巢精度更高,有更高的檢測速度,能在復(fù)雜的接觸網(wǎng)背景下較好的識別檢測鳥巢,對接觸網(wǎng)鳥害的處理有重要意義。