王洪雁,袁海
(1.浙江理工大學信息學院,浙江 杭州 310018;2.大連大學信息工程學院,遼寧 大連 116622)
作為機器視覺領域的研究熱點,人體動作識別在智能監控、人機交互、自動駕駛等領域發揮重要作用[1]。基于表觀序列的傳統識別模型通過獲取顏色紋理等來識別動作,此類方法易受光照、尺度、背景變化等因素影響,且由于深度信息缺失,因此識別性能較差[2]。針對此問題,Liu 等[3-4]提出基于深度圖的識別方法,深度圖所含深度信息對光照、背景變化具有較好穩健性,識別性能較好,但其信息冗余導致計算復雜,從而限制了此類方法的實際應用。
為解決上述問題,Shotton 等[5-7]提出低冗余高可分關節信息表示可顯著提升動作識別性能。Vemulapalli 等[8]利用3D 關節坐標分析運動模式識別動作,所采用的運動信息提取方法簡單高效,然而該方法忽略了關節間空域關系從而有限提升準確率。針對此問題,Ahmed 等[9]采用相對距離及角度編碼關節改善準確率,然而其僅依賴手工特征的識別結果難以令人滿意。隨著人工智能快速發展,深度學習模型利用非線性神經網絡抽取深層次動作特征提升準確率[10]。其中,基于卷積神經網絡(CNN,convolutional neural network)優良的空域特征提取能力,Banerjee 等[11]將骨骼序列編碼為偽圖像,并基于CNN 抽取其深度特征以改進識別效果,然而所得編碼圖像缺失時域信息,導致準確率提升有限。針對此問題,具有良好時間建模能力的循環神經網絡(RNN,recurrent neural network)可以較高準確率識別動作,然而RNN 所固有的梯度彌散缺陷使其難以學習較長歷史信息[12]?;诖耍L短期記憶(LSTM,long short-term memory)模型重構RNN 時序信息傳遞結構以獲得優異的長時依賴關系刻畫能力,可有效應用于動作識別[13-15]。Kwak等[16]將關節時序編碼為圖像序列,利用LSTM 模型抽取其時域特征改善識別性能。然而,上述基于深度網絡的識別方法逐幀處理各幅圖像,缺乏對關鍵圖像及部位的挖掘,而動作序列通常存在較大信息冗余,使相關方法實時性較差且所獲取高可分信息匱乏,導致準確率提升有限?;诖耍琒ong 等[17]提出基于時空注意力機制的LSTM(STA-LSTM,spatio-temporal attention LSTM)模型,采用時空注意力機制抽取骨骼特征,并基于重要性賦予關節相應權重以增強關鍵圖像及部位影響,從而提升動作準確率。然而,該方法僅考慮關節坐標而忽略空域拓撲信息,準確率改善有限。此外,上述基于3D骨骼的相關算法僅考慮骨骼深度信息,忽略了有效表達動作的外觀特征。
針對上述問題,本文提出基于骨骼關節及表觀特征融合的雙流網絡動作識別方法。所提方法首先基于關節空間拓撲構建空域約束;其次將所得空域約束及關節坐標轉化為偽圖像,并輸入具有時空注意力機制的LSTM 模型以降低信息冗余,同時增強關鍵圖像及關節的重要性提升關節深度特征表達有效性;再次基于時空注意力機制引入熱圖,定位圖像重要關節點以提取其周圍顏色紋理等外觀特征;最后基于雙流網絡逐幀融合表觀及關節深度特征序列以實現復雜場景下人體動作有效識別。
基于以上所述,本文貢獻可簡述如下。
1)利用所構建關節相對距離與高相關度關節對等空域約束有效補充骨骼時空動態信息,并將其轉化為偽圖像。
2)構建具有時空注意力機制的LSTM 模型,采用時序權重差值法去除相似幀,基于熱圖定位序列關鍵幀及關節,并以所得關鍵關節作為表觀特征提取區域。
3)基于雙流網絡逐幀融合手工表觀特征及LSTM 所得深度骨骼特征序列以有效識別相似動作。
所提動作識別模型主要包含如下4 個部分:首先,構建關節空間約束,即關節相對距離與高相關度關節對;其次,構建具有時空注意力機制的LSTM模型;再次,基于熱圖定位重要關節并抽取附近顏色紋理等外觀特征;最后,基于雙流網絡逐幀融合骨骼序列所得關節特征及表觀序列所得外觀特征以提升動作準確率。模型如圖1 所示。

