MRが楽しい

MRやVRについて学習したことを書き残す

VisualSFMを用いて作成した三次元点群データをメッシュモデルに変換する

本日は画像解析に関する技術調査枠です。
前回、VisualSFMで写真から三次元点群データを作成しました。
bluebirdofoz.hatenablog.com

今回はここから更に三次元点群データをメッシュモデルに変換する技術を試します。
以下のページを参考にしました。
www.pointcloud.jp

利用するのは MeshLab です。前回の手順通り作業していればインストール済みのものを利用できます。
bluebirdofoz.hatenablog.com

早速、試してみます。
前回の手順通り、MeshLab を起動して三次元点群データ(ply)を読み込みます。
f:id:bluebirdofoz:20171108003033j:plain

Filters -> Remeshing simpleification and Reconstruction -> Surface Reconstruction : Ball Pivoting を選択します。
f:id:bluebirdofoz:20171108003045j:plain

設定値はデフォルトのままで Apply を押します。メッシュが生成されます。
f:id:bluebirdofoz:20171108003053j:plain

頂点がガタガタなのでスムージングを行います。
Filters -> Smoothing, Fairing and Deformation -> Laplacian Smooth を選択します。
f:id:bluebirdofoz:20171108003102j:plain

設定値はデフォルトのままで Apply を押します。スムージング処理が行われます。
f:id:bluebirdofoz:20171108003110j:plain

メッシュモデルが作成できました。後はこれを適切なファイル形式で出力します。
File -> Export Mesh As でメッシュモデルでの出力が行えます。
f:id:bluebirdofoz:20171108003322j:plain

出力形式が幾つか選択可能です。
今回は Blender で編集を行いたいのと、カラー情報を付与しておきたいので wrl ファイル形式で出力します。
f:id:bluebirdofoz:20171108003128j:plain

出力設定のダイアログが表示されます。
カラー情報を付与したいので「Color」にチェックを入れた状態で「OK」をクリックします。
f:id:bluebirdofoz:20171108003136j:plain

出力したファイルを試しに Blender で読み込んでみます。
Blender を起動し、ファイル -> インポート -> X3D Extensible 3D で wrl ファイルを読み込みます。
f:id:bluebirdofoz:20171108003148j:plain

色付きのメッシュモデルとしてデータを取り込むことができました。成功です。
f:id:bluebirdofoz:20171108003155j:plain