これは凄い 写真ではなく動画を「低解像度→高解像度」に一発変換!

未来のアルゴリズム、すでにできていた
さまざまな画像を生成できてしまう敵対的生成ネットワーク「GAN(Generative adversarial networks)」。ディープラーニングのネットワーク内で、「ニセモノを生成」→「ニセモノを見抜く」→「さらに精巧なニセモノを生成」といった「いたちごっこ」を繰り返すことで、リアルな画像を生成するものです(くわしくはこちらの記事で紹介)。

そして現在、このGANの新しいモデル、低解像度動画から高解像度動画を生成する「TecoGAN(Temporally Coherent GAN)」の完成度がすでに大変なことになっているというのです。実際はどのようなものか、動画で検証してみましょう。
(本記事のオリジナルサイトはこちら

ズームしても画質が変わらない?

画像超解像技術は、既存の画像情報から欠けている画像詳細を再構成することによって、低解像度画像から高解像度画像を生成するプロセスを指します。

画像と比べて、動画の超解像技術はより複雑です。詳細なフレーム画像生成を必要とするだけでなく、さらに、画像と画像の間の動きの一貫性も維持する必要があるからです。

新しく発表された論文“Temporally Coherent GANs for Video Super-Resolution (TecoGAN)”では、これらを考慮した動画超解像のための新しいモデル「TecoGAN」が提案されています。

次のアニメーションはTecoGANを使用して生成されたものです。

tecogan

細部まで綺麗に生成することができ、さらに時間的にも一致しています。普通の動画はズームすると画質が劣化しますが、TecoGANを用いることで画質を落とさずに拡大することができます。

また動画の場合、任意の超解像フレームを生成するだけでは足りません。より長いシーケンスにわたって動きが一致している必要があります。

論文では、空間的な高周波の詳細と時間的な関係の両方を考慮するGANに基づいたアイデアを採用し、フレーム間の動きを一致させています。

新しいフレームの生成プロセス

フロー推定ネットワーク付きジェネレータフロー推定ネットワーク付きジェネレータ

上の図版で示された生成器(Generator)について解説します。

ジェネレータGは、低解像度の入力から高解像度のビデオフレームを繰り返し生成するために使用されます。ジェネレーターGは通常の生成器にフロー推定ネットワークFを組み合わせたものです。このネットワークに、フロー(動き)と元の低解像フレームを入力すると、新しい超解像フレームが生成されます。

ここにおけるフロー(動き)とは、映像をズームした時、またはズームアウトした時の間の動きのことを指します。この動きを推定するネットワークをフロー推定ネットワークFとします。

フロー推定ネットワークFは通常のフレームxt-1とズームした時のフレームxtの間の動きを推定するように訓練されます。

一方、生成器は、一貫性のあるフレームを生成するために、一つ前に生成したデータを再利用するシステムを採用し、低解像度フレームgt-1から高解像度フレームgtを生成します。

フロー推定ネットワークFと生成器をくっつけ、識別器をだますように一緒に訓練していきます。