許貴陽,李金洋,白堂博,楊建偉
(1.北京建筑大學(xué) 機(jī)電與車輛工程學(xué)院,北京 100044;2.北京建筑大學(xué) 城市軌道交通車輛服役性能保障北京市重點(diǎn)實(shí)驗(yàn)室,北京 100044)
隨著我國(guó)軌道交通的高速發(fā)展,鐵路中的安全隱患隨著運(yùn)營(yíng)里程的增加而增加??奂沁B接鋼軌與軌枕的重要組件,確??奂陌踩珷顟B(tài)對(duì)維護(hù)鐵路正常運(yùn)營(yíng)具有重要意義[1]。
目前的軌道扣件狀態(tài)檢測(cè)方法有人工巡道檢測(cè)法、振動(dòng)信號(hào)檢測(cè)法[2]、激光檢測(cè)法[3]和圖像識(shí)別法[4?5]等。我國(guó)常用的檢測(cè)方法為人工巡道檢測(cè)法和圖像識(shí)別法。人工巡道檢測(cè)法不僅檢測(cè)效率低,而且準(zhǔn)確率與工人的巡檢經(jīng)驗(yàn)相關(guān)。隨著鐵路巡檢技術(shù)的逐漸自動(dòng)化和智能化,基于視覺測(cè)量原理的軌道巡檢系統(tǒng)已逐步成為鐵路軌道自動(dòng)化巡檢的重要技術(shù)手段。既有的基于圖像處理的檢測(cè)方法是依據(jù)扣件的具體特征及其在軌道中的布置特點(diǎn)所提出的,如劉甲甲等[6]先提取扣件的金字塔式梯度方向直方圖和圖像局部宏觀紋理特征,再使用支持向量機(jī)進(jìn)行扣件分類;Gibert等[7?8]提出基于多任務(wù)學(xué)習(xí)框架結(jié)合多檢測(cè)器的扣件檢測(cè)算法以及基于貝葉斯框架結(jié)合極值理論的優(yōu)化方法。雖然既有的圖像處理方法可以檢測(cè)扣件狀態(tài),但無法保證較高的準(zhǔn)確率。
隨著深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的興起,國(guó)內(nèi)外學(xué)者提出了許多基于卷積神經(jīng)網(wǎng)絡(luò)的檢測(cè)算法,可分為2 大發(fā)展方向:一種是基于目標(biāo)候選區(qū)域的2 階段算法,如Faster R-CNN[9],另一種是基于端到端學(xué)習(xí)的1階段算法,如YOLO 系列算法[10?11]。且2種方法均已應(yīng)用于軌道扣件狀態(tài)檢測(cè)方面[12?13]。但是,這些檢測(cè)算法在標(biāo)注和訓(xùn)練的過程中容易被軌道圖像中的背景即圖片中除扣件外的無效信息干擾,導(dǎo)致檢測(cè)的準(zhǔn)確率下降。Mask R-CNN 實(shí)例分割算法[14]是在Faster R-CNN 目標(biāo)檢測(cè)算法的基礎(chǔ)上增加了感興趣區(qū)域?qū)R層和全卷積網(wǎng)絡(luò)[15]的2 階段算法。通過對(duì)軌道扣件邊緣像素點(diǎn)進(jìn)行標(biāo)注,Mask R-CNN 實(shí)例分割算法可以將軌道扣件與圖像中的背景分割,只關(guān)注與扣件有關(guān)的像素信息,并且在檢測(cè)偏移類型的軌道扣件方面已有相關(guān)應(yīng)用[16]。
為提高軌道扣件狀態(tài)檢測(cè)的準(zhǔn)確率,基于K均值聚類算法對(duì)Mask R-CNN 實(shí)例分割算法中的區(qū)域建議網(wǎng)絡(luò)部分進(jìn)行改進(jìn),進(jìn)行基于改進(jìn)Mask RCNN的軌道扣件狀態(tài)檢測(cè)方法研究。
Mask R-CNN 實(shí)例分割算法有5 個(gè)主要結(jié)構(gòu):輸入層、主干特征提取網(wǎng)絡(luò)、區(qū)域建議網(wǎng)絡(luò)、感興趣區(qū)域?qū)R層和輸出層,其結(jié)構(gòu)如圖1所示。
圖1 Mask R-CNN結(jié)構(gòu)圖
結(jié)合軌道扣件狀態(tài)檢測(cè)應(yīng)用,Mask R-CNN實(shí)例分割算法的4個(gè)核心部分如下所示。
1)提取扣件特征圖
采用主干特征提取網(wǎng)絡(luò)生成軌道扣件特征圖,主干特征提取網(wǎng)絡(luò)使用殘差網(wǎng)絡(luò)[17]與特征金字塔網(wǎng)絡(luò)[18]相結(jié)合的形式。
采用殘差網(wǎng)絡(luò)初步提取扣件特征圖,其結(jié)構(gòu)如圖2所示,有5 個(gè)卷積階段和1 個(gè)池化階段,分別對(duì)應(yīng)輸出C1,C2,C3,C4,C5 和S1。每個(gè)卷積操作后都采用批量歸一化和修正線性單元處理。
圖2 殘差網(wǎng)絡(luò)結(jié)構(gòu)圖
采用特征金字塔網(wǎng)絡(luò)進(jìn)行扣件特征圖融合,首先將C5 通過1×1×256 的卷積生成P5,其通道數(shù)由2 048 變?yōu)?56,然后將P5 通過最鄰近上采樣生成的特征圖與C4 通過1×1×256 的卷積生成的特征圖進(jìn)行特征圖融合生成P4。利用相同的方法依次生成P3 和P2,再對(duì)P5 通過下采樣生成P6。經(jīng)過特征圖融合后的P2—P6 所對(duì)應(yīng)的扣件特征圖尺寸分別為(256×256),(128×128),(64×64),(32×32)和(16×16)像素。
2)生成候選區(qū)域
采用區(qū)域建議網(wǎng)絡(luò)通過錨框在扣件特征圖P2—P6上滑動(dòng)生成候選區(qū)域,過程如圖3所示。同一尺度的扣件特征圖中設(shè)定了3種不同寬高比分別為1∶1,2∶1和1∶2的錨框,并且不同尺度的扣件特征圖中錨框的尺寸也會(huì)不同。錨框滑動(dòng)過程中,首先扣件特征圖上的每個(gè)像素點(diǎn)都會(huì)生成3 種不同比例的候選區(qū)域,然后將每個(gè)候選區(qū)域輸出為256 維特征向量,用于區(qū)分類別和回歸候選區(qū)域的位置信息。將這些不同大小的候選區(qū)域映射到輸入圖像中,用人工標(biāo)注的扣件信息作為真實(shí)扣件區(qū)域,計(jì)算所有候選區(qū)域與真實(shí)扣件區(qū)域的交并比,保留大于交并比閾值的候選區(qū)域,最后通過非極大值抑制按照分?jǐn)?shù)進(jìn)一步篩選,獲得更有可能存在扣件的候選區(qū)域。
圖3 候選區(qū)域生成過程
3)對(duì)齊感興趣區(qū)域
將經(jīng)過篩選的候選區(qū)域的位置信息與扣件特征圖P2—P6 相對(duì)應(yīng)得到感興趣區(qū)域,然后對(duì)齊感興趣區(qū)域。首先對(duì)每個(gè)感興趣區(qū)域按照(7×7)和(14×14)的像素尺寸平均分割成若干個(gè)子區(qū)域,然后將每個(gè)子區(qū)域平均分成4 個(gè)小空間,通過雙線性插值計(jì)算每個(gè)小空間內(nèi)中心點(diǎn)的像素值,最后取這4個(gè)小空間的最大值作為該子區(qū)域的像素值,進(jìn)而準(zhǔn)確地生成尺寸為(7×7)和(14×14)像素的特征圖。
4)輸出檢測(cè)結(jié)果
輸出層有2 個(gè)分支,分別是全連接層和全卷積網(wǎng)絡(luò)。全連接層將尺寸為(7×7)像素的特征圖通過7×7×1 024 的卷積輸出為1 024 維特征向量,進(jìn)行分類和回歸邊框位置。全卷積網(wǎng)絡(luò)將尺寸為(14×14)像素的特征圖通過2 倍上采樣輸出為(28×28)像素的掩膜。將掩膜、分類信息和邊框位置相結(jié)合得到Mask R-CNN 實(shí)例分割算法的檢測(cè)結(jié)果。
區(qū)域建議網(wǎng)絡(luò)在Mask R-CNN 實(shí)例分割算法檢測(cè)軌道扣件狀態(tài)的過程中起到關(guān)鍵作用。區(qū)域建議網(wǎng)絡(luò)生成候選區(qū)域時(shí),錨框的尺寸大小決定了候選區(qū)域的質(zhì)量好壞。若選用的錨框較小,則候選區(qū)域無法包含整個(gè)軌道扣件,若選用的錨框較大,則候選區(qū)域會(huì)包含過多除軌道扣件外的像素信息,這2 種情況都會(huì)導(dǎo)致檢測(cè)的準(zhǔn)確率降低。一般情況下,扣件特征圖P2—P6 的錨框是由人工根據(jù)經(jīng)驗(yàn)預(yù)設(shè)的,Mask R-CNN 算法的錨框尺寸為32,64,128,256和512像素,雖然在微軟公開的數(shù)據(jù)集上有良好的檢測(cè)效果,但是不適用于軌道扣件狀態(tài)檢測(cè)。
為能準(zhǔn)確地生成包含軌道扣件的候選區(qū)域,提高檢測(cè)的準(zhǔn)確率,基于K均值聚類算法對(duì)區(qū)域建議網(wǎng)絡(luò)進(jìn)行改進(jìn),計(jì)算專用于軌道扣件狀態(tài)檢測(cè)的錨框尺寸。K 均值聚類算法是迭代求解的聚類分析算法,可以對(duì)已標(biāo)注的真實(shí)扣件錨框進(jìn)行相似度計(jì)算、分類并得出每個(gè)類別的錨框尺寸。K 均值聚類算法中用歐氏距離計(jì)算相似度,但是計(jì)算真實(shí)扣件錨框之間的歐氏距離所得到的相似度誤差較大,不利于分類。因此,采用交并比I定義的距離式代替歐氏距離,計(jì)算錨框與錨框之間的相似度D,計(jì)算式為
其中,
式中:W和H分別表示重合區(qū)域的寬和高;Ax,Ay,Aw,Ah分別表示第1 個(gè)錨框的左上點(diǎn)坐標(biāo)和高寬信息;Bx,By,Bw,Bh分別表示第2 個(gè)錨框的左上點(diǎn)坐標(biāo)和高寬信息。
K均值聚類計(jì)算得到錨框尺寸的具體過程如下。
(1)用LabelImg 工具標(biāo)注軌道圖像中的扣件得到扣件錨框,獲取所有扣件錨框的高寬數(shù)據(jù)并提取到聚類集。
(2)因軌道圖像中有扣件正常、扣件丟失、扣件斷裂、扣件位移和扣件異物5種不同狀態(tài)的扣件,設(shè)置聚類的類別數(shù)K 值為5,即初始在聚類集中隨機(jī)選取5個(gè)錨框作為質(zhì)心錨框。
(3)通過用交并比I定義的距離式分別計(jì)算5個(gè)質(zhì)心錨框與其他普通錨框之間的相似度D,然后將D值最小的普通錨框劃分到相應(yīng)質(zhì)心錨框的聚類列表中。
(4)對(duì)于每個(gè)質(zhì)心錨框的聚類列表,將該列表中錨框的高和寬相加并計(jì)算均值,結(jié)果作為該聚類列表中的新質(zhì)心錨框的高寬值。
(5)重復(fù)步驟(3)和步驟(4),直至每個(gè)聚類列表中質(zhì)心錨框的高寬值不再變化,然后將每個(gè)列表中的質(zhì)心錨框尺寸相加并計(jì)算平均值,得出K均值聚類后適用于軌道扣件狀態(tài)檢測(cè)的錨框尺寸。
采用上述K均值聚類算法計(jì)算得出扣件特征圖P2—P6 上的錨框尺寸分別為39,78,156,312 和624像素。
將改進(jìn)后的Mask R-CNN 實(shí)例分割算法應(yīng)用于軌道扣件狀態(tài)檢測(cè),步驟如下。
步驟1:采集軌道圖像。應(yīng)用軌道圖像采集設(shè)備針對(duì)試驗(yàn)線路進(jìn)行巡線拍攝獲取軌道圖像。
步驟2:建立試驗(yàn)數(shù)據(jù)集。將采集的軌道圖像依據(jù)試驗(yàn)線路類型和軌道扣件狀態(tài)進(jìn)行分類,用標(biāo)注工具標(biāo)注軌道圖像中的扣件信息,并進(jìn)行數(shù)據(jù)擴(kuò)增生成試驗(yàn)數(shù)據(jù)集。
步驟3:檢測(cè)軌道扣件狀態(tài)?;贙 均值聚類算法對(duì)試驗(yàn)數(shù)據(jù)集中的扣件錨框進(jìn)行聚類計(jì)算,得到優(yōu)化后的區(qū)域建議網(wǎng)絡(luò)中的錨框尺寸,設(shè)置訓(xùn)練參數(shù),采用改進(jìn)后的Mask R-CNN 實(shí)例分割算法基于訓(xùn)練集進(jìn)行迭代訓(xùn)練,輸入驗(yàn)證集得到軌道扣件狀態(tài)檢測(cè)結(jié)果并進(jìn)行分析。
本文使用的軌道圖像采集設(shè)備為北京某公司設(shè)計(jì)制造的新型軌道巡檢儀,試驗(yàn)線路為某2 條普速鐵路有砟軌道(線路1 和線路2)和某1 條高速鐵路無砟軌道(線路3),共計(jì)41 160 張軌道圖片,圖片尺寸為(2 048×2 021)像素。根據(jù)軌道扣件狀態(tài)可將其分為扣件正常(zc)、扣件丟失(ds)、扣件斷裂(dl)、扣件位移(wy)、扣件異物(yw)共5類。各線路軌道扣件狀態(tài)如圖4—圖6所示。
圖4 線路1軌道扣件狀態(tài)
圖5 線路2軌道扣件狀態(tài)
圖6 線路3軌道扣件狀態(tài)
將軌道巡檢儀采集的軌道圖片壓縮為(1 024×1 024)像素,采用開源軟件LabelIme 標(biāo)注軌道圖片中的扣件狀態(tài)和位置信息如圖7所示,在標(biāo)注過程中只標(biāo)注每個(gè)扣件的輪廓像素點(diǎn)并按扣件狀態(tài)分類。
圖7 扣件數(shù)據(jù)標(biāo)注
采用Augmentor工具對(duì)原始軌道圖片和包含真實(shí)扣件區(qū)域信息的標(biāo)簽圖片進(jìn)行翻轉(zhuǎn)和鏡像操作以增大試驗(yàn)數(shù)據(jù)集,數(shù)據(jù)集信息見表1。
表1 試驗(yàn)數(shù)據(jù)集信息
本文試驗(yàn)的硬件環(huán)境為GPU-NVIDIA GTX1660Ti,CPU-Intel i5-9400。軟件環(huán)境為:Windows 10,Tensorflow-gpu 1.7,Python 3.6,CUDA 9.0,cuDNN 7.4。改進(jìn)后的Mask R-CNN 實(shí)例分割算法在訓(xùn)練時(shí)采用帶動(dòng)量?jī)?yōu)化的隨機(jī)梯度下降法,設(shè)置交并比閾值為0.7,樣本批量為1,學(xué)習(xí)率為0.001,學(xué)習(xí)動(dòng)量為0.9,權(quán)重衰減系數(shù)為0.000 1,基于訓(xùn)練集迭代訓(xùn)練200 次,輸入驗(yàn)證集進(jìn)行軌道扣件狀態(tài)檢測(cè)。
圖8—圖10給出了部分軌道扣件狀態(tài)檢測(cè)結(jié)果。圖中:邊框和顏色分別表示扣件位置和狀態(tài),數(shù)字為預(yù)測(cè)置信度。由圖8—圖10可知:對(duì)于普速鐵路有砟軌道和高速鐵路無砟軌道中采集的不同類型扣件,本文方法均可有效分割扣件與背景像素、準(zhǔn)確進(jìn)行扣件定位與分類,并且置信度良好。
圖8 線路1部分扣件檢測(cè)結(jié)果
圖10 線路3部分扣件檢測(cè)結(jié)果
采用定位準(zhǔn)確率和分類準(zhǔn)確率2 個(gè)指標(biāo)來精確評(píng)價(jià)軌道扣件狀態(tài)檢測(cè)的結(jié)果。定位準(zhǔn)確率Pd表示定位正確的扣件占所有扣件的比例;分類準(zhǔn)確率Pa表示分類正確的扣件占所有定位正確的扣件比例,計(jì)算式為
式中:Fd表示定位正確的扣件數(shù)量;Fm表示未被正確定位的扣件數(shù)量;Fa表示定位正確的扣件中正確分類的數(shù)量;Fe表示定位正確的扣件中錯(cuò)誤分類的數(shù)量。
圖9 線路2部分扣件檢測(cè)結(jié)果
應(yīng)用本文方法以及國(guó)內(nèi)外其他3 種識(shí)別率較高的扣件狀態(tài)檢測(cè)算法對(duì)試驗(yàn)數(shù)據(jù)集中的驗(yàn)證集進(jìn)行檢測(cè),其結(jié)果見表2。
表2 不同算法的扣件狀態(tài)檢測(cè)結(jié)果準(zhǔn)確率 %
由表2可知:本文方法具有較高的扣件定位準(zhǔn)確率和分類準(zhǔn)確率,平均定位準(zhǔn)確率達(dá)到97.05%,平均分類準(zhǔn)確率達(dá)到98.36%,均優(yōu)于其他3 種算法;相較于前2 種算法,本文方法在普速鐵路有砟軌道扣件數(shù)據(jù)集中的優(yōu)勢(shì)更為明顯,這是由于其他檢測(cè)算法在數(shù)據(jù)集標(biāo)注和訓(xùn)練過程中易受到有砟軌道圖像中道砟背景的影響,而Mask R-CNN 實(shí)例分割算法通過標(biāo)注扣件輪廓像素點(diǎn),將扣件像素與背景像素分割以解決上述影響,使其在訓(xùn)練過程中只關(guān)注扣件的特征信息。
基于K 均值聚類算法改進(jìn)Mask R-CNN 實(shí)例分割算法中的區(qū)域建議網(wǎng)絡(luò),提出基于改進(jìn)Mask R-CNN 的軌道扣件狀態(tài)檢測(cè)方法。通過對(duì)普速鐵路有砟軌道和高速鐵路無砟軌道的扣件數(shù)據(jù)集進(jìn)行試驗(yàn),發(fā)現(xiàn)本文方法提高了軌道扣件狀態(tài)檢測(cè)的準(zhǔn)確率,其扣件平均定位準(zhǔn)確率達(dá)到97.05%,平均分類準(zhǔn)確率達(dá)到98.36%,可以對(duì)普速鐵路有砟軌道和高速鐵路無砟軌道圖像中的扣件狀態(tài)進(jìn)行準(zhǔn)確檢測(cè),且與其他方法相比在普速鐵路有砟軌道扣件狀態(tài)檢測(cè)的優(yōu)勢(shì)更為明顯。