CGBoxの一部の記事にはアフィリエイト広告が含まれております。
【Blender 3.3】PLYファイル: 3Dスキャンデータの活用方法を紹介!
こんにちは!
コチラの記事では、フリーの3DCGソフト「Blender」を使う上でのヒントになる情報を発信しています。
今回は、3Dスキャンソフトのデータを主に扱うコンピュータファイル形式「PLYファイル(.ply)」の活用方法を紹介します!
インポート・エクスポート方法はもちろん、テクスチャを貼る方法や、点群をメッシュ化する方法についても紹介します。
PLYファイルを利用することで、現実世界の3Dスキャンデータを使った3DCG作品作りができるので、ぜひ参考にしてみてください!
PLYファイルとは?
PLYファイルは、「Polygon File Format」または「Stanford Triangle Format」として知られており、3Dスキャナからの3次元データを格納するために設計されたコンピュータファイル形式です。
詳しい説明については、コチラのWikipediaの記事を参考にしてみてください。
Blenderでは、3Dスキャナソフト・アプリで作られたPLY形式のファイルを、コチラのようにオブジェクトとして読み込むことができます。
また、Blenderで作成した3DオブジェクトをPLY形式として出力することもできます。
PLYファイルの入手方法
PLYファイルは、おもに以下の2通りの方法で入手することができます。
- 3Dスキャンソフト・アプリで作成する
- 配布されているファイルをダウンロードする(建築物などの点群データなど)
3DスキャンアプリでPLYファイルを作成する
最近では、スマートフォンアプリで手軽に3Dスキャンを行い、PLYファイルを出力できるようになりました。
たとえば、「KIRI Engine」というスマホアプリは、iOSとAndroid両方に対応しており、ユーザー登録すれば1週間に3個まで無料でスキャン結果を出力できるのでおススメです。
コチラのように、スマホのカメラで写真を撮影し、「PLY」を選択することで、モデルを作成することができます。
モデルをKIRI Engineからエクスポートすると、コチラのようにPLYファイルと画像テクスチャが出力されます。
Blenderへのインポート方法については、後ほど説明します。
配布されているファイルをダウンロードする
IT技術の発達・普及に伴い、最近ではさまざまな機関から都市などの3Dスキャンデータをダウンロードできるようになりました。
たとえばコチラの「G空間情報センター」サイトからPLYファイルを入手することができます。
これらのPLYデータを使って、リアルな都市・建築物をBlenderでモデリングすることができます。
PLYファイルのインポート
PLYファイルのBlenderへのインポート方法を紹介します。
基本機能でインポート
Blenderを立ち上げ、トップバーの「ファイル」→「インポート」→「Stanford (.ply)」を選択します。
開きたいPLYファイルを選択し、「ファイルを開く」をクリックします。
すると、メッシュ(または点群)が読み込まれます。
読み込んだ時点では、マテリアルは設定されておらずテクスチャ情報は表示されません(あとでテクスチャを表示する方法を紹介します)。
PLYが表示されない時は?
BlenderにPLYファイルを読み込んでも表示されない場合は、以下の可能性がないか確認してみてください。
- PLYファイルにメッシュ・頂点情報が含まれていない、ファイルが壊れている
- PLYファイルが、3Dビューポートの原点から離れた位置にある
- PLYファイルのスケールが小さい・または大きい
PLYファイルをインポートすると、アウトライナーにメッシュ情報が表示されるはずです。
表示されない場合は、PLYファイルにメッシュ・頂点情報が含まれていないか、ファイルが壊れている可能性があるので、出力元のソフトの設定を見直してみてください。
PLYファイルのオブジェクトが3Dビューポートの原点から離れた場所にあると見失ってしまう可能性があります。
「Home」キーをクリックすると、オブジェクトにあわせて表示範囲が移動するので、オブジェクトの捜索に便利です。
PLYファイルのスケールが小さくて表示されない場合は、オブジェクトを選択してSキーで拡大してみてください。
また、コチラのようにオブジェクトが大きすぎて一部が表示されない場合は、サイドメニューの「ビュー」の「範囲の終了」の数値を大きくしてみてください。
アドオン「Point Cloud Visualizer」を使う
点群オブジェクトを表示・編集するのに便利な「Point Cloud Visualizer」というアドオンがあります。
アドオンのインストール・有効化の方法についてはコチラの記事を参考にしてみてください。
エンプティオブジェクトを追加・選択した状態で、「PLY File」を選択し、「ドロー」をクリックするとすぐに点群が表示されます。
重いファイルでもPoint Cloud Visualizerを使うとサクサク表示できて便利です。
コチラのように、点群の透明度やサイズを変更することができます。
Blenderの機能を拡張することができる「アドオン」のインストール・有効化の方法については、コチラの記事を参考にしてみてください。
PLYファイルのエクスポート
Blenderオブジェクトを、PLYファイルとしてエクスポートする方法・設定について紹介します。
コチラのように、Blenderのトップバーの「ファイル」→「エクスポート」→「Stanford (.ply)」を選択します。
以下エクスポート設定画面が開きます。
設定項目の内容はこんな感じです(詳細は「Blenderリファレンスマニュアル」を参照してください)。
- フォーマット:「ASCII」にチェックを入れると、ASCII(テキスト)形式で出力され、それ以外だとバイナリで出力されます。
- 内容:「選択物のみ」にチェックを入れると、選択オブジェクトのみ出力されます。
- トランスフォーム:
- 前方:エクスポートするモデルのグローバルの前方軸の向きを設定します(デフォルトY)
- 上:エクスポートするモデルのグローバルの上方軸の向きを設定します(デフォルトZ)
- スケール:出力ファイルのスケールを設定します。
- ジオメトリ:
- モディファイアーを適用:チェックを入れると、モディファイアーを適用した状態でエクスポートします。
→ミラー・サブディビジョンなどのモディファイアーを使用する場合は有効にしておくことをオススメします。 - ノーマル:ノーマル情報をエクスポートします。
- UV:UVマップをエクスポートします。
- 頂点カラー:頂点カラーをエクスポートします。
- モディファイアーを適用:チェックを入れると、モディファイアーを適用した状態でエクスポートします。
モデルにテクスチャを貼り付ける時に使うUVマップについての詳しい説明は、コチラの記事を参考にしてみてください。
メッシュに色を付けることができる頂点カラーについての詳しい説明は、コチラの記事を参考にしてみてください。
PLYファイルを加工する方法を紹介!
最後に、PLYファイルのテクスチャをマテリアルに反映したり、点群をメッシュ化する方法を紹介します。
PLYファイルの色(テクスチャ)を表示する
先ほど紹介した3Dスキャンアプリ「KIRI Engine」を使ってインポートしたPLYファイルに、テクスチャを反映する方法を紹介します。
事前準備として、KIRI Engineから出力したPLYファイルとJPGファイルを用意してください。
また、Blender標準搭載アドオン「Node Wrangler」を有効にしておいてください。
Blenderのノード操作を簡単にしてくれるアドオン「Node Wrangler」の基本的な使用方法については、コチラの記事を合わせて参考にしてみてください。
PLYファイルの点群をメッシュ化する
点群を含んだPLYのメッシュ化には、Blenderではなくて以下のような外部ソフトを使います。
どちらも無料で使うことができますが、今回はMeshLabを使って点群データをメッシュに変換する方法を紹介します。
「Filters」→「Normals, Curvatures and Orientation」→「Compute normals for point sets」で点群の法線を生成します。
コチラのような画面が開きますが、「Neighbor num」が10になっていることを確認した上で「Apply」を選択します。
計算が完了したら、「Close」をクリックします。
頂点が1000万を超えているため、メモリ節約のために頂点を削減します。
「Filters」→「Sampling」→「Clustered Vertex Sampling」を選択します。
コチラのように、「World Unit」の値を調節して点数を削減します。
「Filters」→「Remshing, Simplification and Reconstruction」→「Surface Reconstruction: Screened Poisson」を選択します。
メッシュ生成の設定画面が表示されるので、「Reconstruction Depth」を10以上を目安に、「Minimum Number of Samples」を6以上を目安に設定します。
コチラのようにメッシュが生成されます。
「ファイル」→「Export Mesh As」→「Stanford Polygon File Format(*.ply)」を選択してエクスポートします。
※以下の図では、右側のアウトライナーで点群を選択していますが、メッシュを選択した状態でエクスポートしてください。
コチラの画面が開きますが、初期設定のまま「OK」を選択して大丈夫です。
MeshLabからPLYファイルとしてエクスポートしたメッシュは、先ほど紹介した方法でBlenderにインポートできます。
MeshLabの使用方法については、コチラの記事もあわせて参考にしてみてください。
まとめ
3Dスキャンソフトのデータを主に扱うコンピュータファイル形式「PLYファイル(.ply)」の活用方法を紹介してみましたが、いかがだったでしょうか?
PLYファイルを活用することで、現実世界のモノをオリジナルに近いメッシュ形状・テクスチャとしてBlender作品に取りこむことができて、作品作りの幅が広がるので、ぜひ紹介したアプリ・ソフトとともに参考にしてみてください!