MetaQuestのパススルー画像から3DモデルをAIで生成する

はじめに


TeamXRの坂本です

 

少し前にMetaQuestのカメラ映像のデータを取得できる「Passthrough Camera API」が公開されました。

いままではパススルーで現実世界が見えていても、そこに対してなにかアプローチをかける事ができませんでしたが、データが取得できるようになれば様々な応用が可能となります。

 

今回は以前から調査を行っている「画像から3Dモデルを生成するAI」にデータを渡してMetaQuestでの活用を検証してみたいと思います。

 

結果


いきなり結果として、出来上がった物がこちらになります

コントローラーのボタンを押すと生成に使用する画像データの撮影モードに変わります。頭の位置に追従するので良き画角に合わせるように動きます。別のボタンを押すと静止画を撮影し、そのまま3Dモデルの生成を始めます。今回は現状で一番良い精度が出るモデルを使用しているので60~90秒ほど生成に時間がかかっています。その後、生成が完了するとコントローラーにプレビューとなるモデルが表示され、ボタンを押すと3Dモデルを空間に配置して、操作ができるようになります。

実装方法


MetaQuestの「Passthrough Camera API」については現時点ではまだ「Meta XR SDK」が正式対応していない状態なので、Githubで公開されているサンプルを参考にするとよいです。

 

生成AIについてはこちらのブログで紹介したTripoを使用しました。APIが提供されており、なおかつUnityのプラグインも今年になって公開されました。こちらもサンプルが同梱されているので参考にできます。

 

撮影データをそのまま使うと生成に無駄な部分が多いので撮影範囲を制限して表示したり、生成したモデルデータはglbファイルとして出力されるので、それをランタイムで読み込んで空間に表示するなど、細かい調整を入れています。

 

モデル精度


上記の動画の通り、再現度はかなり高いです。

 

背景と対象部が色分けされているときれいに対象物のみを抽出してモデル化してくれます。ホワイトボードやノートに線だけを書いた状態だと立体の範囲が決められないのか「線だけが立体になる」といったことも発生します。このあたりはプロンプトを追加することで改善はできるかもしれません。

 


 不出来な部分はどうしても出てくるので、このまま正式な何かに採用という流れを作るのは難しい状態です。

 

一番に考えられているのはデザイナーやモデラーのイメージの具現化の高速化と簡略化だとおもうので、それを2次元ではなく3次元上で確認ができるのは利用シーンがありそうです。

コスト


APIサービスを利用しているので、1回の生成にお金が発生しています。

Tripoはクレジット制で100クレジット=1$となっており、画像からの3Dモデル生成は1回30クレジットを消費します。

 

動作テストを行ったり、上記の動画を撮影したりする際には何度もやり直しを行ったので最終的には1500クレジットくらいは課金して消費しました。

 

限られた範囲や数の利用であれば全然耐えられる金額だとおもっていますが、これをアプリにして幅広いユーザーに使ってもらうという用途となると難しい状態ではあります。

おわりに


XRに関する様々なデバイスが発売されていますが、デバイスが取得しているデータをそのまま利用できる様に調整してくれる物は結構限られています(カメラ映像などはプライバシー保護などの問題もあるので厳しいのは当然なのですが)MetaQuestが対応を進めた影響で他のデバイスでも対応などが検討されるか注目していきたいです。

 

生成AIに関してはどんどん技術が進歩して、昨日微妙だった結果が次の日にはすごくよくなっているなんてことも起こるんじゃないかというくらいに急速に進歩しています。今回扱った3Dモデル生成のようなXRにできるだけ紐づけられるような技術をピックアップして知識を高めたいと思っています。

上記ブログの内容に少しでも興味がありましたら、お気軽にご連絡ください。

弊社のエンジニアがフレンドリーに対応させていただきます。