Professional Documents
Culture Documents
Main Sources
Books
Realistic Ray Tracing, Peter Shirley Realistic Image Synthesis Using Photon Mapping, Henrik Wann Jensen
Theses
Robust Monte Carlo Methods for Light Transport Simulation, Eric Veach Mathematical Models and Monte Carlo Methods for Physically Based Rendering, Eric La Fortune
Course Notes
Mathematical Models for Computer Graphics, Stanford, Fall 1997 State of the Art in Monte Carlo Methods for Realistic Image Synthesis, Course 29, SIGGRAPH 2001
Outline
Motivation Monte Carlo integration Monte Carlo path tracing Variance reduction techniques Sampling techniques Conclusion
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Eye Pixel
x
LP = L(x e)dA
S
Surface
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Light Eye
x Surface
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Herf
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Eye Surface Light
x Surface
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Debevec
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Eye Specular Surface Light
x Diffuse Surface
Motivation
Rendering = integration
Antialiasing Soft shadows Indirect illumination Caustics
Jensen
Challenge
Rendering integrals are difficult to evaluate
Multiple dimensions Discontinuities Partial occluders Highlights Caustics
Drettakis
Challenge
Rendering integrals are difficult to evaluate
Multiple dimensions Discontinuities Partial occluders Highlights Caustics
Jensen
Outline
Motivation Monte Carlo integration Monte Carlo path tracing Variance reduction techniques Sampling techniques Conclusion
Integration in 1D
1
f ( x) dx = ?
0
f(x)
x=1
We can approximate
1
f ( x) dx = g ( x) dx
0 0
f(x)
g(x)
x=1
Or we can average
1
f ( x) dx = E ( f ( x))
0
f(x) E(f(x))
x=1
f ( x) dx =
0
1 N
N i =1
f ( xi )
f(x) E(f(x))
x1
xN
Other Domains
b
x=a
x=b
Multidimensional Domains
Same ideas apply for integration over
Pixel areas Surfaces Projected areas Directions Camera apertures Time Paths
f ( x)dx =
Eye Pixel
UGLY
x Surface
f ( x) dx =
ba N
N i =1
f ( xi )
1 N
N i =1
f ( xi )
10
Outline
Motivation Monte Carlo integration Monte Carlo path tracing Variance reduction techniques Sampling techniques Conclusion
Eye
Pixel
x Diffuse Surface
11
Disadvantages
Slow convergence Noise in final image
12
1000 paths/pixel
Jensen
13
Variance
Var [E ( f ( x))] =
N i =1
[ f ( xi ) E ( f ( x))]2
E(f(x))
x1
xN
Variance
Var [E ( f ( x))] = 1 Var [ f ( x) ] N
x1
xN
14
Outline
Motivation Monte Carlo integration Monte Carlo path tracing Variance reduction techniques Sampling techniques Conclusion
Variance
Problem: variance decreases with 1/N
E(f(x))
x1
xN
15
Importance Sampling
Put more samples where f(x) is bigger
1 f ( x)dx = N f ( xi ) p ( xi )
E(f(x))
Yi =
x1
xN
f ( x) dx =
1 N
N i =1
f ( xi )
N i =1
Yi
16
Importance Sampling
This is still unbiased
E [Yi ] = Y ( x) p ( x)dx
E(f(x))
f ( x) p ( x) dx p( x) f ( x) dx
=
x1 xN
for all N
Importance Sampling
Zero variance if p(x) ~ f(x)
p ( x) = cf ( x) f ( xi ) 1 = Yi = p ( xi ) c Var (Y ) = 0
E(f(x))
x1
xN
17
Stratified Sampling
Estimate subdomains separately
Arvo
Ek(f(x))
x1
xN
Stratified Sampling
This is still unbiased
FN =
1 N
f ( xi )
i =1 M
1 = N
Ek(f(x))
N i Fi
k =1
x1
xN
18
Stratified Sampling
Less overall variance if less variance in subdomains 1 M Var [FN ] = 2 N iVar [Fi ] N k =1
Ek(f(x))
x1
xN
Outline
Motivation Monte Carlo integration Monte Carlo path tracing Variance reduction techniques Sampling techniques Conclusion
19
Sampling Techniques
Problem: how do we generate random points/directions during path tracing?
Non-rectilinear domains Importance (BRDF) Stratified
Eye
x Surface
20
Probability
0
Probability
0
21
Cumulative Probability
0
Cumulative Probability
0
22
Cumulative Probability
0
Cumulative Probability
23
Cumulative Probability
0
Probability
0
24
1 x x x x x x x x
Probability
x x
1 x x x x x x x x
Probability
x x
25
Jensen
26
RenderPark
27
Heinrich
Filtered
Jensen
28
Fixed
Ohbuchi
Adaptive
Jensen
29
Summary
Monte Carlo Integration Methods
Very general Good for complex functions with high dimensionality Converge slowly (but error appears as noise)
Conclusion
Preferred method for difficult scenes Noise removal (filtering) and irradiance caching (photon maps) used in practice
Programming Assignment #1
Jensen
30
More Information
Books
Realistic Ray Tracing, Peter Shirley Realistic Image Synthesis Using Photon Mapping, Henrik Wann Jensen
Theses
Robust Monte Carlo Methods for Light Transport Simulation, Eric Veach Mathematical Models and Monte Carlo Methods for Physically Based Rendering, Eric La Fortune
Course Notes
Mathematical Models for Computer Graphics, Stanford, Fall 1997 State of the Art in Monte Carlo Methods for Realistic Image Synthesis, Course 29, SIGGRAPH 2001
31