張瑞芳, 苗 勇, 楊紅運, 盧萬平, 楊旭林
(1 中國鐵道科學(xué)研究院集團有限公司 機車車輛研究所, 北京 100081;2 北京縱橫機電科技有限公司, 北京 100094)
近幾年來,視頻分析與識別技術(shù)已取得突飛進展,理論成果已廣泛應(yīng)用于交通、安防、金融、建筑、醫(yī)學(xué)、軍事等領(lǐng)域,主要應(yīng)用有人臉識別[1]、視頻客流統(tǒng)計、疲勞狀態(tài)檢測、人群聚集度檢測、移動物體跟蹤[2]、可疑行為識別[3]等,取得了令人矚目的成果。
和諧機車上已批量安裝機車車載安全防護系統(tǒng)(6A系統(tǒng))[4]的視頻監(jiān)控設(shè)備,對機車乘務(wù)員在值乘當中標準化作業(yè)執(zhí)行不到位、精力不集中、盹睡、間斷瞭望、錯輸命令號等違章行為通過網(wǎng)絡(luò)或電話形式及時給予提醒糾偏,避免列車發(fā)生冒進信號、沖動沖撞、撞牲畜甚至撞人等事故。目前,對該裝備的視頻數(shù)據(jù)的地面分析任務(wù)采用人工瀏覽察看方式,一方面分析全部機車的視頻錄像需要配備大量且足夠的地面視頻數(shù)據(jù)分析人員和設(shè)備,分析效率低,特別對于特定事件查找的情況下,分析工作量巨大,且容易遺漏。另一方面,由于是事后做人工分析,無法對乘務(wù)員在機車運行過程中不當行為進行實時提醒。因此,基于智能視頻識別技術(shù),設(shè)計了機車司機行為識別系統(tǒng)。
機車司機行為辨識系統(tǒng)主要由攝像機、存儲設(shè)備、報警設(shè)備,以及內(nèi)置行為識別模塊的視頻智能識別板卡4部分組成,如圖1所示。行為識別模塊主要通過采集攝像頭拍攝到的機車司機室的實時監(jiān)控圖像,采用深度學(xué)習(xí)的算法,自動檢測識別出在機車運行環(huán)境下乘務(wù)員的行為,識別速度快,在服務(wù)器上能達到實時,板卡上能達到0.45 m/s的速度。
對機車司機行為進行分類,總結(jié)出6大類動作,具體定義如下:
圖1 機車司機行為識別系統(tǒng)總體框架
(1)離開座位檢測:列車駕駛員在工作時間段內(nèi),擅自離開了崗位,這種情況判斷為離崗行為。
(2)正常工作檢測:列車駕駛員在工作時間段內(nèi),按照要求一直堅守在自己的崗位,則判定為正常工作。
(3)接聽電話:列車駕駛員在工作時間段內(nèi),有接聽電話的動作時將會被識別出來。
(4)向前揮手:列車駕駛員在工作時間段內(nèi),有檢測到右手向前方示意,則判定為揮手。
(5)扒著睡覺:駕駛員在工作時間段內(nèi),檢測到有扒在駕駛操控臺上睡覺的動作時,將其檢測出來。
(6)站立:在工作時間段內(nèi),當有人在駕駛室站立或者隨意走動,算法將會檢測到并標注為站立狀態(tài)。
視頻中人體的動作識別不同于圖像的檢測與識別,動作是一連貫的子動作構(gòu)成的序列,傳統(tǒng)的圖像檢測大都不能有效的識別復(fù)雜場景中的動作。另外,視頻分析與識別技術(shù)在機車環(huán)境下的應(yīng)用與常規(guī)應(yīng)用有較大區(qū)別,機車運行中振動幅度較大,成像模糊,影響視頻畫面的穩(wěn)定、列車運行過程中光照變化比較大,影響識別的準確度、機車環(huán)境下識別對象差異較大,也會影響視頻識別的適應(yīng)性等。視頻圖像的處理同時面臨光照、遮擋、旋轉(zhuǎn)等因素的影響,導(dǎo)致傳統(tǒng)動作識別的精度并不高。近幾年,深度學(xué)習(xí)技術(shù)在圖像和語音識別等領(lǐng)域獲得巨大成功,其識別率已經(jīng)遠遠超過傳統(tǒng)識別算法,因此,本系統(tǒng)將機器學(xué)習(xí)(深度學(xué)習(xí))的相關(guān)技術(shù)應(yīng)用于機車司機行為識別當中。
本系統(tǒng)主要分為模型訓(xùn)練和行為判別兩個階段,其中,模型訓(xùn)練在歷史視頻司機行為分析系統(tǒng)完成,行為識別在實時視頻司機行為分析系統(tǒng)中完成。
基于6A歷史視頻司機行為分析系統(tǒng)主要完成數(shù)據(jù)訓(xùn)練,大量視頻數(shù)據(jù)的分析、處理,完成對6類司機行為動作的檢測,存儲盤采用8T企業(yè)監(jiān)控盤,主要完成6類結(jié)果的分類存儲。針對鐵路司機室視頻,目前在服務(wù)器上處理速度能達到110幀/s,可以對數(shù)據(jù)進行訓(xùn)練、預(yù)測并將結(jié)果保存下來。
圖2 模型訓(xùn)練流程
模型訓(xùn)練基于6A系統(tǒng)視頻監(jiān)控子系統(tǒng)的大量視頻數(shù)據(jù),通過圖像輸入、圖像標注、前向卷積網(wǎng)絡(luò)模塊、數(shù)據(jù)后處理模塊、反饋網(wǎng)絡(luò)模塊5個流程后輸出模型,每個模塊內(nèi)容及作用如下:
(1)圖像輸入:待訓(xùn)練的機車司機室內(nèi)的6類預(yù)先定義好的圖像集合,包含正常作業(yè)、打電話、向前揮手、在崗、站立、睡覺共計6類常見的機車司機行為。但該動作的定義是開放的,用戶也可以根據(jù)需要自定義動作的類別。
(2)圖像標注:該步驟主要是手動標注目標框,并保存目標矩形框的相關(guān)信息(起始位置,寬、高等)的過程,為適應(yīng)算法需要,在實際使用過程中,這些信息被預(yù)先做出相應(yīng)的處理(歸一化)并保存。
(3)前向卷積網(wǎng)絡(luò)[5]:該模塊是識別算法的核心,是當下最適合應(yīng)用于圖像識別的卷積網(wǎng)絡(luò),該模塊包含若干層卷積層和一些降采樣、非線性變換等,對訓(xùn)練圖像集進行一級一級的抽象化,最終得到一些對訓(xùn)練以外的圖像也具有一定識別能力的模型特征(以模型權(quán)重的形式存儲)。輸入圖像經(jīng)過一系列處理,代表性信息逐漸減少,也意味著經(jīng)過卷積網(wǎng)絡(luò)處理后,有價值的信息得以保存,而一些冗余的信息被摒棄,也即是圖像特征被抽象化了,大量圖像特征信息的相互作用,共同訓(xùn)練出一個魯棒的模型輸出。
(4)數(shù)據(jù)后處理:該模塊也是訓(xùn)練過程特有的一個環(huán)節(jié),主要對前向卷積網(wǎng)絡(luò)得出的結(jié)果進行一些后處理,以備下一步驟使用。
(5)反饋網(wǎng)絡(luò):該步驟起到對前向卷積網(wǎng)絡(luò)得出的權(quán)重進行調(diào)節(jié)的作用,利用梯度下降法優(yōu)化代價函數(shù),從后向前逐級調(diào)整每一層卷積網(wǎng)絡(luò)的權(quán)重值,從而使得輸出模型的泛化能力得到較大的提升。
視頻行為識別模塊作為系統(tǒng)的應(yīng)用層,內(nèi)置于ubuntu14.04操作系統(tǒng)。由于本算法需要用到深度神經(jīng)網(wǎng)絡(luò)模型,訓(xùn)練需要GPU加速,因此需要使用CUDA應(yīng)用程序。
圖像標注和前向卷積網(wǎng)絡(luò)為整個系統(tǒng)的核心,將接收到的攝像機拍攝的視頻圖像進行去除噪聲、灰度變換、幾何校正等預(yù)處理,盡量降低機車環(huán)境對于視頻分析的影響。該模塊對預(yù)處理后的圖像進行以下檢測識別:離開崗位檢測、堅守崗位檢測、接聽電話、向前揮手、睡覺檢測、站立檢測,一方面將識別后的報警信息發(fā)送至司機室的報警裝置,對司機進行提醒,同時在識別后的圖像上打上特定的標簽,并進行編碼存儲,通過標準的檢索工具,則能實現(xiàn)對已經(jīng)被記錄的特定事件的查詢。
實時視頻司機行為分析系統(tǒng)主要由攝像機前端、存儲設(shè)備(16G)、視頻智能識別板卡、報警設(shè)備等組成,攝像頭前端主要完成對司機室視頻的采集,視頻智能識別板卡內(nèi)置的行為識別模塊主要完成對常見的6類動作檢測和識別,用戶可以自定義并添加新的動作類別。存儲設(shè)備主要用來存儲已經(jīng)識別過的視頻圖像,報警設(shè)備主要完成對司機不良行為的在線提醒。通過對機車司機室視頻6大類日常行為進行在線識別,可對于機車運行過程中乘務(wù)員不符合規(guī)則的行為進行在線提醒,提高機車運用的安全性。
建立基于視頻圖像的事件檢測與行為分析系統(tǒng),檢索關(guān)心的狀態(tài)項點,可以避免大量垃圾信息干擾的麻煩。同時通過對圖像自動化的檢索,便于解脫繁重的人工工作,提高分析的效率和準確性。
圖3 行為判別流程
行為判別環(huán)節(jié)是使用訓(xùn)練環(huán)節(jié)得到的模型對圖像(視頻)進行識別的過程,正如以上模型訓(xùn)練環(huán)節(jié)提到的那樣,該環(huán)節(jié)不包含圖像標注、反饋網(wǎng)絡(luò)、數(shù)據(jù)后處理3個步驟,輸入圖像和模型直接加載到卷積網(wǎng)絡(luò),得到識別結(jié)果,圖3描述了行為識別的整體流程,其中的步驟內(nèi)容及作用如下:
(1)模型加載:模型指的是訓(xùn)練得出的各網(wǎng)絡(luò)層的權(quán)重值,共幾十萬~幾百萬個參數(shù),整個識別過程模型只需要加載一次
(2)前向卷積網(wǎng)絡(luò):和訓(xùn)練環(huán)節(jié)的前向卷積網(wǎng)絡(luò)幾乎相同,只是增加了一個Detection層,以便對識別結(jié)果進行約束,該行為識別算法雙管齊下,能同時準確地標注出物體的位置,并同時預(yù)測出物體的類別,兩者相輔相成,從而提高了檢測識別的可信度。
(3)識別結(jié)果:最終輸出結(jié)果可預(yù)測出司機動作是屬于含正常作業(yè)、打電話、向前揮手、在崗、站立、睡覺6類中的哪一類。司機動作識別目前僅限于上述6類特定的動作,只有上述6類經(jīng)過模型訓(xùn)練過的動作才能被識別。
基于智能視頻識別技術(shù)的機車司機行為辨識系統(tǒng)主要由模型訓(xùn)練和實時視頻司機行為分析兩部分組成。其中,模型訓(xùn)練基于6A系統(tǒng)視頻監(jiān)控子系統(tǒng)的大量視頻數(shù)據(jù),利用深度學(xué)習(xí)技術(shù),通過圖像輸入、圖像標注、前向卷積網(wǎng)絡(luò)模塊、數(shù)據(jù)后處理模塊、反饋網(wǎng)絡(luò)模塊5個流程后輸出模型。該系統(tǒng)大大降低視頻監(jiān)控人員的工作量,并對機車司機不安全行為及時提示,保障了機車運行安全。