デジタルビデオ安定化の概要

まずここでは、デジタルビデオ安定化の処理の流れを概要として紹介します。その後、各処理の詳細について順番にみていくことにしましょう。(今回は、Microsoftの松下氏ほかが2006年の論文で提案した技術を、ビデオ安定化の典型例として紹介します)。

デジタルビデオ安定化で達成したい目的は主に以下の2つです

  1. 手ブレなどでカメラの動きの多い(見にくい)映像を、動きが安定化された(見やすい)映像へと処理する。
  2. ブレ補正を行うと元の動画には映っていない欠損領域(図中赤の領域)が生じるので、それらをインペインティングでもっともらしい画素により穴埋めして、画像全体に欠損領域がない映像にする。

以下の図において、実際の入力と処理結果を見て頂けると、この2つの目的のイメージがわきやすいと思います。

デジタルビデオ安定化

図中の上の段が、元の入力動画から(後に述べる処理(1)と(2)によって)各フレームの元画像を移動した「安定化されたシーケンス」です。元画像では手ぶれにより色々な方向にカメラ移動が激しかったり、細かかったりしたものを安定した動きにしたものに対して、入力動画の各フレームとは違った動き量で各フレームを移動させているので、各フレームには欠損領域(図中赤色の領域)がうまれており、このままだと、手ブレによる細かな動きは消されて動きが安定してはいるものの、欠損領域が残ったままの映像になってしまいます。そこで、推定した動き量を用いて、周辺フレームの画素を利用したインペインティングを行うことにより、欠損領域を自然な画素で埋める、インペインティング処理を行います。(後に述べる処理(3))。

これら2つの目的を同時に達成するために、デジタルビデオ安定化の処理では、以下の3段階の処理を行います。

  1. 動きの推定(グローバルな動きとローカルな動き)
  2. (1で求めた)動きの動き補償(動きの平滑化とインペインティング)
  3. (1、2で求めた動きを元にした)画像の補正と変形。(モーションブラーの除去と画像のインペインティング)

デジタルビデオ安定化の処理の流れ

このうち処理1と2が、動画から穴埋めと補正用のモーション推定を行う処理です。前回まで解説した、画像全体のモーション推定や、局所領域ごとのオプティカルフロー推定により、処理1でまずは画素ごとの動き量を求め、処理2で、その動き量をなめらかにして安定化させ、欠落している領域のモーションを穴埋め(インペインティング)します。

そのようにして処理1、2から求めた「安定化済みの画素ごとのモーション(つまりは欠落領域を含めたオプティカルフロー)」を用いて、こんどは処理3により、周辺フレームから得た自然な画素値で欠損領域をインペインティングしていきます(インペインティングについての詳細は過去の記事を参照ください)。これにより、動き量に沿った値で動画全体を安定化させながら穴埋めを行う、というのがデジタル動画安定化の基本的な処理の流れです。それでは、次回以降、順番に1~3の処理を見て行きましょう