1. 程式人生 > 實用技巧 >DDGCN: A Dynamic Directed Graph Convolutional Network for Action Recognition

DDGCN: A Dynamic Directed Graph Convolutional Network for Action Recognition

Introduction
作者認為解決如下兩個問題能有效增強GCN在動作識別中的能力:
1.在人類骨骼的不同部位中有著時空關聯性,但這些關聯性是動態的,而且在時空域中不同的動作關聯性也是不同的。因此提取這些關聯性很困難,標椎卷積操作普遍採納的傳統GCN是靜態的,而且僅僅描述了鄰居節點的空間聯絡,因而不能準確的獲得這樣的動態時空聯絡。

2.骨骼的空間層次結構和運動的時間序列特性都編碼了順序資訊,這在動作識別中是重要的。但是大多數現存的ST圖(spatial-temporal graph)模型描述動作使用的是無向圖,它不能獲得這樣的階資訊。

為了解決上述的問題,作者提出了端到端的Dynamic Directed Graph

Convolutional Network (DDGCN),作者還提出了三個新的模型,它能自適應的學習時空聯絡和建模時間與空間的階資訊。

Dynamic Convolutional Sampling (DCS).在時間與空間的相連關節之間的關係稱之為ST correlations,而且每一個節點 v v v描述這種關係使用特徵向量 f S T ( v ) f_{ST}(v) fST(v),在點 v v v和它的鄰居點集 B ( v ) B(v) B(v),我們計算 f S T ( v ) f_{ST}(v) fST(v)使用一個共享核權值 W W W的卷積。 B ( v ) B(v)

B(v)包括了 v v v的時空相連節點。在不同的動作中 B ( v ) B(v) B(v)是不同的,作者提出動態的建模ST correlations,並且計算每一個節點的鄰居節點集。因此在不同的動作作者設計DCS模型自適應的使用ST correlations來定義B。

Dynamic Convolutional Weights (DCW).為了在點 v v v的鄰居 B ( v ) B(v) B(v)內執行元素階卷積,我們需要對 v v v的鄰居節點分配學習權重 W W W。然而鄰居結點的空間順序是模糊的。為了讓GCN保持序列不變性,我們開發了DCW模型以自適應和動態的過程來計算權重W的順序。

Directed Spatial-Temporal Graph (DSTG) Features.特徵提取模型

在這裡插入圖片描述
在這裡插入圖片描述

Dynamic Convolutional Sampling (DCS)
DCS執行在靜態圖 G 0 G_0 G0,我們首先初始化 v v v的鄰居j節點列表 B ( v ) B(v) B(v),然後DCS演算法更新 B ( v ) B(v) B(v)來包含非鄰接節點。DCS計算每一個節點 v i v_i vi特徵值分兩步:
1.首先觀察所有的相連節點對 ( v i , v j ) , v i , v j ∈ G 0 (v_i,v_j),v_i,v_j\isin{G_0} (vi,vj),vi,vjG0,然後我們把這些非鄰接節點統一納入每個 v i v_i vi的鄰居集 B ( v i ) B(v_i) B(vi)中,然後把 v i v_i vi與新納入的非鄰接節點 v j v_j vj連線成一個新的邊。上述都是由動態取樣程式執行並使用下標變化來更新他們順序。我們使用函式 p i p_i pi來表示對 v i v_i vi的取樣, Δ p i \varDelta{p_i} Δpi表示一個下標變換。因此 p i ( B ( v i ) ) + Δ p i ( B ( v i ) ) p_i(B(v_i))+\varDelta{p_i(B(v_i))} pi(B(vi))+Δpi(B(vi))排序了所以節點 v j v_j vj和輸出了下標的序列。然後迭代更新 v i v_i vi鄰居節點的序列來發現一個更好的排序。
2.在 v i v_i vi與它的鄰居 v j v_j vj連線的邊,定義它們之間的相關特徵為 f ( v i , p i ( B ( v i ) ) + Δ p i ( B ( v i ) ) ) f(v_i,p_i(B(v_i))+\varDelta{p_i(B(v_i))}) f(vi,pi(B(vi))+Δpi(B(vi))),其中 v j = p i ( B ( v i ) ) + Δ p i ( B ( v i ) ) v_j=p_i(B(v_i))+\varDelta{p_i(B(v_i))} vj=pi(B(vi))+Δpi(B(vi)).

在這裡插入圖片描述

Dynamic Convolutional Weights
在圖中,每個節點的鄰接節點通常是無序的,鄰居的數量可能是不同的,為了保持順序不變性,作者提出了DCW權值分配模型。
節點 v v v和它的鄰居節點 B ( v ) B(v) B(v),DCW分配重排序核權值 W W W,我們將這個賦值計算為 r × 2 r×2 r×2矩陣 P v = D T W p a t h ( W , B ( v ) ) P_v=DTW_{path}(W,B(v)) Pv=DTWpath(W,B(v)),它使兩個向量 B ( v ) B(v) B(v)和重序 W W W之間的距離最小化, P v P_v Pv的第一列定義了W中元素的以排序下標,第二列表示 B ( v ) B(v) B(v)中備選擇的元素和它的順序。我們使用Dynamic Time Warping(DTW)演算法計算 p v p_v pv
DCW分配本質是獲得 B ( v ) B(v) B(v)不同大小,當核大小 r r r被固定時, B ( v ) B(v) B(v)的大小表示了 K K K可能的改變。注意 K K K v v v的價加上它不相鄰的相關頂點集的大小。如果 K K K大於 r r r,則將考慮前 r r r個有效節點(使用DTW演算法),而忽略其他節點。這允許我們在無需調整共享核心層的情況下完全連線這個超核心層。

Directed Spatial-Temporal Graph
DSTG特徵提取模型增強了從DCS和DCW模型獲取的初始特徵 f S T f_{ST} fST,與現有的方法使用三維關節/骨骼座標合併空間和時間順序資訊不同,DSTG使用從關節 v i v_i vi的特徵向量指向其相關關節 v j v_j vj的特徵向量的高維特徵向量。為每一個點 v i v_i vi我門分配了一個特徵向量 F i = { f i J , f i B , f i T } F_i=\{f_i^J,f_i^B,f_i^T\} Fi={fiJ,fiB,fiT},它是關節特徵 f i J f_i^J fiJ,骨骼特徵 f i B f_i^B fiB,時間特徵 f i T f_i^T fiT三個特徵向量的串聯。

Network Architecture
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20201009201001811.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ExMDEzNTUyNDE1,size_16,color_FFFFFF,t_70#pic_center