金 鑫,王 通,程園龍
(1.北京華為云計(jì)算技術(shù)有限公司 EI創(chuàng)新孵化Lab,北京 100080;2.華為技術(shù)有限公司 中國政企數(shù)字政府交通系統(tǒng)部,北京 100077;3.中國鐵路鄭州局集團(tuán)有限公司 鄭州北車輛段,河南 鄭州 450052)
近年來中國鐵路得到快速發(fā)展,截至2021年底,全國鐵路營業(yè)里程已經(jīng)達(dá)15萬km[1]。為了保障鐵路的運(yùn)營安全,提高安全管控水平,中國鐵路建立了安全運(yùn)營技術(shù)體系和保障措施[2]。其中,車輛運(yùn)行狀況對(duì)安全運(yùn)營十分重要,側(cè)架、制動(dòng)梁、鉤緩、互鉤差、中間部、中間部側(cè)部等工位結(jié)構(gòu)復(fù)雜,關(guān)鍵部件的脫落、折斷、丟失、竄出、破損等故障將會(huì)嚴(yán)重影響行車安全。
“5T系統(tǒng)”以紅外、力學(xué)、聲學(xué)、圖像等車輛運(yùn)行安全監(jiān)測(cè)設(shè)備為基礎(chǔ),通過數(shù)據(jù)自動(dòng)采集、數(shù)據(jù)集成、聯(lián)網(wǎng)評(píng)判和綜合應(yīng)用,為鐵路車輛管理提供安全監(jiān)控與管理服務(wù)。其中,TFDS即貨車故障軌邊圖像檢測(cè)系統(tǒng),是通過高速攝像技術(shù)對(duì)運(yùn)行中的貨車車輛工位進(jìn)行抓拍,將獲取的圖像提供給動(dòng)態(tài)檢車員進(jìn)行分析,將影響行車安全的故障進(jìn)行上報(bào)[3]。TFDS貨車故障圖像分析當(dāng)前基本上仍依賴人工進(jìn)行,工作強(qiáng)度大、分析效率低、運(yùn)用成本高、且容易出現(xiàn)對(duì)于關(guān)鍵故障的漏報(bào),也給車輛運(yùn)行安全帶來隱患。圖1為TFDS系統(tǒng)的組成。
圖1 TFDS系統(tǒng)組成
開展TFDS貨車故障圖像智能識(shí)別算法研究的意義重大,通過該算法可大幅降低動(dòng)態(tài)檢車員的工作負(fù)荷,在提升車輛故障的分析效率與故障檢出準(zhǔn)確率的同時(shí),確保行車安全;全面消除不良貨車存量,為實(shí)現(xiàn)貨運(yùn)增量穩(wěn)收、運(yùn)輸暢通有序提供強(qiáng)有力的裝備保障;通過科技創(chuàng)新,大力挖潛節(jié)流,加大生產(chǎn)領(lǐng)域節(jié)支降耗力度,在提高勞動(dòng)生產(chǎn)率的同時(shí)實(shí)現(xiàn)節(jié)支降耗。
目前,基于圖像的故障檢測(cè)方法可分為基于特征值提取的傳統(tǒng)圖像處理方法和基于深度學(xué)習(xí)的智能識(shí)別算法。李靜等[4]提出了一種基于方向梯度直方圖特征和支持向量機(jī)的方法,實(shí)現(xiàn)了對(duì)關(guān)鍵螺栓的定位和識(shí)別。針對(duì)高速列車車輪踏面剝離、擦傷等損傷的動(dòng)態(tài)檢測(cè),侯濤等[5]提出了使用改進(jìn)Canny算子對(duì)車輪踏面損傷進(jìn)行邊緣檢測(cè),劉祖勝等[6]提出了一種自適應(yīng)融合局部和全局匹配的圖像故障識(shí)別算法。針對(duì)貨車運(yùn)行故障動(dòng)態(tài)圖像中車輛擋鍵、集塵器和安全鏈鎖緊螺栓的故障檢測(cè),孫國棟等[7-8]提出了一種基于多特征融合和BP-AdaBoost的故障自動(dòng)識(shí)別算法,實(shí)現(xiàn)針對(duì)集塵器和安全鏈鎖緊螺栓的故障檢測(cè)以及基于稀疏編碼空間金字塔匹配和遺傳算法優(yōu)化的支持向量機(jī)相結(jié)合的通用故障自動(dòng)識(shí)別算法。
傳統(tǒng)圖像處理算法大多基于淺層結(jié)構(gòu),在解決結(jié)構(gòu)簡單或者約束較多的問題上效果明顯,但難以應(yīng)對(duì)貨車車輛圖像的復(fù)雜場(chǎng)景,受縛于建模和表示能力,在實(shí)際應(yīng)用中針對(duì)一些復(fù)雜應(yīng)用進(jìn)行處理時(shí)效果會(huì)大打折扣[9]。近年來隨著硬件算力的提升、故障樣本數(shù)據(jù)的累積和深度學(xué)習(xí)算法的發(fā)展,深層卷積神經(jīng)網(wǎng)絡(luò)在圖像處理等領(lǐng)域的研究得到快速發(fā)展。
宋丫等[10]將傳統(tǒng)圖像算法與深度學(xué)習(xí)相結(jié)合,開展了貨車心盤螺栓丟失故障檢測(cè)的研究。曲志剛等[11]提出了一種基于深度信念網(wǎng)絡(luò)的車輛故障診斷音頻分析方法,通過小波包將車輛音頻信號(hào)分解,將信號(hào)的特征向量作為網(wǎng)絡(luò)的輸入實(shí)現(xiàn)對(duì)車輛狀態(tài)的監(jiān)測(cè)。趙冰等[12]提出了基于Faster R-CNN模型的車輛缺陷雙通道監(jiān)測(cè)框架MCDDF(Multi-Channel Defect Detection Framework),采用兩通道方式分別實(shí)現(xiàn)鐵路車輛關(guān)鍵部件監(jiān)測(cè)與缺陷分類任務(wù)。在文獻(xiàn)[13-14]相關(guān)研究中,深度卷積神經(jīng)網(wǎng)絡(luò)已被用于貨車車輛的故障自動(dòng)檢測(cè),基于深度殘差網(wǎng)絡(luò)提取故障特征,實(shí)現(xiàn)故障的定位與識(shí)別。
當(dāng)前,全國鐵路貨車保有量為96.6萬輛,車型達(dá)到351種,貨車車輛運(yùn)行環(huán)境多樣,工況復(fù)雜多變,并且,TFDS涉及到對(duì)行車安全的保障,不允許出現(xiàn)影響行車安全的故障漏報(bào)。雖然現(xiàn)有多個(gè)算法的研究已取得階段性進(jìn)展,但是,在故障誤報(bào)率、漏報(bào)率等指標(biāo)仍無法完全滿足貨車車輛的運(yùn)用工作要求,無法在現(xiàn)有業(yè)務(wù)場(chǎng)景中規(guī)模性推廣使用,TFDS貨車故障圖像智能識(shí)別的需求并沒有得到很好的滿足,各路局車輛段大多還是采用人工分析的作業(yè)方式。
本文針對(duì)上述問題提出了改進(jìn),提出了一種包含目標(biāo)檢測(cè)和圖像分類的兩階段故障識(shí)別算法,鎖緊板故障識(shí)別算法實(shí)現(xiàn)流程如圖2所示。該算法經(jīng)過在鄭州局集團(tuán)鄭州北車輛段的長期測(cè)試,已經(jīng)達(dá)到可以滿足實(shí)際作業(yè)需求的性能與效果指標(biāo)。
圖2 鎖緊板故障識(shí)別算法實(shí)現(xiàn)流程
對(duì)車輛運(yùn)行安全影響大的故障通常集中出現(xiàn)在特定的關(guān)鍵部件上,鎖緊板變形如圖3所示,圖中紅色方框區(qū)域中的鎖緊板發(fā)生變形。從圖中可以發(fā)現(xiàn),部件尺寸相比于原圖的尺寸較小,故障的尺寸相比于部件的尺寸也較小。因此,為了更準(zhǔn)確地定位故障區(qū)域、識(shí)別部件狀態(tài),首先需要實(shí)現(xiàn)對(duì)圖像中鎖緊板的定位。
圖3 鎖緊板變形
具體來說,本方法首先標(biāo)注大量圖像中待檢測(cè)部件的位置,并通過標(biāo)注的圖像和標(biāo)注信息訓(xùn)練Faster RCNN[14]目標(biāo)檢測(cè)模型。由于訓(xùn)練時(shí)為模型提供過大量的正常部件和故障部件的圖像,所以,在訓(xùn)練完成后,得到的目標(biāo)檢測(cè)模型可較為準(zhǔn)確地定位到TFDS圖像中正常部件和故障部件的位置,以供后續(xù)處理流程繼續(xù)使用。實(shí)驗(yàn)中也對(duì)比了Faster RCNN算法、YOLO算法,Faster RCNN算法精度稍高,速度稍低于YOLO算法,但目前給系統(tǒng)運(yùn)行速度已經(jīng)達(dá)到業(yè)務(wù)要求,目前還是采用Faster RCNN算法。
考慮到TFDS圖像中的故障區(qū)域通常在全圖中的占比極小,但是在部件區(qū)域的占比稍大,因此,將部件檢測(cè)模型定位到的部件區(qū)域裁剪出來可以凸顯故障區(qū)域,有助于判斷部件區(qū)域是否存在故障。因此,本方法提出在裁剪出來的部件區(qū)域,通過訓(xùn)練深度學(xué)習(xí)分類器的方式,識(shí)別部件區(qū)域是否正常。具體來說,深度學(xué)習(xí)分類器可以看作一個(gè)映射函數(shù):
p=fW(I)
(1)
式中:I為裁剪后的部件區(qū)域;fW(·)為一個(gè)由深度學(xué)習(xí)模型構(gòu)成的映射函數(shù),其中W為深度學(xué)習(xí)模型的參數(shù);p為深度學(xué)習(xí)模型的輸出,表示部件存在故障的概率。
模型訓(xùn)練過程中,對(duì)于正常的部件區(qū)域,要求深度學(xué)習(xí)模型輸出的概率p盡量接近0;對(duì)于故障的部件區(qū)域,要求深度學(xué)習(xí)輸出的概率p盡量接近1。通過不斷地輸入大量數(shù)據(jù),對(duì)深度學(xué)習(xí)模型的參數(shù)W進(jìn)行調(diào)整,使fW(·)逐漸滿足約束條件。
TFDS探測(cè)站采集到的絕大多數(shù)車輛圖像為正常情況,部件存在故障的圖像相對(duì)較少。因此,正常部件的圖像數(shù)量遠(yuǎn)遠(yuǎn)超過故障部件的圖像數(shù)量。另一方面,由于部件的物理特性、幾何結(jié)構(gòu)、內(nèi)外部環(huán)境等多種綜合因素,在《鐵路貨車運(yùn)用維修規(guī)程》中所規(guī)定的多種故障類型在實(shí)際環(huán)境中從未發(fā)生過。為了確保本系統(tǒng)可以準(zhǔn)確地識(shí)別從未發(fā)生過的故障,避免影響行車安全的故障漏報(bào),同時(shí)在正常部件和異常部件數(shù)量極不均衡的條件下得到預(yù)測(cè)結(jié)果無偏的模型,本方法提出:
(1) 通過進(jìn)行少量人工參與的弱監(jiān)督故障數(shù)據(jù)合成來增加故障樣本數(shù)量;
(2) 通過對(duì)正常樣本和故障樣本施加自適應(yīng)計(jì)算的權(quán)重,減少模型訓(xùn)練過程中的偏差。
對(duì)于車輛運(yùn)行中未發(fā)生過的故障,本方法提出從其他類似故障數(shù)據(jù)遷移的方式合成更多故障數(shù)據(jù)。
具體來說,在車輛實(shí)際運(yùn)行中,曾經(jīng)出現(xiàn)過大量各類故障,但是某些特定類型的故障和特定部件的組合并沒有出現(xiàn)過,因此可以從其他部件的同類故障遷移到特定部件,從而合成未出現(xiàn)過的故障。
以車輪裂損為例,該故障出現(xiàn)頻率極低,但由于其嚴(yán)重性極高,一旦出現(xiàn)必須要求準(zhǔn)確識(shí)別。另一方面,橫梁裂損等其他部件上的裂損故障則相對(duì)較為常見。因此,可以將其他部件上的裂損區(qū)域遷移到車輪上,得到合成的車輪裂損數(shù)據(jù),用來訓(xùn)練故障智能識(shí)別模型。
本方法中,在合成故障圖像時(shí),采用以下流程:
(1) 收集大量的正常圖像作為待修改的底圖;
(2) 收集待合成的故障類型的圖像,如部件裂損圖像等;
(3) 通過labelme標(biāo)注工具[16],由人工在圖中勾畫出故障圖像中故障區(qū)域的位置,同時(shí)勾畫出正常圖像中可能出現(xiàn)該故障的位置,以多邊形掩膜的形式表示圖中勾畫出的區(qū)域;
(4) 程序?qū)⒐收蠄D像中的故障區(qū)域裁剪出來,經(jīng)過旋轉(zhuǎn)、扭曲、拉伸、亮度對(duì)比度調(diào)整等操作,與待修改底圖中的待修改區(qū)域形狀、亮度、對(duì)比度進(jìn)行匹配后,拼接到正常圖像中可能發(fā)生故障的區(qū)域,得到逼真的合成故障圖像。圖4為TFDS故障檢測(cè)任務(wù)中裂損類圖像的自動(dòng)擴(kuò)充展示。
圖4 TFDS故障檢測(cè)任務(wù)中裂損類圖像的自動(dòng)擴(kuò)充
即使通過人工生成故障數(shù)據(jù)的方式,仍然不能解決故障樣本數(shù)量遠(yuǎn)少于正常樣本數(shù)量的問題。在訓(xùn)練分類模型時(shí),通常采用交叉熵?fù)p失:
L=-y·log(p) - (1-y) log(1-p)
(2)
式中:L為損失函數(shù);y為輸入樣本的標(biāo)簽,正常樣本的標(biāo)簽為0,故障樣本的標(biāo)簽為1。
在使用上述損失函數(shù)訓(xùn)練深度學(xué)習(xí)模型時(shí),如果正常樣本數(shù)量遠(yuǎn)多于故障樣本數(shù)量,公式(2)中的第二項(xiàng)會(huì)起到支配性的作用,導(dǎo)致深度學(xué)習(xí)模型將所有樣本預(yù)測(cè)為正常。為了解決這個(gè)問題,本文提出對(duì)正常樣本和故障樣本施加不同的權(quán)重,以此平衡公式(2)中的兩項(xiàng)。圖5為權(quán)重計(jì)算流程示意圖。
圖5 權(quán)重計(jì)算流程示意
具體來說,如圖5所示,本文提出根據(jù)正常樣本和故障樣本的數(shù)量、變化模式的豐富程度,對(duì)每個(gè)樣本分別進(jìn)行加權(quán)。具體實(shí)現(xiàn)流程如下:
(1) 使用公開的深度學(xué)習(xí)模型分別提取正常樣本和故障樣本的特征;
(2) 通過K-means[17]聚類的方法,對(duì)正常樣本的特征和故障樣本的特征分別進(jìn)行聚類,得到每個(gè)樣本所屬的聚類編號(hào);
(3) 通過下列公式計(jì)算樣本的權(quán)重:
茶園地:1974年左右在原坡度為10°的坡地上進(jìn)行水平整地并起壟,開始種植茶樹(Camellia sinensis(L.)O.Kuntze),行距150 cm,叢距30 cm,每年施用復(fù)合肥和餅肥各1次。
wp=Cn/nc/(Cp+Cn)
(3)
wn=Cp/nc/(Cp+Cn)
(4)
式中:wp為正常樣本的權(quán)重;wn為故障樣本的權(quán)重;Cp為正常樣本的聚類數(shù)量;Cn為故障樣本的聚類數(shù)量;nc為樣本所在的聚類中,樣本的數(shù)量。
相應(yīng)地,定義加權(quán)的交叉熵?fù)p失函數(shù):
L=-wn·y·log(p) -wp(1-y)log(1-p)
(5)
通過公式(5)中的損失函數(shù)對(duì)深度學(xué)習(xí)分類器進(jìn)行訓(xùn)練,可以平衡損失函數(shù)中正常樣本的項(xiàng)和故障樣本的項(xiàng),從而緩解模型偏差。
實(shí)驗(yàn)測(cè)試方案實(shí)現(xiàn)流程如圖6所示。TFDS探測(cè)站完成數(shù)據(jù)采集后,經(jīng)過本方法識(shí)別,將算法判斷為正常和故障的數(shù)據(jù)分別提交給工作人員復(fù)核,統(tǒng)計(jì)算法的識(shí)別效果和性能。
圖6 測(cè)試方案實(shí)現(xiàn)流程
所部署測(cè)試服務(wù)器采用Intel Xeon E7 CPU,nVidia Tesla T4 GPU。
實(shí)驗(yàn)階段,將兩條線路上的實(shí)時(shí)過車數(shù)據(jù)接入實(shí)驗(yàn)系統(tǒng)進(jìn)行測(cè)試,每條線路每周測(cè)試圖像約9萬張。
在實(shí)驗(yàn)過程中,通過故障召回率、誤報(bào)率、推理時(shí)間作為指標(biāo),評(píng)價(jià)算法的運(yùn)行效果和處理性能。
(1) 故障召回率:假設(shè)檢測(cè)的圖像中故障總數(shù)為T,算法預(yù)測(cè)為故障且經(jīng)過人工確認(rèn)屬實(shí)的故障數(shù)量為t,則故障召回率=t/T;
(3) 推理時(shí)間:算法分析一張圖所用的時(shí)間,單位為秒(s)。
訓(xùn)練過程采用收集到的全路100萬張圖像,經(jīng)過部件標(biāo)注,故障分類模型標(biāo)注后,進(jìn)行訓(xùn)練。標(biāo)注過程采用人工、以及半自動(dòng)標(biāo)注的方法。為了驗(yàn)證所提出方法的有效性,對(duì)提出的各種方法進(jìn)行了對(duì)比測(cè)試。訓(xùn)練過程中測(cè)試集構(gòu)造如下,通過在1萬張圖像中,混入100張故障圖像,模擬真實(shí)使用過程中正常數(shù)據(jù)遠(yuǎn)大于故障數(shù)據(jù)的情況。測(cè)試結(jié)果如表1所示。
表1 訓(xùn)練過程故障發(fā)現(xiàn)測(cè)試結(jié)果
在實(shí)驗(yàn)周期中,前期先在線路1完成系統(tǒng)的部署并開始測(cè)試,后期為進(jìn)一步驗(yàn)證效果,在線路2完成系統(tǒng)的部署和測(cè)試。因此,線路1的測(cè)試結(jié)果時(shí)間跨度為10周,線路2的測(cè)試結(jié)果時(shí)間跨度為3周。測(cè)試結(jié)果參見表2、表3、表4。
表2 線路1現(xiàn)場(chǎng)測(cè)試結(jié)果
表3 線路2現(xiàn)場(chǎng)測(cè)試結(jié)果
表4 算法在不同設(shè)備上的推理時(shí)間測(cè)試結(jié)果
(1) 誤報(bào)率:從表2中可以看到,在測(cè)試前期,系統(tǒng)誤報(bào)率較高,前四周平均誤報(bào)率7.61%。之后經(jīng)過進(jìn)一步優(yōu)化,誤報(bào)率有所降低,在線路1上,后六周平均誤報(bào)率4.20%;表3中,在線路2上,平均誤報(bào)率4.42%。上述結(jié)果表明,本文提出的系統(tǒng),可以過濾掉95%以上的正常圖片,因此,可以明顯降低人工審圖的工作量,提升TFDS故障檢測(cè)的效率。
(2) 故障召回率:表2和表3中,在現(xiàn)場(chǎng)實(shí)際測(cè)試階段,本文提出的系統(tǒng)各漏檢1個(gè)故障,經(jīng)人工確認(rèn)為不影響行車安全的輕微故障。該實(shí)驗(yàn)結(jié)果表明,本系統(tǒng)具有精準(zhǔn)的故障發(fā)現(xiàn)能力,在實(shí)際使用中能夠發(fā)現(xiàn)絕大多數(shù)的故障,已具備實(shí)用價(jià)值。
(3) 推理時(shí)間:實(shí)際部署系統(tǒng)中使用nVidia Tesla T4 GPU,該設(shè)備性能較高,但成本也較高,因此在實(shí)際部署中,出于成本考慮,可能需要部署其他型號(hào)的GPU設(shè)備。為了驗(yàn)證其他型號(hào)設(shè)備的推理時(shí)間是否可以滿足實(shí)際使用的需求,在此實(shí)驗(yàn)中,補(bǔ)充測(cè)試算法在nVidia Tesla P4 GPU上的推理時(shí)間,實(shí)驗(yàn)結(jié)果見表4。從實(shí)驗(yàn)結(jié)果中可以看出:第一,T4型號(hào)的GPU速度遠(yuǎn)快于P4型號(hào)的GPU,推理時(shí)間可以節(jié)省約40%;第二,現(xiàn)場(chǎng)測(cè)試中,要求每列車的推理時(shí)間不超過10 min,兩種型號(hào)的GPU都可以滿足實(shí)際應(yīng)用對(duì)速度的要求。
上述結(jié)果表明,不論是在故障識(shí)別效果還是在故障分析速度方面,本算法可以達(dá)到TFDS圖像故障智能檢測(cè)的需要,已經(jīng)具備實(shí)際應(yīng)用的能力。
(1) 通過自動(dòng)識(shí)別算法進(jìn)行TFDS圖像的故障檢測(cè)有助于提升故障召回率,對(duì)于提升TFDS故障圖像的分析效率,保障行車安全,降低人工工作負(fù)荷,具有重要的實(shí)用價(jià)值;
(2) 算法部署初期,可作為動(dòng)態(tài)檢車員作業(yè)質(zhì)量檢查的輔助措施予以應(yīng)用,避免人工分析可能存在的漏報(bào),隨著后續(xù)算法可用性的不斷完善,可與現(xiàn)有作業(yè)流程完全結(jié)合,實(shí)現(xiàn)以智能分析為主,人工確認(rèn)為輔的作業(yè)模式轉(zhuǎn)變;
(3) 通過人工故障數(shù)據(jù)合成可以有效增加故障樣本的數(shù)量和多樣性,使本方法具備準(zhǔn)確識(shí)別罕見故障、未出現(xiàn)過故障的能力;
(4) 本文提出的加權(quán)故障識(shí)別損失,極大程度上緩解了正常樣本和故障樣本數(shù)量不均衡的問題,使算法既能夠達(dá)到極高的故障召回率,也能將誤報(bào)率控制在可以接受的范圍內(nèi),實(shí)現(xiàn)具有實(shí)用價(jià)值的故障圖像智能識(shí)別功能;
(5) 當(dāng)前系統(tǒng)的故障召回率和誤報(bào)率已經(jīng)初步達(dá)到可以實(shí)用的程度,為了更好地減輕檢車員的工作負(fù)荷,算法誤報(bào)率仍有進(jìn)一步優(yōu)化的必要和空間。