翻譯:Spatial Temporal Graph Convolutional Networks for Skeleton Based Action Recognition (ST-GCN)

文章鏈接:https://arxiv.org/abs/1801.07455

Github 代碼:https://github.com/yysijie/st-gcn

參考博客:https://blog.csdn.net/qq_36893052/article/details/79860328

Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition 

基於骨架動作識別時空圖卷積網絡

 

摘要

人體骨骼動力學傳達了人類行爲識別的重要信息。傳統的應用程序骨架建模通常依賴手工製作的部件或遍歷規則,從而導致表達能力有限和推廣困難。在這項工作中,我們提出了一種新的動態骨骼模型,叫做時空圖卷積網絡(ST-GCN),它通過從數據中自動學習時空圖,超越了以往方法的侷限性。該公式不僅具有更大的表達能力,而且具有更強的泛化能力。在兩個大型數據集(KineticsNTU-RGBD)上,它比主流方法有了實質性的改進。

1 介紹

人類行爲識別近年來已成爲一個活躍的研究領域,因爲它在視頻理解中發揮着重要作用一般而言,人類行爲識別有着多種模態(Simonyan and Zisserman 2014; Tran et al. 2015; Wang, Qiao, and Tang 2015; Wang et al. 2016; Zhao et al. 2017),例如外觀、深度、光流和身體骨骼(Du, Wang, and Wang 2015; Liu et al. 2016)等。在這些模態當中,動態人類骨通常能與其他模態相輔相成,傳達重要信息。然而,比起外觀和光流建模,動態骨骼建模受到的關注較少。在這篇論文中,作者系統地研究這種模態,旨在開發一種原則性且有效的方法模擬動態骨骼,並利用它們進行人類行爲識別。

動態骨架模態可以通過人體關節位置的時間序列自然地以2D或3D座標的形式表示。 然後,通過分析其動作模式可以做到人類行爲識別。早期基於骨進行動作識別的方法只是在各個時間步驟使用關節座標形成特徵向量,並對其進行時序分析 (Wang et al. 2012; Fernando et al. 2015)。但這些方法能力有限,因爲它們沒有明確利用人類關節的空間關係,而這種空間關係對理解人類行爲而言至關重要。最近,研究者開發了試圖利用關節間自然連接的新方法 (Shahroudy et al. 2016; Du, Wang, and Wang 2015)。這些方法的改進令人鼓舞,表明了骨骼連通性的重要性。然而,現有的大多數方法依賴手動劃分的部分或手動設定的規則來分析空間模式。因此,爲特定應用設計的模型難以在其他任務中推廣。

爲了超越這些限制,我們需要一種新的方法,能夠自動捕獲嵌入關節空間配置中的模式以及關節動力學。這就是深度神經網絡的優勢所在。然而,如前所述,骨架是以圖形的形式而不是二維或三維網格的形式出現的,這使得使用像卷積網絡這樣的成熟模型變得困難。最近,將卷積神經網絡(CNN)泛化到任意結構圖形的圖卷積網絡(GCN)得到了越來越多的關注,而且被成功應用於圖像分類 (Bruna et al. 2014)、文獻分類 (Defferrard, Bresson, and Vandergheynst 2016)、半監督學習 (Kipf and Welling 2017) 等領域。但是,順着這條思路,大部分前人的工作都把輸入假定爲一個固定的圖形。GCN在大規模數據集上的動態圖模型應用,例如人類骨骼序列,還有待探索

本文提出了一種將圖神經網絡擴展到時空圖模型(ST-GCN)中設計一種用於動作識別骨架序列的通用表示方法。如圖1所示,該模型是在一系列骨架圖的基礎上建立的,其中每個節點對應於人體的一個關節。有兩種邊緣類型,即與關節的自然連接相聯繫的空間邊緣和跨連續時間步連接相同關節的臨時邊緣。在此基礎上構造了多個時空圖卷積層,使得信息能夠沿着時空維度進行集成。

圖 1 在該工作中使用的骨架序列的空間時間圖,其中所提出的ST-GCN在其上運行。藍點表示身體關節。 身體關節之間的體內邊緣基於人體的自然連接來定義。框架間邊緣連接連續框架之間的相同關節。 關節座標用作ST-GCN的輸入。

 

