Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

grafika by liaoxiuli

VIEWS: 27 PAGES: 22

									  Iteration Solution of the
Global Illumination Problem

      László Szirmay-Kalos
         Solution by iteration
   Expansion uses independent samples
    – no resuse of visibility and illumination
      information
   Iteration may use the complete previous
    information

    – Ln= Le+ t Ln-1
    – pixel = M Ln
      Storage of the temporary
      radiance: finite elements
 FEM:     L(p)  Lj bj (p)                      p=(x,w)

Lj(n) bj (p) = Lje bj (p) +   t L (n-1) b (p)
                                           j        j


   Projecting to an adjoint base:


 Li(n) = Lie +  Lj(n-1) <       t b , b ’>
                                       j       i
               FEM iteration
   Matrix form:       L(n) = Le + R L(n-1)

   Jacobi iteration
    – Complexity: O(steps · 1 step) = O(c · N 2)
   Other iteration methods:
    – Gauss-Seidel iteration: O(c · N 2)
    – Southwell iteration: O(N · N)
    – Successive overrelaxation: O(c · N 2)
Problems of classical iteration
   storage complexity of the finite-element
    representation
    – 4 variate radiance: very many basis functions
   error accumulation
    – L/(1-q),   qcontraction
   The error is due to the drastic simplifications
    of the form-factor computation
           Stochastic iteration

   Use instantiations of random operator   t*
    – Ln=     Le+   t *n Ln-1
   which behaves as the real operator in
    average

    – E[   t *n L]t L
   Example: x = 0.1 x + 1.8
Solution by stochastic iteration
   Random transport operator:
    – xn = T n xn + 1.8, T is r.v. in [ 0, 0.2]
 n:                    1     2      3      4     5
 Tn sequence:          0    0.1 0.2 0.15 0.05
 xn sequence: 0 1.8 1.91 2.18 2.13 1.9
 Not convergent!
 Averaging:      1.8 1.85 1.9 2.04 1.96
    Iteration with a single ray
     Transfer the whole power from x into w
     selected with probability:L(x,w) cos 

 w           1
                                              3
                                   x
1      Le(x,w)
     x                                 w
                                   
             2       x            3
                               2
                  w
    Making it convergent

Ln= Le+ t *n Ln-1

    n =M Ln is not convergent

pixel=(M L1+ M L2+...+ M Lm)/m
     Stochastic iteration with FEM
            Diffuse case
   Projected transport operator:
    – directional integral of the transport operator
    – surface integral of the projection
   Alternatives:
    – both explicitely: classical iteration, stochastic radiosity
    – surface integral explicitely: transillumination radiosity
    – both implicitely: stochastic ray-radiosity
      Stochastic radiosity
Selects a single (a few) patch with the
probability of its relative power and
transfers all power from here

          P = Pe + HP
Random transport operator: H* P|i = Hij 
Expected value:
    E[H*P|i ]= j Hij  Pi/ = H P|i
     Transillumination radiosity
Selects a single (a few) directions and transfers
all power into these directions
Projected rendering equation:
L = Le + R L
Transport operator:
Rij =<t bj ,bi’>= fi /Ai  Ai bj (h(x,-w’)) cos’ dxdw’
Random transport operator:
    Rij*= 4 fi /Ai Ai bj (h(x,-w’)) cos’dx
  Ai bj (h(x,-w’)) cos’dx
              w

          A(i,j,w’)     w’
  Ai
                      Transillumination
                                        Aj
                      plane

A(i,j,w’)= projected area of path j, which is
          visible from path i in direction w’
       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 = Pe + HP
Random transport operator:
   if y and w are selected: H* P|i = fi bi(h(y,w)) 
Expected value of the random transport operator:
E[H*P|i ]= j fi  Aj bi(h(y,w))  cos/ dy/Aj Pj/
= j fi /Aj Aj bi(h(y,w)) cos dy Pj = H P|i
     Stochastic iteration for the
           non-diffuse case
   Ln= Le+ t *n Ln-1
   Reduce the storage requirements of the
    finite-element representation
   Search t * which require L not everywhere
   Ln (pn+1) = Le (pn+1)+t *n (p n+1,p n) Ln-1 (p n)
         Stochastic integration
   Projected transport operator:
    – directional integral of the transport operator
    – directional-surface integrals of the projection
   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
  Ray-bundle based iteration
          pixel


                                            e
                                            L



Storage requirement: 1 variable per patch
           Finite elements for the
             positional variation
   FEM:     L(x,w)  Lj (w) bj (x)

   Projected rendering equation:
    – L(w’) = Le(w’) + F(w’,w) A(w’) L(w’)dw’
   Random transport operator:
    – Select a global direction w’ randomly:
    – t * L(w’) = 4 F(w’,w) A(w’) L(w’)
       Ray-bundle iteration
Generate the first random direction w1
FOR each patch i L[i] = Le(w1)
FOR m = 1 TO M
  Reflect incoming radiance L to the eye and
  add contribution/M to Image
  Generate random global direction wm+1
  L = Le(wm+1)+ 4 F(wm,wm+1) A(wm) L(wm)
ENDFOR
Display Image
           Ray-bundle images




60k patches      60k patches      10k patches
300 iterations   600 iterations   500 iterations
30 mins          45 mins          9 mins
     Can we use quasi-Monte
    Carlo samples in iteration?

1/(M-1) t*(pi)t*(pi-1)   Le   t   2Le


1/(M-1)  f(pi,pi-1)   f(x,y) dxdy

pi must be infinite-distribution sequence!
       Future improvements ?
   Problem formulation
    – Monte-Carlo integral
    – Expansion versus iteration
   Same accuracy with fewer samples
    – importance sampling
    – very uniform sequences, stratification
   Making the samples cheaper
    – fast visibility computations
    – global methods: coherence principle

								
To top