無料で使えるオープンソースの3DCGソフトで、ライト層から第一線のアーティストまで幅広いユーザーに愛されているBlender。本誌vol.239でのBlender特集に続き、本記事ではメインのトラッキングソフトとしてBlenderを愛用する是松尚貴(@kurono73)氏が、その生産性の高さを紹介する。

※本記事は月刊『CGWORLD + digital video』vol. 242(2018年10月号)掲載の「Blenderによるマッチムーブのススメ」を再編集したものです。

TEXT_是松尚貴 / Naoki Korematsu(@kurono73
EDIT_尾形美幸 / Miyuki Ogata(CGWORLD)

映像や作業内容に合わせ、適切なソフトを選択する

筆者はコンポジターとしても活動していますが、2017年はマッチムーブに専業し、映画8案件を含む30以上の案件でBlenderをメインのトラッキングソフトとして使用しました。中には約100カットを担当した案件もありましたが、Blenderの生産性の高さに助けられ、良い結果を出せたと感じています。本記事ではマッチムーブとBlenderについて、様々な切り口から解説していきます。

  • 是松尚貴(@kurono73)
    フリーランスのコンポジター・マッチムーバー。筆者が運営するブログCGcompoでは、3D、コンポジット、マッチムーブ、カメラ、撮影について、いろいろ書いております。


まずは筆者の使用ソフト遍歴をお話しましょう。筆者は専門学校に入る以前、バージョン2.43あたりからBlenderを使っていました。マッチムーブの勉強を始めたのは専門学校入学後の2009年頃で、最初は無料のVoodoo Camera Trackerを使い、その後、SynthEyesを学校に導入してもらいました。卒業後はフリーランスとして東映アニメーションの実写作品を主に担当し、boujouとSynthEyesを併用しました。Blenderには2011年リリースの2.61で初めてトラッキング機能が搭載されましたが、まだまだ業務に使える性能ではありませんでした。その後2013年リリースの2.68あたりで必要な機能が揃ってきたため、少しずつ検証を重ね、業務でも使い始めました。

現在の自宅におけるマッチムーブ関連の使用ソフトはBlender、SynthEyes、Mocha Proで、Blenderは3D作業にも使っています。素材の確認や変換には、Natron、After Effects(CS5)なども使います。難易度の高いカットでは経験に基づくテクニックが重要になりますが、映像や作業内容に合わせた適切なソフトを選択することも重要です。マッチムーブは前後の工程から切り離しやすいため、ソフトを柔軟に使い分けることで、最良の結果に近付けることができます。なお、最近は友人と共にテクスチャスキャン、3Dスキャンの研究・サービスも始めています。フォトグラメトリーと3Dトラッキングは同様の技術に由来するため、マッチムーブの経験が役立っています。

地味な作業ではあるものの、自然なCG合成に不可欠

実写映像とCGを合成する場合には、実写映像のカメラの動きや、実写映像内の被写体の動きをCG上で再現する必要があります。そこで必要になる作業が、映像のトラッキングによるマッチムーブです。地味で、基本的にテクニカル寄りの作業ではありますが、マッチムーブをしなければ自然な合成ができません。そのため、多くの実写映像作品で必要とされる重要な作業のひとつです。国外では前後工程から分業される場合が多いですが、国内では3Dアーティストが兼務することが多いと思います。最近では、AR技術などを取り入れ、リアルタイムにマッチムーブを行う撮影システムもでてきました。ひとくちにトラッキングと言っても様々な種類があるため、2Dと3Dに分けて、代表的なものをご紹介します。

2Dトラッキング

2Dポイントトラッキングは、2Dトラッカー1点で移動、2点で移動・回転・スケール、4点でコーナーピン情報を取得できます。実写素材同士の合成や、視差ズレの気にならない背景合成などでは、2Dポイントトラッキングが多用されます。後述する3Dトラッキングの場合は、複数の2Dトラッカーを基にカメラやオブジェクト情報が計算されます。平面(プラナー)トラッキングも2Dトラッキングの一種で、平面を使ってトラッキングを行います。この方法だと移動・回転・スケール・パース変形などの情報を取得でき、TVやパソコンの画面合成、看板の差し替えなど、4点での2Dポイントトラッキングよりも柔軟性の高いトラッキングができます。平面トラッキングに特化した有名ソフトにMochaがあります。

3Dトラッキング

カメラトラッキングは、カメラが動くショットに3D素材を合成する場合や、カメラの動きが大きく2Dトラッキングでは対応できない場合に用いられます。カメラの動きは計算方法のちがいにより、カメラ位置が移動するものと、三脚に固定されたカメラが視差のない回転(パンやティルト)をするものに大別できます。オブジェクトトラッキングは、クルマや人物の頭部などの動くオブジェクトを差し替えたり合成したりする場合に用いられます。多くの場合、マーカーなどを付けたガイドオブジェクトを撮影しておき、そのマーカーをトラッキングします。アニメーターが担当することの多いロトアニメーションもマッチムーブのひとつです。映像内の被写体の動きに合わせて、3Dモデルに手付けでアニメーションを付けていきます。

トラッキングソフト選択ガイド

▲CGcompo掲載記事「どれがいい?トラッキング・ロトソフト比較」で紹介しているソフトの中から国内で主流となっている6本を選出し、その特徴を新規導入者目線で簡潔にまとめました。そのため、国外では有名ですが国内需要には向かない3DEqualizerや、現役で使用しているスタジオも多いものの開発休止中のboujouは外しました。また、誌面に入りきらなかったためCinema 4Dは割愛しました


▲Mochaによる平面トラッキングの様子。Mochaは平面トラッキングに特化したソフトです。BlenderにはMochaBlendという有料のAddonがあり、これを使うことで、Mochaでトラッキングしたポイントを2Dトラッカーとしてインポートできます。このやり方は、特徴点の少ない映像のトラッキングポイントを補完したい場合に有効です

次ページ:
マッチムーブのながれと、
各工程での注意点

[[SplitPage]]

各ソフト共通のマッチムーブの基本的なながれ

▲どのトラッキングソフトを使う場合も、マッチムーブの基本的なながれは共通しています。撮影素材の2Dトラッキングが可能なポイントの数が、後工程のトラッキングの精度を左右します

常時最低8点のポイントを撮影し、適切な視差を得る

以降では、各ソフト共通のマッチムーブの基本的なながれを紹介します。1番目に実写映像を撮影します。どのトラッキングソフトを使う場合も、常時最低8点の2Dトラッキングが可能な特徴点(ポイント)を撮影しておくことが重要で、適切な視差がなければ精度が落ちます。ただしカメラを三脚に固定した視差のないショットの場合は、最低2点のポイントで対処できます。撮影時には、使用したカメラの情報、レンズの焦点距離、撮影環境の計測データなどを記録しておきましょう。

2番目に撮影素材を確認します。素材は低圧縮のJPEG形式などに変換した方がメモリ容量を有効に使え、トラッキングの作業効率が上がります。また動画よりも連番画像の方がトラブルを避けられます。リタイム演出がある場合は、可変具合にもよりますがリタイム前にトラッキングする方が良いでしょう。リタイムによるフレーム補完、スタビライズ、編集によるズームや移動などの加工が入った素材は、光学的中心がずれるなどの問題が発生しがちで、トラッキングができない、できたとしても適切なカメラの動きではない場合があります。そのため、素材加工は極力トラッキング後に行なった方が良いでしょう。

3番目のトラッキングでは、ソフトに素材を読み込み、撮影時のセンサーサイズや焦点距離を入力します。情報がない場合は、自動算出する設定にします。オートトラッキングの場合は、映像内から自動的に2Dトラッキング可能なポイントが算出されます。マニュアルトラッキングの場合は、手動で2Dトラッカーを配置してからトラッキングします。

▲マーカーをトラッキング中のBlenderの画面。トラッキング時のポイントとなるマーカーには様々なものがありますが、基本的には画面上で認識できるサイズとコントラストの点であれば、問題なくトラッキングできます。屋外で自然風景などを撮影する場合には、映っているものをマーカーの代わりにしてトラッキングできる場合も多いです


▲ディストーションチャートを補正中のNUKEの画面。ディストーションチャートを撮影しているなら、事前に補正しておきます。撮影されていなくても、歪みが少なければ補正不要の場合もあります。あるいはトラッキングソフトの自動補正機能で対応できる場合もあります


4番目のSolve(3D解析計算)の結果に問題がある場合は、手動で2Dトラッカーを追加したり、エラーが発生した2Dトラッカーを探して修正あるいは削除したりして、調整を行います。エラーが発生していなくても適切に計算できていない場合もあるため、カメラのアニメーションを確認し、適切な動きをしているか、がたつきがないかを精査します。

5番目の3Dシーンの調整では、計算結果を3Dシーンに表示し、接地面やシーンスケールの調整を行います。ガイドモデルを作成、配置し、トラッキング結果にがたつきや整合性がとれていないなどの問題がないか確認していきます。調整はトラッキングソフトでも可能ですが、3Dソフトにデータをエクスポートして行なっても問題ありません。問題がある場合は、3番目のトラッキングまで戻り、再調整やパラメータ変更をし、再計算します。問題が全て解決されたら、カメラアニメーションをベイクして次のCG工程へ進みます。

用途に合わせた各ソフトの使い分け

▲NUKEによるリタイムの一例。インポートした撮影素材と、トラッキングした3DカメラをNUKEのOFlowノードなどで繋げると、同じリタイムを適用できます。フレーム補完などは反映されませんが、撮影素材と同様のリタイムを適用した3Dカメラのアニメーションを作成し、書き出すことが可能です


▲オートトラッキング中のSynthEyesの画面。オートトラッキングを使用する場合は、人物などの動く被写体があると計算時にエラーが発生してしまうため、マスクで囲んで除外する必要があります。マスクを使うのではなく、動く被写体に追従した2Dトラッカーを削除した後、再計算するという方法もあります。あるいはマニュアルトラッキングで対応します


▲空撮映像をトラッキング中のSynthEyesの画面。空撮の場合は、手動で2Dトラッカーを配置するよりも、オートトラッキングの方が効率が良いです


▲Follow Trackを設定中のBlenderの画面。Blenderでは2Dトラッキングのポイントを3Dシーンに配置でき、任意のオブジェクトをデプスオブジェクトとして使用可能です。この機能を使えば、2.5Dのハイブリッドなマッチムーブ、ポイントの少ない被写体のオブジェクトトラッキング、効率的なロトアニメーションなどができます

次ページ:
トラッキングの生産性を高めるBlender

[[SplitPage]]

2Dトラッカーの性能は、どのソフトよりも優れている

最後に、トラッキングの生産性を高める上でBlenderが有効な理由を4つご紹介します。1つめは、3Dソフトとのデータのやり取りを必要としないことです。マッチムーブでは、トラッキングの計算結果を3Dシーンで確認することで、初めて問題が発覚する場合が多々あります。そのためトラッキングソフトと3Dソフト間でデータのやり取りが頻繁に発生します。Blenderはトラッキング機能をもつ3Dソフトなので、データをやり取りする必要がなく、効率的に作業を進められます。

▲カメラ、およびオブジェクトトラッキング中のBlenderの画面。左側に表示されたトラッキングの計算結果を右側の3Dシーンで即座に確認できるため、ソフト間での煩雑なデータのやり取りが発生しません。また、右側の3Dシーンではトラッキングの整合性を確認するためのガイドモデルを表示しています。このようなガイドモデルを容易に作成できること、平面図や地図なども表示して調整できることもBlenderの利点です


2つめは、業務に問題なく使える高精度のトラッキングが可能なことです。特にマニュアルトラッキングにおける2Dトラッカーの性能は、私の知る限り、どのソフトよりも優れています。ポイントの回転・スケール・パースや照明の変化にも追従し、キャッシュ性能も高いため、非常に速く効率の良いトラッキングが行えます。ディストーション補正、焦点距離の自動算出などに関しても、ほかのソフトと同等の結果が得られます。

3つめは、計算結果の調整が容易なことです。トラッキングデータは、3Dシーン内のカメラやオブジェクトにコンストレインできるため、カメラの高さ情報などを保持したままの再計算が可能で、3Dシーン上での調整を容易に行えます。

4つめは、柔軟な利用が可能なことです。Blenderはいつでもダウンロードできて軽量で、ライセンス数に上限がありません。また、FBX、Alembic、OBJなど、多くのデータ形式に対応しています。

計算結果の調整、データの入出力にも柔軟に対応

  • Blender独自の3Dカーソルは、3Dシーン上での調整に非常に役立ちます。3Dビューは撮影素材を表示した状態で、マウスのみでズーム表示ができるため、細かい確認や位置合せを効率的に行えます


  • FBXデータをインポートする場合の設定例


  • 同じく、エクスポートする場合の設定例。ASCIIだとMayaや3ds Maxでは1Fキーがずれるため、エクスポート前にBlenderのスタートフレームを0Fにしておきます。基本的にFBXの使用に問題はありませんが、Focal LengthのアニメーションはAlembicでのみ対応しています。NUKEへのエクスポートもAlembic推奨です。詳細はCGcompoにて解説しています


ただしBlenderには、オートトラッキング機能がないという欠点もあります。Addonの中には簡易的なオートトラッキング機能もありますが、ほかのソフトのそれとは別物です。筆者の場合は基本的にBlenderだけでマッチムーブを行なっていますが、オートトラッキング機能を使った方が効率的な場合、撮影時にズームレンズを使っている場合、360度映像を扱う場合などはSynthEyesをはじめとするほかのソフトも使います。

Blenderのバージョン2.8リリースが迫り話題になっていますが、マッチムーブ目的で使用する場合には、現行の2.79bを推奨します。2.8の初期リリースではトラッキングの機能更新がないのに加え、本記事執筆段階では3Dビューの背景表示機能などの見直しが行われており、一部機能が適切に動作しません(※)。将来的にこのあたりが改善されれば、EEVEEを活用することで、モーションブラー付きのマッチムーブや簡易合成の確認がリアルタイムに行えるようになるかもしれません。

※ Web転載時点の最新ビルドでは修正が行われており、大きな問題点は解消しています。10月末には2.80βがリリース予定です。

info.

Blender Match move Tutorial Beginner series
トラッキングソフトとしてBlenderを使うための方法を、基礎から解説したチュートリアル動画も公開しています。合わせてご覧ください


▲本記事の冒頭で少し触れましたが、マッチムーブの経験を活かし、高精度なテクスチャスキャンと3Dスキャンの研究・サービスも始めています。興味をもたれた方は、Webサイト(site.cgslab.info)をご覧ください



  • 月刊CGWORLD + digital video vol.242(2018年10月号)
    第1特集:UE4プロフェッショナルへの道
    第2特集:デジタルアーティスト×インタラクティブアート
    定価:1,512円(税込)
    判型:A4ワイド
    総ページ数:128
    発売日:2018年9月10日