※本記事は月刊「CGWORLD + digital video」vol. 223(2017年3月号)からの転載となります
TEXT_ 野澤徹也(GUNCY'S)
EDIT_斉藤美絵 / Mie Saito(CGWORLD)
今回の特集(CGWORLD vol.223)では、デジタル一眼レフカメラを用いて多角度から撮影した写真を基に3Dモデルを生成する手法をベースに紹介しているが、製造業などCADデータを扱う業界や限られたスペースで精密な形状をスキャンするためには、手に持てるサイズで、シンプルかつ高速に高精度の3Dデータを撮影できるポータブル3Dスキャナも欠かすことができないだろう。
ここでは、ポータブル3Dスキャナの中でも高精度かつ優れた携帯性を誇り、信頼性の高い3Dデータの撮影に定評のあるGo!SCAN 3Dシリーズを導入したコロビトの事例を詳しく紹介していく。「近年、3Dスキャナで撮影された3Dデータをクライアントから提供してもらう案件が増えています。今後もこのような案件は増加するだろうと、自社でも撮影できるように昨年末に導入を決めました」とは、同社の代表取締役かつリードモデラーの大島夏雄氏。
STAFF
左から、久保元英和技術者、大島夏雄代表取締役、荒井恵美ジェネラルマネージャー、岡崎昇太郎モデラー。以上、コロビト(colobito.com)
例えば、提供された3Dスキャンによる顔のデータに見合うクオリティで衣服や髪の毛を全て手作業で制作することは容易ではない。そこで3Dスキャナを導入し、制作対象となるモデルの簡易形状を3Dスキャンし、以降のCG作業をアーティストに引き継ぐことでクオリティアップと工数削減につなげるねらいがあったという。数ある3Dスキャナの中からGo!SCAN 3Dを導入したのは、人物や小物だけではなく、屋外へも持ち運び可能で、地面や木など背景の一部も撮影できるソリューションを探していたところ「日本ものづくりワールド2016 第24回3D&バーチャルリアリティ展」にて同製品を取り扱うCREAFORM(AMETEKグループ)のデモを見つけ、実際にテスト撮影を試すことになり、値段なども考慮した上で導入を決めたという。
このGo!SCAN 3Dには、小さな被写体の精密な撮影に適したGo!SCAN 20(以下、Go!20)と、精度は落ちるが広域の撮影に適したGo!SCAN 50(以下、Go! 50)の2つがある。大きなちがいはスキャン範囲と解像度で、Go! 20は143×108mmの範囲を0.100mmの解像度で、Go! 50は380×380mmの範囲を0.500mmの解像度で撮影可能だ。コロビトでは、はがきサイズの小物を高精度で撮影したいときにはGo! 20を、人物や屋外など広い面積を撮影する場合はGo! 50を使い分けているという。
また、使用台数に制限のないスキャンデータ編集ソフト「VXelements」も付属されている。撮影をするためには、3Dスキャンと同時にスキャンデータを保存するためのハイスペックなノートPCも用意する必要があるそうだ。ただし、撮影とスキャンデータの編集作業は別々のPCでも行えるため、撮影している間に別のPCで最適化するなど、運用しやすい仕様になっている。その他の製品スペックについては、公式Webサイトを確認してほしい。
ポータブル3DスキャナGo!SCAN 3Dとは?
Go!SCAN 3Dは、カナダのケベック州にあるCREAFORM社が開発した製品で、簡単な操作で高速な測定を実現し、重量は約1kgと女性でも持ち運び可能な非接触式の3Dスキャナだ。
製品の中央部には手で掴むためのハンドルと撮影を開始するためのトリガーがあり、ハンドルの下部中央には、形状の隆起を判別するために、特殊なモザイク状のパターン図を投影するためのプロジェクタが装備されている。その左側には撮影物の色を取得するためのカラーカメラが、右側と上部には撮影物の形状を取得するための2台のモノクロカメラが配置されるという、SF近未来映画の宇宙船を彷彿とさせるスタイリッシュなフォルムだ。
Go!SCAN 3D
小物などを3Dスキャンする際は狭い範囲だが高い精度のGo!SCAN 20を、壁などの大きなものを3Dスキャンする際はGo!SCAN 20に比べて精度は落ちるが広い範囲の3Dスキャンに対応したGo!SCAN50を用いる。写真に向かって上と右下にもモノクロカメラ、左下にカラーカメラが装備されている
普段の作品制作でGo!SCAN 3Dを使用しているというジェネラルマネージャー兼リードモデラーの荒井恵美氏は「情報量のある細かい部位の撮影には多少時間がかかりますが、導入直後の物珍しさと撮影の面白さも手伝って、身のまわりの物を次々に撮影してみるなど、特に問題なく使っています」と語った。実際に撮影をしてみると、光沢がある反射性の強い物質や、光を吸収してしまう黒い物質は正しく認識できないことがわかったという。
また、同製品の販売元トレーナーからは「日光の強い屋外での撮影はLEDの照射が弱くなるため、屋外で撮影をするときは夜を勧められて意外でしたね」と荒井氏。なお筆者の経験上、黒や光沢のある物体を撮影する際には、容易に拭き取りできるベビーパウダーをまんべんなくまぶすなどの工夫をすると、スキャンに向かないような物体の撮影も可能になる。
写真をベースにした3Dスキャンを行う場合には、動かないように設置された被写体を取り囲むようにデジタルカメラで撮影する。その際は、自動露出調整機能やオートフォーカス、オートズームが効かないように気をつけて撮影しなければ、正しい3Dデータを作成できない。そのため、撮影前に何台ものカメラをケーブルで繋ぎ、同時にシャッターが切られるようにするなどの準備が必要だ。しかしGo!SCAN3Dは、専用のキャリブレーションプレートに数秒光を照射するだけで即座に撮影が始められ、とても優れていると言えるだろう。パイナップルの大きさほどの物体であれば、専用の回転台に乗せて位置情報認識用のマーカーを複数個配置し、Go!SCAN 3Dによる撮影に合わせて回転台をゆっくりと回すことで、被写体の表も裏も容易に撮影可能となる。
苦手な被写体の3Dスキャン例
ここではいくつか苦手な被写体を3Dスキャンした例を紹介する。
■反射率の高い被写体
(画像左)を3Dスキャンしてみよう。3Dスキャン中のキャプチャ画面が(画像右)だ。回転台は認識しているものの、肝心の鍋は残念ながら3Dスキャンできていない
■黒い被写体
表面が滑らかで黒い物の例として、黒いコード(画像左)を3Dスキャンする。3Dスキャン中の作業画面(画像右)を見ると、まわりの回転台は認識されているが、こちらも肝心のコード部分がスキャンできていない
■厚みが薄い被写体
Go!SCAN 3Dで認識できる解像度の最小値よりも薄い物も苦手だという。ここでは丸めた新聞紙(画像左)を3Dスキャンしてみた。テクスチャも貼った3Dモデルが(画像右)だ。面として認識できるような広い部分は3Dスキャンできるが、厚みは上手く形状を再現できていない
■透明な被写体
アクリル板や液体など、透明なものも認識されにくい。ペットボトルの側面に画用紙を巻いたもの(画像左)を3Dスキャンしてみたところ、回転台と画用紙を巻いた部分は3Dスキャンできたが、透明なペットボトル部分はできなかった(画像右)
次ページ:Go!SCAN 3Dで実際に撮影してみよう [[SplitPage]]Go!SCAN 3Dで実際に撮影してみよう
順を追って撮影方法を解説する。
まず、撮影前に行う工程がキャリブレーションだ。ランダムに添付されたマーカーが並ぶ専用のキャリブレーションプレートに数秒間照射するだけで手軽にキャリブレーションが完了し、即座に準備が整う点は、1分1秒を争うような慌ただしい撮影現場ですぐに3Dスキャンが行え便利だと、総務・技術部に所属する久保元英和氏は話す。
キャリブレーションが済んだらいよいよ3Dスキャン開始となる。[ナチュラルフィーチャーを使用]を有効にすると、被写体の特徴点から抽出したポイントを算出し自動的にトラッキングを行えるが、特徴点が少ない被写体の場合は回転台の上にポイントマーカーを配置すると良いだろう。
撮影はGo!SCAN 3Dのハンドルのトリガーを引いている間だけ実行され、電源コードから電力供給できるようにカスタムされたUSBケーブルによって接続されたノートPC上では、次々に立体物が読み込まれていき、見ていて非常に圧巻であった。途中で中断しても同じところから再開できる点も運用しやすい。ある程度カメラを引いた状態から撮影を開始し、徐々に被写体へ近接させていくことが、スムーズに高品質な3Dデータを取得するコツだそうだ。
ただ、この段階ではまだポイントクラウドデータのため、その後不要な箇所の除去や欠けた部分の補填といった編集を付属のVXelementsで行い、ポリゴンメッシュに書き出すというながれになる。ポリゴンメッシュ化する際には、計算時間を短縮させて解像度を下げたり、逆に時間をかけて計算させることで精密な解像度にしたり、状況に応じた設定も可能だ。
事例として紹介するパイナップルの葉のような薄い形状の3Dスキャンは難しいため「より質の高い3Dモデルを作成するには、葉だけをバラバラにして台の上に並べて3Dスキャンし、リトポロジー後にMaya内でモデラーが葉をモデリングする方がスムーズにいくと思います」と大島氏。
3Dスキャナはモデリング作業の補助という位置づけで、最終的にはモデリングスキルをもったアーティストの手によって最適なモデルに仕上げていくことは不可欠なのだ。
パイナップルの3Dスキャン
(画像左)Go!SCAN 3Dのキャリブレーションの様子。3Dスキャンを始める前に、Go!20とGo!50それぞれの専用キャリブレーションプレートに照射する
(画像右)パイナップルを3Dスキャンする久保元氏。USBコードでPCに接続され、3Dスキャンの様子がリアルタイムでモニタに映し出されている
(画像左)取材時には3Dスキャンの様子を大きなモニタに繋いで見ながら行なっていた
(画像右)重さは1kg程度ということで、女性でも持ち運びできる重量となっている
3Dスキャンされている最中のパイナップル
(画像左)パイナップルの3Dモデル
(画像右)テクスチャを投影したパイナップル
人体スキャン
続いて、人間の例として久保元氏の上半身を撮影してもらった。黒目や髪の毛などは綺麗にスキャンすることが難しいため、 久保元氏は目を瞑った状態で撮影されていたが、3DスキャナのLED照明が放つ光は、意外にもさほど眩しくないそうだ。また、 被写体が撮影中に多少揺れたり動いたりしてしまったとしてもVXelementsで自動補正される点も、ありがたい。
(画像左)久保元氏を3Dスキャンするモデラーの岡崎昇太郎氏。広い面積の撮影に向いているGo!50が用いられた。被写体が生身の人間の場合、どうしても多少の動きやブレが出てしまうため、それを自動で補正してくれる点は運用上非常に助かる
(画像中)照射前の久保元氏
(画像右)照射中の久保元氏。Go! 50から独特のパターンが久保元氏の身体に照射され、それをカメラが認識することで形状を把握していく
被写体の固定
3Dスキャンをする上で、角度によってはスキャンできない部分もある。そのような場合は、表面、裏面と2回に分けて(3回や4回でも可)撮影し、その2つのデータを合成してひとつのメッシュにすることも可能だ。ただし被写体を裏返すときに形状が変化してしまうと、データを合成することはできない。そこでGo!SCAN 3Dで認識しにくいことを逆手にとり、透明なセロテープ等で3Dスキャンする被写体を固定する。
異なる向きでターンテーブルに置かれたバナナ。透明なテープで固定することで、置き方を変えても形状は変わっていない
(画像左)生成されたバナナの3Dモデル。バナナはスキャンされているが、テープはスキャンされていない
(画面右)テクスチャを貼り付けたバナナの3Dモデル
リンゴのサンプルデータ
最後に、実際にコロビトがGo!SCAN 3Dを使用して生成したリンゴのサンプルデータを紹介する。先述のパイナップルやバナナのように、Go!20を使用して撮影し、UV展開やリトポロジーなどを行い3Dモデルのブラッシュアップしていく。そうして完成したデータはフリーでダウロードできるので、実際にデータをダウンロードして確認していただきたい。
データダウンロードはこちら撮影したリンゴをUV展開する。投影方法は[なし]、[球形]、[円筒形]、[立方体]、[自動]の5パターンから選択が可能