Metropolis Light Transport Eric Veach Leonidas J Guibas
Metropolis Light Transport Eric Veach Leonidas J. Guibas Computer Science Department Stanford University.
Outline • • • Prerequisite Overview Initial Path Mutation Result
Markov chain • Markov chain : – A stochastic process with Markov property. The range of random variable X is called the state space. is called the transition probability. (one step)
Markov chain How about two or three steps? Distribution over states at time n+1
Markov chain • Stationary distribution (steady-state distribution):
Markov chain • Ergodic theory: – If we take stationary distribution as initial distribution. . . the average of function f over samples of Markov chain is :
Markov chain • If the state space is finite. . . transition probability can be represented as a transition matrix P.
Overview Rendering equation Measurement equation Expand L by rendering equation
Overview fj μ
Overview • f : the energy of all image plane. • fj : the energy of pixel j. We can think wj restricted f to the pixel j.
Overview Now, we want to solve the integration :
Overview • As the Monte-Carlo Method, we want the probability distribution p proportional to f. K is transition function converge The same idea. . in this paper, we want stationary distribution Proportional to f.
Overview • If we let And we prefer the stationary distribution propose to f Mutation determine T(y|x). If we determine a mutation, we must Calculate a(y|x) to satisfy this equation!
Overview In this paper, based on bidirectional ray tracing Based on three strategies, decide T(y|x) Computed by T(y|x)
Initial Path In this paper, based on bidirectional ray tracing Based on three strategies, decide T(y|x) Computed by T(y|x)
Initial Path • How to choose Initial Path? (Have a good start!) – Run n copies of the algorithm and accumulate all samples into one imege. – Sample n paths : – Resample form the n paths to obtain relative small number n’ paths. – If n’ = 1, then just take the mean value.
Mutation In this paper, based on bidirectional ray tracing Based on three strategies, decide T(y|x) Computed by T(y|x)
Properties of good mutations • High acceptance probability. – Prevent the path sequence x, x, x, … • Large changes to the path. – Prevent path sequence with high correration • Ergodicity. – Ensure random walk converge to an ergodic state.
Properties of good mutations • Changes to the image location. – Minimize correlation between image plane. • Stratification. – Uniform distribute on image plane. • Low cost. – As the word says. .
Mutation • In this paper, three Mutation strategies is presented… – Bidirectional mutations – Perturbations – Lens subpath perturbations • Each mutation decide T(Y|X), we must take a(Y|X) to satisfy : Roughly, when we use a mutation generate a new path, we can compute T(y|x), then we decide a(y|x). According to a(y|x), we reject or accept the new path.
Bidirectional mutation If we initially have a path : For k = 3: probability to delete path from s to t x 0 x 1 x 2 x 3 Pd(1, 2) x 0 x 1 x 2 x 3 Pa(1, 0) x 0 x 1 z x 2 x 3 Probability to add new path of length s’, t’ to vertex s, t.
Bidirectional mutation We want a(y|x) satisfy:
Compute R(y|x), R(x|y) y: z For compute R(y|x): x 0 For R(x|y): x 1 x 2 x 3 x: x 0 x 1 x 2 x 3
Perturbations If we initially have a path : For k = 3: x 0 x 1 x 2 x 3 Choose a subpath and move the vertices slightly. In the case above, the subpath is x 1 -x 3. Main interest perturbations is subpath consist xk-1 - xk
Perturbations • Perturbations has two type: – Lens perturbations. • Handle (L|D)DS*E – Caustic perturbations. • Handle (L|D)S*DE
Perturbations • How about (L|D)DS*DS*DE?
Lens subpath mutations • Substitute len subpath (xt, …, xk) to another one to achieve the goal of Stratification (L|D)S*E. – Initialize by n’ initial path seeds. Then store the current lens subpath xe. At most reuse xe a fix number ne times. – We sequentially mutate n’ initial path seeds. – Generate new len subpath by case a ray through a point on image plane , follows zero or more specular bounce until a non-specular vertex.
Result
Result
Result
Result
- Slides: 31