孔德龍 蒲 凡
(中南民族大學計算機科學學院, 430074,武漢 ∥ 第一作者,講師)
為防止乘客不慎跌落站臺造成安全事故,大部分地鐵在車站站臺都設置了站臺門。但由于站臺門與列車門之間存在寬20~30 cm的間隙,因而在客運高峰期容易發生乘客被夾情況[1]。國內地鐵線路已發生過數起因乘客夾在空隙中而產生的運營安全事故。現有對該空隙的異物檢測主要依賴司機人工目視,或采用紅外、激光等輔助方法。但人工目視容易因疏忽產生漏判,而紅外、激光等方法由于站臺環境復雜會出現準確度差、誤報率高的問題,不利于列車的行車安全[2-3]。隨著地鐵無人駕駛技術的迅速發展,針對無人值守列車更加需要一種準確度高、實時性好的站臺自動異物檢測方法。
隨著人工智能技術的迅速發展,以深度學習為代表的人工智能圖像識別技術已廣泛應用于醫療、軍事等領域中,并取得了良好的應用效果[4]。殘差神經網絡模型是一種性能優異的神經網絡模型,相比于傳統的神經網絡模型具有訓練時間短、圖像識別準確率高、實時性好等優點[5]。因此,本文提出構建基于深度殘差神經網絡ResNet50模型的空隙自動異物檢測系統,通過獲取并處理站臺閉路電視監控系統傳輸給發車指示器的站臺門與列車門視頻幀信息,完成對站臺門與列車門之間異物的自動檢測。
深度殘差神經網絡是卷積神經網絡的一種,其結構主要由卷積層、池化層和全連接層組成[6]。其典型結構是由卷積層和池化層交替排列組成多組特征提取網絡,并在網絡尾部設置全連接層。當系統中輸入一個大小為W(長)×H(寬)×C(通道數)的張量T,首先在網絡卷積層中利用卷積函數計算系統輸入張量與卷積核的卷積結果,再使用激活函數以張量的形式輸出卷積層的特征圖。設張量Tc為張量T在通道c上的分量,定義卷積函數為Conv,則可以得到張量T與第n個卷積核張量Kn的卷積結果To為:
Mc∈Tc,Tc∈T,mw,h,c∈Mc,kw,h∈Kn
(1)
其中,張量Mc為張量T在卷積窗口內的子張量M在通道c上的分量。Tc的卷積計算原理如圖1所示。

圖1 卷積的計算原理
將卷積結果To作為激活函數的輸入量,遍歷張量To的每一個像素點To,w′,h′,c′。令b為偏置變量,可得到非線性激活函數在卷積核Kn上的輸出張量T1為:

(2)
將卷積層的輸出張量T1輸入池化層進行降采樣處理,從而降低輸出張量的維度并在減少計算量的同時不丟失圖像特征。池化層通過利用Mc中的最大像素點取代卷積計算中的Mc·Kc,其中,卷積核張量Kc為在通道c上的分量。設最大池化函數為Pool,則T的最大池化結果為:

(3)
將To輸入到非線性激活函數中,可得到池化層的輸出結果。系統輸入在經過多個由卷積層與池化層交替排列的特征提取網絡后進入全連接層中進行處理。設全連接函數為Full,則T的全連接計算結果可以表示為:
Tc∈T,tc1,w,h,c∈Tc,kw,h∈K
(4)

提出深度殘差神經網絡是為了解決傳統卷積神經網絡模型在結構向深層化發展時,由于發生梯度彌散而出現測試與訓練誤差比淺層網絡模型大的問題[7]。通過在網絡模型中引入殘差學習的概念,可以有效地解決傳統多層卷積神經網絡中梯度彌散的問題。一個基本的殘差學習模塊如圖2所示。

圖2 殘差學習模塊
圖2中,x為系統輸入,H(x)為系統目標映射,F(x)為求和前的網絡映射。其核心思想為:由于系統很難直接實現由x至H(x)的映射,因此不直接通過堆疊卷積網絡來實現一個理想目標映射H(x)的學習,而是使網絡去學習殘差函數F(x)=H(x)-x。深度殘差神經網絡就是由多個殘差塊堆疊組成的。由于殘差學習突出學習過程中的微小變化,自動消除了隱含層中的部分冗余層,相對于傳統的映射方式,殘差映射更容易實現優化,從而解決了深層網絡性能退化的問題。為了進一步提升系統性能,本文采用bottleneck結構建立殘差學習模型,其基本原理如圖3所示。

圖3 Bottleneck殘差學習模塊
該殘差學習模塊包括了3個卷積層。其中,第一個1×1的卷積層主要用于降維處理,降維后再由第二個3×3卷積層處理,最后由第三個1×1卷積層實現升維恢復。通過這兩個1×1的卷積層的設置減少了網絡中的參數數量,同時增加了網絡深度,相比基本模型有更好的性能。
2.1.1 站臺空隙異物定義
由于地鐵站臺門與列車門都包含機械式防夾設備,當列車門或站臺門由于異物存在而無法關閉時,會向列車控制系統進行報警。因此,本文的主要研究對象為站臺門與列車門間隙處的異物檢測。該處異物的定義為:當站臺門與列車門完全關閉時,間隙處存在威脅行車與乘客安全的人體或物品。通過查閱相關文獻并實際試驗,該處異物的外形尺寸不小于30 mm(長)×12 mm(寬)×20 mm(高)。
2.1.2 異物檢測系統總體設計與流程
利用深度殘差神經網絡來實現地鐵站臺車門與站臺門間的異物自動檢測。首先,要建立圖像數據集,通過在訓練站站臺模擬多種異物入侵與乘客被夾方式,并對所模擬圖像進行處理,建立殘差神經網絡訓練集與測試集;其次,利用所建網絡訓練集對深度殘差神經網絡ResNet50模型進行迭代訓練并完成對測試集的識別;最后將真實站臺圖像數據輸入已訓練完成的殘差神經網絡中,給出檢測結果以實現自動異物檢測。其流程如圖4所示。

