次世代モデリング? フォトモデリングからのリトポ(前編)

どうも!Maya太郎です。
週末なので、すこし作りこんだ作例を作ってみようと思って試したのが、今回の作例です。

車のモデリングがテーマですが、
三面図からのトレースではなく、プラモデルを3Dスキャン(もどきのフォトモデリング)して、
生成されたハイメッシュポリゴンをトレース(リトポ)するという工程です。
最新技術?を駆使した次世代モデリング(?)です!

フォトモデリングという手法は、今後どんどん浸透すると思われる技術です。
すでにスマホでも簡易型のアプリがありますし(スマホの処理能力の限界で精度は低め)
今後3Dスキャン機能を持ったスマホ・タブレットがどんどん登場するといううわさもあります。
CG屋でなくても、スマホユーザーが気軽に3Dスキャンを行う時代が目前に迫っているのです。

ということで、
こんな楽しい技術をまだご存じない方に紹介する今回の企画!

実験台は、このプラモデルを使います。(いわゆる積みプラモ)
本物の車を使っての撮影も可能ですが
写真からのスキャンモデリングの原理的な制約で
・光沢・透明物・映り込みはNG
ということで、普通の車を撮影してもきれいにCG化出来ない場合がほとんどなのです
(背景が映りこむきれいな車体・窓ガラスなど)
砂埃まみれのダンプカーなどの工事用車両は成功率が高いですが…
3-1

このプラモデルもつやつやなので、今回撮影用に汚し塗装を行います。
といっても、本格的な塗装ではなく
塗料皿に乾燥して残ってる、水性アクリル塗料を廃物利用として使います。
洗浄用の溶剤で薄めて塗りつけます。(こびり付いた塗料を洗い落とす要領)
ですのでお金もかかりません。
3-2

洗浄用溶剤で薄めた塗料をプラモデルに塗りつけます。はじかれない程度のぎりぎりの薄め具合です。
光沢のない塗料を塗った場合はプラスチックの光沢もなくなり、
この一見汚いだけの塗りムラがスキャン処理に適した不規則な模様成分になるのです。3-3

そして、そのプラモデルをあらゆる方向から撮影します。数十枚撮影します。
3-4

つづいて
複数の写真から3Dモデリングを行うソフトを使うわけですが、今回使っているのはPhotoScanという市販ソフトです。
Mayaからは「ReCap」というクラウドサービスで同等の処理が可能ですので、この記事を読んで興味を持った方はぜひ試してくださいね。数年後には当たり前の技術になってるはずです。
3-5

ReCapとPhotoScanの違いは、ReCapは写真をアップロードしてクラウド上で処理するためにアップロードに時間がかかるということが大きいです。(通信環境が悪い場合アップロードだけで一時間以上かかる場合もあります。)
PhotoScanはローカル環境で動くアプリなので、即スキャン作業が行えるのと、
Maya太郎はReCapを知る以前にPhotoScanをすでに購入してたので、あえてReCapを使う必要がありません。(PhotoScanを購入してなかったらReCapを使っています)
というわけでで、PhotoScanというソフトに数十枚の写真を取り込んで、スキャン処理をしました。
(Maya以外のソフトをこのブログで紹介する場合は、あくまでも作業紹介程度で細かい使い方は割愛しています。)

画像から解析された結果が数分でこのように表示されます。(品質:中)1-1

スキャンの原理はマッチムーブと同じです
処理画像が連続画像でないだけです。
画像の特徴点のパターンを写真ごとのズレから解析して被写体を3D化するのです。
当然撮影カメラの位置も同時に検出されます。
ですので、静止画用写真合成のためのカメラ位置検出にも利用できます。1-4

特徴点検出しやすいようにプラモデルを汚したり、印刷物を下に敷いたりしてるわけですね。
1-2

PhotoScanでは、さらに高密度のポイントクラウドを次工程で生成します。
この処理は精度によりますが数分から数十分かかります。
今回は30分ぐらいかかりましたが、精度を落とすと数分程度で終わる場合もあります。
ポイントクラウドが高密度だと、それだけでオブジェクトとして見えそうですが、
現状ではただの点群データです。1-3

スキャン精度を確認します。画像解析による点群生成としては及第点だと思います。1-5

次の工程としてポリゴン(メッシュ)化を行います。
ここでようやく、ポリゴン形状としての実体が現れます。
テクスチャ処理されたように見えますが、点群データの色情報が頂点カラーに適用されているだけです。1-6

頂点カラーのないポリゴンメッシュはこんな感じです。1-7

次にテクスチャを生成します。UVマップは自動生成されます。
メッシュ化の精度がイマイチでも、テクスチャを貼ればごまかせる部分も多いです。1-8

Mayaでもゴミ取りは可能ですが、PhotoScan上で行った方が効率がいいので
この段階で無駄なポリゴンは削除しておきます。1-9

 

OBJやFBXでMayaにインポートします。
FBX形式だと撮影したカメラの情報もMayaのカメラとしてインポート可能ですので
応用の幅が広がります。(合成用途など)
今回はモデリング用なのでOBJ形式で読み込みました。(テクスチャも問題なく読みこめます)
いままでの画像と違いがわかりにくいですが、ここからはMayaでの作業です。
1-10

が、
写真スキャンの前処理の説明で手間がかかったので、Maya上でのモデリング(リトポ)は次回に繰り越します。

今回、ほとんどMayaを使ってませんが…(汗)

ではまた!