はじめに
こんにちは、東京大学情報理工学系研究科コンピュータ科学専攻修士一年の藤田光と申します。私は6週間LINE AIカンパニーのComputer Vision Labチーム(CVL) Virtual Humanユニットでインターンシップに参加させていただき、研究活動を行いました。今回私が期間中に取り組んだ多視点画像による光源環境の推定と、それによる編集可能なNeRFに向けた研究と実験についてご紹介します。
問題背景
近年NeRF[1]をベースとして多視点の画像から三次元のvolumetricな表現を学習する手法が多く研究されています。これは三次元空間内の各点の輝度を推定することで任意の視点の画像をvolume renderingするというのが主な手法ですが、空間内のすべての点を同様に扱うためオブジェクトごとに認識されているわけではなくオブジェクトを移動・追加させたり、不要なオブジェクトを消すことが困難です。いくつかの研究[4]ではオブジェクト毎に表現を学習することで編集が可能なNeRFベースのモデルが考案されていますが、どこか出力された画像は不自然に見えるものもあります。この原因はオブジェクトが編集された際の光源環境の変化が正しく反映されていないためだと考えられます。
(参照:Learning object-compositional neural radiance field for editable scene rendering.)
三次元volumeと光環境との関係の反映についての研究は、PhySG[2]やNeRFactor[3]などで行われていて、NeRFで輝度場を学習する際に、オブジェクト表面についての光の反射を考慮した物理ベースのレンダリングを行うようなモデルを設計しています。従来のvolume renderingを行うNeRFの手法と比較して、物理ベースのレンダリングは表面上の各点
NeRFactorでは元のNeRFで学習済みの密度場を用い、物理ベースレンダラに必要なBRDF値を一度学習させ、その後albedoや法線、周囲の光環境を学習させることでオブジェクトをレンダリングします。オブジェクトの形状と反射を表現するために必要なパラメータを学習あせることで、元と異なる光環境下におけるオブジェクトの見え方を計算するRelightingを行うことができます。今回のインターンでは、NeRFactorでの光環境の再構成に着目し、この学習をより正確に行うことで光環境を反映がされたより良いオブジェクトの編集できるvolume表現を獲得できるのではないかと考えました。
手法
(参照:NeRFactor: Neural factorization of shape and reflectance under an unknown illumination.)
今回の実験では、光源を有限の距離に置き、オブジェクトのvolumeを学習すると共に、光源の位置や強度を学習することを目指しました。図で示しているのは、参考にしているNeRFactorの手法の詳細です。NeRFactorでは図で青く示されたブロック、NeRFとBRDF MLPによって密度場の推定とBRDFの推定が行われます。また、右下のLightと書かれたブロックは光環境としてレンダリング方程式に組み込み、学習を行います。この際の学習はレンダリングされた画像と元画像との二乗誤差を損失として計算することで行われます。元の手法ではLightは16x32の解像度で表現されたマップ(lat-long map)を周囲の光環境として学習が行われますが、今回の実験で変更した点は、推定された点光源の位置と強度からこのマップを計算してレンダリングを行うことにあります。光源の位置からの距離(distance)、強度(intensity)から(x,y)点の明るさが
実験
(左:元手法、中:提案手法、右:元画像)
データセットはNeRFで用いられるSynthetic NeRF dataをBlenderで編集し点光源を設置したシーンから学習用に100枚の画像とカメラの情報を集めました。金属的なオブジェクトを撮影しているため、光沢のある部分が光源の位置を探る手掛かりになるのではないかと期待して選択しました。光源はBlenderにてpowerを10,000、位置を(0,-2,4)としています。NeRFactor内での計算式で、光源の強度を3, 位置を(3,3,3)と初期化してから学習を行い、環境マップを計算しました。学習後再構成された画像を比較したのが上の図です。元の画像の精度に比較すれば粗いですが、二列目では元のNeRFactorの手法よりも金属的な光沢を再現することができていることが確認できます。
結果
反射を考慮したNeRFモデルを拡張し、光源の位置と強度を推定しましたが精度には未だ改良の余地があります。環境マップの計算方法をより正確なものに置き換える、レンダリング方程式に光源位置や強度の項を組み込んだモデルを設計するなどが考えられます。より精度良く光源環境の推定が可能になることで、移動されたオブジェクトなどのRelightingが可能になることもあるのではないかと思われます。
まとめ
今回は6週間という長期のインターンシップに参加させていただきましたが、振り返ってみると非常に短いものに感じられるほど密度の濃い活動をさせていただいたかと思いました。最後までわからない点や不安な点を抱えている私をサポートしていただいた社員の方々にはとても感謝しています。サポートしていただく中で、自分の不足している実力について考えることができました。興味のある方は是非エントリーしてみてください。
- Mildenhall, Ben, et al. "Nerf: Representing scenes as neural radiance fields for view synthesis." Communications of the ACM 65.1 (2021): 99-101.
- Zhang, Kai, et al. "Physg: Inverse rendering with spherical gaussians for physics-based material editing and relighting." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021.
- Zhang, Xiuming, et al. "Nerfactor: Neural factorization of shape and reflectance under an unknown illumination." ACM Transactions on Graphics (TOG) 40.6 (2021): 1-18.
- Yang, Bangbang, et al. "Learning object-compositional neural radiance field for editable scene rendering." Proceedings of the IEEE/CVF International Conference on Computer Vision. 2021.