DDGCN: A Dynamic Directed Graph Convolutional Network for Action Recognition
Introduction
作者認為解決如下兩個問題能有效增強GCN在動作識別中的能力:
1.在人類骨骼的不同部位中有著時空關聯性,但這些關聯性是動態的,而且在時空域中不同的動作關聯性也是不同的。因此提取這些關聯性很困難,標椎卷積操作普遍採納的傳統GCN是靜態的,而且僅僅描述了鄰居節點的空間聯絡,因而不能準確的獲得這樣的動態時空聯絡。
2.骨骼的空間層次結構和運動的時間序列特性都編碼了順序資訊,這在動作識別中是重要的。但是大多數現存的ST圖(spatial-temporal graph)模型描述動作使用的是無向圖,它不能獲得這樣的階資訊。
為了解決上述的問題,作者提出了端到端的Dynamic Directed Graph
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)
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,vj∈G0,然後我們把這些非鄰接節點統一納入每個
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