ST-GCN的層次性質消除了手工製作的部件分配或遍歷規則的需要。 這不僅有助於提高表現力,從而提高性能(如我們的實驗所示),而且還可以很容易地推廣到不同的背景。 在通用GCN 公式的基礎上,我們還研究了設計圖形卷積內核的新策略,以及圖像模型的靈感。

這項工作的主要貢獻在於三個方面:1)我們提出了一種基於通用圖的動態骨架建模公式GCN,這是第一個針對這項任務應用基於圖的神經網絡。2)提出了ST-GCN中卷積核的設計原則,以滿足骨架建模的具體要求。3)在兩個用於基於骨架的動作識別的大規模數據集上,與以前的方法相比,所提出的模型使用手工繪製的部件或遍歷規則獲得了更好的性能,而在人工設計方面的工作量則要小得多。ST-GCN的代碼和型號已公開發布。

2相關工作

圖的神經網絡將神經網絡推廣到具有圖形結構的數據是深度學習研究中的一個新興課題。所討論的神經網絡結構包括循環神經網絡(Tai, Socher, and Manning 2015; Van Oord, Kalchbrenner, and Kavukcuoglu 2016) 和卷積神經網絡(CNNs) (Bruna et al. 2014; Henaff, Bruna, and LeCun 2015; Duvenaud et al. 2015; Li et al. 2016; Defferrard, Bresson, and Vandergheynst 2016)這項工作更多地與CNN的泛化或圖形卷積網絡(GCN)有關 在圖形上構造GCN的原理大體上遵循兩條流:1)光譜透視,在光譜分析的形式中考慮圖形卷積的位置 (Henaff, Bruna, and LeCun 2015; Duvenaud et al. 2015; Li et al. 2016; Kipf and Welling 2017);2)空間透視,其中卷積直接應用於圖節點及其鄰居(Bruna et al. 2014; Niepert, Ahmed, and Kutzkov 2016).這篇文章遵循第二個方法。我們通過將每個卷積核的應用限制在每個節點的1-鄰居上,在空間域上構造CNN卷積核。

基於骨架的動作識別人體骨架和關節對光照變化和場景變化具有較強的魯棒性,很容易得到高精度的深度傳感器或姿態估計算法(Shotton et al. 2011; Cao et al. 2017a)。因此,有大量基於骨架的動作識別方法。這些方法可以分爲基於特徵的方法和深度學習方法。第一類方法設計了幾個手工特徵來捕捉關節運動的動力學。這些可以是關節軌跡的協方差矩陣(Hussein et al. 2013),關節的相對位置(Wang et al. 2012)或身體部位之間的旋轉和平移(Vemulapalli, Arrate, and Chellappa 2014)最近深度學習的成功導致了基於深度學習的骨架建模方法的激增。 這些工作一直使用循環神經網絡(Shahroudy et al. 2016; Zhu et al. 2016; Liu et al. 2016; Zhang, Liu, and Xiao 2017) 和時間 CNNs (Li et al. 2017; Ke et al. 2017; Kim and Reiter 2017)以端到端的方式學習動作識別模型在這些方法中,許多都強調了人體內關節建模的重要性。但這些部分通常是使用領域知識明確地指定的。我們的ST-GCN是第一個將圖形CNN應用於基於骨架的交互識別的任務。它區別於以前的方法,它可以通過利用圖卷積的局部性和時間動力學來隱式地學習零件信息。通過消除手工零件分配的需要,該模型更容易設計,學習更好的表示。

3 時空圖卷積網絡

當運動的時候,人體在小範圍運動的關節稱之爲“body parts”。現在基於骨骼點的動作識別方法都是具有在建模中具有明確的身體部分(Shahroudy et al. 2016; Liu et al. 2016; Zhang, Liu, and Xiao 2017)我們認爲,這種改進很大程度上是由於該部分限制了與“整體骨架”相比“局部區域”內關節軌跡的建模,從而形成了骨架序列的高層次表示。 在圖像對象識別等任務中,層次表示和局部性通常由卷積神經網絡的內在性質來實現(Krizhevsky, Sutskever, and Hinton 2012)而不是手動分配對象部件。它促使我們將CNN的親和力引入到基於骨架的動作識別中。這一嘗試的結果是ST-GCN模型。

3.1 管道概述