圖1 基于深度關節特征及手工外觀特征融合的動作識別模型
1.1.1 關節坐標
關節信息可有效表征人體姿態,從而可作為動作高可分表達,通過將動態關節信息輸入深度網絡以獲取關節序列的深度有效特征,從而提升動作準確率。人體結構可分為左臂、右臂、軀干、左腿、右腿 5 個部分,對于全部關節點K(本文中K=25),Xt,k=(xt,k,yt,k,zt,k)表示第t(t=1,2,…,T)幀內關節k的坐標,則所有關節坐標可表示為Xt=(Xt,1,…,Xt,K),其中T為序列幀數。
1.1.2 相對距離約束
眾所周知,無論是靜止還是運動狀態,關節間始終具有特定范圍內距離關系,因此關節相對距離可有效表示人體局部感興趣區域,并且對視角及光照變化具有較強穩健性。此外,運動過程中髖關節Xt,1=(x1,y1,z1)變化幅度較小,其余關節均圍繞髖關節做定向圓周運動,因此,可將其取為坐標中心。由此,髖關節與其他關節之間的歐氏距離可表示為

其中,j=2,3,…,K。
為避免個體間身高差異,歸一化dt,j_1可得如下相對距離

其中,dt,21_1為鎖骨及髖關節的距離。由此,動作序列中第t幀內關節相對距離可表示為

1.1.3 高相關度關節對約束
人體骨骼中任意關節間皆存在一定數量骨骼邊,某關節的運動將導致相鄰關節同步運動,兩關節間相連邊越少,表明關節間距離較近,協作關系更密切、相關度更高。基于此觀察,本文只選取相關度較高的一、二(即只有一或兩條邊相連關節對)級相關信息構建關節空域相關約束以降低計算復雜度,其中關節相對位置為

其中,Ct,i_j表示第t幀內第j個關節相對第i個關節的坐標,即二者空域拓撲信息。
綜上所述,一、二級相關信息分別為

其中,h_k、m_n、o_p等表示僅由一條邊相連的關節對,q_r、u_v、x_y等表示由兩條邊相連的關節對。
綜上所述,有效表征某動作的關節序列時空信息可表示為

通常認為,整個動作期間可有效表達動作的圖像幀及關節更具重要性[18],以序列“跳躍”為例,相較于直立幀及軀干,跳躍幀及四肢更具指標意義。基于此,本節提出如圖2 所示的基于時空注意力的LSTM 模型以加權各幀及部位從而體現其重要性。

圖2 基于時空注意力的LSTM 模型
1.2.1 空間注意力
如上所述,視頻幀及各關節對動作識別影響不同,基于此事實,本節基于空間注意力機制加權各關節以反映其重要程度從而增強動作可區分度。設時刻t所有關節權重為αt=(αt,1,…,αt,l),l為輸入特征ft維數,對應得分st=(st,1,…,st,l)可表示為

其中,為避免前向傳播數值上溢問題采用tanh 激活函數,wf、wh分別為輸入數據ft及上層LSTM 隱藏變量ht-1的加權矢量,b為偏差矢量。
基于上述關節得分,經由Softmax 計算,可得如下可有效表征關節空域重要性的權值

由此可得如下輸入主LSTM 模型的空域加權特征

其中,⊙為Hadamard 積,表示矢量相應元素相乘。
1.2.2 時間注意力
動作識別過程中視頻序列存在大量冗余幀,針對此問題,本節利用時間注意力機制加權序列以突出關鍵幀同時降低信息冗余度從而提升動作準確率。各幀權重βt可表示為

動作識別中顏色紋理特征可直觀反映姿態變化,由此可將包含豐富顏色及紋理信息的表觀序列作為基于骨骼信息動作識別的有效補充。若對整幅圖像提取外觀特征,則難以直觀反映動作細微差異?;诖耍竟澙脽釄D定位關鍵幀及關節(如圖3 所示),并在其附近半徑為R的圓形區域提取顏色紋理直方圖,作為關節深度特征的有效補充。
由于關鍵幀通常處于穩態且相鄰幀差異較小,因此應避免提取大量相似幀以降低計算復雜度同時改善準確率。本節以各幀時間注意力權重差值為區分準則來劃分相似幀片段,并提取片段中權重最大幀來表征相似幀片段。注意到,相鄰幀越相似、權重值越相近,則其差值越小?;诖?,權重為βi(1≤i≤T)的序列幀i與參考幀(參考幀為各片段首幀,1≤i*≤N)之間的權重差值為βc,即

