楊 彪,范福成,楊吉成,蔡英鳳,王 海
(1.常州大學(xué)微電子與控制工程學(xué)院,常州 213016;2.常州大學(xué)計算機(jī)與人工智能學(xué)院,常州 213016;3.江蘇大學(xué)汽車工程研究院,鎮(zhèn)江 212013;4.江蘇大學(xué)汽車與交通工程學(xué)院,鎮(zhèn)江 212013)
伴隨社會的發(fā)展,汽車保有量不斷增加,給人們的生活與出行帶來了極大的便利。其中,無人駕駛因其穩(wěn)定、高效、可連續(xù)工作的優(yōu)點(diǎn),在軍事作戰(zhàn)、城市反恐、應(yīng)急救援、無人清掃、智慧物流等方面呈現(xiàn)出廣闊的應(yīng)用前景。以本次爆發(fā)的新冠疫情為例,利用無人駕駛車輛運(yùn)輸抗疫物資,可以有效減少人員接觸,降低疫情傳播風(fēng)險。但是,城市交通環(huán)境的復(fù)雜性給無人車的可靠運(yùn)行帶來了挑戰(zhàn)。在有人駕駛情況下,2018年全球有135萬人死于道路交通事故,其中行人與非機(jī)動車駕乘者占26%[1];美國高速公路安全管理局發(fā)布的統(tǒng)計數(shù)據(jù)顯示2018年美國的行人死亡數(shù)目為6 283人[2];我國2017年道路交通運(yùn)輸安全發(fā)展報告顯示,2016年我國有超過6萬人死于機(jī)動車交通事故,其中行人約占2成[3]??梢灶A(yù)見,未來大量運(yùn)行于城市道路環(huán)境的無人車也將面臨如何避免人車沖突這一智能交通領(lǐng)域(ITS)的重要問題。
為了避免人車沖突,研究者提出了基于物理的運(yùn)動模型[4]、基于機(jī)動的運(yùn)動模型[5]和基于交互感知的運(yùn)動模型[6]來預(yù)測人車沖突風(fēng)險。其中,準(zhǔn)確感知無人車周圍的交通環(huán)境[7]是實現(xiàn)準(zhǔn)確的人車沖突預(yù)測的關(guān)鍵?;诖四康?,研究者在無人車上加裝了超聲波雷達(dá)、激光雷達(dá)、攝像頭等傳感器,用于感知車輛周圍環(huán)境,尤其是檢測或跟蹤車輛前方的行人。Song等[8]提出一種基于注意力機(jī)制的尺度自適應(yīng)柱網(wǎng)絡(luò),用于從三維點(diǎn)云數(shù)據(jù)中準(zhǔn)確定位無人車前方的行人目標(biāo);種衍文等[9]引入四方向特征結(jié)合級聯(lián)分類器進(jìn)行粗檢測,然后使用熵梯度直方圖特征結(jié)合支持向量機(jī)進(jìn)行細(xì)檢測;Tian等[10]使用深度卷積網(wǎng)絡(luò)分別檢測行人的不同部分并進(jìn)行綜合;Mao等[11]將時變通道、深度通道等特征送入Faster?RCNN框架,增強(qiáng)了待檢測行人的區(qū)分度;劉國輝等[12]結(jié)合VGG模型與在線觀測技術(shù),實現(xiàn)了對車輛前方目標(biāo)的準(zhǔn)確跟蹤。上述方法可以有效防止人車沖突,但是,僅僅以低層面的路側(cè)行人檢測或跟蹤結(jié)果作為預(yù)測人車沖突的基礎(chǔ),會導(dǎo)致無人車的頻繁制動、降速、甚至停車,影響乘客的駕乘體驗。
近年來,隨著智能網(wǎng)聯(lián)汽車的興起,汽車在搭載先進(jìn)傳感器、控制器、執(zhí)行器的基礎(chǔ)上,融合現(xiàn)代通信和網(wǎng)絡(luò)技術(shù),實現(xiàn)人、車、路、后臺等智能信息的交換共享,有助于實現(xiàn)安全、舒適、節(jié)能、高效行駛。對于智能網(wǎng)聯(lián)汽車而言,如何利用智能化的感知技術(shù),避免人車沖突是實現(xiàn)其它功能的前提。人車沖突集中發(fā)生于車輛與過街行人之間,因此高層面的行人過街意圖引起了研究者的廣泛關(guān)注:如果能夠準(zhǔn)確識別車輛前方行人有過街意圖,則應(yīng)該控制車輛減速而防止碰撞事件發(fā)生;如果判斷行人無過街意圖,車輛可按照原速通過,既提升了無人車的駕乘體驗,也提高了行車效率。
行人的過街意圖受到多種因素的影響[13],包括交通場景、交通流量、天氣等外部因素,以及行人的性別、年齡、等待時間等內(nèi)部因素。受益于計算機(jī)視覺技術(shù)的發(fā)展,研究者通過分析路側(cè)行人的行為來預(yù)測其是否有過街意圖。針對運(yùn)動的行人,Christoph等[14]結(jié)合動態(tài)高斯系統(tǒng)與多模態(tài)交互卡爾曼濾波實現(xiàn)行人軌跡預(yù)測;Gu等[15]引入動態(tài)貝葉斯網(wǎng)絡(luò)實現(xiàn)行人軌跡預(yù)測;Lee等[16]提出一種基于深度統(tǒng)計逆最優(yōu)控制的遞歸神經(jīng)網(wǎng)絡(luò)自編碼結(jié)構(gòu)學(xué)習(xí)車輛前方行人和其他車輛的軌跡信息;Shen等[17]提出了一種基于逆強(qiáng)化學(xué)習(xí)的可遷移行人軌跡預(yù)測策略。在準(zhǔn)確預(yù)測行人軌跡的基礎(chǔ)上,可以有效估計碰撞時間,從而指導(dǎo)無人車做出規(guī)避動作。針對非運(yùn)動的行人,研究者通過識別行人的特定動作,如揮手、邁腿、凝視等,預(yù)測行人的過街意圖。為了識別特定動作,研究者往往需要事先檢測人體的骨骼點(diǎn)[18]。譬如,F(xiàn)ang等[19]利用檢測出的骨骼點(diǎn)之間的距離和角度判斷行人是否有過街意圖,Quintero等[20]在三維空間檢測人體骨骼點(diǎn),并基于骨骼點(diǎn)信息識別行人的靜止站立、起動、行走和停止動作。
相比于運(yùn)動行人的過街意圖識別,非運(yùn)動行人由于不存在顯著的運(yùn)動性,其過街意圖識別較為困難。盡管通過人體骨骼點(diǎn)檢測可以判斷行人過街前的動作,進(jìn)而預(yù)測其過街意圖。但是,受限于復(fù)雜環(huán)境、人車距離、局部遮擋等因素,較難準(zhǔn)確檢測人體骨骼點(diǎn),進(jìn)而降低了動作識別的精度。同時,行人過街意圖與其所處交通環(huán)境密切相關(guān),僅僅進(jìn)行行人檢測、跟蹤、軌跡預(yù)測與動作識別,缺乏對上下文語義信息的考慮,較難準(zhǔn)確識別行人意圖。
針對上述問題,本文中提出了一種融合場景條件因素的端到端深度神經(jīng)網(wǎng)絡(luò),實現(xiàn)了行人意圖的準(zhǔn)確識別。針對復(fù)雜情況下難以準(zhǔn)確檢測行人骨骼點(diǎn)的問題,設(shè)計了一種改進(jìn)的卷積自編碼網(wǎng)絡(luò),以生成式策略預(yù)測視頻中的行人行為,同時利用深度神經(jīng)網(wǎng)絡(luò)強(qiáng)大的表征能力學(xué)習(xí)行人未來動作編碼。同時,針對影響行人過街意圖的外部因素,如行人周圍的局部交通場景、人車距離和車速等,本文中引入了E?NET網(wǎng)絡(luò)進(jìn)行局部場景理解,引入注意力機(jī)制改進(jìn)的GRU(門限遞歸單元)編碼車速和人車距離信息,并將得到的信息與動作信息進(jìn)行融合,從而準(zhǔn)確預(yù)測行人過街意圖。
綜上,本文的主要貢獻(xiàn)可歸納為:(1)針對行人過街意圖受到主客觀因素影響的特點(diǎn),提出了一種融合場景因素的端到端深度神經(jīng)網(wǎng)絡(luò),實現(xiàn)行人意圖的準(zhǔn)確識別;(2)針對復(fù)雜環(huán)境下較難準(zhǔn)確提取行人骨骼點(diǎn)、導(dǎo)致難以識別其動作的問題,提出了一種基于先驗可學(xué)習(xí)視頻預(yù)測的動作信息編碼網(wǎng)絡(luò),在預(yù)測行人未來動作的同時實現(xiàn)未來動作編碼;(3)針對交通場景對行人過街意圖的影響,引入輕量級E?NET網(wǎng)絡(luò)實現(xiàn)行人周圍局部交通場景的實時語義理解;(4)針對車速、人車距離對行人過街意圖的影響,使用GRU進(jìn)行信息編碼,并引入注意力機(jī)制使GRU更加關(guān)注車速的突然改變。最后,在JAAD與PIE兩個公共數(shù)據(jù)集上進(jìn)行算法評價,結(jié)果表明本文算法具有較高的準(zhǔn)確性,同時,實車測試也展示了算法在變化光照條件下的魯棒性。
Kingma等提出的變分自編碼器(variational auto?encoder,VAE)[21]是一種無監(jiān)督學(xué)習(xí)模型。VAE結(jié)構(gòu)框圖如圖1所示,VAE由編碼器和解碼器組成,其基本思想是:假設(shè)輸入數(shù)據(jù)集X中的樣本相互獨(dú)立,通過編碼器生成服從正態(tài)分布的隱變量Z,然后通過解碼器重構(gòu)生成數(shù)據(jù)集X,并使X盡量接近X。編碼器和解碼器由神經(jīng)網(wǎng)絡(luò)組成,同時,引入兩個神經(jīng)網(wǎng)絡(luò)生成隱變量Z的均值μ=f1(x)和對數(shù)方差logσ2=f2(x),由于方差是非負(fù)的,而使用對數(shù)方差后可正可負(fù),運(yùn)算更加方便。編碼器得到的后驗分布函數(shù)為qΨ(z|x);解碼器得到的真實后驗分布函數(shù)為Pθ(z|x),并使用KL散度度量兩者之間的距離,通過損失函數(shù)來優(yōu)化VAE模型參數(shù),損失函數(shù)如下:
圖1 VAE結(jié)構(gòu)框圖
語義分割是計算機(jī)視覺領(lǐng)域的關(guān)鍵問題之一。對于運(yùn)行中的無人車,語義分割可以幫助其理解復(fù)雜的交通場景,并從場景中推測出軌跡規(guī)劃、避障等任務(wù)所需的知識。隨著深度學(xué)習(xí)的發(fā)展,研究者提出了諸如FCN[22]、UNET[23]和SegNet[24]等模型,取得了遠(yuǎn)超傳統(tǒng)分割算法的優(yōu)異表現(xiàn)。但是,上述模型的計算量較大,較難實時運(yùn)行。本文中引入一種輕量級卷積神經(jīng)網(wǎng)絡(luò)E?Net[25],對行人周圍的局部場景進(jìn)行語義分割,從而編碼局部交通場景信息,如圖2所示。
如圖2(a)所示,E?Net網(wǎng)絡(luò)包括6種模塊,分別是初始化模塊和5種瓶頸模塊。初始化模塊的網(wǎng)絡(luò)結(jié)構(gòu)如圖2(b)所示,圖2(c)所示為常規(guī)、下采樣、上采樣、膨脹、非對稱5種瓶頸模塊的網(wǎng)絡(luò)結(jié)構(gòu)。通過不同種類瓶頸模塊的配合,實現(xiàn)了對圖像全局信息的編解碼,進(jìn)而實現(xiàn)對交通場景的語義理解。
圖2 E?Net結(jié)構(gòu)框圖
門限循環(huán)單元(gated recurrent unit,GRU)[26](見圖3)是循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)[27]的一種變體,相比于長短時記憶網(wǎng)絡(luò)(long?short term memory,LSTM)[28],GRU可以在更少計算量的前提下獲得更好的表現(xiàn)。
圖3 GRU單元結(jié)構(gòu)
如圖3所示,每個GRU由控制信息傳輸?shù)母麻T和重置門組成。其中,t為時間步長,t時刻下更新門接收當(dāng)前輸入向量和前一時間步的單元狀態(tài),通過激活函數(shù)處理,幫助GRU控制當(dāng)前狀態(tài)需要從前一時間步狀態(tài)中保留的信息量以及從候選狀態(tài)中接受的信息量。重置門和更新門的處理類似,用于控制候選狀態(tài)對前一時間步狀態(tài)的依賴,使GRU能夠自適應(yīng)地忘記或重置當(dāng)前的信息。因此,GRU能夠有效地捕捉輸入序列的長期和短期的依賴關(guān)系,更適用于解決動態(tài)識別任務(wù)。假設(shè)GRU網(wǎng)絡(luò)的輸入量為X=(x1,x2,...,xn),其中各變量的關(guān)系如下:
式中:x t表示當(dāng)前時刻的輸入;W rx、W zx、W hx、W rh、W zh和W hh為可學(xué)習(xí)權(quán)重矩陣;r t和z t分別表示重置門和更新門權(quán)重;h t-1和h t分別表示前一時刻和當(dāng)前時刻的隱藏層狀態(tài);ht表示當(dāng)前時刻新的記憶;σ為sigmoid(·)函數(shù),tanh(·)為雙曲正切激活函數(shù);b r、b z和b h分別表示重置門、更新門和新記憶中的偏差項。
注意力機(jī)制(attention mechanism)借鑒了人類視覺方面的選擇性注意特點(diǎn),即人類快速地掃描全局圖像,可以獲得需要重點(diǎn)關(guān)注的目標(biāo)區(qū)域,進(jìn)而從該區(qū)域獲得目標(biāo)細(xì)節(jié)信息,抑制無用信息。針對序列數(shù)據(jù),注意力機(jī)制可以為序列特征分配不同的權(quán)重,并通過概率分配的方式自動提高模型對重要特征的關(guān)注程度,從而在不增加計算與儲存成本的前提下,增加對序列數(shù)據(jù)處理的準(zhǔn)確性。
本文中需要處理車輛速度與人車距離,將注意力機(jī)制引入GRU模塊構(gòu)成AGRU(attention?GRU),可以突出車輛加減速以及人車距離突然變短等關(guān)鍵信息,改善行人過街意圖識別結(jié)果。圖4為AGRU的結(jié)構(gòu),其中,t表示從1到n的時刻信息,x t表示GRU模塊的輸入,h t對應(yīng)t時刻AGRU模塊的隱藏層輸出,αt表示通過注意力機(jī)制計算得到的關(guān)于時序特征的注意力概率分布,y表示AGRU的輸出,由各時刻特征加權(quán)得到。
圖4 AGRU結(jié)構(gòu)圖
αt與y的計算公式如下:
式中:W w和b w為tanh(·)的可學(xué)習(xí)參數(shù)與偏置;W A為AGRU的可學(xué)習(xí)參數(shù)。
本文中致力于識別行人過街意圖,即判斷在路側(cè)等待的行人是否有穿越馬路的意圖,進(jìn)而幫助車輛更好地理解交通場景。圖5為本文中提出的多源信息融合識別網(wǎng)絡(luò)(multi?source information fu?sion based recognition network,MIFRN)。MIFRN通過綜合考慮行人動作、周圍局部交通場景、車輛速度和人車距離,來解決行人穿越/不穿越這個分類問題。首先,引入YOLOv4[29]進(jìn)行行人檢測,并通過Yamaguchi[30]等提出的單目相機(jī)自運(yùn)動估計算法進(jìn)行自運(yùn)動補(bǔ)償,并將20幀內(nèi)沒有發(fā)生明顯位移的行人目標(biāo)作為感興趣目標(biāo),即路側(cè)等待的行人。然后,將感興趣目標(biāo)送入MIFRN,并擴(kuò)展其最小外接矩形(如圖5紅色矩形框所示),得到周圍局部交通場景(如圖5黃色矩形框所示),同時將車速和人車距離(車輛近似位于圖像底部中點(diǎn))送入MIFRN。具體擴(kuò)展方法是保證紅、黃矩形框中心對齊的前提下,將紅色矩形框的寬度和高度分別按照經(jīng)驗值擴(kuò)大5倍和2倍。MIFRN包含3個主要模塊:①基于E?NET的輕量級場景語義理解網(wǎng)絡(luò),用于編碼局部交通場景;②基于先驗可學(xué)習(xí)視頻預(yù)測的動作信息編碼網(wǎng)絡(luò),用于編碼行人未來動作信息;③基于注意力機(jī)制加權(quán)的GRU時序數(shù)據(jù)處理網(wǎng)絡(luò),用于編碼車輛速度和人車距離。最后,引入雙向GRU進(jìn)行信息的深度融合,并將融合結(jié)果送入多層感知機(jī)以獲取行人穿越/非穿越概率。下面將分別介紹MIFRN的主要模塊。
圖5 多源信息融合識別網(wǎng)絡(luò)MIFRN整體框圖
行人穿越馬路前,往往伴隨邁步、揮手、注視來車等動作。當(dāng)車輛駕駛員捕捉到這些行為,就可以提前減速讓行,避免人車碰撞。因此,準(zhǔn)確理解路側(cè)行人的動作,對于識別其過街意圖至關(guān)重要。前期研究集中于檢測行人的骨骼點(diǎn),進(jìn)而設(shè)計不同的動作模式。但是,拍攝距離、角度與光照、環(huán)境等因素可能導(dǎo)致無法準(zhǔn)確檢測行人骨骼點(diǎn),進(jìn)而較難準(zhǔn)確理解其行為。
本文中引入深度神經(jīng)網(wǎng)絡(luò)編碼行人動作信息,基于多任務(wù)學(xué)習(xí)范式,提出了一種基于先驗可學(xué)習(xí)視頻預(yù)測的動作信息編碼網(wǎng)絡(luò),即通過訓(xùn)練生成式模型預(yù)測行人未來動作,并從中編碼未來動作信息。為了更好地生成行人未來動作,會迫使網(wǎng)絡(luò)更加關(guān)注行人動作線索,從而提高了未來動作編碼的準(zhǔn)確性。
圖6所示為動作信息編碼網(wǎng)絡(luò)結(jié)構(gòu)。在獲得視頻當(dāng)前幀Xt的前提下,網(wǎng)絡(luò)可預(yù)測視頻下一幀Xt+1。本文中采用3個相互獨(dú)立的VGG16網(wǎng)絡(luò)作為編碼器,為了加速收斂,利用ImageNet對網(wǎng)絡(luò)進(jìn)行了預(yù)訓(xùn)練??紤]到動作的時序性,引入GRU模塊挖掘動作編碼的時域關(guān)聯(lián)。在訓(xùn)練階段,引入視頻下一幀的真實值Xt+1作為監(jiān)督信息。圖中,GRU2從Xt中預(yù)測隱變量Z,GRU1從Xt+1中預(yù)測隱變量中包含真實值Xt+1的信息。通過最小化Z和之間的KL損失,可以迫使GRU2學(xué)習(xí)如何從Xt中預(yù)測包含真實值Xt+1信息的隱變量Z。在解碼階段,將Z與編碼器3的輸出拼接后,送入GRU3進(jìn)行時序處理,并將處理后的結(jié)果送入解碼器,解碼器輸出t時刻的預(yù)測值,Xt+1與之間的重構(gòu)誤差可用于評價網(wǎng)絡(luò)預(yù)測的準(zhǔn)確性。解碼器由編碼器中VGG16網(wǎng)絡(luò)的鏡像翻轉(zhuǎn)構(gòu)成,并將下采樣池化模塊替換為上采樣膨脹卷積模塊。所有的GRU采用單層結(jié)構(gòu),隱含層神經(jīng)元個數(shù)為64。本文將GRU3的輸出結(jié)果作為t時刻的行人未來動作編碼Ψt,相比于對當(dāng)前動作編碼,對未來動作的編碼能夠更好地反映行人意圖。
圖6 基于先驗可學(xué)習(xí)視頻預(yù)測的動作信息編碼網(wǎng)絡(luò)結(jié)構(gòu)
行人穿越行為通常發(fā)生在有交通信號燈、斑馬線和行人指示標(biāo)志的路口,準(zhǔn)確理解行人周圍的局部交通場景,對于判斷其是否會穿越有較大幫助?;谏疃葘W(xué)習(xí)在語義分割領(lǐng)域的成功,本文中引入輕量級的E?NET網(wǎng)絡(luò)實現(xiàn)場景理解。為了加速擬合,在KITTI語義分割數(shù)據(jù)集上對E?NET網(wǎng)絡(luò)進(jìn)行了預(yù)訓(xùn)練。訓(xùn)練后的E?NET網(wǎng)絡(luò)在下采樣過程中可以獲取局部交通場景的深度編碼,這種編碼盡管丟失了部分場景細(xì)節(jié)信息,但是能夠保留局部交通場景的道路、建筑物、樹木等主要語義信息,從而保證MIFRN能夠更好地理解行人所處的局部交通環(huán)境。E?NET網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,由于本文中只需要編碼局部交通場景,因此僅保留E?NET網(wǎng)絡(luò)的前4個模塊,刪除了上采樣模塊。假設(shè)t時刻輸入的局部交通場景為St,則對St的編碼如下:
式中:f(·)表示預(yù)訓(xùn)練后的部分E?NET網(wǎng)絡(luò);Ws表示網(wǎng)絡(luò)的可學(xué)習(xí)參數(shù)。
當(dāng)來車速度過高、或者人車距離過近時,行人往往會放棄穿越,轉(zhuǎn)而等待車輛通過。因此,準(zhǔn)確編碼車速和人車距離可以提高行人過街意圖識別的準(zhǔn)確性。本文中引入GRU模塊高效地編碼車速與人車距離。同時,考慮到極端情況(如車輛突然加速、人車距離突然縮短等)對行人過街意圖的影響較大,本文中引入注意力機(jī)制,設(shè)計了基于注意力機(jī)制加權(quán)的AGRU,分別對車速和人車距離進(jìn)行編碼。假設(shè)車 速 和 人 車 距 離 序 列 分 別 是V t={v1,v2,...,vt}和D t={d1,d2,...,d t},則車速和人車距離在t時刻的編碼結(jié)果分別為
式中:AGRUV(·)和AGRUD(·)表示兩個獨(dú)立的GRU時序數(shù)據(jù)處理網(wǎng)絡(luò);W V和W D分別是AGRUV(·)和AGRUD(·)的可學(xué)習(xí)參數(shù)。
對于t時刻行人運(yùn)動信息編碼Ψt、場景語義編碼φt、車速與人車距離編碼ΦVt與ΦDt,常用融合方法是直接拼接。但是,直接拼接較難獲取不同編碼信息之間的深層關(guān)聯(lián)。本文中引入基于雙向GRU的信息融合模塊,將4種編碼組合成序列I t=[Ψt,φt,ΦVt,ΦDt],并將I t送入雙向GRU,雙向GRU的輸出作為融合結(jié)果:
式中:BiGRU(·)表示雙向GRU網(wǎng)絡(luò);W Bi表示網(wǎng)絡(luò)的可學(xué)習(xí)參數(shù);O t表示t時刻的融合編碼向量,維度為64。這種融合方式有利于挖掘不同編碼信息的深度關(guān)聯(lián),從而提高行人意圖識別的準(zhǔn)確性。
為了從O t中推測行人過街意圖,本文中引入了多層感知機(jī),感知機(jī)中每層的神經(jīng)元個數(shù)分別為64、32、16和2。最后,將輸出通過Softmax函數(shù)歸一化,得到行人穿越/非穿越的概率。
本文中采用多任務(wù)學(xué)習(xí)范式,網(wǎng)絡(luò)在識別行人意圖同時,可以預(yù)測行人的未來動作??偟膿p失函數(shù)包括:(1)分類損失Lc;(2)重構(gòu)損失LG;(3)KL損失LKL。
(1)分類損失Lc:本文中將行人過街意圖識別當(dāng)做分類問題處理,考慮到行人個體的差異,識別有難有易。因此,引入了焦點(diǎn)損失函數(shù)(focal loss)代替二值交叉熵?fù)p失函數(shù),Lc定義如下:
式中:Yi表示樣本i的真實標(biāo)簽,0表示負(fù)樣本,1表示正樣本;Pi表示網(wǎng)絡(luò)輸出的行人過街意圖的預(yù)測概率。超參數(shù)α用于控制正負(fù)樣本的比例,按經(jīng)驗值設(shè)為0.5;超參數(shù)γ用于緩解難易樣本問題,按文獻(xiàn)[21]設(shè)為2。
(2)重構(gòu)損失LG:該損失用于衡量動作預(yù)測與真實結(jié)果的差異,本文中采用L2損失作為重構(gòu)損失LG,定義如下:
式中:Xt為t時刻的真實值為t時刻網(wǎng)絡(luò)的輸出值。
(3)KL損失LKL:該損失用于衡量動作信息編碼網(wǎng)絡(luò)訓(xùn)練階段中潛變量Z與Z之間的分布差異,通過降低該損失,可以使分布Z與Z接近。本文中引入KL散度來計算LKL,定義如下:
在得到上述3個損失函數(shù)的前提下,總的損失函數(shù)如下:
式中權(quán)衡參數(shù)κ與β通過交叉驗證分別設(shè)置為0.1與0.5。
(1)JAAD[31]。JAAD數(shù)據(jù)集常用于研究交通參與者的行為。該數(shù)據(jù)集包括346段5-15 s的高分辨率視頻片段,每個片段中都包含城市環(huán)境下的不同駕駛場景。數(shù)據(jù)集中提供了行人的標(biāo)注信息,標(biāo)注的行人類型包括:沿路側(cè)行走的行人、路側(cè)等待的行人、正在穿越馬路的行人等??紤]到識別行人過街意圖的目的,從JAAD數(shù)據(jù)集中選取了158個穿越行人樣本和79個非穿越行人樣本。
(2)PIE[32]。PIE數(shù)據(jù)集常用于研究行人意圖,其規(guī)模大于JAAD數(shù)據(jù)集。PIE使用車輛在不同街道結(jié)構(gòu)、不同群體密度地區(qū)采集了1 842段位于路側(cè)的行人數(shù)據(jù)。所有數(shù)據(jù)都采于白天、能見度高的場合,因此可以較好地分析行人行為??紤]到識別行人過街意圖的目的,從PIE數(shù)據(jù)集中選取了516個穿越行人樣本和852個非穿越行人樣本。
JAAD和PIE數(shù)據(jù)集提供了分析行人過街意圖的樣本,但是,仍然存在兩個問題:(1)樣本量偏少,盡管PIE數(shù)據(jù)集的1 368個樣本遠(yuǎn)大于JAAD數(shù)據(jù)集的237個樣本,但仍然無法滿足深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練的需要;(2)正負(fù)樣本不均衡,JAAD數(shù)據(jù)集中穿越行人與非穿越行人樣本的比例約為2∶1,PIE數(shù)據(jù)集中這個比例約為1∶1.6。
為了緩減這兩個問題,本文中引入了時域數(shù)據(jù)增益,步驟如下。
(1)對于穿越行人樣本,以其開始穿越時刻(開始邁腿或擺手的瞬間)為界,向前、后各取12、11幀,總計獲得24幀數(shù)據(jù)。
(2)對任意24幀數(shù)據(jù)進(jìn)行時域增益,即以2幀為間隔在時域上連續(xù)采樣長度為16幀的序列,最后可獲得1-16、3-18、5-20、7-22、9-24共5個序列,且每個序列中都包含開始穿越時刻(即第13幀)。數(shù)據(jù)增益后,可分別從JAAD和PIE數(shù)據(jù)集中提取出790和2 580個穿越行人樣本。
(3)對于非穿越行人樣本,考慮正負(fù)樣本間的均衡,以行人可以清晰觀測為準(zhǔn),從JAAD數(shù)據(jù)集中的每個非穿越行人序列中連續(xù)采集34幀數(shù)據(jù),從PIE數(shù)據(jù)集中連續(xù)采集20幀數(shù)據(jù),并分別以2幀為間隔在時域上進(jìn)行增益。最后,可分別從JAAD和PIE數(shù)據(jù)集中提取出790和2 556個非穿越行人樣本。
(4)對于增益后的JAAD與PIE數(shù)據(jù)集中的穿越/非穿越行人樣本,以5-折交叉驗證的方式確定訓(xùn)練集與測試集,并采用正確率Acc(Accuracy)指標(biāo)進(jìn)行評價,Acc計算公式如下:
式中:P和N分別表示總的穿越樣本與非穿越樣本數(shù)目;TP和TN分別表示正確識別的穿越樣本與非穿越樣本數(shù)目。
本文中所采用的實驗平臺搭載了兩塊英偉達(dá)1080ti顯卡和一塊英特爾I9 CPU,實驗環(huán)境為Ubuntu系統(tǒng)、Pytorch框架。行人動作序列的尺寸為128×128像素,局部交通場景的尺寸為320×320像素。本文中使用Adam優(yōu)化器訓(xùn)練網(wǎng)絡(luò),總的訓(xùn)練批次數(shù)目為300,初始學(xué)習(xí)率設(shè)置為0.01,并每隔100批次將學(xué)習(xí)率除以10。
本文工作的貢獻(xiàn)之一是提出一種多源信息融合識別網(wǎng)絡(luò)MIFRN識別行人過街意圖,除了從行人動作中識別其穿越意圖,MIFRN還能夠融合行人周圍的局部交通場景、車速、人車距離等線索,做出綜合決策。為了評價網(wǎng)絡(luò)中不同信息的作用,本文中分別在JAAD與PIE數(shù)據(jù)集上進(jìn)行了銷蝕實驗,結(jié)果如表1所示。從表中不難看出,行人動作中包含其是否準(zhǔn)備穿越的主要信息,局部交通場景信息可以作為行人動作的重要補(bǔ)充,車速、人車距離也能夠在一定程度上提高行人過街意圖識別的準(zhǔn)確性。
表1 MIFRN網(wǎng)絡(luò)銷蝕實驗
行人過街意圖識別是智能交通系統(tǒng)與無人駕駛領(lǐng)域的熱點(diǎn)話題之一。但是,大量研究通過分析行人的歷史軌跡判斷其是否有過街意圖,忽略了行人的外表與動作。本文中著眼于識別行人開始穿越的動作,結(jié)合交通場景、車速、人車距離,準(zhǔn)確識別行人過街意圖。為了展示本文方法的有效性,選取了如下方法進(jìn)行對比:
(1)文獻(xiàn)[33]中提出的一種基于AlexNet網(wǎng)絡(luò)的行人過街意圖識別方法;
(2)文獻(xiàn)[34]中提出的一種雙通道卷積神經(jīng)網(wǎng)絡(luò)識別行人過街意圖的方法;
(3)文獻(xiàn)[19]中基于人體骨骼點(diǎn)檢測結(jié)果識別行人動作,進(jìn)而判斷其過街意圖的方法;
(4)文獻(xiàn)[35]中引入圖卷積神經(jīng)網(wǎng)絡(luò)處理人體骨骼點(diǎn)之間的關(guān)聯(lián),提高了行人動作識別的準(zhǔn)確性,進(jìn)而能夠更好地識別行人過街意圖的方法;
(5)文獻(xiàn)[36]中提出的一種基于時空關(guān)聯(lián)推理的方法,通過圖模型建模行人與車輛的關(guān)系,從而識別行人過街意圖。
本文中在JAAD和PIE數(shù)據(jù)集上以相同設(shè)置對比了算法性能,用于比較的算法采用了相應(yīng)工作中的默認(rèn)設(shè)置。表2和表3分別給出了本文算法與主流算法在JAAD和PIE數(shù)據(jù)集上的比較結(jié)果。從表中不難看出,基于骨骼點(diǎn)的行人意圖識別算法性能優(yōu)于早期的AlexNet網(wǎng)絡(luò)和雙通道卷積神經(jīng)網(wǎng)絡(luò),弱于近期提出的基于時空性關(guān)聯(lián)推理的方法[36]。本文算法由于引入了行人未來動作信息編碼,同時綜合考慮了局部交通場景、車速和人車距離,在兩個數(shù)據(jù)集上都取得了最優(yōu)的效果。
表2 與主流算法在JAAD數(shù)據(jù)集上算法性能比較
表3 與主流算法在PIE數(shù)據(jù)集上算法性能比較
本文中提出了一種基于視頻預(yù)測的動作信息編碼網(wǎng)絡(luò),在預(yù)測行人未來動作的同時,生成其未來動作編碼,該編碼中包含了行人的過街意圖。因此,行人未來動作生成的優(yōu)劣決定了編碼是否準(zhǔn)確,進(jìn)而關(guān)系到能否準(zhǔn)確識別其過街意圖。圖7和圖8展示了JAAD和PIE數(shù)據(jù)集中一些行人樣本的未來動作生成示例。圖中藍(lán)色方框表示觀測的10幀動作序列,紅色方框表示生成的10幀未來動作。由于行人未來動作的不確定性隨著觀測時間的推移而增加,因此紅框中后端圖像的生成質(zhì)量劣于前端圖像。對于圖7和圖8中,(a)、(b)為未穿越行人樣本,(c)、(d)為穿越行人樣本。不難看出,本文算法能夠描述行人的未來動作,如果行人沒有穿越馬路,則生成數(shù)據(jù)中不包含明顯的抬腿、揮手等動作;反之,生成數(shù)據(jù)中通常包含腿部動作,揭示了行人即將穿越。
圖7 JAAD數(shù)據(jù)集行人未來動作生成示例
圖8 PIE數(shù)據(jù)集行人未來動作生成示例
利用圖像信息識別行人過街意圖的主流方法是檢測行人骨骼點(diǎn),在此基礎(chǔ)上識別行人動作,進(jìn)而判斷其是否準(zhǔn)備過街[19]。但是,骨骼點(diǎn)檢測對行人圖像的清晰度有一定要求。在實際交通場景下,人車距離、遮擋、光線、行人穿著等因素都會對骨骼點(diǎn)檢測產(chǎn)生影響,導(dǎo)致誤檢或漏檢。圖9和圖10分別給出了JAAD和PIE數(shù)據(jù)集中骨骼點(diǎn)檢測失敗的例子。對于任意子圖,上一行表示行人觀測序列,下一行表示骨骼點(diǎn)檢測結(jié)果。圖9(a)和圖9(b)中由于行人的姿態(tài)、穿著等因素,無法準(zhǔn)確檢測其骨骼點(diǎn),進(jìn)而無法利用骨骼點(diǎn)信息判斷行人是否準(zhǔn)備過街。使用本文方法,在僅使用行人未來動作編碼的前提下,得到圖9(a)和圖9(b)中行人不穿越、穿越的概率分別為0.788和0.836。圖10(a)和圖10(b)中部分幀可以檢測到完整的行人骨骼點(diǎn),但是其它幀存在誤檢、漏檢,導(dǎo)致較難識別行人過街意圖。僅使用本文中提出的未來動作編碼,得到圖10(a)和圖10(b)中行人不穿越、穿越的概率分別為0.822和0.858。由此可見,本文方法能夠在復(fù)雜交通場景下魯棒地識別行人動作信息,進(jìn)而結(jié)合場景條件,更好地識別行人是否具有過街意圖。
圖9 JAAD數(shù)據(jù)集行人骨骼點(diǎn)檢測失敗案例
圖10 PIE數(shù)據(jù)集行人骨骼點(diǎn)檢測失敗案例
為了驗證所提算法的有效性,本文中將JAAD與PIE數(shù)據(jù)集進(jìn)行了整合,在整合后的數(shù)據(jù)集上訓(xùn)練模型,并進(jìn)行了實車實驗。圖11為實車實驗平臺“江大智能行”號無人駕駛汽車,該平臺集成了智能車感知、地圖、規(guī)劃決策、控制等無人駕駛的基本功能,使用了基于CORS差分技術(shù)的GPS與IMU結(jié)合的定位系統(tǒng),并具有由一臺velodyne 64線激光雷達(dá)、兩臺ibeo4線激光雷達(dá)、一臺Delphi毫米波雷達(dá)、一臺SICK單線激光雷達(dá)和兩臺Gige融合工業(yè)相機(jī)構(gòu)成的智能感知系統(tǒng),其數(shù)據(jù)處理功能由研華ARK-3 500工控機(jī)完成。本次實車實驗主要利用了“江大智能行”號的圖像采集能力與數(shù)據(jù)計算能力,實驗全程由駕駛員進(jìn)行操作。圖12為兩臺Gige融合工業(yè)相機(jī)安裝效果圖。
圖11 “江大智能行”號無人駕駛汽車
圖12 車載工業(yè)相機(jī)安裝效果圖
圖13為本文算法的實車測試結(jié)果,其中,上、下圖分別展示了3個穿越、非穿越行人樣本。MIFRN在輸出行人穿越、非穿越概率前使用了Softmax激活層進(jìn)行標(biāo)準(zhǔn)化處理,因此對于每個樣本,其穿越概率與不穿越概率之和為1。為了更清晰地展示行人是否穿越,圖13以紅色矩形框標(biāo)記穿越行人,以綠色矩形框標(biāo)記非穿越行人,并在矩形框頂端附注可能性較大的行為對應(yīng)的概率值(與矩形框同色)。
圖13 實車測試結(jié)果
從圖中可見,當(dāng)檢測到行人周圍有紅綠燈、斑馬線等交通標(biāo)識,且行人未來動作中存在抬腿、揮手等可能時,行人有較大的概率穿越;當(dāng)行人沒有任何穿越動作的前兆,且場景中無任何交通標(biāo)識的情況下,行人有較大概率等待車輛通過。從結(jié)果中不難看出,本文算法可以在較大范圍光照變化下比較準(zhǔn)確地檢測行人是否有穿越意圖,且對行人的模糊外表有一定魯棒性,克服了基于骨骼點(diǎn)的行人穿越意圖判別中較難準(zhǔn)確提出骨骼點(diǎn)信息的不足。
本文提出了一種多源信息融合識別網(wǎng)絡(luò)MIFRN用于識別行人過街意圖。MIFRN包含一種基于先驗可學(xué)習(xí)視頻預(yù)測的動作信息編碼網(wǎng)絡(luò),可以在預(yù)測行人未來動作的同時,生成其未來動作信息的編碼,克服了惡劣環(huán)境下無法準(zhǔn)確檢測行人骨骼點(diǎn)的弊端,更加魯棒地理解行人行為。為了進(jìn)一步提高行人過街意圖的識別準(zhǔn)確率,MIFRN引入輕量級的E?NET網(wǎng)絡(luò)編碼行人周圍的局部交通場景,引入注意力加權(quán)的GRU模塊編碼車速和人車距離,并引入雙向GRU多源信息的深度融合。相比于其它主流算法,MIFRN在JAAD和PIE數(shù)據(jù)集上都取得了最佳性能,在實車實驗中也表現(xiàn)出不俗性能。
本文中提出的MIFRN可用于無人駕駛領(lǐng)域的復(fù)雜場景感知,通過感知路側(cè)行人的過街意圖,可以更好地規(guī)劃無人車的未來運(yùn)行軌跡。同時,MIFRN也可用于有人駕駛車輛的ADAS系統(tǒng),從而為行人防碰撞提供更好的決策依據(jù)。盡管MIFRN在公共數(shù)據(jù)集上取得了較好表現(xiàn),但仍存在以下問題:(1)計算開銷大,MIFRN需要利用YoloV4進(jìn)行目標(biāo)檢測,然后同時編碼行人未來動作、局部交通場景、車速和人車距離,所需要的計算資源較大,較難應(yīng)用于智能邊緣設(shè)備;(2)MIFRN主要依賴路側(cè)行人的動作信息識別其過街意圖,對于無征兆的行人突然穿越,識別表現(xiàn)較差。因此,后續(xù)工作將主要集中在:(1)通過壓縮、精簡模型,改善算法的實時性能,從而滿足智能邊緣設(shè)備的算力需求;(2)深入研究行人過街意圖和人車沖突決策的內(nèi)在機(jī)理,從而在機(jī)理上更好地避免人車沖突。