基於骨骼的數據可以從運動捕捉設備或視頻的姿態估計算法中獲得。通常來說,數據是一系列的幀,每一幀都有一組聯合座標。給定 2D 或 3D 座標系下的身體關節序列,我們就能構造一個時空圖。其中,人體關節對應圖的節點,人體身體結構的連通性和時間上的連通性對應圖的兩類邊。因此,ST-GCN 的輸入是圖節點的聯合座標向量。這可以被認爲是一個基於圖像的 CNN 模擬,其中輸入由 2D 圖像網格上的像素強度矢量形成。對輸入數據應用多層的時空圖卷積操作,可以生成更高級別的特徵圖。然後,它將被標準的 SoftMax 分類器分類到相應的動作類別。整個模型用反向傳播進行端對端方式的訓練。現在,我們將介紹 ST-GCN 模型的各個部分。

3.2 骨架圖結構

骨架序列通常由每個幀中每個人類關節的2D或3D座標表示。 以前的工作使用卷積進行骨骼動作識別(Kim and Reiter 2017)連接所有關節的座標向量,以形成每幀一個特徵向量。在我們的工作中,我們利用空間時間圖形成骨架序列的層次表示。特別地,我們構造了一個無向時空圖G = (V, E)在骨架序列中,N個關節和T幀特徵同時具有體內和幀間連接

 在圖中,節點矩陣集合V={vti|t=1,...,T,i=1,...N}包括骨骼序列上的所有的關節點。當ST-GCN作爲輸入的時候,關鍵點上的第t幀、第i個關節點的特徵向量F(vti)是由座標點座標以及置信度組成。使用兩步構建骨骼序列的時空圖。第一步,幀與幀之間的邊表示人體對應骨骼點的時序關係;第二步,在每一幀內部,按照人體的自然骨架連接關係構造空間圖。這種鏈接的建立是依靠自然結構的,沒有人工手動設計的。這個模型也支持不同數量的骨骼點集上使用。例如,Kinect dataset,我們使用OpenPose(Cao et al. 2017b)工具在2D姿態估計中得到18個骨骼點,在NTU-RCB+D數據集(Shahroudy et al. 2016),我們是用3D骨骼跟蹤的輸出作爲本模型的輸入,產生25個骨骼點。ST-GCN可以在兩種情況下運行,並提供一致的卓越性能。 圖2描述了構建的時空圖的示例。

圖2:我們對視頻進行姿勢估計,並在骨架序列上構建時空圖。將應用多層時空圖卷積(ST-GCN),逐步在圖上生成更高層次的特徵圖,然後用標準的SoftMax分類器將其分類到相應的作用類別。

 

 形式上,邊的集合E有兩個子集組成,第一個子集是每一幀幀內骨骼點的鏈接Es={vtivtj|(i,j)∈H},H表示人體骨骼點集合。第二個子集表示不同幀間的鏈接,EF={vtiv(t+1)i}。因此EF中的每一個邊代表一個特定的關節隨着時間推移其軌跡。

3.3 空間圖卷積神經網絡

