0. 前言
1. 要解決什麼問題
- 本文主要引入了一個視覺速率“visual tempo”(也可以翻譯爲節奏)的概念。
- 什麼是 visual tempo:做動作的節奏/速率。如下圖
- intra class:在同一類型,不同樣本中速率不同。
- inter class:不同類型類型樣本的速率不同。
- 不同行爲,tempo的變化程度不同:所有的剪羊毛樣本都差不多速率,不同的“後空翻”速率差別很大。
- 如何理解:visual tempo可以未接維行爲在時間尺度上特徵,或者說行爲的動態特徵。
- 什麼是 visual tempo:做動作的節奏/速率。如下圖
- 以前用於提取 visual tempo 的方法主要是通過不同幀率獲取原始幀,構建 input-level frame pyramid。
- 基本流程就如SlowFast,不同速率的樣本通過不同的backbone處理,然後做特徵融合,最後用於行爲識別。
- 這種方法太耗時,效率不夠高。
- 由於這種方法需要預先設置幀率,所以有一些限制。
- 希望能有 feature-level的特徵提取方法(感覺有點類似於檢測裏的FPN),既能提取visual tempo,又能節約性能。
2. 用了什麼方法
- 提出了一個即插即用的模塊 Temporal Pyramid Network
- 靈感來源:同一模型不同深度的網絡都已經提取了不同tempo的特徵。詳細點說,由於視頻數據的特徵圖一般尺寸爲
BATCH_SIZE, T, C, H, W
,那麼不同的T就代表了不同的幀率。 - Collection of Hierarchical Features
- 方法一:沒有FPN,獲取一個特徵圖,以特徵圖中的
T
通道作爲基礎,按照不同“幀率”選擇BATCH_SIZE, C, H, W
特徵圖。與下圖展示不同。 - 方法二:有FPN,根據不同層特徵圖擁有不同的通道
T
,作爲不同幀率作爲後續輸入。
- 方法一:沒有FPN,獲取一個特徵圖,以特徵圖中的
- Spatial Semantic Modulation:大概意思是,從backbone獲取的不同深度的空間語義特徵不一致(猜測就是
C, T, H, W
尺寸不一致,具體要看源碼),通過卷積操作設置爲相同尺寸。如下圖中,這一層的結果的尺寸完全相同。 - Temporal Rate Modulation:就是獲取不同幀率的特徵圖。這一步應該就是所謂的。
- Information Flow:特徵融合
- 靈感來源:同一模型不同深度的網絡都已經提取了不同tempo的特徵。詳細點說,由於視頻數據的特徵圖一般尺寸爲
- 特徵融合的方式
3. 效果如何
- 在Kinetics-400/Something-Something-V1 & V2/Epic-Kitchen三個數據集上能夠穩步提升性能。截圖不放了,反正都有提升就對了。
- 對於tempo變化較大的行爲類別,性能提高效果較好。
4. 還存在什麼問題
-
一看到Pyramid就知道,這類模型肯定不能用於算力不行的設備裏了……