本日はHoloLensの表現調査枠です。
先日よりNVIDIAの公開したinstant-NeRFを用いて3Dモデルを構築しました。
今回はここで作成された3DモデルをHoloLens2 で現実世界に再配置していきます。
〇NVIDIA instant-NeRFでの二つの種類のエクスポート
NVIDIA instant-NeRFでは2つの方法での3D情報のエクスポートが行えます。
Obj
OBJ形式でのエクスポートです。
Png sequence
Png Sequenceは画像形式でのエクスポートです。
CTスキャンやMRI画像のように正面から見たモデルの水平断面図がPng形式の画像データとしてエクスポートされます。
今回はこの二つをHoloLens で見ていきます。
〇HoloLens 2で表示する
objではオリジナルのモデルからノイズとなる部分を削り、ポリゴン数を削減しました。
HoloLensでは10~20万ポリゴンが上限と呼ばれています。
Png Sequenceはそのまま画像データをUnityへインポートします。
obj形式はそのままオブジェクトとして表示できますが、 Png Sequenceは工夫が必要です。
今回は大量のQuadを作成し、それぞれに連番となるマテリアルと対応するPng画像を貼り付けました。
ShaderはURP/UnlitShaderを用いて、AlphaClipを有効化することで、透明度を持ったピクセルを透明化しました。
これによって疑似的に3Dを作成しました。
2Dの画像の集まりのため真横から見るとうまく再現されませんがとりあえず可視化できました。
〇実機で確認
HoloLens 2へデプロイして実機で確認します。
まだまだモデルとしては破断が目立つように感じますが、シルエットなど形は大体とらえられているように感じます。今回49枚の画像でトレーニングしたものなので枚数を増やすなど精度が挙げられるかも合わせて実験していきたいです。