在深入瞭解成熟的ST-GCN之前,我們先看單幀內的圖CNN模型。在實例中,在時間t的單幀中,有N個關鍵點Vt,骨骼內的邊Es(t)={{vtivtj|(i,j)∈H}。從回想一下,2D自然圖像或特徵圖上的卷積運算的定義來看,它們可被視爲二維網格。卷積操作輸出的特徵圖也是一個2D網格。當選用步長爲1及恰當的padding,可以使得輸出特徵圖與輸入圖像保持一樣的大小。我們將在下面的討論中假設這個條件。設一個大小爲K x K的卷積核,輸入圖像爲fin,通道數爲c。單個通道在空間位置x的輸出值可以寫爲:

    其中採樣函數p :Z2Z2→Z2表示位置x及其鄰域。在圖像卷積中,它也可以表示爲pp(x,h,w)=x+p'(h,w)。權重函數w : Z2→Rc表示權重w提供c維實空間中的權向量,用於計算具有維度c的採樣輸入特徵向量的內積。權重函數與輸入x的位置無關。因此,輸入圖像上的所有權重都是共享的。圖像域的標準卷積,通過對p(x)中的矩形網格進行編碼來實現。該配方的更詳細的解釋和其他應用可參見(Dai et al. 2017)

 然後將上述公式的卷及操作應用到空間圖Vt的特徵圖。其中特徵圖fint:Vt→Rc 爲在圖上的每一個節點的向量擴展的下一步是重新定義採樣函數p和權重函數w

採樣函數在圖上,採樣函數p(h,w)被定義爲中心像素x的鄰域像素。在圖上,我們同樣定義節點vti鄰域集的採樣函數B(vti)={vtj|d(vtj,vtiD)}。這裏d(vtj,vti)爲vtj到vti的最小路徑。因此採樣函數p:B(vti)→V可以寫做

在工作我們對所有情況採用D=1,即關節點爲1域集,更多的d留作以後的工作。

權重函數採樣函數相比,權值函數更難以定義。 在2D卷積中,中心位置周圍自然存在一個剛性網格。所以相鄰像素可以具有固定的空間順序。 然後可以通過根據空間順序索引(cKK)維度的張量來實現權重函數。對於像我們剛構建的圖一般的圖,沒有這種規律的排布這個問題首先在(Niepert,Ahmed,and Kutzkov,2016)中進行了研究,其中順序是由根節點周圍的領域圖中的圖標記過程定義的。我們遵循這個想法來構建我們的權重函數。我們不是給每一個域節點一個獨的標籤,而是通過將一個骨骼點vti的鄰居集B(vti)劃分成固定數量的K個子集來簡化過程,其中每個子集都有一個數字標籤。因此我們可以有一個映射lti:B(vti) →{0, . . . , K −1}將鄰域中的節點映射到其子集標籤權重函數 w(vtj,vti):B(vti)Rc可以通過索引(c,k)維的張量來實現或者

我們將在3.4中討論幾種分區策略

空間圖卷積利用改進的採樣函數和權重函數,我們現在將圖表卷積中的公式1改寫爲

其中正則化項Zti(vtj)=|{vtk|lti(vtk)=lti(vtj)}|等於相應子集的基數。這一項增加了不同子集的貢獻。從公式2,3,4中我們可以得出:

值得注意的是,如果我們將圖像視爲常規2D網格,則此公式可以類似於標準2D卷積。 例如爲了類似於一個3×3旋轉操作,我們在3×3網格中以一個像素爲中心有一個9像素的鄰域,然後將鄰域集分割爲9個子集,每個子集有一個像素。

時空建模在制定了空間圖CNN之後,我們現在開始着手於骨架序列中的時空動力學建模。在圖形的構造中,圖形的時間方面是通過連接跨連續幀的相同關節來構造的。這使我們能夠定義一個非常簡單的策略來將空間圖CNN擴展到空間TEM通道域。也就是說,我們擴展了鄰域的概念,也包括臨時連接的關節寫做

參數Γ控制時間範圍以包含在鄰居圖中,因此可以稱爲時間內核大小。爲了完成ST圖上的卷積運算,我們還需要採樣函數權重函數採樣函數與空間圖唯一的情況相同,並且權重功能,或者特別是標籤圖lST。 因爲時間軸是有序的,所以我們直接修改了標籤圖lST,將基於vti的時空鄰域修改爲

其中lti(vtj)vti中單幀情況的標籤映射。通過這種方式,我們在構造的空間時間圖上有一個明確定義的卷積運算

3.4分區策略

鑑於空間時間圖卷積的高級公式,設計分區策略以實現標籤圖L是很重要的。在這項工作中,我們探討了幾種分區策略爲簡單起見,我們僅討論單個幀中的情況,因爲它們可以使用公式7自然地擴展到空間 - 時間域

標籤。最簡單和最直接的競爭策略是擁有子集,即整個鄰域集本身。在該策略中,每個鄰近節點上的特徵向量將具有具有相同權重向量的內積。 實際上,這種策略類似於 Kipf and Welling 2017)中引入的傳播規則。 它有一個明顯的缺點,即在單幀情況下,使用這種策略相當於計算權重向量和所有相鄰節點的平均特徵向量之間的內積。 這對於骨架序列分類來說是次優的,因爲在該操作中可能丟失局部差分屬性。形式上,我們有K = 1lti(vtj)= 0,∀i,j∈V

距離分區另一種自然劃分策略是根據節點到根節點vti的距離d(.,vti)來劃分鄰域集。在這項工作中,因爲我們設置了D=1,所以鄰居集將被分成兩個子集,其中d=0表示根節點本身,其餘的鄰居節點位於d=1子集中。因此,我們將有兩個不同的權重向量,它們能夠模擬局部微分特性,例如關節之間的相對平移。形式上,我們有K = 1lti(vtj)=d(vtj,vti)

