SlowFast介紹

SlowFast是何凱明大神於Facebook發表於ICCV2019的關於人體行爲識別的雙流模型框架。

上圖是SlowFast模型的主要結構,上面的部分爲空間分支,它是一個低幀率(Low frame rate)的分支,我們希望它主要捕捉一些RGB的圖像特徵。它具有較少的幀數,較大的通道數。下面的部分爲時間分支,它是一個高幀率(High frame rate)的分支,我們希望它捕捉一些動作的特徵,因爲動作變化比較快,所以它有較多的幀數,較小的通道數。

在空間分支的右邊的C表示通道數,T表示時間維度。我們可以看到它的通道數都比較大,時間維度比較小;在時間分支的右邊的βC表示通道數,αT表示時間維度。我們可以看到它的通道數都比較小,時間維度比較大。這裏的α=8、β=1/8、τ=16(採樣步長)

這兩個分支的輸入維度大小都是3*64*224*224(3是通道數,64爲幀數,224代表寬高),區別在於時間步長不同。

在上表中,我們可以看到它的原始切片爲64*224^2。對於slow分支,它的步長爲16,所以採樣幀數爲64/16=4;而fast分支的步長爲2,所以採樣幀數爲64/2=32。經過了幀採樣進入了卷積層,對於slow分支來說,從conv1到res3,我們看到它的時間卷積核大小都是1,說明都沒有在時間維度進行卷積。作者發現在淺層去提取時間特徵會有害。直到res4和res5的時間卷積核大小爲3,纔對時間特徵進行提取。而在fast分支,從conv1開始就有時間卷積核的大小,爲5。後面的res2到res5都一直在提取時間特徵。到最後,slow分支的維度爲4*7*7,fast分支的維度爲32*7*7。我們發現它們的幀數都沒有發生變化,所以在時間維度上是沒有進行下采樣的。

  • 3種信息融合策略

在網絡結構圖中,我們可以看到會有時間分支的箭頭指向空間分支中,它的融合方式有3種

  1. 從時間到通道融合,具體是將時間分支的特徵圖(αT時間維度,S^2空間維度,βC通道數)進行轉置爲(T,S^2,αβC),這樣就跟空間分支的特徵圖一樣了,然後進行拼接。
  2. 基於時間採樣的融合,因爲時間分支的特徵圖的時間維度爲αT,表示每α幀進行一次採樣,這樣我們將時間步長採樣到跟空間分支一樣,這樣(αT,S^2,βC)就變成了(T,S^2,βC),這樣就可以進行拼接。
  3. 基於時間的3D卷積,可以基於時間步長的採樣,同樣可以基於時間步長的卷積,使用5*1*1的3D卷積核可以得到一個2βC的輸出通道,步長爲α。

總體思想就是要將時間分支的特徵圖變成跟空間分支的特徵圖的時間維度和空間維度大小一樣就可以了,這樣就可以在通道維度上進行拼接

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