基于此,令δ為相似幀權重差值閾值,當βc<δ時,表明后續幀和當前參考幀類似;當βc≥δ時,幀i*為新參考幀,最終提取所有參考幀N構成關鍵幀。
需要注意的是,關鍵幀內不同權重關節可影響相似動作判別,由各關節權重所得熱圖則表征了重要關節運動趨勢,如圖3 所示相似動作中具有代表性的三幀,其手部周圍區域體現相似動作細微差異。基于此,通過提取手部顏色紋理特征,并加以關節點權重以增強外觀信息,從而可有效獲取手物信息以作為關節特征的有力補充。

圖3 基于熱點定位重要關節
1.3.1 LBP 紋理特征
由于局部二值模式(LBP,local binary pattern)具有灰度不變及旋轉不變性[19],光照變化穩健性較好,因而在圖像識別領域得到廣泛應用[20-21]。基于此,重要關節附近紋理可基于LBP 表達。設nc為中心點灰度值,n0~n7為鄰域點灰度值。以nc為閾值依次比較鄰域像素點,若像素灰度值大于閾值將該點標記為1,否則為0。將結果采用順時針構成二進制序列,作為該點LBP 值,計算式為[18]

1.3.2 HSV 顏色直方圖
顏色直方圖可有效描述各色彩比例,HSV 顏色模型將亮度色度分離,因而不易受光照變化等因素干擾[22]。基于此,本節基于HSV 顏色空間模型構建顏色特征。HSV 空間中色調H 較飽和度S 及亮度V 敏感,故賦予H 通道更多量化級別。此外,量化間隔越大則信息損失越多;間隔越小則信息損失越少,同時數據量顯著增加,進而導致計算復雜度上升。由此,本節基于文獻[23]構造如下量化等級


將上述非均勻量化HSV 合成如下矢量G

其中,Qs、Qv分別為S、V分量量化級數。
由式(14)~式(16)可知,HSV 分別量化為8、3和3 級,則Qs=3,Qv=3。同時HSV 分別取最大值7、2 和2,則G取值范圍為[0,71]?;诖耍蓪SV 空間表述為包含顏色級別為72 的特征向量,統計該顏色級別頻率以獲得HSV 顏色直方圖,則為各子塊對應直方圖向量。
熱圖所指示關鍵關節周圍提取顏色紋理分布直方圖,為保證局部區域性質,可先拼接單個圓形區域,再將表觀序列圓形區域乘以對應關節點權重依次連接可獲得參考幀顏色紋理特征(如圖4 所示)

圖4 顏色紋理直方圖融合

綜上所述,通過具有空間約束的時空注意力機制LSTM 模型(STA-SC-LSTM),提取運動變化關鍵關節特征,基于熱圖定位表觀關鍵幀及重要關節以手動提取重要關節周圍顏色紋理等表觀細節信息,所提動作識別模型基于雙流網絡融合所得深度關節及表觀特征。
根據表觀及深度特征特殊對應關系,本節采用更利于提升準確率的逐幀融合再序列融合方法,以突出局部重要部位互補性。根據上述權重差值βc判定各段相似幀的參考幀,同時記錄各段相似幀數量(1≤i*≤N),則表觀序列參考幀位置i*對應由 LSTM 模型提取關節深度特征序列位置(當i*為1 時,φ0=1)。基于此,參考幀表觀特征與對應深度關節特征以權重占比λ2與λ1融合。其中,λ1+λ2=1(二者可經由實驗確定,具體參見實驗部分),對應幀融合特征可表示為

同時,無參考幀對應的深度特征補0 以降低系統復雜性。最后序列融合特征(其中,i=1,…,C,C表示動作類別數)映射至全連接層并基于Softmax 函數識別動作

為提升訓練效果,構造如下正則化損失函數

