NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
xは三次元座標(x, y, z), dは視線の方向, cはRGBカラー, σは密度(不透明度)
σは(x, y, z)のみから決まり、cはそれに加えてdも使う。
dの表現に必要なのは2次元だが、実際には三次元の単位ベクトルで表す。
FΘは、ボリュメトリックレンダリングで各ピクセルの値C(r)を計算するときに使う:
性能を改善するために、以上の手法から改良したところがある。
高周波数の表現を改善するために、xとdの各次元の要素に対して次の変換をしたものをMLPの入力に使う。
一様分布から点をサンプルするかわりに、重要そうな点を重点的にサンプルするようにする。
そのために、coarse networkとfine networkを使う。
これまでのように一様分布でサンプルしてcoarse networkを計算し、影響が大きい箇所から重点的にfine network用の点をサンプルする。
最終的なレンダリングにはfine networkを使うが、その計算にはすべてのサンプルを使う(Nc+Nf)
学習では、イテレーションごとに、データセットのすべてのピクセルからランダムにサンプルしたピクセルのバッチを使う。
損失関数は単純に正しい色とレンダリングした色との自乗誤差の合計