沈江霖, 魏 丹, 王子陽
(上海工程技術大學機械與汽車工程學院, 上海 201620)
在無人駕駛中,通過對行人下一步動作的預測可以提前完成汽車加速或者減速的決策,同時可以減小事故發生的概率[1]。如果不能準確的預測行人的下一步動作,人車系統安全將無從談起。CHEN等[2]提出了一種用于動作預測的循環語義保留生成方法,開發了一個生成體系結構補充骨架序列用于預測動作,該方法未考慮行人部位遮擋及背景干擾問題。LI等[3]研究了基于骨架數據的動作預測,提出了一種基于對抗學習的自適應圖卷積網絡,學習局部序列中潛在的全局信息,該網絡對行人姿態變化和外觀差異等因素不具有魯棒性。針對上述問題,本文提出一種新的基于網格劃分骨骼的行為預測方法,通過對行人進行網格劃分并提取相應關節點的行為特征,對比前后幀的行為特征,進而判斷行人的運動方向及運動速度。
基于網格劃分骨骼的行為預測方法主要分為兩個部分:行人網格劃分和行人骨骼行為特征提取。具體來說,就是將行人進行網格劃分和對行人骨骼進行估計,提取出網格特征、關節點角度及骨骼特征,將三者結合形成行人的行為動作特征,通過前后幀的對比,計算下一幀行人動作發生的概率。基于網格劃分骨骼的行為預測方法的流程如圖1所示。
圖1 基于網格劃分骨骼的行為預測方法的流程圖Fig.1 Flow chart of action prediction method based on grid partition of skeleton
給定一個測試視頻,初始化其定位算法,在單幀中使用自下而上的骨骼估計,并使用之前幀的多個時空約束細化位姿。本文將測試視頻幀進行密集網格劃分,利用每個劃分網格內計算的特征,學習1個基于劃分網格的外觀模型,該模型通過訓練1個在每個位姿邊界框內的網格特征作為前景,其余劃分的網格特征作為背景的判別分類器,區分前景和背景。同時,由于骨骼關節點角度和前一幀骨骼關節點角度是一致的,基于此可以計算當前時間步長姿態假設的條件概率。將每個時間步長的概率結果結合后,通過在關節點位置、行人外觀及姿勢比例上施加一致性改進姿勢。
一旦在當前的時間步長中估計并改進了姿勢,就會更新基于網格特征的外觀模型,以避免出現視覺漂移。因此,骨骼估計不但提供了初始化具有判別力的外觀模型,而且可以包含任何行人全身或多個關節點的交互或執行操作。
本文采取文獻[4]中介紹的自下而上的方法進行行人骨架估計,行人骨架估計結果如圖2左部分和圖3左部分所示。行人骨架估計完成后,本文將骨架特征單獨提取出來,如圖2右部分和圖3右部分所示,并規定了8個關節點作為行為角度特征的基點,分別為左右肘關節點(A,a,C,c)、左右手關節點(B,b,D,d)、左右膝關節點(E,e,I,i)、左右腳關節點(F,f,J,j)。本文通過網格劃分得到的網格中心o作為二維坐標系的原點,以o為原點學習8個關節點到原點的距離度量特征和角度度量特征。通過與前一幀的距離度量特征和角度度量特征進行對比,判斷各個關節點的變化趨勢。
圖2 前一幀行人骨骼估計及其角度特征Fig.2 Pedestrian skeleton estimation and its angle characteristics in the previous frame
圖3 后一幀行人骨骼估計及其角度特征Fig.3 Post-frame pedestrian skeleton estimation and its angular characteristics
當行人行走時,o點與頭部、肩部和胯部相應關節點的距離度量和角度度量變化不大,不能體現行人的姿態變化,更無法通過o點與頭部、肩部和胯部相應關節點的距離度量和角度度量預測行人下一幀的動作變化。與頭部、肩部和胯部相應的關節點不同的是,行人行走時的左右肘關節點、左右手關節點、左右膝關節點、左右腳關節點與o點的距離度量和角度度量變化幅度很大;而且行人行走時,手臂的擺幅、跨步的距離都是行人行走習慣的表現,通過對左右肘關節點、左右手關節點、左右膝關節點、左右腳關節點與o點的距離度量和角度度量的學習,可以得到行人的行走習慣,從而判斷下一幀行人的動作變化。
不同幀捕捉到行人的左右肘關節點、左右手關節點、左右膝關節點和左右腳關節點的距離度量特征和角度度量特征不同,通過對比前后幀的距離度量特征和角度度量特征計算出下一幀關節點的運動類型發生概率。本文利用公式(1)計算出關節點的距離度量特征doi:
doi=xTMx
(1)
本文定義的行為特征包括距離度量特征和角度度量特征,由于關節點與原點o的角度不易計算,因此本文利用關節點角度的正弦值表示關節點的角度。本文利用公式(2)計算角度度量特征θi:
(2)
行人行為特征的距離度量特征doi和角度度量特征θi都是基于相同關節點計算得出,兩者具有相關性。本文利用公式(3)計算出兩者的關聯度τi:
(3)
其中,ρ為分辨系數,一般ρ=0.5。通過關聯度τi將兩個特征關聯后得到行人的行為特征Ti,行為特征Ti可以用公式(4)表示:
Ti=sinθi+τidoi
(4)
計算出行人行為特征后,利用公式(5)計算下一幀該關節點的運動特征出現概率:
(5)
利用上述公式計算出8個關節點下一幀運動類型的概率,然后結合8個關節點下一幀的運動類型判斷下一幀行人動作。為了更準確地判斷行人運動,本文將行人劃分為無數密集網格,結果如圖4所示,通過提取劃分網格的特征,對比前后幀的8個關節點的網格特征變化,判斷行人前進或者后退,以及行動加速、勻速或者減速。以上判斷都是基于MATLAB代碼實現的。
在3個行為動作預測數據集sub-JHMDB、UCF-Sports和MSR-II上對本文所提方法進行驗證。
sub-JHMDB數據集[5]的每幀都可以看到所有人體關節,共包含316個視頻、12個動作類。考慮到行人關節的復雜變化,每一幀行人的識別和定位變得極具挑戰性,故在JHMDB數據集基礎上,使用sub-JHMDB數據集。
UCF-Sports數據集[6-7]包含150個視頻和10個動作類。使用文獻[8]提出的方法對本文所提方法進行評估。
MSR-II數據集[9]包含54個未修剪的視頻和3個動作類。本文采用跨數據集估值,并使用KTH數據集對MSR-II數據集進行訓練和測試。在數據集iDTFs使用大小為K=1 000的碼數訓練支持向量機。本文使用精確回憶曲線和最先進的離線方法進行定量比較,同時為了與其他數據集保持一致,本文也使用受試者工作特征曲線(Receiver Operating Characteristic, ROC)和ROC曲線下面區域的面積(Area Under Curve, AUC)報告結果。
受早期行為識別和預測的啟發,本文將行為和交互的觀察比值作為性能量化指標。該評價指標以不同的觀測視頻/動作比值(0,0.1,0.2,…,1)采樣,進行視頻的定位和預測。預測任務的準確性類似于分類和識別,對于未修剪的視頻,預測精度的評估難度較大。為此,首先將預測結果作為觀測比值函數的真實視頻行動,該操作相當于修剪情況。其次使用動作/交互的平均持續時間,通過在每個視頻中每5幀滑動一個窗口提取時間上重疊的剪輯,其中,一些包含真實動作,另一些則代表未修剪視頻的背景部分。最后將計算預測精度作為函數的觀測比值。這種方法可以捕捉誤報,并為未修剪的視頻提供更全面的評估。
在實驗部分,本文以連續3幀為例,通過學習前兩幀的行為特征估計下一幀的8個關節點的運動類型發生的概率,根據8個關節點運動類型的加權后得到行人下一幀的運動類型。
通過上述方法可以計算出8個關節點的運動類型發生的概率,結果如表1所示。從表1中可以推測出,行人的左臂在下一幀向上運動,行人的右臂在下一幀向下運動,行人的左腿在下一幀向下運動,行人的右腿在下一幀向上運動。根據劃分網格特征判斷行人向前勻速運動,其中左右手臂和左右腿的運動方向也是向前運動。
表 1 關節點運動類型及概率Tab.1 Type and probability of joint movement
研究人員在3個行人動作數據集sub-JHMDB、UCF-Sports、MSR-II上驗證在不同觀察比值情況下不同重疊率的動作預測準確率。具體實驗結果如圖5至圖7所示。其中,當動作觀察比值為0.4、重疊率為30%時,在sub-JHMDB數據集上的準確率能達到56%;當動作觀察比值為0.2、重疊率為10%時,在UCF-Sports數據集上的準確率能達到54%;當動作觀察比值為0.1、重疊率為10%時,在MSR-Ⅱ數據集上的準確率能達到46%,不同數據集上最大準確率和動作觀察比值見表2。
圖5 不同觀察比值在sub-JHMDB數據集上的準確率Fig.5 The accuracy of different observation ratios on sub-JHMDB dataset
圖6 不同觀察比值在UCF-Sports數據集上的準確率Fig.6 The accuracy of different observation ratios on UCF-Sports dataset
圖7 不同觀察比值在MSR-II數據集上的準確率Fig.7 The accuracy of different observation ratios on MSR-II dataset
表 2 不同數據集上最大準確率和動作觀察比值Tab.2 Maximum accuracy and action observation ratios on different datasets
本研究以累積的方式計算AUC,50%的準確率意味著從一開始就定位一個動作,直到觀察到視頻的一半。這可以深入了解本文所提模型性能是如何隨著時間或測試視頻中觀察到的比值的變化而變化的。從圖5至圖7可以看出,在視頻開始播放時,定位一個動作是很有挑戰性的,因為算法并沒有觀察到足夠的判別運動用于區分不同的動作。此外,本研究首先從行人骨架姿態中學習外觀模型,并隨著時間的推移不斷進行改進和細化。這提高了基于劃分網格特征的外觀可信度,進而提高了預測的準確性,穩定了AUC。
本文提出一種新的基于網格劃分骨骼的行為預測方法,該方法主要分為兩個部分,首先使用自下而上的方法提取行人的骨骼信息,規定左右肘、左右手、左右膝以及左右腳8個關節點作為提取行為習慣的關節點,并且通過學習8個關節點的距離度量特征和角度度量特征提取行人的行為特征。對8個關節點分別對比前后幀的行為特征,判斷下一幀單個關節點運動類型發生的概率,通過對下一幀8個關節點運動類型的加權判斷下一幀行人的動作。其次為了更好地評估行人下一幀的動作,本文通過對行人進行網格劃分并提取相應關節點的劃分網格特征,對比前后幀的劃分網格特征,判斷行人的運動方向及運動速度。實驗結果驗證了該方法的有效性。