* タイトル:Playable Environments: Video Manipulation in Space and Time
* 著者:Willi Menapace, Stéphane Lathuilière, Aliaksandr Siarohin, Christian Theobalt, Sergey Tulyakov, Vladislav Golyanik, Elisa Ricci
* 論文:https://arxiv.org/abs/2203.01914
* カンファ:CVPR2022
* プロジェクトページ:https://willi-menapace.github.io/playable-environments-website/
* コード:https://github.com/willi-menapace/PlayableEnvironments
目次
ゲームのように、プレイヤーやカメラがコントロールできるビデオ生成のこと。モデリングベースでは扱いづらい動的なスタイルも扱える。
Playable Environmentsの6個の特徴。
先行研究との位置づけは、GIRAFFEやGANcraftを複数の単眼動画像、複数の移動・変形物体、多様な物体やシーン外観に汎化できるように拡張したもの。
入力データは、オブジェクトごとのBounding Boxがついたフレーム画像。時点tの画像$I_t$と、時点t+1の画像$I_{t+1}$が入力に与えられ、$s_t^i\to s_t^{i+1}$への離散的な動きを行動ラベル$a_t^{i}\in{1,\cdots,K}$を用いて教師なしで学習する。$K$はハイパーパラメーター。
→アクションモジュールと合成モジュールは別々のフェーズで学習
特性3を満たすために、オブジェクトのカテゴリーを静的なものと動的なものに分ける。
$s_t^i=(x_t^i, w_t^i, \pi_t^i)$と表現し、
NeRFと同じ。NeRFでは3次元上の点の体積密度$\sigma$と輝度$c$に対し、レイ$r$を投射しレイキャスティングにより、ボリュームレンダリングにより出力を計算する。ボクセルで例えるなら体積密度はRGB値、輝度は不透明度に相当。
MLPのVにより、各オブジェクトの特徴をを個別に計算。図の「∫」はボリュームレンダリングプロセスで、Vはレイキャスティングの各レイ${x_p}_{p=1}^N$の特徴量$f_p$と不透明度$\sigma_p$を$f_p, \sigma_p=V(x_p)$と表現。
B→Vは正準空間(canonical space)からの符号化
ここは位置についてのただの回帰モデル。Bは正準空間での位置。最終的にレイ$r$上の点$x_p$に対応する、オブジェクトの位置$\tilde{x_p}$を求めたい。
$$\tilde{x_p}=x_p+B(x_p, \pi_t)$$
オブジェクト固有の位置$x_t$ではなく、レイ上の位置$x_p$と書いてあるので、いったんレイキャスティングをしてサンプリングをしていると考えられる(図のPoint sampling)
AdaINをベースにした埋め込みスタイルの埋め込み表現モデル$V$を使用
キャリブレーションとローカライズの誤差に対するロバスト性。超解像のようなアップサンプリングモジュール$F$を用意する。ここでの入力は、低解像度でチャンネル数が多い。ロバスト性と同時にNeRFのレイの数を大幅に減らすことができ、メモリ消費量的に美味しい。
Actionモジュールは連続する$s_t$、$s_{t+1}$のフレームが与えられたとき、ラベル$a_t$の表現$v_t$を獲得するもの。
モチベーションとしては、オブジェクトを移動したりしてコントロール済みの状態$\hat{s}_{t+1}$を求めたい。
ただ直接$\hat{x}_{t+1}$を学習すると現在のカメラと独立した動きを学習することが確認されたので、
$$\hat{x}_{t+1}=x_t+M\Delta$$
と学習した。ここで$M$はカメラの座標を表現する回転行列、$\Delta$はカメラの座標系でのオブジェクトの動き。
Playableなビデオ生成のための既存の研究は、オブジェクトが非現実的な動きをしたり、時間軸が不自然なことがある。時間方向の1DConvを用いた「Temporal Discriminator」というネットワークを導入する。
GANのロスは「Action Module」と「Temporal Discriminator」に適用。
Minecraftの動画や、テニスの試合の動画のデータセットを使用
この図は矢印方向に入力を与えたとき、実際のプレーヤーがどこに動いたのかを示すプロット。