Spatiotemporal Reservoir Resampling for Real-Time Ray Tracing with Dynamic Direct Lighting を読んでみて Resampled Importance Sampling と Weighted Reservoir Sampling が面白いと思ったので少しまとめてみます。 Resampled Importance Sampling は通常の Importance Sampling では用いられない pdf に従ったサンプリングも行うことができます。また、 Resampled Importance Sampling は通常の Importance Sampling よりも計算に必要なメモリ容量が多くなるので、 Weighted Reservoir Sampling を用いて計算に必要なメモリ容量を削減します。
Importance Sampling
Direct Lighting では、ある点 y から方向 ω への反射輝度 L は次のような積分で表されます、
L(y,ω)=∫Aρ(y,xy↔ω)Le(x→y)G(x↔y)V(x↔y)dAx(1)
ρ は BSDF 、 Le は光源の放射輝度、 G は幾何項、 V は可視度項になります。簡単のために y と ω の表記を省略すると式 (1) は、
L=∫Af(x)dx,wheref(x)≡ρ(x)Le(x)G(x)V(x)(2)
と表せます。
式 (2) の積分は分析的に解くことは難しいため、通常 Monte Carlo 法を用いて解析的に解きます。 Monte Carlo 法は確率的手法であるため分散によるノイズが発生します。 分散を低減するために Importance Sampling (以降 IS と表記) がよく用いられます。 IS では N 個のサンプル xi を pdf p(xi) に従ってサンプリングします。その推定量は以下のようになります、
⟨L⟩isN=N1i=1∑Np(xi)f(xi)≈L(3)
IS は f(x)=0 となる x に対して常に p(x)>0 となる場合に unbiased となります。 また、 p(x) が f(x) に対して相関が強いほど分散を低減することができます。 IS を用いるためには pdf で定義される分布に従ってサンプルを生成できる必要があります。一般的にサンプリングの方法として inverse cumulative distribution function (逆CDF) や rejection sampling が用いられます。
Resampled Importance Sampling
Direct Lighting を IS を用いて計算する場合は ρ⋅Le⋅G⋅V に比例した pdf に従ってサンプリングするのが理想ですが、このような pdf は closed-form で表現できず複雑なため 逆CDF によるサンプリングは難しくなります。 Resampled Importance Sampling (以降 RIS と表記) はこのような複雑な pdf を用いて IS を行うことができます。 RIS では2つの pdf を用います。1つはソース pdf p で f との相関は強くないが 逆CDF ができる pdf です (例えば p∝Le など)。もう1つは ターゲット pdf p^ で f との相関は強いが正規化が難しく 逆CDF ができない pdf です (例えば p^∝ρ⋅Le⋅G など)。
先ず、 M 個 (M≥1) の候補サンプル x={x1,…,xM} を ソース pdf p に従ってサンプリングします。その候補サンプルの中から z 番目、 xz (z∈{1,…,M}) を重み w(x)=p(x)p^(x) に従ってランダムに選びます。候補の中から xz が選択される確率は、
p(z∣x)=∑i=1Mw(xi)w(xz)(4)
となります。上記の手順でサンプリングされた xz はターゲット pdf p^ に近似した分布になります。この xz を使った推定量は以下のようになります、
式 (5) は M=1 の時は p を使って IS しているのと同じになり、 M=∞ の時は p^ を使って IS しているのと同じになります。 M が大きくなるほど p^ に近い分布で IS できますが計算量は多くなります。
以下の図は[1]からの引用ですが、ソース pdf p を一様分布、ターゲット pdf p^ を p^∝cos(θ)+sin4(6θ) として M を変化させた時の xz の分布を表しています、
Talbot J, Cline D, Egbert P: Importance Resampling for Global Illumination (2005)
Efraimidis PS, Spirakis PG: Weighted Random Sampling with a Reservoir (2006)
Efraimidis PS: Weighted Random Sampling over Data Streams (2015)
Bitterli B, Wyman C, Pharr M, Shirley P, Lefohn A, Jarosz W: Spatiotemporal Reservoir Resampling for Real-Time Ray Tracing with Dynamic Direct Lighting (2020)
0 件のコメント:
コメントを投稿