蔣欣蘭
1.中國(guó)社會(huì)科學(xué)院大學(xué) 計(jì)算機(jī)教研部,北京 102488
2.中國(guó)社會(huì)科學(xué)院大學(xué) 計(jì)算社會(huì)科學(xué)研究中心,北京 102488
近年來,隨著鐵路事業(yè)的快速發(fā)展,我國(guó)鐵路總里程已達(dá)124 000 km。鋼軌扣件是軌道上用以連接鋼軌和軌枕的軌道基礎(chǔ)設(shè)施部件,其作用是將鋼軌固定在軌枕上,保持軌距并防止鋼軌的側(cè)向移動(dòng)。鋼軌扣件發(fā)生異常,將使得扣件對(duì)鋼軌起不到固定作用,對(duì)列車的運(yùn)行安全產(chǎn)生嚴(yán)重的影響。因此,鐵路鋼軌扣件的服役狀態(tài)對(duì)保障鐵路安全運(yùn)營(yíng)至關(guān)重要,需要對(duì)其進(jìn)行周期性的巡查,及時(shí)發(fā)現(xiàn)扣件的異常狀態(tài)。
然而,鐵路沿線環(huán)境非常復(fù)雜,獲取到的視頻數(shù)據(jù)的質(zhì)量參差不齊,關(guān)鍵區(qū)域有可能被遮擋或覆蓋,扣件的類型多樣,這些因素使得現(xiàn)有的基于人工設(shè)計(jì)特征的視覺檢測(cè)方法無(wú)法滿足實(shí)際線路的檢測(cè)要求。近年來,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)技術(shù)取得重大突破,極大地提升了目標(biāo)檢測(cè)的準(zhǔn)確率。但已有的深度學(xué)習(xí)檢測(cè)模型大多針對(duì)自然場(chǎng)景中的多類物體檢測(cè)而設(shè)計(jì),應(yīng)用在結(jié)構(gòu)化的特定軌道場(chǎng)景中,可能會(huì)出現(xiàn)過擬合的問題。其次,為了滿足時(shí)速350 km/h 的高速綜合檢測(cè)列車的實(shí)時(shí)檢測(cè)需求,對(duì)扣件的檢測(cè)速度提出了極高的要求,而已有的深度學(xué)習(xí)模型難以滿足高速檢測(cè)的時(shí)效性。
在這種背景下,本文提出了一種優(yōu)化的結(jié)構(gòu)化區(qū)域全卷積深度神經(jīng)網(wǎng)絡(luò)(structured region fully convolutional neural network,SR-FCN),充分利用軌道的空間結(jié)構(gòu)化信息,將扣件小目標(biāo)的檢測(cè)問題轉(zhuǎn)化為結(jié)構(gòu)化區(qū)域的定位問題,并通過優(yōu)化區(qū)域提名網(wǎng)絡(luò)(region proposal network,RPN)的錨點(diǎn)(anchor)遍歷個(gè)數(shù),極大地提升了扣件的定位速度,并避免了因局部扣件缺失或背景干擾造成的定位錯(cuò)誤,提升了檢測(cè)的魯棒性。
圖像中包含不同類別的多個(gè)目標(biāo),目標(biāo)檢測(cè)的首要目的是對(duì)檢測(cè)目標(biāo)進(jìn)行精確定位,之后對(duì)定位的目標(biāo)區(qū)域進(jìn)行識(shí)別分類。與圖像分類相比,對(duì)圖像中的目標(biāo)物體進(jìn)行檢測(cè)更為困難,對(duì)其建立的深度學(xué)習(xí)模型也更為復(fù)雜。基于深度學(xué)習(xí)的目標(biāo)檢測(cè)總體上分為兩派,即基于候選區(qū)域生成的R-CNN(region based convolutional neural networks)[1]系列以及基于回歸方法的(無(wú)需區(qū)域提名)YOLO(you only look once)[2]、SSD(single shot detector)[3]系列。
對(duì)于基于候選區(qū)域生成的檢測(cè)算法,目標(biāo)檢測(cè)的第一步是生成候選區(qū)域(region proposal),也就是找出可能的感興趣區(qū)域(region of interest,ROI)。常見的區(qū)域生成方法有:(1)滑動(dòng)窗口?;瑒?dòng)窗口本質(zhì)上就是窮舉法,利用不同的尺度和長(zhǎng)寬比把所有可能的大大小小的塊都窮舉出來。(2)規(guī)則塊。在窮舉法的基礎(chǔ)上進(jìn)行了一些剪枝,只選用固定的大小和長(zhǎng)寬比。(3)選擇性搜索。從機(jī)器學(xué)習(xí)的角度來說,前面的方法可以取得較好的召回率,但是精度差強(qiáng)人意,因此問題的核心在于如何有效地去除冗余候選區(qū)域。其實(shí)冗余候選區(qū)域大多是發(fā)生了重疊,選擇性搜索利用這一點(diǎn),自底向上合并相鄰的重疊區(qū)域,從而減少冗余。最經(jīng)典的基于候選區(qū)域的深度學(xué)習(xí)目標(biāo)檢測(cè)模型R-CNN 由Girshick 等人提出,該模型首先使用選擇性搜索(selective search)這一非深度學(xué)習(xí)算法來定位待分類的候選區(qū)域,然后將每個(gè)候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡(luò)中提取特征,接著將這些特征輸入到線性支持向量機(jī)中進(jìn)行分類,并在PASCAL VOC 數(shù)據(jù)集上取得了比傳統(tǒng)算法高約0.2 的平均正確率,為之后的基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)模型構(gòu)建奠定了基礎(chǔ)。
R-CNN 模型需要對(duì)圖像中所有的候選區(qū)域窗口都進(jìn)行特征提取,這必然導(dǎo)致特征提取的時(shí)間耗費(fèi)巨大。微軟亞洲研究院(MSRA)的He 等人[4]提出的空間金字塔池化網(wǎng)絡(luò)層(spatial pyramid pooling networks,SPP-Net)針對(duì)R-CNN 時(shí)間消耗較大的缺陷進(jìn)行了改進(jìn),僅對(duì)輸入圖像進(jìn)行一次卷積計(jì)算,大大提高了算法的執(zhí)行效率。
Girshick 也意識(shí)到了R-CNN 速度慢的問題,提出了一種改進(jìn)的方法Fast R-CNN[5]。與R-CNN 中的卷積神經(jīng)網(wǎng)絡(luò)層相比,F(xiàn)ast R-CNN 提出了針對(duì)性的興趣域池化層(ROI Pooling)技術(shù)對(duì)最后一個(gè)池化層進(jìn)行了改進(jìn)。該層的作用與SPP-Net 中的空間金字塔池化層相似,對(duì)任意大小的輸入都輸出固定維數(shù)的特征向量,也是僅在最后一層卷積層對(duì)候選區(qū)域的卷積特征進(jìn)行ROI Pooling。此外,F(xiàn)ast R-CNN 同時(shí)對(duì)用于目標(biāo)定位和分類的兩個(gè)全連接層進(jìn)行訓(xùn)練,實(shí)現(xiàn)了目標(biāo)定位與檢測(cè)分類的一體化。
Ren 等提出了一種多階段的R-CNN 網(wǎng)絡(luò)訓(xùn)練算法,稱作Faster R-CNN[6]。Faster R-CNN 基于R-CNN網(wǎng)絡(luò)前幾層卷積層提取的特征對(duì)檢測(cè)目標(biāo)進(jìn)行定位,且網(wǎng)絡(luò)的構(gòu)建利用GPGPU(general-purpose computing on graphics processing units)來實(shí)現(xiàn),從而大幅降低了整個(gè)網(wǎng)絡(luò)構(gòu)建的時(shí)間消耗,檢測(cè)所需時(shí)間約為原來的1/10。
R-CNN 系列方法是目前主流的目標(biāo)檢測(cè)方法,但是速度上并不能滿足實(shí)時(shí)的要求。YOLO[2,7-9]等基于回歸的一類方法慢慢顯現(xiàn)出其重要性,這類方法使用了回歸的思想,對(duì)于給定的輸入圖像,直接在圖像的多個(gè)位置上回歸出檢測(cè)目標(biāo)的邊框以及類別。YOLO 整個(gè)過程非常簡(jiǎn)單,將目標(biāo)檢測(cè)任務(wù)轉(zhuǎn)換成一個(gè)回歸問題,不需要執(zhí)行耗時(shí)的區(qū)域生成來定位目標(biāo),直接回歸便完成了位置和類別的判定,大大提高了檢測(cè)的速度,每秒鐘可以處理45 張圖像。但同時(shí)由于取消了候選區(qū)域生成機(jī)制,也導(dǎo)致YOLO 的檢測(cè)精度并不是很理想。SSD 將YOLO 的回歸思想以及Faster R-CNN 的錨點(diǎn)機(jī)制有機(jī)結(jié)合,使用全圖各個(gè)位置的多尺度區(qū)域特征進(jìn)行回歸,既保持了YOLO快速檢測(cè)的特性,也保證了Faster R-CNN 窗口提取的精準(zhǔn)性。
R-FCN(region-based fully convolutional networks)[10]是基于Faster-RCNN 的改進(jìn),將耗時(shí)的全連接層轉(zhuǎn)化為卷積操作構(gòu)成全卷積網(wǎng)絡(luò),并引入?yún)^(qū)域敏感度的概念,顯著提高了目標(biāo)檢測(cè)的精度和速度。
軌道巡檢車采集的圖像中軌道場(chǎng)景具有固定的空間結(jié)構(gòu),扣件類型多樣且形狀差異性較小。此外,高速巡檢對(duì)扣件的檢測(cè)速度也提出了極高的要求。下面從扣件定位的類型、速度和精度三方面闡述現(xiàn)有深度學(xué)習(xí)檢測(cè)模型在扣件檢測(cè)中面臨的問題和挑戰(zhàn)。
(1)扣件定位的類型
如圖1 所示為線路中幾種典型的扣件類型,其中無(wú)砟線路包括W300-1 型、Ⅴ型、WJ-7 型扣件,有砟線路也有多種扣件類型(與無(wú)砟扣件相比較?。4送?,由于成像設(shè)備與鋼軌平面存在一個(gè)拍攝角度,從而造成正反向行車時(shí)扣件成像不同。如圖所示,正向行車時(shí),扣件彈條的上部為曲折狀,下部為圓弧狀;而反向行車時(shí),則正好相反。
由于線路中扣件類型多樣,且區(qū)分正反向,因此基于深度學(xué)習(xí)的方法定位扣件時(shí)需綜合考慮扣件類型的多樣性。
(2)扣件定位的速度
如圖2 所示,不同檢測(cè)車采集的軌道圖像大小不同。檢測(cè)算法應(yīng)在不同分辨率的圖像上取得近似的時(shí)間耗費(fèi)。若一幀圖像空間采樣為2 m,要滿足350 km/h速度下的扣件實(shí)時(shí)定位。則檢測(cè)速度要求能夠達(dá)到49 frame/s,即每幀20 ms的檢測(cè)耗時(shí)。
(3)扣件定位的精度
以100 km 的軌道巡檢數(shù)據(jù)為例,總共存在約600 000 個(gè)扣件。綜合當(dāng)前巡檢系統(tǒng)扣件定位的精度以及用戶人工復(fù)核的主觀要求,除去道岔、區(qū)段、聯(lián)絡(luò)線區(qū)段,無(wú)砟正線錯(cuò)誤定位的扣件不應(yīng)超過每100 km100 個(gè),即定位的準(zhǔn)確率要求大于99.98%。
現(xiàn)有的深度學(xué)習(xí)檢測(cè)模型都是為了解決自然場(chǎng)景中的多類目標(biāo)定位問題提出的,軌道場(chǎng)景結(jié)構(gòu)相對(duì)比較固定,局部變化較小,針對(duì)復(fù)雜自然場(chǎng)景的深度網(wǎng)絡(luò)模型在訓(xùn)練過程中容易過擬合;檢測(cè)過程中沒有充分利用場(chǎng)景的固定結(jié)構(gòu)化空間信息,抗干擾能力差。
Fig.1 Rail fastener type圖1 扣件類型
Fig.2 Track image size圖2 軌道圖像大小
針對(duì)以上存在的問題,本文結(jié)合軌道扣件的結(jié)構(gòu)化分布特征,提出了一種改進(jìn)的區(qū)域全卷積深度神經(jīng)網(wǎng)絡(luò),并根據(jù)檢測(cè)任務(wù)的特性對(duì)卷積網(wǎng)絡(luò)、候選區(qū)域生成網(wǎng)絡(luò)、區(qū)域敏感得分圖等進(jìn)行了相應(yīng)的優(yōu)化調(diào)整,在保證檢測(cè)精度的同時(shí),極大地提升了目標(biāo)檢測(cè)的速度,可滿足高速動(dòng)態(tài)檢測(cè)的需求。
如圖3 所示,基于深度學(xué)習(xí)的檢測(cè)過程分為兩個(gè)階段,即“離線訓(xùn)練”和“在線檢測(cè)”。首先從大量的軌道圖像中利用模板匹配的方法進(jìn)行樣本自動(dòng)標(biāo)注,構(gòu)建用于學(xué)習(xí)的大數(shù)據(jù)樣本集,輸入到深度網(wǎng)絡(luò)中進(jìn)行離線訓(xùn)練和調(diào)試得到網(wǎng)絡(luò)模型參數(shù);利用訓(xùn)練得到的模型參數(shù)初始化深度網(wǎng)絡(luò)的模型參數(shù),賦予網(wǎng)絡(luò)目標(biāo)檢測(cè)的能力,將單幅待檢測(cè)的軌道圖像輸入到參數(shù)初始化的深度網(wǎng)絡(luò)中實(shí)現(xiàn)目標(biāo)的在線實(shí)時(shí)檢測(cè)。
Fig.3 Basic process of target detection based on deep learning圖3 基于深度學(xué)習(xí)的目標(biāo)檢測(cè)基本流程
本文旨在解決高速行車下的鋼軌扣件實(shí)時(shí)動(dòng)態(tài)檢測(cè)問題,結(jié)合檢測(cè)目標(biāo)的空間分布特征,對(duì)深度學(xué)習(xí)檢測(cè)模型中的各個(gè)環(huán)節(jié)進(jìn)行了改進(jìn)和優(yōu)化,主要包括以下幾個(gè)方面:
(1)軌道圖像中鋼軌、扣件、軌道板等設(shè)施相對(duì)固定的位置分布構(gòu)成了軌道場(chǎng)景特有的結(jié)構(gòu)化特征,本文將一幅圖像中多個(gè)扣件小目標(biāo)的檢測(cè)轉(zhuǎn)化為一整塊具有固定結(jié)構(gòu)的大目標(biāo)區(qū)域檢測(cè),可加快網(wǎng)絡(luò)的訓(xùn)練收斂速度,減少候選區(qū)域的生成個(gè)數(shù),從而提高檢測(cè)的速度。
(2)針對(duì)具有相似結(jié)構(gòu)的大目標(biāo)檢測(cè)區(qū)域,檢測(cè)目標(biāo)形狀相似,僅在空間位置上存在一定的變化,為了防止訓(xùn)練過擬合,本文使用ResNet-18 作為卷積層的網(wǎng)絡(luò)結(jié)構(gòu)。
(3)本文構(gòu)造了軌道場(chǎng)景各設(shè)施部件對(duì)應(yīng)的位置敏感得分圖,將目前最快的R-FCN 深度網(wǎng)絡(luò)與軌道場(chǎng)景的結(jié)構(gòu)化信息有機(jī)結(jié)合,提出結(jié)構(gòu)化區(qū)域深度全卷積網(wǎng)絡(luò)(structured region fully convolutional neural network,SR-FCN),可有效解決高速實(shí)時(shí)檢測(cè)任務(wù)中的速度瓶頸,并提高目標(biāo)檢測(cè)的精度以及抗干擾能力。
(4)本文針對(duì)軌道場(chǎng)景的固定結(jié)構(gòu)對(duì)候選區(qū)域生成網(wǎng)絡(luò)(RPN)進(jìn)行了改進(jìn),通過約束錨點(diǎn)的遍歷范圍,并限定候選窗口尺度變化比例,減少生成候選區(qū)域的個(gè)數(shù),進(jìn)一步加快目標(biāo)檢測(cè)的速度。
(5)本文根據(jù)檢測(cè)目標(biāo)的位置分布特征(如軌道圖像中扣件呈“田”字形分布),對(duì)深度網(wǎng)絡(luò)的損失函數(shù)進(jìn)行空間分布正則化,進(jìn)一步保證了扣件目標(biāo)檢測(cè)的精度和容錯(cuò)能力。
無(wú)論是Faster-RCNN 還是R-FCN 深度模型,在圖像中進(jìn)行目標(biāo)定位都是基于窗口滑動(dòng)搜索的方法生成檢測(cè)候選區(qū)域,而目前軌道巡檢系統(tǒng)采集的軌道圖像最小尺寸為800×1 230,扣件區(qū)域尺寸為80×128,直接使用滑動(dòng)窗口法進(jìn)行窮舉搜索將會(huì)嚴(yán)重影響系統(tǒng)效率。事實(shí)上,鐵路軌道圖像中至少包含了7 個(gè)固定結(jié)構(gòu)的先驗(yàn)知識(shí):(1)每幀軌道圖像中只包含一條鋼軌;(2)鋼軌總是與圖像的x軸垂直,并且鋼軌的兩條邊界是平行的;(3)每幅圖像高度方向的空間采樣距離為2 m 且誤差小于2 mm;(4)鋼軌的寬度是固定的像素值;(5)扣件區(qū)域總是在鋼軌邊界的兩側(cè)對(duì)稱分布,并且扣件區(qū)域的尺寸是固定的;(6)相鄰扣件承軌臺(tái)或軌枕沿豎直方向的間距相對(duì)固定;(7)每幅圖中包含6 個(gè)完整的扣件,且呈“田”字形分布。
圖4 展示了軌道圖像中的位置先驗(yàn)信息,鋼軌的寬度為60 像素,扣件區(qū)域的寬度為80 像素,扣件橫向間隔約為55~65像素,縱向間隔約為275~315像素。
Fig.4 Structured prior information of track scene圖4 軌道場(chǎng)景結(jié)構(gòu)化先驗(yàn)信息
本文充分利用場(chǎng)景中已知的先驗(yàn)信息,將其融合到深度網(wǎng)絡(luò)中的樣本構(gòu)造、候選區(qū)域生成、網(wǎng)絡(luò)構(gòu)造以及損失函數(shù)約束等各個(gè)過程,大幅減小了扣件候選區(qū)域的范圍,提高了檢測(cè)效率并保證了檢測(cè)精度。
如圖5 所示,為了使用深度學(xué)習(xí)網(wǎng)絡(luò)檢測(cè)鋼軌的扣件位置,首先需要在軌道圖像上對(duì)檢測(cè)的目標(biāo)進(jìn)行大量的人工標(biāo)注工作。以往的標(biāo)注方法如圖5(a)所示,直接對(duì)軌道圖像中的6 個(gè)扣件檢測(cè)目標(biāo)進(jìn)行標(biāo)注作為訓(xùn)練樣本,利用深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行模型訓(xùn)練。實(shí)際檢測(cè)環(huán)境中,扣件的形態(tài)易受道砟覆蓋、光照環(huán)境變化、扣件狀態(tài)異常等多種不確定因素的影響,對(duì)扣件樣本的多樣性有很高的要求。此外,標(biāo)注的扣件樣本作為典型的小目標(biāo)樣本,候選區(qū)域生成的數(shù)量更多,檢測(cè)較為耗時(shí),且由于卷積層的多次池化操作使得網(wǎng)絡(luò)對(duì)小目標(biāo)的檢測(cè)不敏感。
Fig.5 Deep learning sample labeling method圖5 深度學(xué)習(xí)樣本標(biāo)注方法
本文提出了一種大目標(biāo)結(jié)構(gòu)化區(qū)域自動(dòng)標(biāo)注方法,根據(jù)上一節(jié)中場(chǎng)景結(jié)構(gòu)解析的結(jié)果,將扣件、道砟、鋼軌等多個(gè)子區(qū)域構(gòu)成整體的大目標(biāo)結(jié)構(gòu)化檢測(cè)區(qū)域。這一改進(jìn)首先將多個(gè)小目標(biāo)檢測(cè)任務(wù)轉(zhuǎn)化為單一的大目標(biāo)檢測(cè),提高了檢測(cè)速度;其次,對(duì)該大目標(biāo)的檢測(cè)可充分利用各個(gè)子區(qū)域之間相對(duì)固定的位置和形狀約束關(guān)系,可有效提高檢測(cè)的抗干擾能力。
如圖5(b)所示為標(biāo)注的大目標(biāo)結(jié)構(gòu)化區(qū)域,可劃分為15個(gè)子區(qū)域。其中,R11、R13、R31、R33、R51、R53為扣件子區(qū)域;R21、R23、R41、R43為道砟子區(qū)域;R12、R22、R32、R42、R52為鋼軌子區(qū)域。這里需要注意的是,R-FCN 網(wǎng)絡(luò)將檢測(cè)目標(biāo)等間隔地劃分為K×K(默認(rèn)為3×3)個(gè)子區(qū)域,不同于R-FCN 的劃分方式,本文提出的SR-FCN 網(wǎng)絡(luò)將標(biāo)記的大目標(biāo)檢測(cè)區(qū)域劃分為5×3 個(gè)子區(qū)域,且各子區(qū)域的大小和間距按照軌道場(chǎng)景的結(jié)構(gòu)化先驗(yàn)進(jìn)行初始化。
為了提高樣本標(biāo)注的效率,本文提出了基于模板匹配的樣本自動(dòng)標(biāo)注方法,具體流程如下:
Fig.6 Sample automatic labeling template圖6 樣本自動(dòng)標(biāo)注模板
(1)手工標(biāo)記目標(biāo)檢測(cè)區(qū)域以及非目標(biāo)檢測(cè)區(qū)域(如圖6 所示),分別作為正、負(fù)樣本模板添加到對(duì)應(yīng)的正、負(fù)模板庫(kù)中。為了增加樣本的多樣性,定義與檢測(cè)目標(biāo)區(qū)域重合度(即像素交并比intersection over union,IOU)大于80%的區(qū)域可作為正樣本,而重合度低于50%的作為負(fù)樣本。
(2)對(duì)每一幀軌道圖像,利用滑動(dòng)窗口法從軌道圖像中提取子窗口,提取子窗口的HoG(histogram of oriented gradient)特征與正、負(fù)模板庫(kù)中每個(gè)模板計(jì)算二者之間的相似度,按照相似度從高向低選擇K個(gè)模板,利用K-NN(K-nearest neighbor)分類器對(duì)子窗口所屬類別進(jìn)行投票,在正模板庫(kù)中得分較高的子窗口被自動(dòng)標(biāo)注為正樣本;而負(fù)模板庫(kù)中得分較高的子窗口被自動(dòng)標(biāo)注為負(fù)樣本。
(3)對(duì)自動(dòng)標(biāo)注的結(jié)果進(jìn)行人工復(fù)核,去除錯(cuò)誤的生成樣本,完成樣本的清洗。
深度學(xué)習(xí)的基本工作原理可概括如下:
這里,f表示輸入圖像;g表示檢測(cè)結(jié)果;A為一變換矩陣,表征輸入與輸出之間的對(duì)應(yīng)關(guān)系。
對(duì)于網(wǎng)絡(luò)訓(xùn)練而言,其本質(zhì)是基于大量的輸入數(shù)據(jù)f以及事先標(biāo)記的輸出結(jié)果即樣本g,通過迭代逼近的方法估算二者之間的變換矩陣A,當(dāng)滿足迭代次數(shù)條件或者網(wǎng)絡(luò)誤差達(dá)到預(yù)測(cè)的閾值以下,則認(rèn)為求得了近似于A的變換矩陣也稱作通過訓(xùn)練得到的網(wǎng)絡(luò)模型參數(shù)。
即對(duì)于一幅待檢測(cè)的圖像f0,利用訓(xùn)練得到的模型參數(shù)與其變換運(yùn)算,即可得到目標(biāo)檢測(cè)的結(jié)果g0。
如圖7 所示為SR-FCN 網(wǎng)絡(luò)的組織結(jié)構(gòu)。
網(wǎng)絡(luò)的訓(xùn)練過程如下:
(1)按照4.2 節(jié)中的方法構(gòu)造訓(xùn)練樣本,即構(gòu)造用于訓(xùn)練的訓(xùn)練圖像f并預(yù)標(biāo)記對(duì)應(yīng)的檢測(cè)結(jié)果g,用于學(xué)習(xí)模型參數(shù)。為了保證網(wǎng)絡(luò)的訓(xùn)練效果,需要對(duì)不同分辨率的軌道圖像進(jìn)行相應(yīng)的尺度調(diào)整,統(tǒng)一成像的空間分辨率大小,即不同圖像中的單個(gè)像素應(yīng)對(duì)應(yīng)相同的空間采樣間隔。
(2)網(wǎng)絡(luò)的訓(xùn)練過程和參數(shù)調(diào)節(jié)過程和R-FCN類似,需要訓(xùn)練的模型參數(shù)由三部分組成,即用于生成特征映射圖的多組卷積核C,RPN 網(wǎng)絡(luò)總用于生成候選區(qū)域的多組卷積核R,以及用于生成位置敏感圖得分的多組卷積核P,這三部分參數(shù)共同作用構(gòu)成了訓(xùn)練模型參數(shù),訓(xùn)練的本質(zhì)就是根據(jù)標(biāo)記的樣本數(shù)據(jù)來求得網(wǎng)絡(luò)中各部分的模型參數(shù)。
(3)選擇模型調(diào)整優(yōu)化策略如隨機(jī)梯度下降法(stochastic gradient descent,SGD)對(duì)模型參數(shù)進(jìn)行不斷的迭代逼近,直到迭代次數(shù)達(dá)到預(yù)設(shè)的次數(shù)或網(wǎng)絡(luò)的訓(xùn)練誤差小于預(yù)設(shè)閾值。
在學(xué)習(xí)得到網(wǎng)絡(luò)模型參數(shù)后,各部分的卷積核參數(shù)C、R、P已知,則網(wǎng)絡(luò)的檢測(cè)過程可描述如下:
(1)選擇一張待檢測(cè)的軌道圖像,并對(duì)該圖像進(jìn)行相應(yīng)的尺度調(diào)整、灰度歸一化等預(yù)處理操作。
Fig.7 SR-FCN network structure圖7 SR-FCN 網(wǎng)絡(luò)結(jié)構(gòu)
(2)將預(yù)處理后的圖片送入一個(gè)預(yù)訓(xùn)練好的分類網(wǎng)絡(luò)中,經(jīng)過特征卷積層C生成特征映射圖。由于檢測(cè)目標(biāo)具有固定的結(jié)構(gòu)化信息,且檢測(cè)類型單一,為了防止網(wǎng)絡(luò)過擬合并提高檢測(cè)速度,網(wǎng)絡(luò)層數(shù)不宜過深,這里使用VGG16、ResNet-18[11-12]等網(wǎng)絡(luò)結(jié)構(gòu)作為特征學(xué)習(xí)的卷積模型。
(3)利用訓(xùn)練好的RPN 網(wǎng)絡(luò)模型參數(shù)P生成目標(biāo)檢測(cè)的候選區(qū)域,并在候選區(qū)域上利用訓(xùn)練好的網(wǎng)絡(luò)模型參數(shù)P生成目標(biāo)檢測(cè)的位置敏感得分圖。需要說明的是,與R-FCN 類似,改進(jìn)的SR-FCN 網(wǎng)絡(luò)在預(yù)訓(xùn)練網(wǎng)絡(luò)的最后一個(gè)卷積層獲得的特征圖上也存在3 個(gè)分支,第1 個(gè)分支就是在該特征圖上面利用區(qū)域候選網(wǎng)絡(luò)(RPN)生成候選區(qū)域,獲得相應(yīng)的感興趣檢測(cè)區(qū)域(ROI);第2 個(gè)分支就是在該特征圖上獲得一個(gè)5×3×(c+1)維的位置敏感得分映射(positionsensitive score map)用來進(jìn)行分類,這里c表示檢測(cè)目標(biāo)的類別數(shù)目,即訓(xùn)練過程中將大目標(biāo)結(jié)構(gòu)化區(qū)域標(biāo)記為幾類;第3 個(gè)分支就是在該特征圖上獲得一個(gè)5×3×4 維的位置敏感得分映射(每個(gè)子區(qū)域的位置可記為一個(gè)四元組(x,y,w,h),15 個(gè)子區(qū)域一共5×3×4 個(gè)位置得分映射),用來回歸調(diào)整每個(gè)子區(qū)域的位置。
(4)基于R-FCN 網(wǎng)絡(luò)的ROI 池化方法以及投票分類規(guī)則,在5×3×(c+1)維的位置敏感得分映射和5×3×4 維的位置敏感得分映射上面分別執(zhí)行位置敏感的ROI 池化操作(position-sensitive ROI pooling,這里使用的是平均池化操作),并經(jīng)區(qū)域投票和局部回歸獲得對(duì)應(yīng)的類別和位置信息。
原始的錨點(diǎn)生成規(guī)則在特征圖的每個(gè)像素點(diǎn)上都生成9 個(gè)不同尺度和不同長(zhǎng)寬比的候選區(qū)域,如圖8(a)所示。本文針對(duì)結(jié)構(gòu)化檢測(cè)區(qū)域尺度和高寬比相對(duì)比較固定的特性,對(duì)錨點(diǎn)生成規(guī)則進(jìn)行了改進(jìn)如圖8(b)所示,每個(gè)像素點(diǎn)上僅生成3 個(gè)高寬比固定且尺度輕微縮放的候選區(qū)域,大幅減少了生成候選區(qū)域的個(gè)數(shù),進(jìn)一步提高了目標(biāo)檢測(cè)的速度。
基于軌道場(chǎng)景中目標(biāo)分布的結(jié)構(gòu)化信息,可以引入結(jié)構(gòu)保持正則化項(xiàng)λ2[c*>0]Lsr(h,h*)來加快網(wǎng)絡(luò)收斂,避免訓(xùn)練迭代陷入局部最小解。提出的損失函數(shù)定義如下:
Fig.8 Anchor generation rules圖8 錨點(diǎn)生成規(guī)則
上式為本文定義的結(jié)構(gòu)正則化損失函數(shù),包括一個(gè)目標(biāo)分類損失計(jì)算Lcls,一個(gè)位置回歸損失計(jì)算Lreg,以及一個(gè)結(jié)構(gòu)保持損失計(jì)算Lsr。λ1和λ2用來平衡三者的重要度;sc*、t*、h*分別為用于訓(xùn)練的樣本標(biāo)簽;c*>0 表示檢測(cè)的目標(biāo)非背景;s,tx,y,w,h,hlt,rt,lm,rm,lb,rb表示訓(xùn)練的輸入數(shù)據(jù)。
本文的實(shí)驗(yàn)環(huán)境和系統(tǒng)配置如下:
(1)硬件配置:Intel Xeon@2.40 GHz×28+NVIDIA Geforce Titan X×4+256 GB 內(nèi)存。
(2)操作系統(tǒng):Ubuntu 16.04 LTS。
(3)深度學(xué)習(xí)框架:CUDA 8.0+Anaconda Python 2.7+Caffe。
實(shí)驗(yàn)數(shù)據(jù)來自檢測(cè)車在全國(guó)各有砟、高鐵線路采集的軌道巡檢圖像,用于深度學(xué)習(xí)網(wǎng)絡(luò)訓(xùn)練、測(cè)試以及SR-FCN 檢測(cè)效果的驗(yàn)證,樣本圖像組成結(jié)構(gòu)如表1 所示。
Table 1 Inspection sample image表1 巡檢樣本圖像
考慮到網(wǎng)絡(luò)中主要采用了ReLU 作為激活函數(shù),因此采用Kaiming 初始化方法對(duì)網(wǎng)絡(luò)進(jìn)行初始化。使用隨機(jī)梯度下降(SGD)模型優(yōu)化方法,初始學(xué)習(xí)率(learning rate)設(shè)為0.01,動(dòng)量參數(shù)(momentum)設(shè)為0.9,權(quán)值衰減(weight decay)設(shè)為0.000 5。每當(dāng)圖片在Validation 數(shù)據(jù)集的目標(biāo)函數(shù)值相比前一次迭代沒有下降的時(shí)候,將學(xué)習(xí)率減小為原來的10%,即學(xué)習(xí)率設(shè)為0.001;批處理大?。╞atch size)設(shè)為256,訓(xùn)練集迭代次數(shù)(epochs)設(shè)為100。
基于SR-FCN 的扣件目標(biāo)檢測(cè)的部分結(jié)果如圖9所示,針對(duì)不同軌道場(chǎng)景的不同扣件類型,扣件區(qū)域的置信度得分都接近1,檢測(cè)精度高,場(chǎng)景適應(yīng)能力強(qiáng)。
利用不同的深度學(xué)習(xí)網(wǎng)絡(luò)對(duì)表1 中的6 000 幅圖像進(jìn)行測(cè)試,對(duì)結(jié)果進(jìn)行統(tǒng)計(jì),對(duì)比各方法的檢測(cè)的準(zhǔn)確率和檢測(cè)速度,如表2 所示。定義檢測(cè)成功率(Pd)來評(píng)價(jià)方法的準(zhǔn)確率,成功率定義為:
式中,Rt表示檢測(cè)結(jié)果的邊緣矩形框,Rg表示手工標(biāo)注的目標(biāo)真實(shí)位置矩形框,如果Pd>0.8,則認(rèn)為該圖像的檢測(cè)結(jié)果是正確的。最后統(tǒng)計(jì)所有的N幀測(cè)試圖像中追蹤成功的圖像總數(shù),記為T,則追蹤準(zhǔn)確率記為T/N。
本文提出的SR-FCN 網(wǎng)絡(luò)不僅可以適應(yīng)多種場(chǎng)景下的目標(biāo)定位檢測(cè),而且仍然能夠保持很高的檢測(cè)速度。如表3 所示,提出的網(wǎng)絡(luò)模型在單幅軌道圖像上執(zhí)行目標(biāo)定位耗時(shí)為38 ms,對(duì)應(yīng)于可以滿足360 km/h 速度下的實(shí)時(shí)檢測(cè)。這里需要說明的是,對(duì)于鋼軌扣件而言,100 km 范圍內(nèi)大約分布有60 萬(wàn)個(gè)扣件,扣件定位算法對(duì)檢測(cè)成功率的要求很高,如100 km 線路僅1%的誤報(bào)將產(chǎn)生6 000 個(gè)錯(cuò)誤定位的結(jié)果,將嚴(yán)重影響后續(xù)的識(shí)別分析。因此,對(duì)于扣件定位算法而言,0.1%的檢測(cè)精度提升也具有很強(qiáng)的實(shí)際意義。
Table 2 Comparison of rail fastener detection results of different deep learning models表2 不同深度學(xué)習(xí)模型的扣件檢測(cè)結(jié)果對(duì)比
Table 3 Online dynamic test comparison results表3 線上動(dòng)態(tài)實(shí)驗(yàn)對(duì)比結(jié)果
Fig.9 Test results of different types of rail fasteners圖9 不同類型扣件的檢測(cè)結(jié)果
Fig.10 Example map of location results of track rail fastener area圖10 各線路軌道扣件區(qū)域定位結(jié)果示例圖
將本文提出的模型部署在綜合巡檢車上,并在4條實(shí)際運(yùn)營(yíng)線路上進(jìn)行動(dòng)態(tài)實(shí)驗(yàn)論證。
本實(shí)驗(yàn)采用檢出率(detection rate,DR)、誤檢率(detection error rate,DER)兩個(gè)評(píng)價(jià)指標(biāo)來評(píng)價(jià)軌道扣件區(qū)域定位方法的有效性和可靠性。檢出率用于評(píng)價(jià)軌道扣件區(qū)域定位方法的有效性,即定位出的有效扣件區(qū)域的數(shù)量與真實(shí)扣件區(qū)域的數(shù)量的比例,檢出率越高,表示方法的有效性越強(qiáng)。誤檢率用于評(píng)價(jià)軌道扣件區(qū)域定位方法的可靠性,即定位出的所有扣件區(qū)域中無(wú)效的比例,誤檢率越低,表示方法的可靠性越強(qiáng)。檢出率和誤檢率的計(jì)算公式如下:
式中,NValid表示定位出的扣件區(qū)域中有效的數(shù)量;NInvalid表示定位出的扣件區(qū)域中無(wú)效的數(shù)量;NGT表示真實(shí)扣件區(qū)域的數(shù)量。
如表3 所示,本實(shí)驗(yàn)中,4 條鐵路線路的平均檢出率達(dá)到99.84%,平均誤檢率低至0.62%,實(shí)驗(yàn)結(jié)果表明,雖然相對(duì)于靜態(tài)實(shí)驗(yàn)結(jié)果,檢出率有所下降,但對(duì)于訓(xùn)練樣本集之外的新線路軌道圖像,本文提出的方法具有令人滿意的檢出率和泛化能力,可以滿足現(xiàn)場(chǎng)應(yīng)用需求,各線路軌道扣件區(qū)域定位結(jié)果如圖10 所示。
本文提出了一種結(jié)構(gòu)化區(qū)域全卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)(SR-FCN),實(shí)現(xiàn)了結(jié)構(gòu)化軌道場(chǎng)景中多模態(tài)扣件目標(biāo)的快速、準(zhǔn)確、魯棒的檢測(cè)。首先,構(gòu)建了一種結(jié)構(gòu)化場(chǎng)景下基于區(qū)域推理的學(xué)習(xí)訓(xùn)練樣本構(gòu)造和標(biāo)記方法,將場(chǎng)景中的多個(gè)離散小目標(biāo)轉(zhuǎn)化為固定幾何結(jié)構(gòu)約束的大目標(biāo),大幅提高網(wǎng)絡(luò)訓(xùn)練的效率和目標(biāo)檢測(cè)的速度。在此基礎(chǔ)上,提出了一種基于幾何位置先驗(yàn)的候選區(qū)域生成網(wǎng)絡(luò),進(jìn)一步減少了目標(biāo)定位候選區(qū)域的數(shù)量,有利于提高目標(biāo)檢測(cè)的速度。最后,定義了一種結(jié)構(gòu)正則化損失函數(shù),根據(jù)檢測(cè)目標(biāo)的位置分布特征,對(duì)深度網(wǎng)絡(luò)的損失函數(shù)進(jìn)行空間分布正則化,進(jìn)一步保證了扣件目標(biāo)檢測(cè)的精度和容錯(cuò)能力。