Download presentation
Presentation is loading. Please wait.
Published byTamsin Richards Modified over 9 years ago
1
Iteration Solution of the Global Illumination Problem László Szirmay-Kalos
2
Solution by iteration l Expansion uses independent samples –no resuse of visibility and illumination information l Iteration may use the complete previous information – L n = L e + L n-1 – pixel = L n
3
Storage of the temporary radiance: finite elements l FEM: l Projecting to an adjoint base: L j (n) b j (p) = L j e b j (p) + L j (n-1) b j (p) L(p) L j b j (p) L i (n) = L i e + L j (n-1) p= (x, )
4
FEM iteration l Matrix form: l Jacobi iteration –Complexity: O(steps · 1 step) = O(c · N 2 ) l Other iteration methods: –Gauss-Seidel iteration: O(c · N 2 ) –Southwell iteration: O(N · N) –Successive overrelaxation: O(c · N 2 ) L (n) = L e + R L (n-1)
5
Problems of classical iteration l storage complexity of the finite-element representation –4 variate radiance: very many basis functions l error accumulation – L/(1-q), q contraction l The error is due to the drastic simplifications of the form-factor computation
6
Stochastic iteration Use instantiations of random operator * – L n = L e + * n L n-1 l which behaves as the real operator in average – * n L L
7
Example: x = 0.1 x + 1.8 Solution by stochastic iteration l Random transport operator: –x n = T n x n + 1.8, T is r.v. in [ 0, 0.2] l n : 1 2 3 4 5 l T n sequence: 0 0.1 0.2 0.15 0.05 l x n sequence: 0 1.8 1.91 2.18 2.13 1.9 l Not convergent! l Averaging: 1.8 1.85 1.9 2.04 1.96
8
Iteration with a single ray Transfer the whole power from x into selected with probability:L(x, ) cos x x x L e (x, ) 1 2 3
9
Making it convergent L n = L e + * n L n-1 n = L n is not convergent pixel =( L 1 + L 2 +...+ L m )/m
10
Stochastic iteration with FEM Diffuse case l Projected transport operator: –directional integral of the transport operator –surface integral of the projection l Alternatives: –both explicitely: classical iteration, stochastic radiosity –surface integral explicitely: transillumination radiosity –both implicitely: stochastic ray-radiosity
11
Stochastic radiosity P = P e + HP Random transport operator: H* P| i = H ij Expected value: E[H*P| i ]= j H ij P i / = H P| i Selects a single (a few) patch with the probability of its relative power and transfers all power from here
12
Transillumination radiosity Selects a single (a few) directions and transfers all power into these directions Projected rendering equation: L = L e + R L Transport operator: R ij = = f i /A i Ai b j (h(x,- ’ ) cos ’ dxd ’ Random transport operator: R ij * = 4 f i /A i Ai b j (h(x,- ’ ) cos ’dx
13
Ai b j (h(x,- ’ ) cos ’dx AiAi ’’ A(i,j, ’) AjAj Transillumination plane A(i,j, ’)= projected area of path j, which is visible from path i in direction ’
14
Stochastic ray radiosity Selects a single (a few) rays (points+dirs) with a probability proportional to the power cos /area and transfers all power by these rays P = P e + HP Random transport operator: if y and are selected: H* P| i = f i b i (h(y, ) Expected value of the random transport operator: E[H*P| i ]= j f i Aj b i (h(y, ) cos / dy/A j P j / = j f i /A j Aj b i (h(y, ) cos dy P j = H P| i
15
Stochastic iteration for the non-diffuse case L n = L e + * n L n-1 l Reduce the storage requirements of the finite-element representation Search * which require L not everywhere L n (p n+1 ) = L e (p n+1 )+ * n (p n+1,p n ) L n-1 (p n )
16
Stochastic integration l Projected transport operator: –directional integral of the transport operator –directional-surface integrals of the projection l Alternatives: –all integrals explicitely: classical iteration –all integrals implicitely: iteration with a single ray –directional integral of the transport operator implicitely, integral of the projection explicitely
17
Ray-bundle based iteration L e pixel Storage requirement: 1 variable per patch
18
Finite elements for the positional variation l FEM: l Projected rendering equation: –L( ’) = L e ( ’) + F( ’, ) A( ’) L( ’)d ’ l Random transport operator: –Select a global direction ’ randomly: – * L( ’) = 4 F( ’, ) A( ’) L( ’) L(x, ) L j ( ) b j (x)
19
Ray-bundle iteration Generate the first random direction FOR each patch i L[i] = L e ( 1 ) FOR m = 1 TO M Reflect incoming radiance L to the eye and add contribution/M to Image Generate random global direction m+1 L = L e ( m+1 )+ 4 F( m, m+1 ) A( m ) L( m ) ENDFOR Display Image
20
Ray-bundle images 10k patches 500 iterations 9 mins 60k patches 600 iterations 45 mins 60k patches 300 iterations 30 mins
21
Can we use quasi-Monte Carlo samples in iteration? 1/(M-1) *(p i ) *(p i-1 ) L e 2 L e 1/(M-1) f(p i,p i-1 ) f(x,y) dxdy p i must be infinite-distribution sequence!
22
Future improvements ? l Problem formulation –Monte-Carlo integral –Expansion versus iteration l Same accuracy with fewer samples –importance sampling –very uniform sequences, stratification l Making the samples cheaper –fast visibility computations –global methods: coherence principle
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.