空間配置分區。由於身體骨架是空間定位的,我們仍然可以在分割過程中利用這個特定的空間配置。我們設計了一種策略,將相鄰集分成三個子集:1)根節點本身;2)向心羣:比根節點更接近骨架重心的相鄰節點;3)離心羣。在這裏,框架中所有關節的平均座標被視爲其重心。這一策略的靈感來源於這樣一個事實:身體部位的運動可以大致分爲同心運動和偏心運動。形式上,我們有

其中其中ri是訓練集中所有幀上從重心到關節i的平均距離

 三種分區策略的可視化如圖3所示。我們將在基於骨架的動作識別實驗中對所提出的分割策略進行實證研究。預計更高級的分區策略將帶來更好的建模能力和識別性能。

圖3 本文提出的用於構建卷積操作的分割策略。從左到右:(a)輸入骨骼的框架示例。身體關節以藍點表示。D=1 的卷積核感受野由紅色的虛線畫出。(b)單標籤劃分策略。其中近鄰的所有節點標籤相同(綠色)。(c)距離劃分。這兩個子集是距離爲 0 的根節點本身,和距離爲 1 的根節點相鄰節點(藍色)。(d)空間構型劃分。根據節點到骨架重心(圖中黑色十字)的距離和到根節點(綠色)的距離的比較進行標記。向心節點(藍色)到骨架重心的距離比根節點到骨架重心的距離短,而離心節點(黃色)到骨架重心的距離比根節點長。

 

3.5 可學習的邊緣重要性加權

雖然人們在做動作時關節是成組移動的,但一個關節可能出現在多個身體部位。然而,這些外觀在建模這些部件的動力學時應該具有不同的重要性。在這個意義上,我們在時空圖卷積的每一層上都添加了一個可學習的掩模M。該遮罩將根據ES中每個空間圖形邊緣的已知重要性權重,縮放節點特徵對相鄰節點的貢獻。實驗結果表明,加入該掩模可以進一步提高ST-GCN的識別性能。因此,也可以有一個與數據相關的注意地圖。我們把這個留給將來的工作

3.6 實現 ST-GCN

基於圖形的卷積的實現不像2D或3D卷積那樣簡單。 在這裏,我們提供了有關實現ST-GCN基於骨架的動作識別的詳細信息。我們採用類似於圖形卷積的實現(Kipf和Welling 2017)。單個幀內的關節的體內連接由相鄰矩陣A和表示自連接的單位矩陣I表示。 在單幀情況下,具有第一個分區策略的ST-GCN可以使用以下公式實現(Kipf和Welling 2017)

其中Λii = j(Aij + Iij ).這裏,多個輸出通道的權重向量被堆疊以形成權重矩陣W.實際上,在空間時間情況下,我們可以將輸入特徵圖表示爲(C,V,T)維度的張量。 通過形成1×Γ標準2D卷積並將得到的張量與第二維上的歸一化鄰接矩陣Λ-1/2(A + I)Λ-1/2相乘來實現圖卷積。

 對於具有多個子集的分區策略,即距離分區和空間配置分區,我們再次利用該實現。但請注意,現在鄰接矩陣被拆分成幾個矩陣Aj,即A + I =ΣjAj。 例如,在距離分區策略中,A0 = I 和A1 = A公式9轉化爲

其中近似的Λjii = k(Ajik )+α。這裏設置α = 0.001避免Aj中出現空行

 實現可學習的邊緣重要性加權是直截了當的。 對於每個鄰接矩陣,我們伴隨着可學習的權重矩陣M並且我們分別用(A + I)MAjM代替等式9中的矩陣A + IAj在等式10中的矩陣Aj。這裏表示兩個矩陣之間的元素積。掩碼M被初始化爲一個全一矩陣

