?

融合時空域注意力模塊的多流卷積人體動作識別

2023-08-24 08:58吳子依陳泯融
關鍵詞:集上骨架注意力

吳子依, 陳泯融

(華南師范大學計算機學院, 廣州 510631)

在人體動作識別任務中,主要的輸入數據有視頻和人體骨架序列。在基于視頻的動作識別中,一般以RGB數據作為輸入,根據像素點生成特征圖像,進而通過分類達到動作識別的目的[1-4]。在基于人體骨架序列的動作識別中,一般以人體關節點的位置信息作為輸入,并對其進行特征提取和建模,從而得到最終的分類結果[5-7]。隨著高精度深度傳感器的技術改進[8]和姿態估計算法[9]對應的準確率不斷攀升,人體骨架數據越來越易于獲取。由于人體骨架關節點一般由2維或3維的坐標來表示,對應耗費的計算量較小,且人體骨架關節點作為輸入數據,具有對照明條件、背景噪聲和遮擋等干擾不敏感的優點,使得基于骨架的動作識別成為了計算機視覺領域的研究熱點。

近年來,在基于骨架的動作識別領域中,較為主流的深度學習網絡有循環神經網絡(Recursive Neural Network,RNN)[10-11]、圖卷積網絡(Graph Convolutional Networks,GCN)[12-16]和卷積神經網絡(Convolutional Neural Networks,CNN)[17-21]。其中,RNN運用于動作識別任務中可以很好地處理時序問題;GCN擅長處理非歐幾里得的圖結構數據,可以根據人體拓撲結構的先驗知識來對人體骨架進行動態建模;CNN可通過多層堆疊的卷積操作來提取圖像的高階特征,彌補了RNN在空間特征提取上的不足。與GCN相比,CNN也不需要預先考慮人體骨架結構圖的設計。目前仍有大部分研究傾向于設計基于CNN的動作識別網絡。如LI等[20]提出了一個端到端的共現特征學習卷積神經網絡框架:首先在不同層級中將上下文信息逐漸聚合,然后通過信道置換來對骨架中所有關節點之間的聯系進行建模,從而通過獲取全局共現特征來提高網絡的動作識別能力。

此外,在計算機視覺領域中,注意力機制[22-25]因其有助于網絡對骨架序列進行重要性排序,使網絡選擇性地對關鍵信息進行編碼而受到研究者們的青睞。如:FAN[24]提出了由自注意力與交叉注意力組成的注意力模塊,該模塊有助于網絡提取相應場景中與上下文信息高度相關的關鍵節點;SI[25]提出了新型注意力圖卷積網絡(AGC-LSTM),利用注意力機制增強每層網絡中關鍵節點的權重信號。然而,已有研究大多將注意力置于通道或者空間維度上,忽略了時序對于動作識別的重要性。比如“坐下”和“起身”雖然動作構成相同,但由于發生的時間順序不同而導致動作類別不同。

綜上所述,本文為了顯式地對骨架序列中幀內空間特征和幀間時序特征進行編碼,并運用注意力機制對時間和空間維度上的特征進行有效的權重分配,設計了基于注意力增強的多流卷積神經網絡(Attention Enhancement Multi-stream Convolutional Neural Network,AE-MCN)。在AE-MCN網絡中,自適應選取運動尺度模塊提取人體骨架運動中具有辨別性的軌跡信息,用以提高網絡對全局運動的建模能力;融合時空域的注意力模塊對高維特征圖進行空間維度和時間維度上的權重信號分配,幫助網絡獲取到有效的時空特征。最后,在3個常用的人體動作識別數據集(NTU60、JHMDB和UT-Kinect)上,將AE-MCN網絡與ST-GCN[12]、SR-TSL[17]等網絡進行了對比實驗。

1 預備知識

1.1 視點不變性特征表示

(1)

1.2 通道注意力模塊