圖4 自動異物檢測系統檢測流程圖
2.2.1 系統特征集的建立
由于安全原因,無法直接在真實地鐵車站中獲取站臺門與列車門間存在的異物圖像數據。因此,采用在地鐵訓練站模擬多種實際上、下客狀況并采集圖像信息,共得大小為224 mm×224 mm的1 906張圖像數據。通過樣本擴充處理,最終得到12 245張圖像數據。并按8…2 的比例劃分為訓練集與測試集,共得到訓練集數據9 796張,驗證集數據2 449張。
2.2.2 模型驗證與結果分析
本文采用目前較為先進的ResNet50(殘差50)模型。該模型是由多個殘差網絡堆疊而成的深層卷積神經網絡,總計有152層。在圖像識別領域有較為成熟的應用,共進行了1 000類常見物體的訓練,取得了不錯的成績[8]。因此,基于遷移學習原理借助已成熟的訓練模型,針對本文圖像分類問題的特殊情況,只對該模型中的140~152層進行針對性訓練。
模型采用2 個節點的Softmax層,使用非線性Sigmoid激活函數,Dropout概率p設置為0.25,學習率a設置為0.1;系統訓練最大迭代次數設置為100次。通過訓練集數據訓練使該模型最終實現優化。對該模型進行100 次迭代訓練后,訓練集與驗證集準確率與數據集損失值如圖5~6所示。
由圖5~6可得,在初始階段訓練集準確率為98.38%,損失值為0.046 6;而驗證集的準確率為98.98%,損失值為0.051 3。隨著訓練次數的增加,模型趨于收斂。最終訓練集準確率達到100%、損失值為4.39×10-7,驗證集準確率達到99.9%,損失值為6.04×10-6,證明該模型具有較強的泛化能力,滿足檢測需要。重復多次試驗該模型皆能收斂,且相對誤差很小,并在容許范圍內。

圖5 系統準確率

圖6 系統數據損失值
特征提取的能力決定了系統對驗證集數據的識別準確率。因此,對系統輸入層、淺層卷積層、深層卷積層的輸出進行可視化處理。通過對輸出通道進行遍歷得出Channel個大小為Size×Size的圖像,并將其拼接為一張圖片。輸入層的輸出維度為224×224×3,對第三維遍歷得到3 張分辨率為224像素×224像素的特征圖,將其拼接后如圖7所示。

圖7 輸入層特征圖
淺層卷積層輸出維度為112×112×64,對第三維遍歷得到64張分辨率為112像素×112像素的特征圖,將其拼接后如圖8所示。

圖8 淺層卷積層特征圖
深層卷積層輸出維度為14×14×256,對第三維遍歷得到256 張分辨率為14像素×14像素的特征圖,將其拼接后如圖9所示。

圖9 深層卷積層特征圖
從圖7~9可以看出,系統準確的提取出了輸入數據中的特征,達到了預期的識別目的。由于地鐵安全運營要求該異物識別系統應具有較強的實時處理能力,因此對1 000張數據集的讀取和預測耗時進行統計。其中,處理平臺環境:操作系統為Windows 10系統,處理器為Core i7-6700,內存為雙通道16 GB,顯卡為NVIDIA GTX 1050Ti(4 GB顯存)。系統總耗時統計結果如圖10所示。

圖10 系統總耗時
從圖10中可以得出,該模型對單張數據集的預測總耗時不超過47 ms。由于幀率是1 s可以處理的圖片數量,系統處理一張圖不超過47 ms。因此系統的處理幀率不低于21幀/s,具有良好的實時處理能力,能夠滿足實際應用需求。利用該自動異物檢測系統對武漢地鐵某車站中間位置站臺門與列車門1周視頻數據進行處理驗證。以線路運行過程中每小時模型預測準確性與單張視頻幀總耗時的最低值為統計目標,取1周內的平均值進行統計,可得表1。

表1 實際預測準確率與單張視頻幀總耗時統計
由表1可以得出,在線路早、晚高峰時段,系統的預測準確率與處理總耗時有部分下降。產生該現象的原因主要為在早、晚高峰時段車站上、下客人數增多,乘客在站臺門前的候車與擁擠行為導致測試環境變為復雜,導致系統預測性能相對下降。但系統全時段最低準確率仍不低于98.7%,最高單張視頻幀總耗時不超過64 ms,處理幀率不低于15幀/s,總體性能優良滿足地鐵線路正常運營的需求。
由于現有地鐵站臺門與列車門間空隙異物檢測方法存在檢測精度差、誤報率高,有一定的安全隱患,影響了列車的安全運營。本文通過模擬地鐵正常運營中上、下客方式建立圖像數據集,搭建并訓練基于深度殘差神經網絡ResNet50模型的自動異物檢測系統,利用真實車站發車指示器視頻幀數據對自動異物檢測系統進行測試。測試結果表明,利用該方法實現對地鐵站臺門與列車門間空隙的異物自動檢測是可行的,且具有較高的檢測精度與實時能力。