網絡架構和訓練由於ST-GCN在不同節點上共享權重,因此保持輸入數據的規模在不同關節上保持一致是很重要的。在我們的實驗中,我們首先將輸入骨架提供給批量標準化層以標準化數據。 ST-GCN模型由9層空間時間圖卷積算子(ST-GCN單元)組成。前三層有64個輸出通道。 以下三層有128個輸出通道。 最後三層有256個輸出通道。 這些層具有9個臨時內核大小。 Resnet機制適用於每個ST-GCN單元。並且我們在每個ST-GCN單元之後以0.5概率隨機丟棄特徵以避免過度擬合。第4和第7時間卷積層的步幅被設置爲2作爲彙集層。 之後,在重新生成的張量上執行全局池,以獲得每個序列的256維特徵向量。 最後,我們將它們提供給SoftMax分類器。 利用隨機梯度下降學習模型,學習率爲0.01。 我們在10個時期之後將學習率降低了0.1。爲了避免過度擬合,我們在對Kinetics數據集進行訓練時執行兩種增強來替換丟失層(Kay et al.2017)。首先,爲了模擬相機運動,我們對所有幀的骨架序列進行隨機仿射變換。 特別地,從第一幀到最後一幀,我們選擇幾個固定角度,平移和縮放因子作爲候選,並且隨機採樣三個因子的兩個組合以產生仿射變換。 對於中間幀插入此變換以生成效果,就好像我們在回放期間平滑地移動視點一樣。 我們將這種增強命名爲隨機移動。 其次,我們在訓練中隨機對原始骨架序列中的片段進行採樣,並使用測試中的所有幀。 網絡頂部的全局池使網絡能夠以無限長度處理輸入序列我們還將ST-GCN模型與此數據集上先前最先進的方法進行了比較。 由於此數據集的約束性質,我們在訓練ST-GCN模型時不使用任何數據擴充。 我們遵循文獻中的標準實踐,根據top-1個分類準確度報告跨主題(X-Sub)和交叉視圖(X-View)識別性能。

4 實驗

在本節中,我們評估了ST-GCN在基於骨架的動作識別實驗中的性能。 我們在具有巨大不同性質的兩個大規模動作識別數據集上進行實驗:Kinetics人類行爲數據集(Kinetics)(Kay等人2017)是迄今爲止最大的無約束動作識別數據集,以及NTU-RGB + D(Shahroudy等人。 2016)最大的內部捕獲動作識別數據集。 特別是,我們首先對Kinetics數據集進行詳細的消融研究,以提出所提出的模型組件對識別性能的貢獻。 然後我們將ST-GCN的識別結果與其他最先進的方法和其他輸入方式進行比較。 爲了驗證我們在無約束設置中獲得的體驗是否是通用的,我們嘗試NTU-RGB + D上的約束設置,並將ST-GCN與其他最先進的方法進行比較。 所有實驗均在使用8個TITANX GPU的PyTorch深度學習框架上進行。

4.1 數據集和評估指標

KineticsDeepmind Kinetics人類行爲數據集(Kayet al.2017)包含從YouTube檢索到的約300,000個視頻剪輯。 這些視頻涵蓋多達400個人類行動課程,從日常活動,運動場景到複雜的互動行動。 Kinetics中的每個片段持續約10秒。

此Kinetics數據集僅提供沒有骨架數據的原始視頻剪輯。 在這項工作中,我們專注於基於骨架的動作識別,因此我們使用像素座標系中的估計關節位置作爲輸入並丟棄原始RGB幀。 爲了獲得關節位置,我們首先將所有視頻調整爲340×256的分辨率,並將幀速率轉換爲30 FPS。 然後我們使用公共可用的OpenPose(Cao等人2017b)工具箱來估計剪輯的每個幀上18個關節的位置。 工具箱給出了像素座標系中的2D座標(X,Y)和18個人體關節的置信度分數C. 因此,我們用(X,Y,C)元組表示每個關節,並且骨架框架被記錄爲18個元組的數組。 對於多人案例,我們選擇每個片段中平均關節置信度最高的2個人。 以這種方式,具有T幀的一個剪輯被轉換爲這些元組的骨架序列。 在實踐中,我們用(3,T,18,2)維度的張量表示剪輯。 爲簡單起見,我們通過從一開始重放序列來填充每個剪輯,使其具有T = 300.我們將在Kinetics上釋放估計的關節位置以再現結果。

我們根據數據集作者推薦的top-1和top-5分類準確度來評估識別性能(Kay等人2017)。 該數據集提供240,000個剪輯的訓練集和20,000的驗證集。 我們在訓練集上訓練比較模型,並在驗證集上報告準確度

NTU-RGB+D: NTU-RGB+D(Shahroudy et al. 2016)是目前最大的具有三維關節註釋的人工動作識別任務數據集。 該數據集包含60個動作類中的56,000個動作片段。 這些剪輯全部​​由在受限制的實驗室環境中捕獲的40名志願者完成,同時記錄三個攝像機視圖。所提供的註釋在攝像機座標系中給出3D關節位置(X,Y,Z),由Kinect深度傳感器檢測 。 骨架序列中每個受試者有25個關節。 每個剪輯保證最多有2個主題。

