文/周紀武、于新生
隨著軌道交通與人工智能行業的快速發展,地鐵車輛的維護需求正在逐步增大,而車號統計又是維護過程中必不可少的一環。目前,地鐵車號主要采用人工統計或者RFID 射頻技術進行統計。傳統以人工為主的地鐵車輛車號統計方式耗時長、人工效率低,長時間統計極可能會出現視覺疲勞引起的誤統計;而RFID 射頻技術過于依賴電子標簽,當電子標簽破損、脫落、水封或者磁化時,會引起車號無法識別的問題,需要頻繁維護[1]。
為解決現有兩種技術的缺陷,進一步加快地鐵車輛車號識別效率、提高精度、降低人力成本,實現地鐵車輛維護系統的健康管理,基于深度學習技術的地鐵車輛識別技術順勢而生。該技術可以以不停車的方式,自動完成獲取車體的高清圖像,還可以通過深度學習等技術實現地鐵車號識別。
本系統不但具備自動啟動、故障自診斷、車號智能識別、智能信息處理等功能,而且識別精度高、運算速度快,可實現在線實時檢測,提供并記錄地鐵車號識別結果,同時本系統也可以提供豐富的數據接口和完整的信息管理功能,真正實現系統的智能化、平臺化、大數據化。
為加強對地鐵車輛的維護,提高車號識別效率與精度,本系統利用線陣相機等硬件設備對車輛以通過式自動采集車身外觀圖像,再采用深度學習等技術進行車號識別,提高工作人員工作效率,保障行車安全,發揮科技保安全、減員增效的作用。
基于深度學習技術的地鐵車輛車號識別系統采集圖像簡單易懂,前端采集設備分別安裝于軌道左右兩側,分別實現左側車號和右側車號圖像的全景掃描。右側設備與左側設備相同,如圖1 所示。

圖1 車號圖像采集示意圖
通過安裝在軌道兩側的2 組高清線陣圖像采集模塊,可以實現對兩側車廂的全景圖像采集,然后對每一節車廂的車號區域進行智能識別,最后將識別結果上傳至數據平臺。
首先采用YOLO_V3 目標檢測網絡模型分別對地鐵兩側車身車號區域實現精準定位,其次,再利用YOLO_V3 模型對每個車號區域進行字符分割,然后采用支持向量機(SVM)實現列車車號識別,最后充分利用識別出的兩側車號進行校驗,并把最終車號返回給數據平臺,具體算法原理流程如圖2 所示[2]。

圖2 車號識別算法流程圖
2.3.1 深度學習目標檢測模型(YOLO_V3)
YOLO_V3 是深度學習中常用的一種實時性的目標檢測模型,具有精度高、速度快、多尺度檢測以及小目標檢測等優勢。
Darknet-53 是一個專門為YOLO_V3 設計的深度學習框架,其主要用來提取圖像的特征。Darknet-53網絡結構如圖3 所示,主要包括5 個殘差模塊,具體實現流程如下:

圖3 Darknet-53 模型結構
第一步將256×256×3 大小的輸入圖像經過3×3×32 的卷積層處理后,得到256×256×32 大小的輸出;第二步將第一步中的輸出經過步長為2 的3×3×64 大小的卷積層處理后,得到128×128×64 大小的輸出;第三步將第二步中的輸出經過1 個殘差塊處理得到新的128×128×64 大小的輸出;第四步將第三步中的輸出經過步長為2 的3×3×128 大小的卷積層處理后,得到64×64×128 大小的輸出;第五步將第四步中的輸出經過2 個殘差塊處理得到新的64×64×128 大小的輸出;第六步將第五步中的輸出經過步長為2 的3×3×256 大小的卷積層處理后,得到32×32×256 大小的輸出;第七步將第六步中的輸出經過8 個殘差塊處理得到新的32×32×256 大小的輸出;第八步將第七步中的輸出經過步長為2 的3×3×512 大小的卷積層處理后,得到16×16×512 大小的輸出;第九步將第八步中的輸出經過8 個殘差塊處理得到新的16×16×512 大小的輸出;第十步將第九步中的輸出經過步長為2 的3×3×1024 大小的卷積層處理后,得到8×8×1024 大小的輸出;第十一步將第十步中的輸出經過4 個殘差塊處理得到新的8×8×1024 大小的輸出;最后再通過池化全連接層以及softmax 回歸得到圖像特征圖。
YOLO_V3 網絡結構是在Darknet-53 網絡上增加了YOLO 層,可實現多尺度檢測的功能,YOLO_V3 網絡結構如圖4 所示。