在計算機視覺的領域中,注意力機制可以幫助聚焦部分重要信息,使得網絡獲得更具價值的特征信息,進一步提升網絡性能。JIE等[22]提出運用通道注意力機制來獲取不同通道上的全局特征值,并通過廣播和矩陣乘法來實現注意力的分配。通道注意力模塊通過對卷積層中每個通道上的信息進行權重分配,進而幫助網絡獲得有效信息。通道上信息的權重越大則代表該通道上的信息越重要,通道上信息的權重越小則代表該通道上的信息的重要性越低。通道注意力模塊的結構如圖1所示。

圖1 通道注意力模塊示意圖[28]

如圖所示,通道注意力模塊的操作流程分為以下幾步。首先,通過擠壓操作F1獲取輸入特征圖X在通道上的上下文信息,得到矩陣N;其次,經由全連接層F2和激活函數操作對矩陣N進行通道上的權重分配,其計算公式如下:

S=σ(W2δ(W1N)),

(2)

其中,W1和W2均為權重矩陣,δ()為PReLU 激活函數,σ()為Sigmoid激活函數。

2 基于人體骨架序列的多流卷積神經網絡

本文從人體運動中復雜的時空關系角度出發,顯式構建了空間、時序和原始特征模塊,讓網絡可以對骨架序列數據進行有針對性的特征提取與建模;同時,為了對提取出的細粒度特征進行時間維度和空間維度上的權重分配,構建了融合時間域和空間域的注意力模塊(Spatio-temporal Domain Attention Module,STAM),以幫助網絡更好地獲得骨架序列中有效的時空特征。

2.1 時序特征提取模塊

視點不變性特征與其他幾何特征一樣,不包含全局運動信息。YANG等[21]在網絡中引入2種運動尺度特征來提取全局運動信息:一是原尺度動作特征,為相鄰幀對應關節點的軌跡信息;二是快尺度動作特征,為每兩幀之間對應關節點的軌跡信息。人體運動有快有慢,為了學習具有魯棒性的全局運動信息,本文引入了自適應選取運動尺度模塊,其實現原理如圖2所示。

圖2 自適應選取運動尺度模塊實現原理圖

2.2 融合時間域和空間域的注意力模塊

在融合時間域和空間域的注意力模塊(STAM)中,時間注意力模塊(Temporal Attention Module,TAM)以網絡隱層輸出作為模塊的輸入數據,將數據的時間維度和通道維度進行互換,并通過壓縮和再廣播操作來獲得時間維度上每幀對應的權重信號;空間注意力模塊(Spatial Attention Module,SAM)在通道維度上對輸入數據進行壓縮,使網絡獲得特征圖在通道上的上下文信息,實現空間維度上的注意力分配。TAM模塊和SAM模塊在融合前獨立運行,參數不共享。

在本研究中,STAM模塊的輸入數據為網絡隱層的輸出QC×T×N,其中,C為輸入特征圖的通道數,T為骨架序列中的幀數,N為骨架中的關節點數。在SAM模塊中,為了獲取特征圖在空間維度上信息的整體分布,首先由卷積操作(Conv2D)和Sigmoid激活函數得到空間注意力張量as1×T×N,即將全通道上的信息進行壓縮后賦予特征圖上每一位置對應的權重信號,表示該位置與其他幀、關節點之間的關聯強度。在TAM模塊中,首先將Q在時間維度和通道維度上進行轉換,得到Q′T×C×N;然后,通過卷積操作和平均池化(AvgPool)對Q′進行壓縮,得到qT×1×1;最后,經扁平化(flatten)和全連接層(FC)操作后,利用Sigmoid激活函數得到時間注意力張量atT×1×1。操作流程如下所示:

as=σ(Convs(Q)),

at=σ(fc(AvgPool(Convt(Q′)))),

其中,Convs()為SAM模塊上壓縮通道數為1、卷積核大小為1×1的卷積操作,用以獲取特征圖在空間維度上的全局信息;Convt()為TAM模塊上5×5的卷積操作,用以獲取特征圖在時間維度上的局部感受野,進而通過平均池化操作進一步壓縮特征圖尺寸,從而得到全局特征響應值。為了實現特征圖上的注意力分配,將as和at進行維度轉換并廣播,分別得到注意力矩陣As和At,兩者維度均為C×T×N,然后將As和At以串行的方式與輸入數據Q進行相乘。操作流程如下所示:

Sa=Q⊙As,

A=Relu(Sa⊙At),

其中⊙為對位相乘。STAM模塊結構如圖3所示。

圖3 融合時間域和空間域的注意力模塊圖

2.3 多流卷積神經網絡架構

本文提出了融合時空域注意力模塊的多流卷積神經網絡(AE-MCN),該網絡對幀中不同關節點之間的空間特征和幀間時序特征進行提取和建模,并由融合時空域的注意力模塊對特征圖進行權重分配,從而使網絡獲得較好的動作識別性能。

AE-MCN網絡主要由3個模塊組成:空間特征模塊、時序特征模塊和原始特征模塊。每個模塊中包含3層CNN,每層CNN在卷積操作之后都帶有批歸一化操作和Leaky_Relu激活函數??臻g特征模塊、時序特征模塊和原始特征模塊中的信息編碼方式如下:

為了有效地融合高維時空特征并獲得更好的分類結果,首先將空間特征模塊、時序特征模塊和原始特征模塊的輸出在通道維度上進行連接,得到維度為C×T×N的特征圖;然后,將該特征圖輸入到STAM模塊中,并在STAM模塊之后的每層CNN中都加入滑動窗口尺寸為2的最大池化操作;最后,通過空間最大池化層(Spatial MaxPooling,SMP)操作來聚合輸出特征圖在時間維度上對應的關節點信息,并經由全連接層得到分類結果。AE-MCN網絡結構如圖4所示。

圖4 AE-MCN網絡結構圖

3 實驗結果及分析

3.1 實驗數據集

為了驗證AE-MCN網絡的有效性,本文在3個人體骨架動作識別數據集(NTU RGB+D數據集(NTU60)[31]、JHMDB數據集[32]和UT-Kinect數據集[33])上進行了一系列實驗。3個數據集的具體構成和評估標準為:

(1)NTU60數據集由Kinect傳感器收集而成,用于3D人體骨架動作識別,由56 880個動作樣本組成,包含60個動作類別。每幀人體骨架包含25個人體主要關節點,每個關節點位置由3D坐標表示。本研究遵循交叉對象(Cross-Subject,CS)和交叉視角(Cross-View,CV)2類評估基準,將NTU60數據集劃分為訓練集和測試集:在CS評估基準[31]上,按照人物ID來劃分訓練集和測試集;在CV評估基準[31]上,將相機1采集的樣本作為測試集,相機2和相機3采集的樣本作為訓練集。本文在CS和CV評估基準的訓練集中,分別隨機選擇10%的數據用做驗證集。

(2)JHMDB數據集中總共有928個動作樣本,這些樣本被拆分成3個訓練集和3個測試集,每個拆分集中大約有650個訓練樣本和250個測試樣本。每個動作樣本由一個骨架視頻來表示,視頻中每幀骨架包含15個人體主要關節點,每個關節點用2D坐標(x,y)表示。本文選擇三折交叉驗證策略得到最后的動作識別準確率。

(3)UT-Kinect數據集包含200個動作樣本,對應10個動作類別。其中每個受試者的每個動作都被記錄2次。骨架中每個關節點由3D坐標(x,y,z)表示。

3.2 實驗參數設置

網絡架構由Python編程語言實現并采用PyTorch深度學習框架[34],將Pycharm作為集成開發環境,實驗過程中使用1個RTX 2080-ti GPU。在NTU60、JHMDB和UT-Kinect數據集上的實驗批大小都設置為64。本文采用ADAM優化器[35],初始學習率為0.000 8,學習率分別在第45、65、80次處衰減10%,訓練在第90次結束;權重衰減初始值設置為 0.000 1;所有實驗都使用平滑標簽[36],其中平滑因子設為0.1,通過交叉熵損失進行分類訓練。

