はじめに
スペースリーでインターンをしている大隣嵩です。弊社は空間データ活用プラットフォームとしてパノラマ画像を使った空間の3D化技術に関する研究開発を行っております。
最近では、iPhoneやAndroidで簡単に3Dスキャンができるアプリが登場しています。しかし、アプリを利用した3Dスキャンでは、低テクスチャな領域やスパースに撮影された領域の高精度な3D復元が難しいという課題があります。本記事では、単眼深度推定、法線推定結果をNeural Fieldsの追加の制約として学習させることで、一般的に復元が難しいとされる低テクスチャやスパースな画像群から高精度な3D復元を達成したMonoSDF[1]について紹介します。まずは、MonoSDFの概要を紹介し、その後、実験の結果を報告します。
MonoSDF: Exploring Monocular Geometric Cues for Neural Implicit Surface Reconstruction
NeRF[2] を用いることで、シーンの任意の視点からの画像合成が可能になりましたが、NeRFでは物体の表面に制約を課していないため、正しいジオメトリを復元するのが困難であり、メッシュを復元する目的には適していません。そこで、NeRFに似たボリュームレンダリングを用いたSDFベースの手法であるNeuS[3]やVolSDF[4]が登場しました。これらの手法は、NeRFと比較してジオメトリの復元結果が改善されましたが、多視点の一貫性が必要であり、疎な画像群や特徴点の少ないシーンでは復元に失敗する可能性があります。一方、MonoSDFでは、単眼の深度推定と法線推定結果(図1)をSDFの学習における正則化として追加することで、深度と法線に基づく正しいジオメトリを学習することができます。これにより、低テクスチャな領域やスパースに撮影された領域からも高精度な3D復元結果を達成することができます。MonoSDFは、従来の手法に比べて多視点の一貫性のみに依存しないため、疎な画像群や特徴点の少ないシーンでも利用することができます。
MonoSDFの色空間を利用したテクスチャの取得
MonoSDFで学習される色空間を利用して、抽出したメッシュのテクスチャを計算することができます。テクスチャを取得する流れは2つのステップに分解できます。 1. メッシュの頂点・面からテクスチャマップを作成し、各ピクセルのテクスチャを参照する3次元点の座標と法線方向を計算する (xatlas[5]) 2. 3次元点の座標と法線(2次元方向)をMonoSDFで学習した色空間に入力しテクスチャマップの各ピクセルの色を計算する
論文内の実験概略
MonoSDFでは、ジオメトリの学習のためにRGB空間の学習を行いますが、テクスチャ復元の評価は行っていません。また、既存手法との比較ではCOLMAP[6]のような特徴量マッチングベースの手法や、NeuSのような単眼の教師を用いないSDFベースの手法と比較してより良いメッシュの復元ができていることが定量的・定性的にわかっています(図2)。
実験
実験データ
360度カメラを使って夜のオフィス(office_night)、昼のオフィス(office_daytime)、廊下(corridor)、トイレ(toilet)の4つのシーンの撮影を行いMonoSDFの学習のためのデータとしました。各シーンの画像例を図3に示します。
実験条件
撮影した各360度画像から撮影者が映らないように視野角90度で6枚ずつ透視投影画像を切り出し、NeRFStudioを使った実験と同様に、COLMAPを使ってカメラパラメータを求めました。その後、メモリに収まる範囲内で画像枚数を500枚以下となるように調整しました。モデルはsdfstudio[7]に実装されているmonosdfをベースに、カメラパラメータの最適化も同時に行ない、各イテレーションで1024本の光線を学習に使用して、200,000ステップの学習を行いました。また、比較のためにCOLMAPを使ったメッシュ復元も行いました。GeForce GTX 1080 1枚で学習を行い、各シーンの学習に約40時間かかりました。
ロスの推移
各シーンでmonosdfを学習した時のロスの推移は図4です。右端の200,000ステップの時点で、まだロスが下がりそうな余地がありますが、今回の実験では学習時間を考慮し、200,000ステップで学習を終了しました。
実験結果
COLMAPの結果
corridor
toilet
今回はcorridorとtoiletのみ検証を行いましたが、後述するMonoSDFと比較すると、多くのノイズが乗ったメッシュが出力される結果になりました。
MonoSDFの結果
- office_night
- office_daytime
- corridor
- toilet
ジオメトリ復元に関してはtoiletのような比較的単純なシーンでは正確に復元できるものの、officeのような広くて多くのオブジェクト(机・椅子)が存在するシーンでは失敗することがわかりました。複雑なシーンに適用する際には、シーンを分割したり、メッシュをより高解像度化することが必要と考えています。また、テクスチャに関しては、学習された色空間から方向依存性を取り除くことから全体的に違和感のあるテクスチャが復元されました。もっと違和感のないテクスチャを復元するためには、物理的特性も考慮したテクスチャの学習・作成や、テクスチャ付きメッシュを直接ファインチューニングすることが必要と考えています。
まとめ
屋内シーンを撮影した360度動画からMonoSDFを用いたテクスチャ付きメッシュの復元を行なった結果を紹介しました。MonoSDFは従来の特徴量ベースの手法や単眼の追加教師を用いない場合と比較して高精度にジオメトリを復元できることを確認しました。また、MonoSDFは綺麗なテクスチャを取り出すことを目的としておらず、実際にテクスチャを復元した結果から、テクスチャの精度は保証されていないことがわかりました。この結果をさらに良くするためには、物理的特性も加味したテクスチャの学習・復元を行ったり、復元したテクスチャ付きメッシュを直接ファインチューニングすることが考えられます。
さいごに
spacelyでは一緒に働いてくださる方を募集中です。
カジュアル面談も実施していますので気になる方は是非ご連絡ください!
参考文献
[1] Zehao Yu, Songyou Peng, Michael Niemeyer, Torsten Sattler and Andreas Geiger. MonoSDF: Exploring Monocular Geometric Cues for Neural Implicit Surface Reconstruction. In NeurIPS, 2022.
[2] Ben Mildenhall, Pratul P. Srinivasan, Matthew Tancik, Jonathan T. Barron, Ravi Ramamoorthi and Ren Ng. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. In ECCV, 2020.
[3] Peng Wang, Lingjie Liu, Yuan Liu, Christian Theobalt, Taku Komura and Wenping Wang. NeuS: Learning Neural Implicit Surfaces by Volume Rendering for Multi-view Reconstruction. In NeurIPS, 2021.
[4] Lior Yariv, Jiatao Gu, Yoni Kasten and Yaron Lipman. Volume rendering of neural implicit surfaces. In NeurIPS, 2021.
[5] xtlas-python
[6] Johannes Lutz Schönberger, Enliang Zheng, Marc Pollefeys and Jan-Michael Frahm. Pixelwise View Selection for Unstructured Multi-View Stereo. In ECCV, 2016.
[7] Zehao Yu, Anpei Chen, Bozidar Antic, Songyou Peng, Apratim Bhattacharyya, Michael Niemeyer, Siyu Tang, Torsten Sattler and Andreas Geiger. SDFStudio: A Unified Framework for Surface Reconstruction.