李 超,劉子寬
(中國鐵道科學研究院集團有限公司 電子計算技術研究所,北京 100081)
為了滿足日益增長的運輸需求,列車不僅在運行速度上逐步提高,運行密度上也在不斷加大,因此如何保障列車運行的安全可靠性已成為目前亟需解決的重要問題.尤其針對高速運行的動車組,鐵路部門提出了動車組運行故障動態(tài)圖像檢測系統(tǒng)(TEDS)[1],該系統(tǒng)利用軌邊安裝的線陣攝像機,采集運行中動車組的各個部位圖像來進行故障自動識別,從而監(jiān)測當前動車是否存在結構件的變化,并據(jù)此進行實時報警.
然而現(xiàn)有的動車組故障識別方法大多通過與歷史圖像相比較來找尋差異區(qū)域,從而定位故障位置.由于采集時間和維修業(yè)務等原因,容易造成歷史圖像所構成的模板庫存在較大的類內差異性,需要不斷地更新模板庫,且現(xiàn)有方法難以保障故障檢測的誤報率與漏報率[2-5].模板庫內的歷史圖像由于拍攝時間的不同,存在光照、成像像素不同,極易造成同一列車的成像尺度和成像像素存在較大的區(qū)別,因此誤報率居高不下.此外,列車在修理時會出現(xiàn)部分零部件的更新?lián)Q代或位置調整,均會使得模板庫的類內差異性增大,從而增加誤報率[6].為此,本文提出了一種無需預設模板的動車組故障識別算法,該算法將當前列車的其他車廂作為歷史圖像來進行圖像比對,從而定位故障區(qū)域,有效提高了檢測準確性.
本算法首先對列車組的車頭車尾位置進行標定;然后根據(jù)車廂連接處存在對稱圖像的特征,進行車廂劃分;最終將列車中的其他車廂作為歷史圖像,對該車廂進行故障自動監(jiān)測.該算法不僅在較大程度上避免了光照、行車速度等外在干擾因素的影響,同時也不受零部件位置調整等人工修理模式的影響,從而有效地解決了當前故障識別中由于光照、列車運行速度等外在因素造成的誤報率、漏報率較高等問題.
本文提出了一種無需預設模板的全新動車組故障識別算法,該算法無需任何歷史模板圖像,不必區(qū)分何種車型,只需根據(jù)當前采集的列車組圖像自動進行圖像檢測,即可精準定位故障區(qū)域.算法總體流程框架如圖1所示.
圖1 動車組圖像故障識別算法流程框架圖Fig.1 Framework and flow chart of EMU image fault recognition algorithm
首先采用背景高斯差分法在采集的列車圖像集中確定列車的車頭和車尾圖像;隨后根據(jù)對稱匹配技術定位到列車的車廂連接處位置;最終將動車組以車廂為單位構建成相應的列車圖像.將列車中的其他車廂作為歷史圖像,對該車廂進行故障自動監(jiān)測.
由于TEDS采用磁鋼作為拍攝的觸發(fā)信號,因此會采集到一部分固定的背景圖像,隨后才會有列車出現(xiàn).鑒于此,本算法將線陣相機采集的圖像作為視頻幀進行處理,列車未到達時的圖像設定為背景圖像,采用高斯混合模型(GMM)[7-8]進行前景提取,確定列車的車頭車尾區(qū)域.
鑒于動車圖像數(shù)據(jù)是多維數(shù)據(jù),為此本算法構建的GMM概率密度函數(shù)為
(1)
式中:z為采集的圖像特征;μ為數(shù)據(jù)均值(期望);con為協(xié)方差計算符號;D為數(shù)據(jù)維度;p(z|θ)為該像素點屬于背景的概率,若其大于閾值,則為前景圖像.
具體的車頭車尾位置標定算法流程如圖2所示.首先將獲取到的無任何列車信息的圖像數(shù)據(jù)作為背景圖像,并基于高斯混合模型進行建模,將其作為背景圖像;隨后分別從第一張或最后一張采集的列車圖像開始進行背景差分,從而尋找是否出現(xiàn)前景圖像.若出現(xiàn),則繼續(xù)定位前景圖像位置,并輸出車頭和車尾的具體位置.在車頭出現(xiàn)的圖像中確定車頭的具體位置來提取車頭圖像區(qū)域.在車尾出現(xiàn)的圖像中確定車尾的具體位置,并提取車尾圖像區(qū)域.
圖2 基于高斯混合模型的車頭車尾定位技術流程圖Fig.2 Flow chart of front and rear positioning technology based on Gaussian mixture model
根據(jù)列車特點,其車廂連接處呈對稱特征,為此本算法依據(jù)分析圖像的對稱指數(shù)來確定車廂連接處的區(qū)域.以動車組為例,其由至少兩節(jié)帶驅動力的車廂和若干節(jié)不帶牽引力的車廂共同組成.其中,兩節(jié)帶驅動力的車廂為兩節(jié)反向對稱的動力車廂,即動車組的車頭和車尾;而若干節(jié)不帶牽引力的車廂,則為車頭與車尾中間的車廂,且在任意兩節(jié)車廂中間,即車廂連接處是彼此對稱的.根據(jù)采集的列車組圖像,動車組的車廂、車廂連接處和背景圖像的顏色是不相同的,可以在列車組圖像上首先將動車組車廂識別出來.對于其他區(qū)域,為了分辨出是車廂連接處還是背景圖像,可以判斷該區(qū)域的兩側圖像是否對稱:若對稱,則表示該區(qū)域為車廂連接處;反之,則為背景圖像.
本算法根據(jù)Peter Kovesi的研究[9],基于相位信息進行對稱性檢測.首先定義n個尺度、η個方向的小波濾波器對,并將像素p映射為能量,即
(2)
式中:k=1,2,…,n;q=1,2,…,η;E為能量熵.通過上述方法對原始圖像進行濾波并映射為能量,其中相位均為0的能量最大點,即為圖像中物體的對稱點.根據(jù)該圖像的PSDE值,確定該圖像中是否存在對稱圖像,進而判定是否有車廂連接處.
自動識別出列車組的車頭和車尾位置,并去除背景圖像后,按照車廂連接處位置將列車采集的圖像進行拼接分割,從而構成每一節(jié)完整的車廂圖像,再通過與列車中其他車廂進行SIFT特征[10-11]匹配,實現(xiàn)故障定位算法.
針對當前采集的完整車廂圖像,采用尺度不變特征變換(SIFT)和非極大值抑制(NMS)[12-15]來定位故障區(qū)域,完成運行動車組的可視結構異常情況實時分析與自動預警.首先,使用高斯差分尺度空間(DOG)提取圖像中的尺度空間極值變化,即
D(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y)=
L(x,y,kσ)-L(x,y,σ)
(3)
式中:(x,y)為圖像的像素位置;σ為尺度空間因子;*為卷積運算符號;L(x,y,σ)定義為原始圖像I(x,y)與一個可變尺度的2維高斯函數(shù)G(x,y,σ)的卷積運算.
隨后提取感興趣點的方向和特征描述,在每個感興趣點的周圍,基于圖像局部的梯度方向分配給每個關鍵點位置一個或多個方向.接著以興趣點為中心取16×16像素的窗口,并將其劃分為4×4個子區(qū)域.其次在每4×4個像素的圖像塊上計算8個方向的梯度方向直方圖,并繪制每個梯度方向的累加值,即可形成一個種子點.由于圖像區(qū)域共存在16個種子點,因此對于每個興趣點可以產生4×4×8共128維的SIFT特征向量,即SIFT描述子.每個興趣點的方向參數(shù)依靠興趣點鄰域像素的梯度方向分布特性來確定,梯度方向分布特性使算子具備了旋轉不變性.
隨后通過非極大值抑制算法,根據(jù)故障點的區(qū)域位置確定車廂圖像中的初步故障區(qū)域,故障識別的算法流程如圖3所示.首先,提取當前采集列車運行圖像的尺度不變特征變換描述子特征;隨后采用非極大抑制值,根據(jù)圖像中預設故障點、感興趣點的區(qū)域位置及區(qū)域分數(shù)來定位圖像中的初步故障區(qū)域;最終將該趟列車非本節(jié)車廂的其他圖像數(shù)據(jù)作為圖像模板庫,為這些故障區(qū)域在圖像模板庫中尋找相應的位置.若匹配成功,則表明該圖像為正常區(qū)域;若匹配閾值較低,則說明該圖像中含有故障區(qū)域,需對故障區(qū)域進行定位.
圖3 基于車廂圖像的故障識別算法流程Fig.3 Flow chart of fault recognition algorithm based on compartment images
實驗首先構建TEDS圖像集,并利用該數(shù)據(jù)集對本算法進行性能評價,隨后與現(xiàn)有的圖像故障識別算法進行對比分析.實驗車型分為:CRH1A、CRH2A、CRH3A、CRH5A、CRH380A、CRH380B及復興號7種車型,列車通過TEDS設備實時采集運行圖像.其中CRH1A型采集大約3 000張圖像;CRH2A型采集大約3 100張圖像;CRH3A型采集大約2 500張圖像;CRH5A型采集大約3 100張圖像;CRH380A型采集大約3 200張圖像;CRH380B型采集大約3 200張圖像;CRH400型(復興號)采集大約4 500張圖像.采集的圖像分別包括:列車的底部高清圖像(制動裝置、驅動裝置、牽引裝置、轉向架、輪軸、車鉤及車底部其他部位)和側面的裙擺、轉向架等部位圖像.圖4分別顯示了沉箱與側箱攝像頭采集的車輛圖像.
圖4 TEDS采集的部分底部和側部圖像Fig.4 Part of bottom and side images acquired by TEDS
首先測試算法的故障識別性能,本實驗與傳統(tǒng)的SIFT特征匹配算法分別在漏報率、誤報率和識別時間3個標準上進行評估.漏報率是指在故障檢測中存在N次故障有M次未能檢測出;而誤報率是指在檢測出的N次故障中,其中有M次不是故障;識別時間是指從算法開始運行到算法運行結束所花費的時間.本算法運行在研華IPC-810E機型上,其CPU為Intel Core 2 E7400雙核雙線程,采用Windows XP SP3系統(tǒng).表1顯示了本算法與傳統(tǒng)算法對于不同車型的故障識別性能方面的比較.由表1可見,CRH380的誤報率較低,主要原因是該車型行駛的頻率較高,基本上各種替換零件在TEDS系統(tǒng)上都采集過,因此該車型獲取的圖像類內差異性較小,對算法的性能影響較少;而CRH1 A型列車誤報率相對較高,主要原因是該車型采集的圖像質量較差,且其更換零部件的頻率較低,很難完全獲取到所有類型的替換零部件,從而造成較高的誤報率;CRH400為最新的復興號,因為該車型整體運行時間較少,磨損程度輕,此外,零配件統(tǒng)一,使得算法的故障識別難度降低,因此算法的性能最好,在漏報率12%的情況下,可以達到零誤報.綜上所述,本文算法針對所有車型的漏報率均相對較低,主要原因是本算法不僅在較大程度上避免了光照、行車速度等外在干擾因素的影響,也可以不受零部件位置調整等人工修理模式的影響,從而可以較好地對運行過程中的動車組進行隱蔽故障的實時預警.
表1 本文故障識別算法與傳統(tǒng)SIFT算法的性能比較Tab.1 Performance comparison between as-proposed fault recognition algorithm and traditional SIFT algorithm
通過圖像的形式討論本算法對于車頭、車底及車廂連接處的劃分情況,如圖5所示,本算法對實驗車型均可取得準確的車頭和車底位置,并裁剪出相應的圖像.但對車廂連接處的劃分性能有所下降,其主要原因是TEDS在列車抵達壓塌磁鋼時才啟動線陣相機,開始拍照.根據(jù)背景差分,前景提取完全可以準確地獲取各種車型的車頭和車尾圖像.但車廂連接處拍攝時處于照片中的區(qū)域限制,會造成不對稱.為此,本算法在實際應用中,通常將幾幅圖像串聯(lián)后再進行分析,從而避免錯過車廂連接處區(qū)域.
圖5 TEDS采集的部分車頭、車底、車廂連接處圖像Fig.5 Part of front,bottom and joint images collected by TEDS
表2展示了本算法針對不同時間、不同攝像頭采集火車圖像的故障識別性能.可以看出,本算法針對側箱攝像頭的故障識別率相對較高,主要因為火車側面的零部件相對較少,圖像的局部角點信息不明顯,僅在故障出現(xiàn)時會大量增加角點信息,因此利用本算法可較好地圈定故障的大致位置.另外,列車底部含有大量的零部件,使得圖像具有較為豐富的角點信息,而故障導致的新增角點信息難以利用SIFT特征匹配準確獲取.特別是一些細小的故障,如螺栓丟失、管道裂紋等問題,在一定程度上加大了特征匹配的難度,從而限制了算法的故障識別效果.為此,將會在后續(xù)的工作中引入空間鄰域位置信息,從特征和空間信息相融合的角度提升算法的性能.特別需要指出的是,隨著列車維修后運行時間的變化,采集的圖像類內差異性會很大,因此本文對列車維修運行一天后和一個月后的故障識別率進行了統(tǒng)計比對.
表2 不同時間與攝像頭采集圖像的故障識別率Tab.2 Fault recognition rate of images collected by different cameras at different time
第2組實驗主要分析閾值參數(shù)對算法的影響.本算法共涉及兩個閾值參數(shù),分別是SIFT特征匹配閾值和模板匹配閾值,具體的性能比較如表3所示.可以看出,當SIFT特征匹配選取較小閾值時,故障識別性能較差.說明當閾值較低時,未匹配上的SIFT特征點數(shù)相對較多,因此相應的誤報率較高.而隨著SIFT特征匹配閾值的逐步增加,故障識別準確率也在穩(wěn)步提升.但當閾值大于一定值后,閾值繼續(xù)增加,故障識別性能反而有所降低.主要原因是閾值過高,雖在一定程度上減少了誤報率,但漏檢的特征點數(shù)卻隨之相對增加,導致漏報率有所提升.對于模板匹配的閾值,從表3中可看出其變化趨勢與SIFT特征匹配的基本相似.為此綜合分析上述兩個閾值,本算法選取故障識別性能較優(yōu)時采用的閾值參數(shù),即模板匹配算法選取閾值為0.7,SIFT特征匹配閾值為0.9.
表3 閾值參數(shù)對故障識別率的影響Tab.3 Influence of threshold parameters on fault recognition rate
針對動車組運行故障檢測問題,本文提出了一種無需預設模板的動車組故障識別算法.首先識別列車組的車頭車尾,然后根據(jù)圖像之間的相關性、圖像自身的特性識別列車組的車廂連接處;再與待檢測列車組的其他車廂圖像進行模板匹配,并在無需根據(jù)列車車型尋找歷史車輛模板庫的前提下實現(xiàn)故障識別,從而完成運行動車組可視結構異常情況的實時分析與自動預警.實驗結果表明,本算法針對運行動車組的異常情況能夠有效地分析預警,使得系統(tǒng)用戶可及時發(fā)現(xiàn)重大故障,從而提升動車運營質量.