3.3 消融實驗

3.3.1 自適應選取運動尺度模塊的消融實驗 本文在NTU60數據集上進行相關的消融實驗。首先,將不含自適應選取運動尺度模塊、STAM模塊且濾波器數目為64個的網絡作為基準網絡(baseline);其次,在基準網絡的基礎上添加自適應選取運動尺度模塊,并將濾波器數為16、32、64個的網絡依次記為AE-MCN-A、AE-MCN-B、AE-MCN-C,以探究參數量對網絡動作識別性能的影響。

由實驗結果(表1)可知:(1)在添加了自適應選取運動尺度模塊的情況下,當濾波器數目為64時,網絡在NTU60數據集上取得最佳識別效果。(2)AE-MCN-C網絡在CS、CV基準上的識別準確率分別達到了84.9%、91.3%,比基準網絡對應的識別準確率分別高出0.4%、0.3%,這說明了濾波器數目為64時,自適應選取運動尺度模塊有助于網絡提取更具魯棒性的全局運動特征,使得網絡可以更好地實現動作建模。

表1 不同自適應選取運動尺度模塊在NTU60數據集上的性能

3.3.2 融合時間域和空間域的注意力模塊實驗 首先,在AE-MCN-C網絡的基礎上分別加入時間注意力模塊(TAM)、空間注意力模塊(SAM),設置了2組對比網絡,以探究兩者對網絡識別效果的影響;其次,由于時間注意力模塊與空間注意力模塊有Serial(串行)、Parallel(并行) 2種組合方式,其中串行方式分為先由時間維度上的注意力矩陣與輸入數據進行點乘操作、先由空間維度上的注意力矩陣與輸入數據進行點乘操作2種,所以,在AE-MCN-C網絡的基礎上又設置了3組對比網絡:AE-MCN-C+TAM+SAM(Serial)、AE-MCN-C+SAM+TAM(Serial)和AE-MCN-C+TAM+SAM(Parallel),以探究時間注意力模塊和空間注意力模塊的不同組合方式對網絡識別效果的影響。

在NTU60數據集上的實驗結果(表2)表明:(1)單獨引入時間注意力模塊(TAM)或空間注意力模塊(SAM)的網絡的識別準確率均低于融合時間域和空間域的注意力模塊的網絡,這說明針對融合后的時空特征圖,引入單一的時間注意力或空間注意力模塊不利于網絡提取有效的時空特征,對時空特征圖進行有針對性的權重分配更有助于網絡提取到更具判別性的動作特征。(2)AE-MCN-C+SAM+TAM(Serial)網絡在CS、CV基準上的識別準確率分別達到了86.3%、92.4%,表明先由空間維度上的注意力矩陣與輸入數據進行點乘,再獲取特征圖時間維度上注意力的串行組合方式獲得了最佳的識別效果。

表2 不同組合方式的時間和空間注意力模塊在NTU60數據集上的性能

3.4 對比實驗

在3個數據集上,將包含了自適應選取運動尺度模塊和融合時空域注意力模塊的動作識別網絡(AE-MCN)與 ST-GCN[12]、DD-Net[21]等網絡進行了對比實驗。其中,在NTU60數據集上,將AE-MCN網絡與VA-LSTM[37]、ElAtt-GRU[38]、ST-GCN[12]、DPRL+GCNN[39]、SR-TSL[17]、PR-GCN[13]網絡進行對比;在JHMDB數據集上,將AE-MCN網絡與Chained Net[40]、EHPI[18]、PoTion[41]、DD-Net[21]網絡進行對比;在UT-Kinect數據集上,將AE-MCN網絡與FusingFeatures[42]、ElasticCoding[43]、GeoFeat[22]、GFT[44]網絡進行對比。

