Title: Metropolis light transport
1Metropolis light transport
- Digital Image Synthesis
- Yung-Yu Chuang
- 12/27/2007
with slides by Matt Pharr
2Metropolis sampling
- Another way to generate samples from a
distribution (similar to inversion, rejection and
transform) - Problem given an arbitrary function
- assuming
- generate a set of samples
3Metropolis sampling
- MS only requires the ability to evaluate f
without requiring integrating f, normalizing f
nor inversion. - Steps
- Generate initial sample x0
- mutating current sample xi to propose x
- If it is accepted, xi1 x
- Otherwise, xi1 xi
- Acceptance probability guarantees distribution is
the stationary distribution f
4Metropolis sampling
- Mutations propose x given xi
- T(x?x) is the tentative transition probability
density of proposing x from x - Being able to calculate tentative transition
probability is the only restriction for the
choice of mutations - a(x?x) is the acceptance probability of
accepting the transition - By defining a(x?x) carefully, we ensure
5Metropolis sampling
stationary distribution
6Binary example I
7Binary example II
8Acceptance probability
- Does not affect unbiasedness just variance
- Want transitions to happen because transitions
are often heading where f is large - Maximize the acceptance probability
- Explore state space better
- Reduce correlation
9Mutation strategy
- Very free and flexible, only need to calculate
transition probability - Based on applications and experience
- The more mutation, the better
- Relative frequency of them is not so important
10Pseudo code
11Pseudo code (expected value)
121D example
131D example (mutation)
141D example
mutation 1
mutation 2 10,000 iterations
151D example
mutation 1
mutation 2 300,000 iterations
161D example
mutation 1
90 mutation 2 10 mutation 1
Periodically using uniform mutations increases
ergodicity
172D example (image copy)
182D example (image copy)
192D example (image copy)
1 sample per pixel
8 samples per pixel
256 samples per pixel
203D example (motion blur)
21Application to integration
22Application to integration
23Motion blur
24Motion blur
25Results
Distributed ray tracing
Metropolis sampling
26Parameter tweaking
27Metropolis light transport
- Veach and Guibas introduced Metropolis sampling
to Graphics from computational physics in their
SIGGRAPH 1997 paper, Metropolis Light Transport. - Unbiased and robust (can deal with difficult
cases such as caustics) - However, difficult to understand and implement
efficiently. - Few implementation exists such as Indigo renderer
and Kerkythea.
28Metropolis light transport
- Each path is generated by mutating previous path.
- Advantages
- Path reuse efficient
- Local exploration explore important
contributions, reducing variance
29Lighting transport
30Bidirectional mutation
31Caustic perturbation
32Lens perturbation and pixel stratification
- Make sure every pixel is covered somehow.
33Results
Bidirectional Path tracing 25 samples per pixel
34Results
Metropolis light transport With the same number
of ray queries
35Results
Bidirectional path tracing (40 samples per pixel)
36Results
Metropolis light transport (average 250 mutations
per pixel, same computation time as the above)