圖4 YOLO_V3 模型結構
由YOLO-V3 模型結構圖可知,其分別從Darknet-53 框架結構的最后三個殘差塊獲取的特征圖中進行多尺度檢測。首先,將Darknet-53 最后輸出的13×13×1024 大小的特征圖經過5 個卷積層進行二次特征提取后拿去檢測目標;其次,再將前一步二次特征提取后的特征圖上采樣與Darknet-53 結構中倒數第二個殘差塊獲取的特征圖合并,經過5 個卷積層進行二次特征提取后拿去檢測目標;最后,再將前一步二次特征提取后的特征圖上采樣與Darknet-53 結構中倒數第二個殘差塊獲取的特征圖合并,經過5 個卷積層進行二次特征提取后拿去檢測目標。
2.3.2 支持向量機(SVM)
支持向量機(SVM)屬于監督學習算法中的一種,主要用于模式識別領域中的數據分類問題,其最大的優點就是適用于小樣本且泛化性能好。
標準支持向量機是一種線性二分類模型,基本思想是使分類間隔最大化。如圖5 所示,黑點和白點分別代表兩個不同的類別,x 代表輸入向量(特征向量),w 是權重向量,b 代表偏置項。SVM 的目標就是尋找一個分類超平面,它能正確分類每一個樣本(黑白點);與此同時,它還要使每一類樣本中距離超平面最近的樣本到超平面的距離盡可能遠。

圖5 SVM 二分類原理
在標準SVM 中引入松弛變量和懲罰因子后可以處理線性不可分問題,但此時SVM 仍然是一個線性分類器,只是允許錯分樣本的存在。只有當SVM 使用核函數時,才是真正意義上的非線性分類器。使用核函數可以將非線性特征向量映射到更高維空間,并使其在該空間中線性可分,進而實現非線性數據分類。比較常用的核函數主要有線性核函數、多項式核函數以及徑向基核函數等[3]。
若想使用SVM 解決多分類問題,主要采用一對最大響應方案或者一對一投票淘汰方案。對于k 分類問題,一對最大響應方案就是訓練k 個分類器,每個類分別作為正樣本,其他所有剩余類作為負樣本,進行分類時分別計算每個分類器的輸出值,輸出值最大的作為最終分類結果;而一對一投票淘汰方案則是訓練k×(k-1)/2 個分類器,得到投票數最多的結果作為最終分類結果[4]。
2.3.3 車號識別算法
本算法通過非接觸式的方式實現列車在動態過程中的側面車號識別,以高精度、高速率識別為設計理念,利用車體側面高清彩色圖像并結合深度學習YOLO_V3 目標檢測模型以及SVM 多分類等技術,自動獲取地鐵車號信息,實現地鐵無人值守、遠程監控與辦公,為列車進出站以及維護提供基本信息。地鐵車號識別算法如下:
圖像采集系統開啟,分別獲取地鐵左右兩側車身彩色圖片;采用YOLO_V3 檢測模型精確定位地鐵車身全部車號區域位置,定位結果如圖6 所示;采用YOLO_V3 檢測模型精確定位車號區域的每個地鐵車號字符,定位結果如圖7 所示;采用支持向量機(SVM)識別每一個字符;對獲取到的全部車號結果校驗;校驗結果返回平臺[5]。

圖6 車號區域定位結果圖

圖7 字符精確定位結果圖
基于深度學習技術的地鐵車輛車號識別系統與傳統OCR 字符識別技術相比,其識別精度與速度均有了質的飛越。以100 張車號圖片為例,對比結果如表1 所示,圖片分辨率均為27000×2048。

表1 兩種算法識別結果對比
2020年11月10日,該系統已成功應用于大連地鐵1 號線,目前為止已經穩定運行130 余天,車號識別準確率達到99.5%以上[6]。
3.2.1 數據接口功能
系統提供了豐富的數據接口,具有網絡功能,能提供與地鐵車輛段信息管理單元的接口。
3.2.2 算法自啟動與故障自診斷
線陣相機提供圖像處理技術判定列車是否經過,如有列車經過,則自動啟動車號識別算法。單元進入故障診斷排查,若發現故障則自動報警;若診斷排查結果無誤,則提取車號信息。
3.2.3 小數據集高精度
采用YOLO_V3 與SVM 結合的方式進行車號識別,避免了深度學習識別結果過于依賴訓練數據的弊端,而且還可以減少人工標注的成本,實現小數據集高精度的識別結果。
3.2.4 技術應用范圍廣
基于深度學習技術的地鐵車輛車號識別系統適用范圍廣,可以覆蓋到軌道交通領域地鐵、高鐵、輕軌、貨車以及客車等各種車型。
3.2.5 硬件依賴少
基于深度學習技術的地鐵車輛車號識別系統幾乎不依賴任何額外硬件,便于維護。
3.2.6 智能識別算法
利用深度學習技術實現車號精準定位,減少光照、陰影等不良影響;利用智能校驗算法糾正破損等誤識別車號。
基于深度學習技術的地鐵車輛車號識別系統融合了傳統機器視覺與深度學習技術,以不停車的方式實現每節車廂的車號識別,真正實現智能化、平臺化以及大數據化,同時還進一步提高了地鐵車輛車號識別效率、精度,降低了人力成本,減少運維,實現軌道交通領域無人值守,遠程監控與辦公,為列車進出站以及維護提供基本信息。