由實驗結果(表3至表5)可知 AE-MCN網絡在3個數據集上的分類效果最好:(1)在NTU60數據集上,AE-MCN網絡在CS、CV基準上都取得了最好的動作識別效果。在CS基準上,AE-MCN網絡取得了86.3%的識別準確率,分別比PR-GCN、SR-TSL網絡提高了1.1%、1.5%;在CV基準上,AE-MCN網絡取得了92.4%的識別準確率,與SR-TSL網絡的識別準確率持平,但比PR-GCN網絡的識別準確率高出0.7%。(2)在JHMDB數據集上,DD-Net網絡[21]使用一維卷積,通過關節點聯合距離特征(Joint Collection Distances,JCD)和全局運動尺度模塊進行空間、時間維度上的特征提取與建模,取得了81.6%的識別準確率。而AE-MCN網絡通過引入自適應選取運動尺度模塊和融合時空域的注意力模塊,幫助網絡提取到具有魯棒性的全局特征和重要的時空特征,在JHMDB數據集上取得了83.5%的識別準確率,比DD-Net網絡的識別準確率提高了1.9%。(3)在UT-Kinect數據集上,與GFT網絡相比,AE-MCN網絡的識別準確率提高了1.9%。綜上所述,網絡通過自適應選取運動尺度模塊可獲取人體骨架序列中重要的時序特征,且融合時空域的注意力模塊可幫助網絡獲得分流提取到的特征圖在時間維度和空間維度上的權重分配,從而有效地提高網絡的動作識別性能。

表3 不同網絡在NTU60數據集上的性能比較

表4 不同網絡在JHMDB數據集上的性能比較

表5 不同網絡在UT-Kinect數據集上的性能比較

4 總結

為了更好地實現特征提取與建模,本文設計了多流卷積神經網絡(AE-MCN)。首先,為了學習具有魯棒性的全局運動信息,設計了自適應選取運動尺度模塊,以從原尺度動作特征中提取重要的時序特征,并減少特征提取過程中的信息損失;其次,通過融合時空域注意力模塊(STAM)來對網絡隱層輸出數據進行注意力的分配,從而幫助網絡獲取有效的時空特征。在NTU60數據集上的消融實驗結果證明了自適應選取運動尺度模塊和STAM模塊的有效性:添加了自適應選取運動尺度模塊且濾波器數量為64的網絡在CS、CV基準上的識別準確率分別達到了84.9%、91.3%,比不含該模塊的網絡的識別準確率分別高出0.4%、0.3%;添加了STAM模塊的網絡取得了最佳的識別效果,在CS、CV基準上的識別準確率分別達到了86.3%、92.4%。在3個常用的人體動作識別數據集(NTU60、JHMDB和UT-Kinect)上的對比實驗結果表明AE-MCN網絡的有效性:在NTU60數據集上,AE-MCN網絡在CS、CV基準的識別準確率分別為86.3%、92.4%;在JHMDB數據集上,AE-MCN網絡的識別準確率為83.5%;在UT-Kinect數據集上,AE-MCN網絡的識別準確率為97.9%。實驗結果表明AE-MCN網絡中的分流結構可提取出具有判別性的時空特征,且由時空域注意力模塊對其進行時間維度和空間維度上的權重分配有助于網絡獲得較好的動作識別效果。

由于人體骨架數據較難刻畫細微的動作且不包含交互對象(書和鍵盤)等的相關信息,導致AE-MCN網絡在捕捉高精度動作信息時存在一定難度,對多局部細粒度化動作和人物交互動作的識別準確度還存在較大的進步空間,例如打噴嚏、敲鍵盤和看書等動作。后續研究可以結合多模態數據對動作進行更加全面的描述,從而使基于骨架的人體動作識別模型可以更好地識別細微動作,并實現人物之間交互的動作建模。

猜你喜歡
集上骨架注意力
淺談管狀骨架噴涂方法
讓注意力“飛”回來
Cookie-Cutter集上的Gibbs測度
骨架密度對炭/炭多孔骨架壓力浸滲銅的影響
鏈完備偏序集上廣義向量均衡問題解映射的保序性
復扇形指標集上的分布混沌
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
內支撐骨架封抽技術在突出煤層瓦斯抽采中的應用
幾道導數題引發的解題思考
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合