無料で3DスキャンができるiPhoneアプリ「Capture」を使ってみた

今回は、iPhone Xの深度カメラ”TrueDepthカメラ”を使用した3Dスキャンアプリ「Capture」で身の回りの物体を3Dモデルにして、STYLYにアップロードする方法を紹介します。

無料かつ手軽に3Dモデルを作れるので、VR空間作成の幅がより広まります。

※ iPhone X、iPhone XS、iPhone XS Max、iPhone XR専用のアプリなのでそれ以外のバージョンのiPhoneやAndroidでは2019/03/28現在、利用することができません。

撮影の仕方

アプリは以下のリンクからダウンロードすることができます。
https://itunes.apple.com/app/capture-3d-scan-anything/id1444183458?mt=8&ref=producthunt

アプリをインストールしたら、設定も必要なく撮影を始めることができます。

今回は自宅にあったダルマを3Dモデルにしていきます。

被写体のダルマ

撮影は背面ではなく正面側の自撮り用カメラで行う必要があります。

撮影する際は、物体を回しながら撮影するか、iPhone自体を周回させながら撮影します。

録画ボタンをクリックすると撮影が始まり、再び録画ボタンをクリックすると撮影が終了して自動的に3Dモデルが作成されます。

↓こちらの方が鏡を使った効率的な撮影方法を紹介されているので、うまく撮影ができない方は参考にしてみてください。

https://twitter.com/ji10me/status/1076709496385236992

本記事では説明は割愛しますが、3DモデルをAR表示したり、写真としてLINEやFacebookで共有することもできます。

モデリング完了

3Dモデルをダウンロードする

作成した3Dモデルをダウンロードしていきますが、iPhoneアプリからだとusdzファイルでしかエクスポートできませんので、クラウドにアップロードしてWebサイトからobjとplyでエクスポートしていきます。(STYLYはusdzファイル非対応)

まずはアプリ上でアカウントを作成します。

 

アプリ上でモデルを確認

CaptureのWebサイト(https://www.standardcyborg.com/)にアクセスします。

トップ画面

「Sign in」をクリックし、作成時のメールアドレスとパスワードを入力します。

3Dモデル一覧

ログインに成功すると作成した3Dモデルが表示されます。

plyを選択

ダウンロードしたいオブジェクトを選択するとダウンロード形式を問われるので、「Download PLY」を選択します。

zipファイルが表示されるので、解凍するとplyファイルが確認できます。

3DモデルをMeshLabでメッシュ化する

ダウンロードした3Dモデルは点群データなので、STYLYにアップロードするためにはメッシュ化する必要があります。

メッシュ化はMeshLab(http://www.meshlab.net/)という3Dデータ変換ソフトを使用します。

上記のURLにアクセスし、お使いのOSのバージョンをダウンロードしてください。

OSに合わせてダウンロード

ダウンロードが完了したら早速MeshLabを立ち上げてください。

MeshLabホーム画面

  1. PLYファイルをインポートする

plyファイルをインポート

「File」→「Import Mesh」で、先ほど解凍したplyファイルを選択します。

データを確認

うっすらとですがダルマが確認できましたね。

2. normalsを再計算

点群データをメッシュ化していきます。

点群をメッシュ化

「Filters」→「Remeshing, Simplification and Reconstruction」→「Surface Reconstruction: Ball Pivoting」を選択します。

メッシュ化設定

メッシュ化の設定を求められますが、ここはデフォルトの設定のままで「Apply」を選択します。

メッシュ反映

さっきよりもはっきりしたモデルになりましたね。

3. Per-Triangleパラメータ設定

Per-Triangleパラメータ設定

「Filters」→「Texture」→「Parametrization: Trivial Per-Triangle」を選択します。

Per-Triangleパラメータ詳細設定

詳細設定を求められます。

ここは「Inter-Triangle border(px)」を0、「Method」をBasicにして「Apply」を選択し、続けて「Close」を選択します。

4. テクスチャ画像の書き出し

この後は3Dデータとテクスチャ画像を別に書き出し、Unity上で統合する流れになりますが、まずはテクスチャ画像を書き出します。

テクスチャの設定1

「Filters」→「Texture」→「Transfer: Vertex Attributes to Texture(1 or 2 meshes)」を選択します。

テクスチャ設定2

詳細設定を求められる画面になります。

書き出すテクスチャのファイル名を指定し、「Assign Texture」にチェックを入れて「Apply」を選択します。

「Close」を選択するとテクスチャがpngファイルで書き出されたことが確認できます。

5. メッシュデータの保存

テクスチャ画像の次はメッシュデータも書き出します。

メッシュ書き出し1

「File」→「Export Mesh As」を選択し、

メッシュ書き出し2

ファイル名と保存場所を指定し、ファイル形式はobjを選択してください。

メッシュ書き出し3

さらに書き出しオプションを設定する画面が出てきますが、ここはデフォルトの設定のまま「OK」を選択してください。

これで3Dデータも書き出すことができました。

STYLYにアップロードする

ファイルを直接STYLYにアップロードした場合

書き出したOBJ・MTL・PNGを直接STYLYにアップロードしようとしたら、テクスチャが反映されていませんでした。なので書き出したファイルをUnity上で統合して、UnityからSTYLYにアップロードします。

Unity上のモデルをSTYLYにアップロードする方法はこちらの記事で解説されています。

STYLY WebEditorで確認

無事、テクスチャ反映済みのダルマの3DモデルをSTYLYにアップロードすることができました。

おつかれさまでした。

以上でCaptureで3Dモデルを作成し、STYLYにアップロードする方法の紹介は終わりです。

無料かつ手軽に3Dモデルを作成できるので、空間作成に生かしてみてください!