黃 濤 張軍賢 蔡正凱 饒 鑫 單 奇**
(1.中車南京浦鎮(zhèn)車輛有限公司, 210031, 南京; 2.西南交通大學(xué)機械工程學(xué)院, 610031, 成都∥第一作者, 正高級工程師)
城市軌道交通列車中常用的定位與測速技術(shù)有輪速法、多普勒測速定位、查詢/應(yīng)答器法、軌道電路法、衛(wèi)星定位法等。其中,輪速法的運作原理簡單,但當列車輪對發(fā)生空轉(zhuǎn)、蠕動或打滑時會產(chǎn)生較大誤差;多普勒測速法維護簡單、應(yīng)用范圍廣,在列車高速運行時的誤差較小,但易受外部條件(如振動、安裝誤差、雨雪等)的影響[1];查詢/應(yīng)答器法定位精度高,特別適合消除列車定位過程中產(chǎn)生的累計誤差,但該法無法實現(xiàn)列車的連續(xù)定位,且應(yīng)答器鋪設(shè)成本較高,保養(yǎng)和維護難度較大[2];軌道電路法技術(shù)成熟、可靠,但定位誤差大,無法準確給出列車在區(qū)段內(nèi)的具體位置和速度信息;衛(wèi)星定位法定位精度高、維護方便,但在周圍阻擋物多的地方(如山林、城市、隧道等處)存在定位盲區(qū)[3]。
本文針對現(xiàn)有列車定位與測速技術(shù)存在的缺陷,提出基于機器視覺技術(shù)的城市軌道交通列車定位與測速系統(tǒng)(以下簡為“列車定位與測速系統(tǒng)”)。在列車運行速度不超過120 km/h的情況下,該系統(tǒng)能完成列車的實時定位與測速,軌道線路定位誤差小于0.1 m,區(qū)間測速誤差小于0.1 km/h。
本文提出的列車定位與測速系統(tǒng)由硬、軟件兩部分組成。其中,硬件部分包括視覺定位外機、視覺定位內(nèi)機和視覺信標等3個部分,系統(tǒng)的硬件連接圖如圖1所示。
圖1 列車定位與測速系統(tǒng)硬件連接圖Fig.1 Hardware connection diagram of train positioning and speed measurement system
外機的主要作用是收集高幀頻檢測軌道線路的圖像,并將圖像準確、可靠地傳輸?shù)絻?nèi)機,其需解決的主要技術(shù)問題包括:①外機的結(jié)構(gòu)設(shè)計,以及外機的振動和空氣動力學(xué)分析;②外機的照明、除塵、除霧、防振和抗電磁干擾等問題及其控制方法;③高速工業(yè)相機的自適應(yīng)控制。內(nèi)機的主要作用是根據(jù)外機高速采集的軌道線路圖像,對軌道線路進行識別跟蹤,融合視覺定位信標檢測到的數(shù)據(jù),實時、連續(xù)計算出當前列車的位置和速度,并將其計算結(jié)果上傳到列車控制系統(tǒng)或遠程監(jiān)控中心。每個視覺信標均具有唯一的編碼,通過識別視覺信標,可查詢到視覺信標的安裝信息,進而得到列車在軌道上的絕對位置。內(nèi)機通過獲取城市軌道交通列車車站附近視覺信標的精確定位信息,定期消除軌道線路視覺定位系統(tǒng)可能產(chǎn)生的累積誤差。視覺信標解決的主要問題包括信標的制作、檢測、編碼和快速識別等。
列車定位與測速系統(tǒng)軟件部分包括4個模塊:圖像采集模塊、照明控制模塊、圖像處理模塊及數(shù)據(jù)融合分析模塊。其軟件模塊結(jié)構(gòu)圖如圖2所示。其中:圖像處理模塊包含列車定位與測速系統(tǒng)的關(guān)鍵算法,主要包括視頻圖像采集和預(yù)處理、軌枕特征識別和跟蹤、基于機器視覺的列車定位計算等過程;數(shù)據(jù)融合分析模塊可對圖像處理算法獲取的列車位置信息與視覺信標獲取的位置信息進行融合處理,進而消除視覺定位算法產(chǎn)生的累計誤差,提高列車定位與測速系統(tǒng)的定位精度和可靠性;圖像采集模塊采集軌道圖像;照明控制模塊根據(jù)采集圖像的質(zhì)量評價指標,動態(tài)控制光源控制器,調(diào)整光源亮度,保障相機在工作范圍內(nèi)具有穩(wěn)定、均勻、充足的光照,提高圖像檢測的準確率。
圖2 列車定位與測速系統(tǒng)軟件模塊Fig.2 Software module of train positioning and speed measurement system
從軌道圖像中識別軌枕涉及目標檢測與跟蹤技術(shù),傳統(tǒng)的基于特征的目標識別方法存在檢測準確性低、特征提取過程復(fù)雜等缺陷。隨著計算機視覺和人工智能技術(shù)的快速發(fā)展,基于深度學(xué)習(xí)的方法因其無需特征工程、適應(yīng)性強和檢測精度高等特點得到廣泛應(yīng)用,逐漸取代了傳統(tǒng)的目標檢測方法。根據(jù)模型訓(xùn)練方式可將基于深度學(xué)習(xí)的目標檢測方法分為兩種:單階段目標檢測模型和兩階段目標檢測模型。單階段目標檢測模型采用回歸方法,直接在輸入的原圖上提取特征并進行分類,其結(jié)構(gòu)簡單、檢測速度快,可實現(xiàn)端到端的檢測,但對于高密度目標和小目標的檢測精度較差;兩階段目標檢測模型基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò),首先生成待選區(qū)域并提取特征,然后通過分類器進行分類,可檢測出高密度目標和小目標,但其檢測速度較慢[4]。
針對本文所提方法的識別目標類別少、檢測速度要求高的特點,采用單階段目標檢測模型。目前,單階段目標檢測主要有YOLO算法、SSD(single shot mutibox detector,輕量級目標檢測)算法、YOLO v2算法、YOLO v3算法等。經(jīng)研究發(fā)現(xiàn),YOLO v3算法在檢測速度與精度間取得了較好的平衡,且國內(nèi)外很多研究學(xué)者將其應(yīng)用到目標檢測領(lǐng)域。文獻[5]使用航拍汽車數(shù)據(jù)集對YOLO v3算法和Faster R-CNN算法進行對比,證明了在精度相當?shù)那闆r下,YOLO v3算法在靈敏度和處理時間上均優(yōu)于Faster R-CNN算法。文獻[6]將YOLO v3算法應(yīng)用到無人機或衛(wèi)星拍攝圖像的地面目標檢測問題中,實現(xiàn)了較高的檢測能力和實時檢測速度。文獻[7]將簡化的Tiny-YOLO算法應(yīng)用到飛機目標檢測中,提高了檢測速度。文獻[8]將YOLO v3算法應(yīng)用于遙感圖像中的飛機檢測,加入密集相連模塊,并結(jié)合多尺度特征檢測,提高了飛機檢測的精度和召回率。在查閱相關(guān)文獻后,本文采用YOLO v3算法檢測軌道圖像中的軌枕和信標。
圖3為YOLO v3算法的結(jié)構(gòu)圖[9]。
注:“卷積×5”表示5個卷積層。其余表述含義類同。圖3 YOLO v3網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 YOLO v3 network structure diagram
YOLO v3算法先將輸入的圖像縮放至416像素×416像素,再把該圖像劃分為S×S(S為自然數(shù)序列)個網(wǎng)格。每個網(wǎng)格負責預(yù)測中心落入該網(wǎng)格的目標,并計算出3個預(yù)測框。每個預(yù)測框均對應(yīng)5+N個值,其中:“N”表示數(shù)據(jù)集中的類別總數(shù);“5”代表5個預(yù)測邊界框的屬性信息,分別為中心點坐標(x,y)、預(yù)測框的寬度w和高度h、置信度。網(wǎng)格預(yù)測類別置信度得分的計算式為:
Con=Pco,iPoIou
(1)
式中:
Con——網(wǎng)格預(yù)測置信度的分數(shù);
Pco,i——網(wǎng)格預(yù)測第i類目標的置信概率;
Po——目標落入該網(wǎng)格的概率,若有目標中心落入該網(wǎng)格,則Po=1,否則Po=0;
Iou——預(yù)測邊界框與真實框的交并比。
最后,使用NMS(Non-Maximum Suppression,非極大值抑制)算法篩選出置信得分較高的預(yù)測框,作為網(wǎng)絡(luò)模型的檢測框。
網(wǎng)絡(luò)模型采用單階段目標檢測模型策略,不需生成候選框,直接完成特征提取并分類和回歸的過程。因此,在訓(xùn)練過程中只需將樣本信息進行類別和位置標記后,直接輸入網(wǎng)絡(luò)模型進行有監(jiān)督的訓(xùn)練,直至損失函數(shù)的值小于設(shè)定的閾值,即可得到權(quán)重文件。損失函數(shù)L的計算式如式(2)所示,其中,訓(xùn)練中采用的損失函數(shù)包括3個部分[10]:目標檢測置信度損失函數(shù)Lconf(o,c)、目標檢測分類損失函數(shù)Lcla(O,C)及目標檢測定位損失函數(shù)Lloc(l,g)。
L(O,o,C,c,l,g)=λ1Lconf(o,c)+
λ2Lcla(O,C)+λ3Lloc(l,g)
(2)
式中:
λ1、λ2、λ3——加權(quán)系數(shù);
O——預(yù)測目標矩形框;
o——真實目標矩形框;
C——預(yù)測目標矩形框內(nèi)存在目標的概率;
c——真實目標矩形框內(nèi)存在目標的概率;
l——預(yù)測目標矩形框坐標偏移量;
g——真實目標矩形框與預(yù)測目標矩形框之間的位置偏移量。
目標檢測置信度為預(yù)測目標矩形框內(nèi)存在目標的概率,其損失函數(shù)采用二值交叉熵損失函數(shù);目標檢測分類損失表示網(wǎng)絡(luò)預(yù)測第i個目標邊界框內(nèi)存在第j類目標的概率,同樣采用二值交叉熵損失函數(shù);目標檢測定位損失函數(shù)則采用真實偏差值與預(yù)測偏差值差的平方和進行計算。
本文以YOLO v3網(wǎng)絡(luò)模型為基礎(chǔ),結(jié)合軌道線路的圖像特征,將其應(yīng)用于軌道多目標檢測。通過反復(fù)改進和優(yōu)化網(wǎng)絡(luò)參數(shù),最終結(jié)果如表1所示。
表1 YOLO v3網(wǎng)絡(luò)模型訓(xùn)練參數(shù)Tab.1 YOLO v3 network model training parameters
在列車定位與測速系統(tǒng)算法中,要求對相機采集的照片進行實時處理,其算法流程如圖4所示。首先,加載訓(xùn)練數(shù)據(jù)集得到權(quán)重文件,對相機采集的每一幀圖像進行處理,檢測是否有軌枕并判斷是否為新的軌枕;然后,對軌枕計數(shù),根據(jù)軌枕間的距離和軌枕更新的時間計算列車的運行速度,其中軌枕識別模塊主要執(zhí)行上文所述目標檢測算法。
圖4 列車定位與測速系統(tǒng)的算法流程Fig.4 Algorithm flow chart of train positioning and speed measurement system
為提高圖像處理速度以滿足列車定位與測速的實時性,本文硬件配置如表2所示,在此基礎(chǔ)上搭建軟件環(huán)境:Windows 10系統(tǒng),軟件VS 2017、OpenCV 4.1、CUDA 10.0等,使用DarkNet-53框架。
表2 試驗硬件環(huán)境配置Tab.2 Experimental hardware environment configuration
3.2.1 模擬試驗
模擬試驗采用軟件模擬不同車速時的軌道線路圖像,列車定位與測速系統(tǒng)針對模擬圖像完成列車定位與測速。圖5 a)、圖5 b)分別為列車速度從0勻加速到60 km/h、120 km/h后,勻速運行一段距離后再勻減速至列車停止這一過程中,系統(tǒng)檢測得到的速度-位移曲線和理論速度-位移曲線的對比情況。模擬試驗表明:在列車速度為120 km/h時,樣機能準確進行識別、定位和跟蹤軌道線路特征,軌枕計數(shù)沒有發(fā)生丟失或重復(fù)計算等情況。
a) 列車最大運行速度為60 km/h
3.2.2 裝車試驗
在中車南京浦鎮(zhèn)車輛有限公司新試驗線進行了設(shè)備裝車試驗驗證。試驗設(shè)備安裝如圖6所示。具體試驗方法為:在線路上設(shè)置信標,檢測信標之間的軌枕數(shù)是否與實際檢測數(shù)據(jù)一致。試驗結(jié)果表明:本文研究的核心算法能夠保證試驗列車行駛時準確記錄行駛過的軌枕數(shù),做到不丟失、不虛增。
圖6 試驗設(shè)備安裝效果圖Fig.6 Test equipment installation renderings
設(shè)列車的平均運行速度為v,分別對低、中、高速行駛列車相機拍攝的照片進行檢測,可準確地檢測出軌枕和信標,檢測結(jié)果如圖7所示。在列車行駛速度不超過120 km/h時,軌枕的檢測準確率為100%,平均檢測1張圖片用時5 ms,相機檢測幀頻可達200幀/秒。列車定位精度為軌枕間距,通過在2個軌枕間根據(jù)實時檢測的車速進行插值,定位精度可達0.1 m,列車區(qū)間測速誤差小于0.1 km/h,達到了項目研發(fā)預(yù)期的技術(shù)指標。
圖7 不同車速下的檢測效果Fig.7 Detection effect at different speeds
南京中車試驗線最大試驗車速為90 km/h,基于測試的安全性,本次測試的實際最高車速為80 km/h。而對于車速超過80 km/h的情況,本文采用實驗室仿真的測速形式。仿真結(jié)果表明:列車在120 km/h速度下,本文所提算法的均能取得預(yù)期效果。
本文分析了現(xiàn)有列車定位測速技術(shù)存在的缺陷,提出了一種新的完全基于機器視覺技術(shù)的列車定位與測速系統(tǒng)。模擬和線路試驗表明:基于機器視覺技術(shù)研制一款適合城市軌道交通列車連續(xù)定位與測速裝置是可行的,該裝置不依賴于現(xiàn)有系統(tǒng),且具有較高的精度和較低的成本,易于安裝,提高了車輛行駛的安全性。本文提出的核心算法能夠保證城市軌道交通列車在120 km/h速度時準確記錄行駛過的軌枕數(shù),做到不丟失、不虛增,達到了預(yù)期的設(shè)計指標。
本文所提算法的魯棒性尚需在大量線路上進一步進行試驗驗證,列車定位與測速系統(tǒng)的硬件還需要進一步提高其集成度和防護等級。由于列車行駛時相機安裝高度與軌面距離保持恒定,可以通過相機標定和軌枕檢測框中心像素坐標計算出相鄰軌枕的間距,從而解決實際線路上軌枕間距不等的問題。