該數據集的作者推薦了兩個基準:1)交叉主題(X-Sub)基準40,320和16,560個剪輯用於訓練和評估。在此設置中,訓練片段來自演員的一個子集,模型將根據其餘演員的剪輯進行評估; 2)交叉視圖(X-View)基準37,920和18,960個剪輯。 此設置中的訓練片段來自攝像機視圖2和3,評估片段全部來自攝像機視圖1.我們遵循此約定並報告兩個基準測試的top-1個識別準確度

4.2 消融研究

我們通過Kinetics數據集上的動作識別實驗檢驗了ST-GCN中提出的組分的有效性(Kay et al.2017)

時空圖卷積首先,我們評估了使用時空圖卷積運算的必要性。我們使用基線網絡架構(Kim和Reiter,2017年),其中所有時空卷積僅由時間卷積重新放置。也就是說,我們將所有的輸入關節位置連接起來,在每一幀T上形成輸入特徵。然後時間卷積將對這個輸入和隨時間卷積進行操作。我們稱這種型號爲“基線TCN”。這種識別模型在約束數據集(如NTU-RGB+D)上工作良好(Kim和Reiter,2017年)從表1中看到具有時空圖卷積的模型,具有合理的劃分策略,在Kinetics上始終優於基線模型。實際上,這種時間卷積等價於完全連接的關節圖上具有非共享權重的時空圖卷積。因此,基線模型和ST-GCN模型的主要區別在於卷積運算中稀疏的自然連接和共享權重。此外,我們評估了基線模型和ST-GCN之間的中間模型,稱爲“局部卷積”。在該模型中,我們使用稀疏關節圖作爲ST-GCN,但使用非共享權重的卷積濾波器,我們相信基於ST-GCN的模型的較好性能可以證明基於骨架的動作識別中時空圖卷積的力。

表1:Kinetics 數據集的消融研究。 “ST-GCN + Imp”用於與其他最先進的方法進行比較。 有關各設置的含義,請參閱4.3節  

 

分區策略在這項工作中,我們提出了三種分區策略:1)單標籤;2)距離分區;3)空間配置分區。我們用這些劃分策略評估ST-GCN的性能,結果彙總在表1中。我們觀察到,使用多個子集進行劃分通常比使用單標籤要好得多。這與單標籤明顯存在的問題一致,即它相當於卷積運算前簡單地求特徵的平均值。鑑於這一觀察結果,我們在距離分割和單標籤之間進行了一箇中間試驗,稱爲“距離分割*”。在此設置中,我們將距離分區中的兩個子集的權重綁定爲僅通過縮放因子-1或w0 = -w1而不同。 此設置仍然實現了比單標籤更好的性能,這再次證明了使用多個子集進行分區的重要性。 在多子集劃分策略中,空間配置劃分實現了更好的性能。這證實了我們設計該策略的動機,其考慮了同心和偏心運動模式。 基於這些觀察,我們在以下實驗中使用空間配置分區策略

可學習邊緣重要性加權ST-GCN的另一個組成部分是可學習邊緣重要性加權。我們嘗試在ST-GCN模型上添加該組件,並對其進行空間配置劃分。這在表1中稱爲“ST-GCN+IMP”。考慮到高性能的Vanilla ST-GCN,該組件仍然能夠將識別性能提高1%以上。回想一下,該組件的靈感來源於不同部件中的關節具有不同的重要性。結果表明,ST-GCN模型能較好地表達聯合重要性,提高識別性能。基於這一觀察,我們總是將此組件與ST-GCN與其他最先進的模型進行比較。

4.3 與最新技術的比較

