ペリー、Matchmoving について語る

こんにちは。 心綺楼プレイ後から、自分の中でマミゾウさんの株がストップ高のペリーです。
あのもふもふ感はすばらしい!ドット絵職人さんの真髄ここに極まりって感じですね。
(あぁ、そして未だに積みっぱなしの輝針城…

さて前回予告していた通り、今回は Matchmoving (マッチムービング) について書きたいと思います。
本当はまとめて記事を書いちゃおうかと思ったのですが、長さが微妙になるので2つに分けることにしました。
(なんで、前半の記事がかなり中途半端な長さに…)

まず「Matchmoving って何ぞ?」という方のために、我らがwikipedea 先生に聞いてみました。
マッチムーブ(Match Move)は、映像の合成における技術のひとつ。「動きを合わせる」という意味のCG用語。映像をトラッキングすることによってマッチムーブを行う。

古くから、映像の合成において、カメラが動くことは極めて難しい問題であった。たとえば、Aという映像がカメラが動いて撮影されているとする。そこにBという素材を合成するとなると、BもAと同じカメラの動きをしなければ不自然になる。これを解決する手段・技術のひとつがマッチムーブである。
とまあ、要するに「実写の背景CG違和感なく合成するための技術」といった感じです。

ただまあ、これはあくまで Matchmoving という概念を説明しているのであって、実際に Matchmoving をしてくれと頼まれた場合、ほぼ100%の確率で「実写のショットを元にして、3Dソフト用にカメラの動きを復元する作業」と言って良いと思います。

では、どうやって実写カメラの動きを復元すればいいのでしょうか?

これについては英語版の Wikipedia 先生で詳しく解説されていたので、興味のある人はこちらをどうぞ。
(注:英語です) http://en.wikipedia.org/wiki/Match_moving
まあ、そんな小難しい事は理解していなくても特に問題無く Matchmoving はできるのでご安心をw

要はこれまで解説したTracking(トラッキング )の応用で、動画内の数点(数十点)をトラッキングしてあげれば、後はソフトが勝手に撮影時のカメラの動きを復元してくれると言う優れ物なのです。
いやー、この原理を思いついた人に本気で感謝しなくては…。

と、ここまで書いたところで、普段ニコニコ動画をご覧の諸兄ならピンとくる動画があったかと思います。
そう2008年頃から一気に注目され始めた、AR(Augmented Reality:拡張現実)技術と、それを使って未来に生きる事を選んでしまった罪深い日本人達の末路です(笑)


こちらの主様の動画はリアルタイムで処理している分、若干カメラの動きにモデルがついて行っていませんが(それでも十分に未来に生きてますw)、Matchmoving の場合、あらかじめ撮って置いた動画を処理する分、より正確にカメラの動きを復元できます。

まあそんなこんなで、原理は違えどとりあえず「動画をトラッキングする」と言う点に関しては前回までと同じです。

それでは早速金門郷のショットを Matchmoving してみましょう。
まずは元のショットから。

次に撮影したショットをAfterEffectsなどを使ってスタビライズします。(詳しくはこちらこちら


この時も手で持ってドリーしたので、思いっきりローリングシャッターとパースペクティブの差異からくる歪みが発生していますね(汗)…でも、気合いで修正しています。
まだだいぶ違和感がありますが、残念ながらこれ以上は自分の技術では無理です(涙)
(だれか、オラに本物のCamera Stabilizerを貸してくれ!)

で、ここからが今までと違うところで、前回までだとポジション(位置)のためにトラッキングしたのが1ヶ所、回転を考えても2ヶ所までしかトラッキングしていませんでしたが、マッチムービングの場合は、出来る限り多くのポイントをトラッキングする必要があります。
こんな感じ↓。

一応理屈的には、最低3ヶ所のトラッキングポイントがあればマッチムービング出来るはずなのですが、それだと復元の際に正確性に欠けてしまうので、可能な限り多くのポイントでトラッキングします。
(数は正義だよ、兄貴)

トラッキングした後は完全にソフト任せ。ボタン一つで自動的にカメラを復元してもらいます。

なお、今回は手前のバルコニーの部分しかトラッキングしていませんが、本当なら「遠くのポイント」「真ん中のポイント」「手前のポイント」と距離に応じて何カ所かトラッキングしておくと、より正確な復元ができます。
今回は「遠くのトラッキングポイント」が遠すぎるんですよね(汗) 一体何キロ先だよ…。

後はカメラ情報を3Dソフト用に出力すれば完了です。
ちなみに、このショットの場合、自分は Autodesk 社の Matchmover と言うソフトを使用してします。

マッチムービングのソフトと言うと Boujou が有名ですが、個人的にはMaya と一緒にインストールされているこの Matchmover と、The Pixel Farm社のPFTrack を使い分けています。
ただ、最近はほとんどPFTrackで作業することが多いです。
やはりNukeに代表されるように、ノードベースのソフトはいろいろ条件を変えて試す際に、自分がこれまで何をやって来たか一発で分かるのがありがたいです。
AEで他人が作ったシーンファイルを開けて頭を抱えたことがある方は多いはずw

まあ、それは置いておいて(笑)
マッチムービングの計算が終わって、どうやらカメラが正しく復元されたようなら、このカメラデータを3Dソフト向けに出力します。

シーンにカメラを読み込んだら、後は適当なオブジェクトを置いてみて、カメラの動きがちゃんと背景とマッチしているか確認するだけです。


と言う訳で、とりあえずレイアウト用の素体を置いてレンダリングしてみました。

んー、マッチムービングは良いんですが、それよりもスタライズした背景が、かなり気持ちの悪い動きになってますね(汗)
これは早目に直さないと…。

あとマッチムービングの問題ではないのですが、撮影時のレンズディストーションのせいで、キャラクターが画面端に近づくにつれ、若干背景とキャラクターのパースがずれてきているのが…
え、黙っていればバレない?(笑)

とまあこんな感じで、金門郷プロジェクトでは、基本全てのショットを自分がうんうん唸りながら直しているわけです(涙目)

あぁ、こっちにも妙な歪が…。

0 コメント :

コメントを投稿

 

©Copyright Perry Street. All rights reserved.