其中,第一項基于交叉熵y=(y1,…,yC)T為真實動作,為第i類動作預測概率;第二項為模型參數正則化約束以抑制過擬合,λ為損失函數平衡因子,W為模型參數。
基于NTU RGB-D、Northwestern-UCLA、SBU Interaction Dataset 這3 個公開動作識別數據集,本節通過與基于手工特征、CNN、RNN 及LSTM 等模型的動作識別方法在視角變化、主體多樣化及同類動作多樣化等方面對比,驗證所提方法有效性。
本節實驗基于TensorFlow 深度學習框架,處理器Intel Core(TM)i7-7700,主頻3.60 GHz,32 GB內存,NVIDIA GeForce GTX 1070。選取4 層LSTM作為主網絡,時空注意力分別基于單個LSTM,每層神經元個數均為128,表觀特征提取半徑為5 像素點,初始學習率為0.002,每經過30 次訓練學習率縮小至10%,采用動量為0.8 的隨機梯度下降法作為優化函數Adam,平衡因子λ=10-5,批處理大小為64,Dropout=0.45 以防止過擬合。
NTU RGB-D 數據集為目前包含受測對象和行為類別數目最大的RGB-D 行為數據集[24]。該數據集由40 位受測對象通過3 臺Kinect V2 攝像機從-45°、0°、45°這3 個不同角度采集60 類動作,56 880 個視頻片段與三維骨骼數據序列。其中包括個體日常動作(如跌倒、嘔吐、鼓掌等)、人物交互(如梳頭、撕紙、踢東西等)、雙人交互(如推、拍后背、手指對方等),以及諸如喝水與刷牙、閱讀與寫作、握手與傳遞物品等具有細微差別的動作。
交叉主體(cross subject)實驗將40 類受測對象分為訓練及測試集[24],訓練集編號為1、2、4、5、8、9、13、14、15、16、17、18、19、25、27、28、31、34、35、38,其余為測試集,訓練集和測試集分別為40 320 和16 560 個樣本;交叉視圖(cross view)實驗選取第一臺攝像機采集樣本為測試集,其余為訓練集,訓練集和測試集分別為 37 920和18 960 個樣本。
本節實驗交叉主體與交叉視圖迭代訓練中訓練集與測試集對應的準確率與損失曲線如圖5 所示。由圖5 可知,模型準確率隨著訓練次數增加而增加,迭代至220 次時準確率趨于穩定且損失值收斂。此外,基于NTU RGB-D 數據集可得交叉主體及交叉視角準確率分別為88.73%和90.01%,其識別結果可由圖6 所示的混淆矩陣表征。

圖5 NTU RGB-D 數據集中訓練集與測試集對應的準確率與損失曲線
圖6 中各列及各行分別為所提方法預測結果及對應真實類別,主對角線元素表示該動作準確率,其余為識別錯誤率。由圖6 可知,交互相似動作,即喝水、刷牙與打電話,閱讀、寫作、鍵盤打字與玩手機的交叉主體及交叉視角準確率分別不低于84%和86%;雙人交互相似行為,即握手和傳遞物品的交叉主體及交叉視角準確率分別不低于80%和88%。此外,其他動作交叉主體及交叉視角準確率分別為85%~92%和87%~94%。由此可知,主題多樣化及視角變化等復雜場景下所提方法具有較高準確率。

圖6 基于NTU RGB-D 數據集所得混淆矩陣
基于NTU RGB-D 數據集,所提方法及主流方法所得交叉主體及交叉視角準確率如表1 所示。
由表1 可知,基于可變參數關聯骨架的LARP(lie group action recognition point)[8]與基于3D 幾何關系的Dynamic skeletons[25]沒有考慮深度時空信息,因而準確率不高;Multi temporal 3D CNN 將關節映射至3D 空間并通過3D CNN 提取深度特征,從而可有效提升準確率至66.85%、72.58%[26],然而其沒有考慮骨骼識別時域信息;ST-LSTM+Trust Gate[27]與Two-Stream RNN[28]分別以相關關節作為雙流RNN 輸入以充分利用時空信息,然而輸入時序存在較大信息冗余,從而影響識別效果;基于此,STA-LSTM[17]基于時空注意力機制以識別關鍵幀及關節,從而將準確率提升至73.40%、81.20%,然而該方法只考慮關節特征而忽略拓撲關系,故準確率改善有限;DS-LSTM(denoising sparse LSTM)[15]考慮幀間幀內關節鏈接相對運動趨勢,Fuzzy fusion+CNN[11]編碼關節間空間關系以提升準確率,然而二者缺乏外觀特征,從而限制識別能力;所提方法將空間約束輸入具有時空注意力機制的LSTM 模型以抽取深度時空特征,并基于熱圖抽取表觀特征為有效補充,從而提升準確率至88.73%、90.01%,這表明復雜場景下所提方法具有較高準確率。