爲了驗證ST-GCN在無約束和約束環境下的性能,我們分別對Kinetics數據集進行了實驗(Kay等人以及NTU-RGB+D數據集(Shahroudy等人2016年)

KineticsKinetics上,我們比較了基於骨架的動作識別的三種特徵方法。 第一個是針對手工製作的特徵的特徵編碼方法(Fernando等人2015),在表2中稱爲“特徵編碼”。我們還Kinetics實施了兩種基於深度學習,即深度LSTM(Shahroudyet al.2016) )和Temporal ConvNet(Kim和Reiter 2017)。我們比較了這些方法在top-1和top-5精度方面的識別性能。 在表2中,ST-GCN能夠勝過以前的代表性方法。 作爲參考,我們列出了使用RGB幀和光流進行識別的性能(Kay et al.2017

表2:基於Kinetics 數據集的骨架模型的動作識別性能。在表的頂部,我們列出了基於幀的方法的性能

表3:NTU-RGB+D數據集上基於骨架的動作識別性能。我們報告了交叉主題(X-SUB)和交叉視圖(X-VIEW)基準點的精度。

NTU-RGB+DNTU-RGB+D數據集是在一個約束環境中捕獲的,該環境允許需要良好穩定的骨架序列才能正常工作的方法。我們還將ST-GCN模型與此數據集上先前最先進的方法進行了比較。 由於此數據集的約束性質,我們在訓練ST-GCN模型時不使用任何數據擴充。 我們遵循文獻中的標準實踐,根據前1個分類準確度報告交叉主題(X-Sub)和交叉視圖(X-View)識別性能。比較方法包括Lie Group(Veeriah,Zhuang和Qi 2015),Hierarchical RNN(Du,Wang和Wang 2015),Deep LSTM(Shahroudyet al.2016),Part-Aware LSTM(PA-LSTM)(Shahroudy等)。 2016),具有信任門的空間時間LSTM(ST-LSTM + TS)(Liu等人2016),時間卷積神經網絡(Temporal Conv。)(Kim和Reiter 2017),以及Clips CNN +多任務學習(C-CNN + MTLN)(Ke等人,2017)。 我們的ST-GCN模型具有相當簡單的架構,並且沒有(Kim和Reiter 2017; Ke等人.2017)中使用的數據增強,能夠超越此數據集上先前的最先進方法

討論實驗中的兩個數據集具有非常不同的性質。 在Kinetics上,輸入是用深度神經網絡檢測的2D骨架(Cao等人,2017a),而在NTU-RGB + D上,輸入來自Kinect深度傳感器。 在NTU-RGB + D上,攝像機是固定的,而在Kinetics上,視頻通常由手持設備拍攝,導致大鏡頭運動。 所提出的ST-GCN在兩個數據集上都能很好地工作的事實證明了所提出的時空圖卷積運算和所得到的ST-GCN模型的有效性。我們還注意到,在Kinetics方面,基於骨架的方法的精確度低於基於視頻幀的模型(Kay等人2017年)。我們認爲,這是由於Kinetics中的許多動作類需要識別參與者正在與之交互的對象和場景。爲了驗證這一點,我們選擇了30個與身體運動密切相關的類的子集,命名爲“Kinetics Motion”,並在表4中列出了骨架和基於框架模型(Kay等人,2017)的平均類精度。我們可以看到,在這個子集上,性能差距要小得多。我們還探討了利用ST-GCN在雙流式動作識別中捕捉動作信息的方法。如表5所示,我們的基於骨架的模型ST-GCN還可以爲RGB和光流模型提供補充信息。我們訓練標準TSN(Wang等人2016年)用RGB和光流模型從Kinetics劃分中得出的模型。將ST-GCN加入到RGB模型中,得到了0.9%的增長,甚至優於光流(0.8%)。結合RGB、光流和ST-GCN,性能進一步提高到71.7%。結果清楚地表明,當有效利用(例如使用ST-GCN)時,骨架可以提供補充信息。

表4:Kinetics 數據集的子集“Kinetics Motion”的平均等級精度。這一子集包含了30個與身體運動密切相關的Kinetics動作類。

 

表5:沒有ImageNet預訓練的Kinects數據集的類精度。 雖然我們基於骨架的模型ST-GCN無法實現對RGB和光流模式執行的最先進模型的精確度,但它可以提供比基於光流模型更強的補充信息

 

5 總結

本文提出了一種新的基於骨架的動作識別模型-時空圖卷積網絡(ST-GCN)。該模型在骨架序列上構造了一組時空圖卷積。在兩個具有挑戰性的大規模數據集上,所提出的ST-GCN優於先前最先進的基於骨架的模型。此外,ST-GCN還可以捕獲動態骨架序列中的運動信息,這是對RGB模態的補充。基於骨架的模型和基於幀的模型的組合進一步改善了動作識別中的性能。ST-GCN模型的靈活性也爲今後的工作開闢了許多可能的方向。例如,如何將場景、對象和交互等上下文信息合併到ST-GCN中成爲一個自然問題。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章