2. タイトル:Blind Video Temporal Consistecy via
Deep Video Prior
著者:Chenyang Lei, Yazhou Xing, Qifeng Chen
所属:The Hong Kong University of Science and Technology (HKUST)
書誌情報:NeurIPS 2020
プロジェクト:https://chenyanglei.github.io/DVP/index.html
論文:https://arxiv.org/abs/2010.11838
実装:https://github.com/ChenyangLEI/deep-video-prior (TensorFlow 1)
2
3. 目次:
1. 概要
2. タスク
3. 関連研究
4. 提案手法
5. 実験・結果
6. まとめ・感想
3
タイトル:Blind Video Temporal Consistecy via
Deep Video Prior
11. 3.関連研究1
Blind Video Temporal Consistency (SIGGRAPH 2015, Bonneel et al.)
最終的なフレームを求めるパラメータとした、 Scene Dynamics(処理内容)とTemporal Consistency(一貫
性)の2つのエネルギーの同時最適化問題をオイラー・ラグランジュ方程式を利用して解く
11
最初のフレームはレファレンスとして、2番目の出力から順に解いていく(結果を伝播させる)
12. 3.関連研究1
Blind Video Temporal Consistency (SIGGRAPH 2015, Bonneel et al.)
最終的なフレームを求めるパラメータとした、 Scene Dynamics(処理内容)とTemporal Consistency(一貫
性)の2つのエネルギーの同時最適化問題をオイラー・ラグランジュ方程式を利用して解く
12
勾配(エッジ)情報を近づけることで処理内
容を保持させる
ワープにはオリジナルのoptical flow or PatchMatchの情
報を利用し、連続するフレームの一貫性を持たせる
そもそもオリジナルのワープが上手くいかない場合はその重
みを小さくする(※V = I)
最初のフレームはレファレンスとして、2番目の出力から順に解いていく(結果を伝播させる)
13. 3.関連研究1
Blind Video Temporal Consistency (SIGGRAPH 2015, Bonneel et al.)
最終的なフレームを求めるパラメータとした、 Scene Dynamics(処理内容)とTemporal Consistency(一貫
性)の2つのエネルギーの同時最適化問題をオイラー・ラグランジュ方程式を利用して解く
13
勾配(エッジ)情報を近づけることで処理内
容を保持させる
ワープにはオリジナルのoptical flow or PatchMatchの情
報を利用し、連続するフレームの一貫性を持たせる
短所:
● 勾配情報だけでは複雑な処理内容を保持させることが難しい(例:画風のスタイル変換)
● 結果を伝播させる過程で誤差が積もるため徐々に処理内容が薄れていく
14. 3.関連研究2
Learning Blind Video Temporal Consistency (ECCV 2018, Lai et al.)
処理内容と一貫性に関する損失を用いて直接最終的なフレームを出力するモデルを作る
14
15. 3.関連研究2
Learning Blind Video Temporal Consistency (ECCV 2018, Lai et al.)
テスト時はRNNを用いて逐次的に4枚の入力から最終的なフレーム(の残差)を出力する
15RNNを利用することでどんな長さの動画でも構造的に時系列情報を扱える
前の論文と異なり最適化に長期的な一貫性も考慮した損失を用意
16. 3.関連研究2
Learning Blind Video Temporal Consistency (ECCV 2018, Lai et al.)
モデルは以下のような、 skip connectionとResBlockとConv LSTMを利用したFullConvNet
16
出力フレームは隣同士ほとんど同じなので細かい差異に注意が向くように残差を出力させている
オリジナルと最終的なフレームは見た目が大きく異なる場合があるため
skip connectionは設けない
18. 最終的な損失:
3.関連研究2
Learning Blind Video Temporal Consistency (ECCV 2018, Lai et al.)
処理内容に関する損失は、処理されたフレームとの特徴マップでの L1損失を使用
処理内容の損失:
Content Perceptual Loss
VGG19の l 層目の特徴マップ(’relu4-3’を使用)
18
T:総フレーム数、N:総ピクセル数
19. 3.関連研究2
Learning Blind Video Temporal Consistency (ECCV 2018, Lai et al.)
短所:
● 訓練データを準備する必要がある
● 逐次的に最終的なフレームを求める以上、誤差が積もりやすく処理内容が薄れやすい
長所:
● 推論時の動作は速い( 418FPS on Nvidia Titan X with a resolution of 1280x720)
● シングルモデルで学習時になかった画像処理パターンにも対応可能
19
22. 4.提案手法
22
Blind Video Temporal Consistency via Deep Video Prior
ランダムに初期化した CNNに対してオリジナルフレームを順にバッチサイズ1で入力し、出力が処理されたフ
レームに近づくようにパラメータを学習していけば、 flickeringのような入力によってばらつく部分より入力に共
通する部分(時間方向に一貫している部分)が先に学習され、処理内容を保ちつつ一貫性を持ったフレーム
が手に入るのではないかという提案
CNNを使うことで暗黙的に課される正則化のことを
論文ではDeep Video Priorと呼んでいる
画像処理
初期化した
CNN 処理内容の損失のみ、明示的に一貫性については設けない
以下の最適化でCNNのパラメータを学習し、特定のepochs(25−50程度)で学習をとめる
そのときのCNN出力を最終的なフレームとして使用する
23. 4.提案手法
23
Blind Video Temporal Consistency via Deep Video Prior
ランダムに初期化した CNNに対してオリジナルフレームを順にバッチサイズ1で入力し、出力が処理されたフ
レームに近づくようにパラメータを学習していけば、 flickeringのような入力によってばらつく部分より入力に共
通する部分(時間方向に一貫している部分)が先に学習され、処理内容を保ちつつ一貫性を持ったフレーム
が手に入るのではないかという提案
※
著者らの動機に対する自分の解釈としては
・学習初期のCNNは似た入力に対して同じような出力をする(経験則)
(最終的には似た入力に対してもその差異を復元できるようになる)
⇒ 似た入力に対しては共通部分から徐々に差異を学習していきそう(Deep Image Prior)
・動画は基本的には連続していて時間方向に一貫性があり各フレームが似ている
⇒ 一連の動画フレームに対しては上記の経験則が当てはまりそう
ということかなと思っています
画像処理
初期化した
CNN
24. 4.提案手法
24
Blind Video Temporal Consistency via Deep Video Prior
ランダムに初期化した CNNに対してオリジナルフレームを順にバッチサイズ1で入力し、出力が処理されたフ
レームに近づくようにパラメータを学習させていけば、 flickeringのような入力によってばらつく部分より入力に
共通する部分(時間方向に一貫している部分)が先に学習できて処理内容を保ちつつ一貫性を持ったフレー
ムが手に入るのではないかという提案
従来手法
前のフレームの結果に依存する
⇒長期の一貫性を保つのが難しい
処理内容 一貫性
25. 4.提案手法
25
Blind Video Temporal Consistency via Deep Video Prior
ランダムに初期化した CNNに対してオリジナルフレームを順にバッチサイズ1で入力し、出力が処理されたフ
レームに近づくようにパラメータを学習させていけば、 flickeringのような入力によってばらつく部分より入力に
共通する部分(時間方向に一貫している部分)が先に学習できて処理内容を保ちつつ一貫性を持ったフレー
ムが手に入るのではないかという提案
提案手法
処理内容 一貫性
Deep Video Priorによる
暗黙的な一貫性に関する正則化
⇒前フレームの結果に依存しない
30. 5.実験・結果
実験の設定:
Architecture: U-Net
Loss: Perceptual Loss
IRT distance: L1
Dataset: DAIVS, the test set collected by Bonneel et al.
Optimizer: Adam, lr=0.0001 for all task
Epochs: 25 (Dehazing, spatial white balancing, and image enhancement)
or
50 (Intrinsic decomposition, colorization, style transfer, and CycleGAN)
Batchsize: 1 30