表1 NTU RGB-D 數據集各方法所得交叉主體及交叉視角準確率
Northwestern-UCLA 數據集由1 494 個序列組成,由10 名實驗者完成如下10 類動作[30]:單手撿、雙手撿、扔垃圾、行走、坐下、站起、穿、脫、扔、拿。該數據集由3 個不同視角采集獲得,前2 個攝像機所得樣本為訓練數據,其余樣本為測試數據。
如表2 所示,基于骨骼特征手工提取的HOJ3D(histograms of 3D joint)方法[31]假設骨骼垂直于地面以投影聚類判別動作,忽略骨骼空域關系,從而導致準確率較低;LARP[8]則基于可變參數關聯骨架表征動作,因而性能優于HOJ3D,但是其忽略骨骼動態信息;HBRNN-L(hierarchically bidirectional RNN LSTM)[32]考慮關節時域特征,從而獲得78.52%的準確率,但是其缺乏外觀信息難以區分相似動作;Multi-view dynamics+CNN[33]提取多視角動態圖像以應對空域變化,考慮外觀特征,但是其缺乏時序特征;所提方法基于具有時空注意力機制的LSTM 模型以有效表征重要關節動態信息,并基于熱圖抽取顏色紋理信息,從而獲得動作高可分表達,進而將準確率提升至85.73%,分別比HBRNN-L和Multi-view dynamics+CNN 提升7.21%和1.53%,這表明不同視角及主題多樣化條件下所提方法具有較高識別能力。

表2 Northwestern-UCLA 數據集實驗結果
SBU Interaction 數據集包含如下8 類交互動作[34]:靠近、遠離、踢、推、握手、擁抱、遞書本、拳擊,共分為5 個交叉集,選取其中4 個作為訓練集,其余為測試集,對各交叉集驗證結果取平均值作為最終準確率。
所提方法及對比方法所得準確率如表3 所示。由表3 可知,所提方法準確率可達95.46%,分別比STA-LSTM[17]、ST-LSTM+Trust Gate[27]、Two-Stream RNN[28]提升3.96%、2.16%、0.66%,這表明小樣本數據集下所提方法準確率較高。

表3 SBU Interaction Dataset 數據集實驗結果
為進一步驗證所提方法有效性,基于上述數據集研究所提方法中具有空間約束時空注意力LSTM 模型及特征融合模塊對準確率影響,所得結果如表4 所示。由表4 可知,相較于僅基于時空注意力的STA-LSTM 模型,STA-SC-LSTM 所得準確率分別提升2.43%、1.52%、0.83%,表明所構造空域約束條件可提升動作識別能力;相較于僅基于關節時序特征的STA-SC-LSTM,雙流融合所得準確率分別提升12.90%、7.29%、8.15%及3.13%,表明表觀特征可作為骨骼深度特征的有效補充以彌補基于關節時空特征的相關模型對相似動作較低區分度的缺陷。

表4 不同模型實驗結果
融合深度關節及手工表觀特征可有效提升相似動作判別性能,然而融合權重難以由理論確定。由此,本節基于上述數據集,通過實驗確定融合權值。具體地,(λ1,λ2)可依次設為(0.4,0.6)、(0.5,0.5)、(0.6,0.4)和(0.7,0.3)。由表5 可知,權重由(0.4,0.6)變化至(0.5,0.5),即關節特征權重占比增加則準確率提升,表明識別結果主要依賴于關節特征。當權重由(0.6,0.4)變化至(0.7,0.3),準確率降低,表明外觀特征缺乏,從而影響相似動作區分。由上述分析可知,權重為(0.6,0.4)時識別精確度最高,由此設定λ1=0.6、λ2=0.4為融合權重。

表5 不同融合權重比的實驗結果
本文提出基于關節序列深度時空及表觀特征融合的動作識別方法。所提方法首先構建關節空域拓撲約束以增強關節特征表達有效性,其次構造具有時空注意力的LSTM 以定位高可分重要幀及關節,再次基于熱圖提取關鍵關節周圍顏色紋理表觀特征,最后逐幀融合關節深度及外觀特征以獲得高可分的動作有效表達。實驗結果表明,在NTU RGB-D、Northwestern-UCLA 以及SBU Interaction Dataset 數據集上,所提方法的準確率分別為88.73%、90.01%,85.73%和95.46%,明顯高于現有主流識別方法,表明視角變化、噪聲、主體多樣化等復雜場景下所提方法的有效性。需要注意的是,由實驗可知,相較于交叉主體,交叉視圖準確率改善幅度較小,基于此,未來研究將著重關注多視角場景下表觀及關節高可分穩健特征抽取及有效融合方法。