时空超分辨论文阅读笔记(一)---- Zooming Slow-Mo
時空超分辨論文閱讀筆記(一)---- Zooming Slow-Mo
CVPR 2020
論文地址:https://arxiv.org/abs/2002.11616
代碼地址:https://github.com/Mukosame/Zooming-Slow-Mo-CVPR-2020
目錄
- 時空超分辨論文閱讀筆記(一)---- Zooming Slow-Mo
- Abstract
- 模型設計
- 1. 模型主要由四個部分組成:
- 2.主要模塊
- 2.1 中間幀特征插值模塊
- 2.2 Deformable ConvLSTM
- 2.3 幀重建模塊
- 3.一些參數設置
- 實驗部分
Abstract
關于時空超分辨(STVSR)模型的設計策略:
- 二階段模型(two-stage)
- 一階段模型(one-stage)
模型設計
圖1 模型結構圖1. 模型主要由四個部分組成:
-
特征提取模塊(feature extractor)
? 該模塊由一個Conv layer + k1k_1k1?個殘差塊組成,負責提取輸入幀特征。
-
中間幀特征插值模塊(frame feature temporal interpolation module)
? 該模塊根據輸入的特征序列信息{F2t?1L}t=1n+1\{F^L_{2t-1}\}^{n+1}_{t=1}{F2t?1L?}t=1n+1?,預測輸出中間幀序列的特征{F2tL}t=1n\{F^L_{2t}\}^{n}_{t=1}{F2tL?}t=1n?。
-
Deformable ConvLSTM
? 該模塊則是對整個特征序列進行一個時間對齊和特征聚合 。
-
高分辨率幀重建模塊(HR frame reconstructor)
? 利用經過時空融合后的特征序列生成最后的高清高分辨視頻序列
2.主要模塊
2.1 中間幀特征插值模塊
? 二階段方法(VFI+VSR)中往往是在像素級(pixel-wise)上先生成中間幀,然后對插幀后的序列進行超分辨,為了以one-stage的方式完成插幀和超分,該模塊對輸入幀特征進行采樣融合來生成中間幀特征。根據插幀的經驗,要生成中間幀特征,需要利用上下文特征間的雙向運動信息來近似估計兩側到中間的運動信息(forward motion information and backwarp motion information),然后再進一步融合這兩側運動信息和上下文特征從而生成中間幀特征。
? 至于如何估計上下文特征間的雙向運動信息,該模塊采用了可變形卷積,認為其不規則的采樣區域,具備比較強大的對幾何物體運動建模的能力,能夠從上下文特征中捕捉比較豐富的運動信息,以更好應對包含復雜運動和大幅運動的視頻場景,運動信息估計模塊如下圖所示:
圖2 可變形卷積估計運動信息近似生成中間特征? 值得注意的是這里的blending操作采用的是簡單的線性混合函數來結合T1T_1T1?以及T3T_3T3?,具體公式如下:
F2L=α?T1(F1L,Φ1)+β?T3(F3L,Φ3)F^L_2 = \alpha*T_1(F^L_1,\Phi_1)+\beta*T_3(F^L_3,\Phi_3) F2L?=α?T1?(F1L?,Φ1?)+β?T3?(F3L?,Φ3?)
其中,α和β\alpha和\betaα和β 指的是兩個1x1的卷積核,而?*?則代表的是卷積操作。
2.2 Deformable ConvLSTM
? 生成完整的視頻幀特征序列{FtL}t=12n+1\{F^L_t\}^{2n+1}_{t=1}{FtL?}t=12n+1? 后,就需要利用該特征序列來生成HR Frames。顯然,對于整個序列來說,時間信息是非常重要的,且為了保證生成HR video的時間一致性,需要有效利用序列所隱藏的幀間信息。這篇工作,則考慮使用ConvLSTM來在序列間傳播時間信息,同LSTM一樣,ConvLSTM通過融合前面傳遞到當前時間步t的隱藏狀態ht?1h_{t-1}ht?1?,記憶狀態ct?1c_{t-1}ct?1?和時間步t的特征,輸出hth_tht?和ctc_tct?然后繼續向下傳播時間信息,大致公式如下所示:
ht,ct=ConvLSTM(ht?1,ct?1,FtL)h_t,c_t = ConvLSTM(h_{t-1},c_{t-1},F^L_t) ht?,ct?=ConvLSTM(ht?1?,ct?1?,FtL?)
? ht?1h_{t-1}ht?1? 以及 ct?1c_{t-1}ct?1? 就是t之前序列的時間信息,得益于記憶狀態ccc,ConvLSTM具有長期記憶的能力, 而利用Conv來捕捉t時刻的特征與其之前狀態的一個運動信息,但是由于卷積時的感受野比較小,所以ConvLSTM處理大幅運動的能力有限,而這會導致錯誤信息的不斷傳播和累積。
? 為了更好處理大幅運動的視頻,這篇工作在ConvLSTM中嵌入了可變形卷積操作,利用可變形卷積分別捕捉[ht?1,FtL][h_{t-1},F^L_t][ht?1?,FtL?] 和 ct?1,FtL]c_{t-1},F^L_t]ct?1?,FtL?]之間的運行信息并實現時間上的對齊,得到[ht?1a,ct?1a][h^a_{t-1},c^a_{t-1}][ht?1a?,ct?1a?] ,然后再利用ConvLSTM繼續進行時間信息的聚集和特征融合,并向下傳播,過程的示意圖如下所示:
圖3 嵌入可變形卷積的ConvLSTM? 同時,為了更好利用全局的時間信息,實際上使用了雙向的可變形 ConvLSTM(Bidirectional Deformable ConvLSTM),生成融合了過去和未來信息的特征序列{ht}t2n+1\{h_t\}^{2n+1}_t{ht?}t2n+1?。
2.3 幀重建模塊
? 幀重建模塊則是使用了一個時間共享的合成網絡,輸入當個時間步的隱藏狀態hth_tht?,然后輸出對應的HR frame,具體來說就是使用了k2k_2k2?個殘差塊提取深度特征信息,然后通過亞像素卷積(sub-pixel)+PixelShuffle重建出HR frames {Itt}t=12n+1\{I^t_t\}^{2n+1}_{t=1}{Itt?}t=12n+1?。重建損失函數如下:
lrec=∣∣IGTt?ItH∣∣2+?2l_{rec}=\sqrt {||I^GT_t-I^H_t||^2+\epsilon^2} lrec?=∣∣IGTt??ItH?∣∣2+?2?
? ?2\epsilon^2?2是一個經驗值,設置為1e-3,為了保證訓練的穩定性(我認為:數值穩定---->訓練穩定)
3.一些參數設置
-
k1=5,k2=40(5個殘差塊用于feature extractor,40個殘差塊用于幀重建部分)
-
將連續的4個奇數幀,通過隨機裁剪成32x32的patches作為輸入
-
VSR的倍數設置為x4
-
數據增強(隨機旋轉90。,180。,270。90^。,180^。,270^。90。,180。,270。以及水平翻轉)
-
Adam optimizer
-
從4e-4開始到1e-7,對每個batch使用余弦退火(cosine annealing)。
-
batch = 24
實驗部分
表1 各算法性能比較和其他的二階段方法(由VFI和VSR中的SOTA模型組合完成)比起來,Zooming Slow-Mo在評估集上的表現都更好,并且由于是一階段模型,模型的參數量比較小,且推理速度比起其他模型都要快得多。(TiTan XP Vid4上測試)
總結
以上是生活随笔為你收集整理的时空超分辨论文阅读笔记(一)---- Zooming Slow-Mo的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cls 参数
- 下一篇: R语言古风诗人转职c++