SlideShare a Scribd company logo
Quasi-Monte Carlo Methods
in Photorealistic Image Synthesis
Alexander Keller
Leonhard Grünschloß
QMC Methods in Photorealistic Image Synthesis
Image Synthesis
 Light Transport
 Ray Tracing
Quasi-Monte Carlo Points
Quasi-Monte Carlo Rendering Techniques
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 2
Image Synthesis
Photorealistic image synthesis by light transport simulation
 find all light transport paths that connect camera and light sources
 then sum up their contribution
Image courtesy Delta Tracing with NVIDIA iray.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 3
Image Synthesis
Light transport
 radiance = source radiance + transported radiance
L = Le +Tf L
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 4
Image Synthesis
Light transport
 radiance = source radiance + transported radiance
L = Le +Tf L
Fredholm integral equation of the 2nd kind
L(x,ω) = e−
R d(x,−ω)
0 σt (x−sω)ds
·

Le(xb,ω)+
Z
S 2
−(xb)
fr (ωi ,xb,ω)L(xb,ωi )cosθi dωi

+
Z d(x,−ω)
0
e−
R s
0 σt (x−tω)dt

Le,v (x −sω,ω)
+ σs(x −sω)
Z
S 2
p(x −sω,ωi ·ω)L(x −sω,ωi )dωi

ds
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 4
Image Synthesis
Light transport
 radiance = source radiance + transported radiance
L = Le +Tf L
Fredholm integral equation of the 2nd kind
∂V
x∂V
x−sω
ω
x
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 5
Image Synthesis
Assemble paths by tracing rays from origin x into direction ω
 find first intersection h(x,ω) with boundary
 determine mutual visibility V(x,y) of two points x and y
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 6
Image Synthesis
Assemble paths by tracing rays from origin x into direction ω
 find first intersection h(x,ω) with boundary
 determine mutual visibility V(x,y) of two points x and y
 ray-primitive intersection
– surfaces often approximated by tessellation, for example triangles
– ill-posed problem, unless original surface can be reconstructed
– consistent numerics to ameliorate numerical issues
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 6
Image Synthesis
References
 P. Shirley, Morley: Realistic Ray Tracing, 2nd Ed., AK Peters 2003.
 A. Glassner: An Introduction to Ray Tracing, Morgan Kaufmann, 1989.
 C. Wächter: Quasi-Monte Carlo Light Transport Simulation by Efficient Ray Tracing, PhD thesis,
2007.
 J. Hanika: Spectral Light Transport Simulation using a Precision-Based Ray Tracing
Architecture, PhD thesis, 2010.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 7
QMC Methods in Photorealistic Image Synthesis
Image Synthesis
Quasi-Monte Carlo Points
 Halton sequence and Hammersley points
 (t,s)-sequences and (t,m,s)-nets in base b
 Rank-1 lattice sequences and rank-1 lattices
 Implementation
Quasi-Monte Carlo Rendering Techniques
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 8
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
 consistent integro-approximation by uniform sampling
I(x) =
Z
[0,1)s
f(x,y)dy
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
 consistent integro-approximation by uniform sampling
I(x) =
Z
[0,1)s
f(x,y)dy = lim
n→∞
1
n
n−1
∑
i=0
f(x,yi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
 consistent integro-approximation by uniform sampling
I(x) =
Z
[0,1)s
f(x,y)dy = lim
n→∞
1
n
n−1
∑
i=0
f(x,yi ) ≈
1
n
n−1
∑
i=0
f(x,yi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
 consistent integro-approximation by uniform sampling
I(x) =
Z
[0,1)s
f(x,y)dy = lim
n→∞
1
n
n−1
∑
i=0
f(x,yi ) ≈
1
n
n−1
∑
i=0
f(x,yi )
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q q
q
q
q
q
q
q
q
q
q
q q
q
q
q q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Quasi-Monte Carlo methods
’For every randomized algorithm, there is a clever deterministic one.’
Harald Niederreiter, Claremont, 1998.
 consistent integro-approximation by uniform sampling
I(x) =
Z
[0,1)s
f(x,y)dy = lim
n→∞
1
n
n−1
∑
i=0
f(x,yi ) ≈
1
n
n−1
∑
i=0
f(x,yi )
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q q
q
q
q
q
q
q
q
q
q
q q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
pseudo-random low discrepancy
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t t
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t t
 properties
– subsequent points that “fall into biggest holes”
– not completely uniform distributed (CUD)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t t
d d
d d
 properties
– subsequent points that “fall into biggest holes”
– not completely uniform distributed (CUD)
– contiguous blocks of stratified points xi for kbm ≤ i  (k +1)bm −1
 for each block the Φb(i) are equidistant
 for each block the integers bbm
Φb(i)c are a permutation of {0,...,bm
−1}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t t
t t
t t
 properties
– subsequent points that “fall into biggest holes”
– not completely uniform distributed (CUD)
– contiguous blocks of stratified points xi for kbm ≤ i  (k +1)bm −1
 for each block the Φb(i) are equidistant
 for each block the integers bbm
Φb(i)c are a permutation of {0,...,bm
−1}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion
 van der Corput sequence in base b
Φb : N0 → Q∩[0,1)
i =
∞
∑
l=0
al (i)bl
7→ Φb(i) :=
∞
∑
l=0
al (i)b−l−1
– example Φ2(i): t t
t t
t t
t t
t t
t t
t t
t t
 properties
– subsequent points that “fall into biggest holes”
– not completely uniform distributed (CUD)
– contiguous blocks of stratified points xi for kbm ≤ i  (k +1)bm −1
 for each block the Φb(i) are equidistant
 for each block the integers bbm
Φb(i)c are a permutation of {0,...,bm
−1}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
Quasi-Monte Carlo Points
Radical inversion based points for dimensions s  1
 let the bj be co-prime, for example the j-th prime number
Halton sequence
xi := Φb1
(i),...,Φbs
(i)

q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
(Φ2(i),Φ3(i))63
i=0
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
Quasi-Monte Carlo Points
Radical inversion based points for dimensions s  1
 let the bj be co-prime, for example the j-th prime number
Halton sequence Hammersley point sets
xi := Φb1
(i),...,Φbs
(i)

xi :=

i
n ,Φb1
(i),...,Φbs−1
(i)

q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
(Φ2(i),Φ3(i))63
i=0 ( i
64 ,Φ2(i))63
i=0
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
Quasi-Monte Carlo Points
Radical inversion based points for dimensions s  1
 let the bj be co-prime, for example the j-th prime number
Halton sequence Hammersley point sets
xi := Φb1
(i),...,Φbs
(i)

xi :=

i
n ,Φb1
(i),...,Φbs−1
(i)

q q q q q q q q q q q q q q q q q
q q
q q q q q q q q q q q q q q q
q q q q
q q q q q q q q q q q q q
q q q q q q
q q q q q q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
(Φ17(i),Φ19(i))63
i=0 ( i
64 ,Φ2(i))63
i=0
– correlations in low dimensional projections
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
Quasi-Monte Carlo Points
Radical inversion based points for dimensions s  1
 let the bj be co-prime, for example the j-th prime number
Halton sequence Hammersley point sets
xi := Φb1
(i),...,Φbs
(i)

xi :=

i
n ,Φb1
(i),...,Φbs−1
(i)

a a a a a a a a a a a a a a a a a
q q
q q q q q q q q q q q q q q q
q q q q
q q q q q q q q q q q q q
q q q q q q
q q q q q q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
(Φ17(i),Φ19(i))63
i=0 ( i
64 ,Φ2(i))63
i=0
– correlations in low dimensional projections
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 unit square [0,1)2
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 bit 1 of x
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 bit 2 of x
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 bit 3 of x
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 all bits of x
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambling
 algorithm: start with H = Is and for each axis j
1. slice H into bj equally sized volumes H1,H2,...,Hbj
along the axis
2. permute these volumes
3. for each Hh recursively repeat the procedure with H = Hh
 many variants, simplifications, and generalizations
– example: XOR-scrambling
 all bits of x and y
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
Quasi-Monte Carlo Points
Scrambled radical inversion
 example: deterministic permutations σb by Faure
i =
∞
∑
j=0
aj (i)bj
7→
∞
∑
j=0
σb(aj (i))b−j−1
– b is even: Take 2σb
2
and append 2σb
2
+1
– b is odd: Take σb−1, increment each value ≥ b−1
2 and insert b−1
2 in the middle
σ2 = (0,1)
σ3 = (0,1,2)
σ4 = (0,2,1,3)
σ5 = (0,3,2,1,4)
σ6 = (0,2,4,1,3,5)
.
.
.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 13
Quasi-Monte Carlo Points
Scrambled radical inversion
 example: deterministic permutations σb by Faure
i =
∞
∑
j=0
aj (i)bj
7→
∞
∑
j=0
σb(aj (i))b−j−1
– b is even: Take 2σb
2
and append 2σb
2
+1
– b is odd: Take σb−1, increment each value ≥ b−1
2 and insert b−1
2 in the middle
σ2 = (0,1)
σ3 = (0,1,2)
σ4 = (0,2,1,3)
σ5 = (0,3,2,1,4)
σ6 = (0,2,4,1,3,5)
.
.
.
q q q q q q q q q q q q q q q q q
q q
q q q q q q q q q q q q q q q
q q q q
q q q q q q q q q q q q q
q q q q q q
q q q q q q q
→
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 13
Quasi-Monte Carlo Points
Properties of radical inversion
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q q
q q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q q
q q
q q
q q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: van der Corput sequence xi = Φ2(i)
q q
q q
q q
q q
q q
q q
q q
q q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
Properties of radical inversion in dimensions s  1
 subsequent points that “fall into biggest holes”
 stratification invariant under scrambling
 contiguous blocks of stratified points xi for
k
s
∏
j=1
b
mj
j ≤ i  (k +1)
s
∏
j=1
b
mj
j −1
 example: Halton sequence xi = (Φ2(i),Φ3(i))
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
Quasi-Monte Carlo Points
(t,s)-sequences and (t,m,s)-nets in base b
 elementary interval
E :=
s
∏
j=1

aj
blj
,
aj +1
blj

⊆ Is
for integers lj ≥ 0 and 0 ≤ aj  blj
with volume λs(E) = ∏s
j=1
1
b
lj
= 1
b
∑s
j=1
lj
 For two integers 0 ≤ t ≤ m, a finite point set of bm points in s dimensions is called a (t,m,s)-net
in base b, if every elementary interval of volume λs(E) = bt−m contains exactly bt points.
 For t ≥ 0, an infinite point sequence is called a (t,s)-sequence in base b, if for all k ≥ 0 and
m ≥ t, the vectors xkbm ,...,x(k+1)bm−1 ∈ Is form a (t,m,s)-net.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 15
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
(t,s)-sequences are sequences of (t,m,s)-nets in base b
 example: stratification properties of the Sobol’ (0,2)-sequence in base 2
– the sequence of (0,3,2)-nets
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
– the sequence of (0,4,2)-nets
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
– all components of the Sobol’ sequence are (0,1)-sequences in base 2 ⇒ deterministic LHS
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
a
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
 generator vectors
– Korobov form (1,a,a2,a3,...)
– rare constructions
 example: Fibonacci lattice with n = Fk and (g0,g1) = (1,Fk−1)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattices
 given generator vector (g0,...,gs−1) ∈ Ns
xi :=
i
n
(g0,...,gs−1) mod [0,1)s
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
 generator vectors
– Korobov form (1,a,a2,a3,...)
– rare constructions
 example: Fibonacci lattice with n = Fk and (g0,g1) = (1,Fk−1)
– usually tabulated coefficients a or gj
 search by certain criteria, e.g. maximized minimum distance, projections, . . .
 component by component construction (CBC)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
Quasi-Monte Carlo Points
Rank-1 lattice sequences
 replace i
n by radical inverse
xi = φb(i)·(g0,...,gs−1) mod [0,1)s
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
Quasi-Monte Carlo Points
Rank-1 lattice sequences
 replace i
n by radical inverse
xi = φb(i)·(g0,...,gs−1) mod [0,1)s
 xkbm ,...,x(k+1)bm−1 form a shifted lattice
– shift ∆ in the k +1st block for n = bm
φb(i +kbm
)·g = φb(i)+φb(kbm
)

·g
= φb(i)·g+φb(k)b−m−1
g
| {z }
=:∆
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
Quasi-Monte Carlo Points
Rank-1 lattice sequences
 replace i
n by radical inverse
xi = φb(i)·(g0,...,gs−1) mod [0,1)s
 xkbm ,...,x(k+1)bm−1 form a shifted lattice
– shift ∆ in the k +1st block for n = bm
φb(i +kbm
)·g = φb(i)+φb(kbm
)

·g
= φb(i)·g+φb(k)b−m−1
g
| {z }
=:∆
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
Quasi-Monte Carlo Points
Rank-1 lattice sequences
 replace i
n by radical inverse
xi = φb(i)·(g0,...,gs−1) mod [0,1)s
 xkbm ,...,x(k+1)bm−1 form a shifted lattice
– shift ∆ in the k +1st block for n = bm
φb(i +kbm
)·g = φb(i)+φb(kbm
)

·g
= φb(i)·g+φb(k)b−m−1
g
| {z }
=:∆
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
Quasi-Monte Carlo Points
Rank-1 lattice sequences
 replace i
n by radical inverse
xi = φb(i)·(g0,...,gs−1) mod [0,1)s
 xkbm ,...,x(k+1)bm−1 form a shifted lattice
– shift ∆ in the k +1st block for n = bm
φb(i +kbm
)·g = φb(i)+φb(kbm
)

·g
= φb(i)·g+φb(k)b−m−1
g
| {z }
=:∆
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
 similar to (t,s)-sequences
– for b and gj relatively prime, φb(i)gj mod [0,1) are (0,1)-sequences
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
qq
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
qq
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
qq
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
 low discrepancy
D∗
(Pn) := sup
A=∏s
j=1[0,aj )⊆[0,1)s
Z
[0,1)s
χA(x)dx −
1
n
n−1
∑
i=0
χA(xi ) ∈ O

logs
n
n

Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s
 maximum minimum distance on torus
dmin(Pn) := min
0≤in
min
ijn
kxj −xi kT
 low discrepancy
D∗
(Pn) := sup
A=∏s
j=1[0,aj )⊆[0,1)s
Z
[0,1)s
χA(x)dx −
1
n
n−1
∑
i=0
χA(xi ) ∈ O

logs
n
n

 Let (X,B,µ) be an arbitrary probability space and let M be a nonempty subset of B. A point
set Pn of n elements of X is called (M ,µ)-uniform if
n−1
∑
i=0
χM (xi ) = µ(M)·n for all M ∈ M ,
where χM (xi ) = 1 if xi ∈ M, zero otherwise.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
Quasi-Monte Carlo Points
Low discrepancy, minimum distance, and (M ,µ)-uniformity
 examples
Hammersley Sobol‘ sequence Larcher-P’hammer Rank-1 lattice
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
dmin = 0.0883883 dmin = 0.0883883 dmin = 0.176777 dmin = 0.25
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
dmin = 0.0220971 dmin = 0.0441942 dmin = 0.0883883 dmin = 0.125973
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 20
Quasi-Monte Carlo Points
Lesson learned
 consistency realized by uniform sequences, which may be deterministic
– Halton, (t,s)-, and rank-1 lattice sequences more uniform than random samples can be
– deterministic samples can be constructed as progressive Latin hypercube samples
 common principle: radical inversion
– isomorphy to permutations
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 21
Quasi-Monte Carlo Points
Efficient generation of the Faure-scrambled Halton sequence
 efficient implementations of radical inversion
double IntegerRadicalInverse(int Base, int i)
{
int numPoints, inverse;
numPoints = 1;
for(inverse = 0; i  0; i /= Base)
{
inverse = inverse * Base + (i % Base);
numPoints = numPoints * Base;
}
return (double) inverse / (double) numPoints;
}
double RadicalInverse(const int Base, int i)
{
double Digit, Radical, Inverse;
Digit = Radical = 1.0 / (double) Base;
Inverse = 0.0;
while(i)
{
Inverse += Digit * (double) (i % Base);
Digit *= Radical;
i /= Base;
}
return Inverse;
}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 22
Quasi-Monte Carlo Points
Efficient generation of the Faure-scrambled Halton sequence
 creating one look-up table for multiple digits
 results in compact and branchless code
– example: σ5 = (0,3,2,1,4)
σ5 ×σ5 =









(0,0) (0,3) (0,2) (0,1) (0,4)
(3,0) (3,3) (3,2) (3,1) (3,4)
(2,0) (2,3) (2,2) (2,1) (2,4)
(1,0) (1,3) (1,2) (1,1) (1,4)
(4,0) (4,3) (4,2) (4,1) (4,4)









Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 23
Quasi-Monte Carlo Points
Efficient generation of the Faure-scrambled Halton sequence
 creating one look-up table for multiple digits
 results in compact and branchless code
– example: σ5 = (0,3,2,1,4)
σ5 ×σ5 =









(0,0) (0,3) (0,2) (0,1) (0,4)
(3,0) (3,3) (3,2) (3,1) (3,4)
(2,0) (2,3) (2,2) (2,1) (2,4)
(1,0) (1,3) (1,2) (1,1) (1,4)
(4,0) (4,3) (4,2) (4,1) (4,4)









∼
=









0 3 2 1 4
25 28 27 26 29
10 13 12 11 14
5 8 7 6 9
20 23 22 21 24









Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 23
Quasi-Monte Carlo Points
Efficient generation of the Faure-scrambled Halton sequence
 creating one look-up table for multiple digits
 results in compact and branchless code
– example: σ5 = (0,3,2,1,4), for b = 5 and 3 digits, i.e. σ5 ×σ5 ×σ5
static const unsigned short perm5[] = { 0, 75, 50, 25, 100, 15, 90, 65, 40, 115, 10, 85, 60, 35, 110, 5, 80, 55,
30, 105, 20, 95, 70, 45, 120, 3, 78, 53, 28, 103, 18, 93, 68, 43, 118, 13, 88, 63, 38, 113, 8, 83, 58, 33, 108,
23, 98, 73, 48, 123, 2, 77, 52, 27, 102, 17, 92, 67, 42, 117, 12, 87, 62, 37, 112, 7, 82, 57, 32, 107, 22, 97,
72, 47, 122, 1, 76, 51, 26, 101, 16, 91, 66, 41, 116, 11, 86, 61, 36, 111, 6, 81, 56, 31, 106, 21, 96, 71, 46,
121, 4, 79, 54, 29, 104, 19, 94, 69, 44, 119, 14, 89, 64, 39, 114, 9, 84, 59, 34, 109, 24, 99, 74, 49, 124 };
inline float halton5(const unsigned index)
{
return (perm5[index % 125u] * 1953125u +
perm5[(index / 125u) % 125u] * 15625u +
perm5[(index / 15625u) % 125u] * 125u +
perm5[(index / 1953125u) % 125u]) * (0x1.fffffep-1 / 244140625u); // For results  1.
}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 24
Quasi-Monte Carlo Points
Digital (t,s)-sequences in base b
 use a generator matrix Cj for each component
 finite precision m
x
(j)
i =





b−1
.
.
.
b−m





T
Cj





a0(i)
.
.
.
am−1(i)





| {z }
multiplication in Fb
∈ [0,1)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 25
Quasi-Monte Carlo Points
Digital (t,s)-sequences in b = 2
x
(j)
i =





2−1
.
.
.
2−m





T
Cj





a0(i)
.
.
.
am−1(i)





| {z }
multiplication in F2
∈ [0,1)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
Quasi-Monte Carlo Points
Digital (t,s)-sequences in b = 2
x
(j)
i =





2−1
.
.
.
2−m





T
Cj





a0(i)
.
.
.
am−1(i)





| {z }
multiplication in F2
∈ [0,1)
 example: vectorized radical inverse
double RI(uint i, uint r = 0)
{
for (uint k = 0; i; i = 1, ++k)
if (i  1)
r ^= C[k]; // SIMD addition of column
return (double) r / (double) (1  M);
}
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
Quasi-Monte Carlo Points
Digital (t,s)-sequences in b = 2
x
(j)
i =





2−1
.
.
.
2−m





T
Cj





a0(i)
.
.
.
am−1(i)





| {z }
multiplication in F2
∈ [0,1)
 example: vectorized radical inverse by Larcher and Pillichshammer
double RI LP(uint i, uint r = 0)
{
for (uint v = 1u  31; i; i = 1, v |= v  1)
if (i  1)
r ^= v;
return (double) r / (double) 0x100000000ull;
}
Cj =








1 1 1 ...
0 1 1 ...
0 0 1 ...
.
.
.
.
.
.
.
.
.
...








Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
Quasi-Monte Carlo Points
Practical considerations
 radical inverse components easily “run out of bits”











1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0
...






















1 1 1 1 1
0 1 0 1 0
0 0 1 1 0
0 0 0 1 0
0 0 0 0
...











φ2 second Sobol’ component
 changing the most significant index bits changes the result
– slightly for Halton points
– completely for Sobol’ points
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 27
Quasi-Monte Carlo Points
Practical considerations
 radical inverse components easily “run out of bits”











1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0
...






















1 1 1 1 1
0 1 0 1 0
0 0 1 1 0
0 0 0 1 0
0 0 0 0
...











φ2 second Sobol’ component
 changing the most significant index bits changes the result
– slightly for Halton points
– completely for Sobol’ points
 can use tiling on image plane for Halton
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 27
Quasi-Monte Carlo Points
Hierarchical sample warping
 traverse kd-tree and rescale samples (probabilistic traversal)
Images from P. Clarberg, W. Jarosz, T. Akenine-Möller, and H. Wann Jensen: “Wavelet Importance Sampling: Efficiently Evaluating Products of Complex Functions”
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 28
Quasi-Monte Carlo Points
How to select split planes
 want to minimize expected number of traversal steps E[S]
– Huffman trees are optimal
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
Quasi-Monte Carlo Points
How to select split planes
 want to minimize expected number of traversal steps E[S]
– Huffman trees are optimal
 heuristic to preserve spatial connectivity: split by minimizing estimated entropy H
E[S] ≈ 1+pleft ·H(Tleft)+pright ·H(Tright)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
Quasi-Monte Carlo Points
How to select split planes
 want to minimize expected number of traversal steps E[S]
– Huffman trees are optimal
 heuristic to preserve spatial connectivity: split by minimizing estimated entropy H
E[S] ≈ 1+pleft ·H(Tleft)+pright ·H(Tright)
– use SAT for finding split planes efficiently
 traversal depths (small / large)
input mid-split entropy heuristic optimal kd-tree
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
Quasi-Monte Carlo Points
Implementation
 F. Kuo: Sobol sequence generator matrices.
http://web.maths.unsw.edu.au/~fkuo/sobol/index.html
 F. Kuo: Lattice rule generating vectors.
http://web.maths.unsw.edu.au/~fkuo/lattice/index.html
 Fast Sobol’ sequence generator (including pixel enumeration), inverse matrices, and Faure
scrambled Halton sampler
http://gruenschloss.org/
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 30
Quasi-Monte Carlo Points
References
 H. Niederreiter: Random Number Generation and Quasi-Monte Carlo Methods, SIAM,
Pennsylvania, 1992.
 C. Lemieux: Monte Carlo and Quasi-Monte Carlo Sampling. Springer Series in Statistics, New
York, 2009.
 J. Dick, F. Pillichshammer: Digital Nets and Sequences: Discrepancy Theory and Quasi-Monte
Carlo Integration. Cambridge University Press, 2010.
 proceedings of the MCQMC conference series.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 31
QMC Methods in Photorealistic Image Synthesis
Image Synthesis
Quasi-Monte Carlo Points
Quasi-Monte Carlo Rendering Techniques
 Anti-aliasing and deterministic parallelization
 Motion blur
 Scattering
 Connecting path segments by shadow rays
 Connecting path segments by proximity
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 32
Quasi-Monte Carlo Rendering Techniques
Path tracing
 generation of path segments
P
L
Eye
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
Quasi-Monte Carlo Rendering Techniques
Path tracing
 connecting path segments by a shadow rays
P
L
Eye
– works for L 2
– weak singularity needs to be handled
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
Quasi-Monte Carlo Rendering Techniques
Path tracing
 connecting path segments by proximity
P
L
Eye
– required for singular surfaces 6∈ L 2, so-called “SDS” paths
– requires multiple photons to be efficient
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
Quasi-Monte Carlo Rendering Techniques
Path tracing
 efficient algorithms require both connection techniques
P
L
Eye
– simple algorithm: path space partitioning
 shadow rays to connect diffuse-diffuse
 photon mapping to connect diffuse-specular
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
Quasi-Monte Carlo Rendering Techniques
Path tracing
 mapping the components of a quasi-Monte Carlo point sequence
s
i
x0
x1
x2
x3
x4
x5
x6
x7
x8
– consistent integro-approximation
LP = lim
n→∞
1
n
n−1
∑
i=0
fP (xi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
Quasi-Monte Carlo Rendering Techniques
Path tracing
 mapping the components of a quasi-Monte Carlo point sequence
s
i
x0
x1
x2
x3
x4
x5
x6
x7
x8
– consistent integro-approximation
LP = lim
n→∞
|P|
n
n−1
∑
i=0
χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
Quasi-Monte Carlo Rendering Techniques
Path tracing
 mapping the components of a quasi-Monte Carlo point sequence
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
– consistent integro-approximation
LP = lim
n→∞
|P|
n
n−1
∑
i=0
χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...,yi,1,yi,2,yi,3,yi,4,...)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
Quasi-Monte Carlo Rendering Techniques
Path tracing
 mapping the components of a quasi-Monte Carlo point sequence
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
– consistent integro-approximation
LP ≈
|P|
n
n−1
∑
i=0
χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...,yi,1,yi,2,yi,3,yi,4,...)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
– one sequence to cover whole image
 stratified, minimum distance, Latin hypercube, and low discrepancy
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 quasi-Monte Carlo integro-approximation
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
– one sequence to cover whole image
 stratified, minimum distance, Latin hypercube, and low discrepancy
– adaptively enumerate samples in elementary intervals in parallel
 example: Halton sequence and (0,2)-sequences in base b
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 allows for consistent stratified adaptive sampling
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 36
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Anti-aliasing and deterministic parallelization
 partition one low discrepancy sequence along one dimension
– projection yields multiple low discrepancy sequences
– for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
Quasi-Monte Carlo Rendering Techniques
Motion blur
 simulate aperture interval
– too expensive: different time per image sample
– desirable: one instant in time for whole (0,m,2)-net
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 38
Quasi-Monte Carlo Rendering Techniques
Motion blur
 splitting by replicating the function bm times along temporal dimension
f → f f f f
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
Quasi-Monte Carlo Rendering Techniques
Motion blur
 splitting by replicating the function bm times along temporal dimension
f → f f f f
 Theorem: Given an s-dimensional (M ,µ)-uniform point sequence (xi ,ti ), where the component
ti is a (0,1)-sequence generated by an upper triangular matrix,
Z
[0,1)s
f(x,t)dtdx =
Z
[0,1)s
bm
−1
∑
j=0
χ[ j
bm , j+1
bm )
(t)f(x,bm
t −j)dtdx
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
Quasi-Monte Carlo Rendering Techniques
Motion blur
 splitting by replicating the function bm times along temporal dimension
f → f f f f
 Theorem: Given an s-dimensional (M ,µ)-uniform point sequence (xi ,ti ), where the component
ti is a (0,1)-sequence generated by an upper triangular matrix,
Z
[0,1)s
f(x,t)dtdx =
Z
[0,1)s
bm
−1
∑
j=0
χ[ j
bm , j+1
bm )
(t)f(x,bm
t −j)dtdx
= lim
n→∞
1
n
n−1
∑
i=0
f(xi ,tbi/bmc)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
Quasi-Monte Carlo Rendering Techniques
Splitting
 can increase efficiency by enumerating components at different speeds
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 40
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Measured data from “A Data-Driven Reflectance Model”, W. Matusik, H. Pfister, M. Brand and L. McMillan, ACM Transactions on Graphics 22, 3(2003), 759-769.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 evaluation and simulation of scattering
Phong model silver metallic paint violet rubber
Measured data from “A Data-Driven Reflectance Model”, W. Matusik, H. Pfister, M. Brand and L. McMillan, ACM Transactions on Graphics 22, 3(2003), 759-769.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
Quasi-Monte Carlo Rendering Techniques
Scattering
 construction of alias map in O(n) by 40 lines of sequential code
0 1 2 3 4 5
⇒
0 1 2 3 4 5
a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2
density alias map
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 42
Quasi-Monte Carlo Rendering Techniques
Scattering
 construction of alias map in O(n) by 40 lines of sequential code
0 1 2 3 4 5
⇒
0 1 2 3 4 5
a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2
density alias map
 SIMD sample generation in O(1)
– superior to inversion method with O(log2 n) divergent memory accesses
– perfectly fits permutations generated by low discrepancy sequences
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 42
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
0 1 2 3 4 5
a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
Phong model diffuse lobe glossy lobe
= +
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
Phong model diffuse lobe glossy lobe
= +
evaluation scattering
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
violet rubber diffuse lobe glossy lobe
= +
evaluation scattering
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
Phong model
= +
evaluation scattering
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
violet rubber
= +
evaluation scattering
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Scattering
 partition BRDF data into integration and scattering by alias map
more diffuse: evaluate/average clamped density
more glossy: simulate aliases
silver metallic
= +
evaluation scattering
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
Quasi-Monte Carlo Rendering Techniques
Simulation of light sources
 already explored for light sources on the OMPF forum
 investigations with respect to deterministic low discrepancy sampling
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 44
Quasi-Monte Carlo Rendering Techniques
Simulation of light sources
 already explored for light sources on the OMPF forum
 investigations with respect to deterministic low discrepancy sampling
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 44
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 trace light paths and store vertices (xj ,Lj (xj → ·))M
j=1 as point lights
Light
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 trace light paths and store vertices (xj ,Lj (xj → ·))M
j=1 as point lights
Light
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 trace camera paths
Light
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 trace shadow rays to illuminate camera paths by points lights
Light
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 trace shadow rays to illuminate camera paths by points lights
Light
L(y,z) ≈ Le(y,z)+
M
∑
j=1
Lj (xj → y)fr (xj ,y,z)V(xj ,y)
cosθxj
cosθy
|xj −y|2
– numerical issues for small distances |xj −y|2
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 biased result of only bounding the weak singularity
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 46
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by shadow rays
 consistent simulation algorithm
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 47
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by proximity
 consistent photon mapping
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
LP = lim
n→∞
1
n
n−1
∑
i=0
fP(xi ,yi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by proximity
 consistent photon mapping
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
LP = lim
n→∞
1
n
n−1
∑
i=0
χB(r(n))(h(xi )−h(yi ))
πr2(n)
·f0
P(xi ,yi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by proximity
 consistent photon mapping
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
LP = lim
n→∞
1
n
n−1
∑
i=0
χB(r(n))(h(xi )−h(yi ))
πr2(n)
·f0
P(xi ,yi )
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
Quasi-Monte Carlo Rendering Techniques
Connecting path segments by proximity
 consistent photon mapping
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
LP = lim
n→∞
1
n
n−1
∑
i=0
1
bm
bm
−1
∑
k=0
χB(r(n))(h(xi )−h(ybmbi/bmc+k ))
πr0(xi )2 ·n−α
·f0
P(xi ,ybmbi/bmc+k )
– variation of trajectory splitting, relies on (0,1)-sequences
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
Quasi-Monte Carlo Rendering Techniques
Comparison at identical number of paths
 stochastic progressive photon mapping
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
Quasi-Monte Carlo Rendering Techniques
Comparison at identical number of paths
 consistent block-wise QMC photon mapping (Sobol’ sequence)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
Quasi-Monte Carlo Rendering Techniques
Comparison at identical number of paths
 stochastic progressive photon mapping
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
Quasi-Monte Carlo Rendering Techniques
Comparison at identical number of paths
 consistent block-wise QMC photon mapping (Sobol’ sequence)
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
Quasi-Monte Carlo Rendering Techniques
References
 E. Veach: Robust Monte Carlo Methods for Light Transport Simulation, PhD Thesis, 1997.
 A. Glassner: Principles of Digital Image Synthesis, Morgan Kaufmann, on the internet for free.
 Pharr, Humphreys: Physically Based Rendering, Morgan Kaufmann 2010, 2nd ed.
 T. Kollig, A. Keller: Illumination in the Presence of Weak Singularities.
 A. Keller: Myths of Computer Graphics.
 A. Keller: Quasi-Monte Carlo Image Synthesis in a Nutshell.
 proceedings of the MCQMC conference series.
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 50
Quasi-Monte Carlo Rendering Techniques
Lessons learned
 deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation
– push button
– simple to parallelize and strictly reproducible
– more efficient
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
Quasi-Monte Carlo Rendering Techniques
Lessons learned
 deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation
– push button
– simple to parallelize and strictly reproducible
– more efficient
 efficient algorithms for low discrepancy sequences
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
Quasi-Monte Carlo Rendering Techniques
Lessons learned
 deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation
– push button
– simple to parallelize and strictly reproducible
– more efficient
 efficient algorithms for low discrepancy sequences
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
 efficient algorithms to enumerate and use low discrepancy sequences
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
s1 s2
i
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
x5 y5
x6 y6
x7 y7
x8 y8
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
Results
Push-button rendering in NVIDIA iray R
 brilliant results without tweaking parameters
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Results
Push-button rendering in NVIDIA iray R
 even for pre-visualization
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Results
Push-button rendering in NVIDIA iray R
 even for pre-visualization
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Results
Push-button rendering in NVIDIA iray R
 physically based modeling with real lights and surfaces
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Results
Push-button rendering in NVIDIA iray R
 physically based modeling with real lights and surfaces
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Results
Push-button rendering in NVIDIA iray R
 physically based modeling with real lights and surfaces
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
Thank you for your attention !
Slides and course notes
 http://gruenschloss.org
Credits
 Nikolaus Binder, Ken Dahm, Carsten Wächter, and Thomas Kollig
Image credits
 Delta Tracing, Jeff Patton, 2020, Daniel Simon
Acknowledgements
 David Luebke, Sebastian Sylwain, Luca Fascione
Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 53

More Related Content

PPT
HUST-talk-1.pptof uncertainty quantification. Volume 6. Springer, 2017. SFK08...
PDF
R package bayesImageS: Scalable Inference for Intractable Likelihoods
PDF
Markov chain monte_carlo_methods_for_machine_learning
PDF
Machine learning (7)
PDF
Corisco - 2015
PDF
QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...
PDF
Image formation
PDF
Jere Koskela slides
HUST-talk-1.pptof uncertainty quantification. Volume 6. Springer, 2017. SFK08...
R package bayesImageS: Scalable Inference for Intractable Likelihoods
Markov chain monte_carlo_methods_for_machine_learning
Machine learning (7)
Corisco - 2015
QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...
Image formation
Jere Koskela slides

Similar to Quasi-Monte Carlo Methods in Photorealistic Image Synthesis (20)

PDF
Markov chain Monte Carlo methods and some attempts at parallelizing them
PPTX
Computer vision - two view geometry
PDF
CMA-ES with local meta-models
PDF
MCMC and likelihood-free methods
PPTX
UNITIII1 Stereo geometry and vision.pptx
PDF
Program on Quasi-Monte Carlo and High-Dimensional Sampling Methods for Applie...
PDF
Monte Caro Simualtions, Sampling and Markov Chain Monte Carlo
PPT
Qualifier
PDF
Kriging and spatial design accelerated by orders of magnitude
PDF
Journey to structure from motion
PDF
reportVPLProject
PDF
Metodo Monte Carlo -Wang Landau
PPTX
Introduction to Quantum Computing
PDF
Approximate Bayesian computation for the Ising/Potts model
PDF
videoMotionTrackingPCA
PDF
Monte Carlo Statistical Methods
PDF
Litvinenko low-rank kriging +FFT poster
PDF
PDF
Cs229 notes7a
PDF
Regularized Compression of A Noisy Blurred Image
Markov chain Monte Carlo methods and some attempts at parallelizing them
Computer vision - two view geometry
CMA-ES with local meta-models
MCMC and likelihood-free methods
UNITIII1 Stereo geometry and vision.pptx
Program on Quasi-Monte Carlo and High-Dimensional Sampling Methods for Applie...
Monte Caro Simualtions, Sampling and Markov Chain Monte Carlo
Qualifier
Kriging and spatial design accelerated by orders of magnitude
Journey to structure from motion
reportVPLProject
Metodo Monte Carlo -Wang Landau
Introduction to Quantum Computing
Approximate Bayesian computation for the Ising/Potts model
videoMotionTrackingPCA
Monte Carlo Statistical Methods
Litvinenko low-rank kriging +FFT poster
Cs229 notes7a
Regularized Compression of A Noisy Blurred Image
Ad

Recently uploaded (20)

PPTX
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
PPTX
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
PPTX
DOC-20250430-WA0014._20250714_235747_0000.pptx
PPTX
Presentation.pptx anemia in pregnancy in
PDF
SOUND-NOTE-ARCHITECT-MOHIUDDIN AKHAND SMUCT
PDF
intro_to_rust.pptx_123456789012446789.pdf
PDF
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
PPTX
Evolution_of_Computing_Presentation (1).pptx
PPTX
22CDH01-V3-UNIT-I INTRODUCITON TO EXTENDED REALITY
PPT
robotS AND ROBOTICSOF HUMANS AND MACHINES
PDF
Test slideshare presentation for blog post
PPTX
rapid fire quiz in your house is your india.pptx
PPTX
Tenders & Contracts Works _ Services Afzal.pptx
PPTX
VERNACULAR_DESIGN_PPT FINAL WITH PROPOSED PLAN.pptx
PDF
2025_AIFG_Akane_Kikuchi_Empathy_Design.PDF
PDF
ART & DESIGN HISTORY OF VEDIC CIVILISATION.pdf
PDF
2025CategoryRanking of technology university
PPTX
Orthtotics presentation regarding physcial therapy
PPTX
Media And Information Literacy for Grade 12
PDF
Architecture Design Portfolio- VICTOR OKUTU
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
DOC-20250430-WA0014._20250714_235747_0000.pptx
Presentation.pptx anemia in pregnancy in
SOUND-NOTE-ARCHITECT-MOHIUDDIN AKHAND SMUCT
intro_to_rust.pptx_123456789012446789.pdf
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
Evolution_of_Computing_Presentation (1).pptx
22CDH01-V3-UNIT-I INTRODUCITON TO EXTENDED REALITY
robotS AND ROBOTICSOF HUMANS AND MACHINES
Test slideshare presentation for blog post
rapid fire quiz in your house is your india.pptx
Tenders & Contracts Works _ Services Afzal.pptx
VERNACULAR_DESIGN_PPT FINAL WITH PROPOSED PLAN.pptx
2025_AIFG_Akane_Kikuchi_Empathy_Design.PDF
ART & DESIGN HISTORY OF VEDIC CIVILISATION.pdf
2025CategoryRanking of technology university
Orthtotics presentation regarding physcial therapy
Media And Information Literacy for Grade 12
Architecture Design Portfolio- VICTOR OKUTU
Ad

Quasi-Monte Carlo Methods in Photorealistic Image Synthesis

  • 1. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis Alexander Keller Leonhard Grünschloß
  • 2. QMC Methods in Photorealistic Image Synthesis Image Synthesis Light Transport Ray Tracing Quasi-Monte Carlo Points Quasi-Monte Carlo Rendering Techniques Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 2
  • 3. Image Synthesis Photorealistic image synthesis by light transport simulation find all light transport paths that connect camera and light sources then sum up their contribution Image courtesy Delta Tracing with NVIDIA iray. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 3
  • 4. Image Synthesis Light transport radiance = source radiance + transported radiance L = Le +Tf L Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 4
  • 5. Image Synthesis Light transport radiance = source radiance + transported radiance L = Le +Tf L Fredholm integral equation of the 2nd kind L(x,ω) = e− R d(x,−ω) 0 σt (x−sω)ds · Le(xb,ω)+ Z S 2 −(xb) fr (ωi ,xb,ω)L(xb,ωi )cosθi dωi + Z d(x,−ω) 0 e− R s 0 σt (x−tω)dt Le,v (x −sω,ω) + σs(x −sω) Z S 2 p(x −sω,ωi ·ω)L(x −sω,ωi )dωi ds Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 4
  • 6. Image Synthesis Light transport radiance = source radiance + transported radiance L = Le +Tf L Fredholm integral equation of the 2nd kind ∂V x∂V x−sω ω x Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 5
  • 7. Image Synthesis Assemble paths by tracing rays from origin x into direction ω find first intersection h(x,ω) with boundary determine mutual visibility V(x,y) of two points x and y Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 6
  • 8. Image Synthesis Assemble paths by tracing rays from origin x into direction ω find first intersection h(x,ω) with boundary determine mutual visibility V(x,y) of two points x and y ray-primitive intersection – surfaces often approximated by tessellation, for example triangles – ill-posed problem, unless original surface can be reconstructed – consistent numerics to ameliorate numerical issues Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 6
  • 9. Image Synthesis References P. Shirley, Morley: Realistic Ray Tracing, 2nd Ed., AK Peters 2003. A. Glassner: An Introduction to Ray Tracing, Morgan Kaufmann, 1989. C. Wächter: Quasi-Monte Carlo Light Transport Simulation by Efficient Ray Tracing, PhD thesis, 2007. J. Hanika: Spectral Light Transport Simulation using a Precision-Based Ray Tracing Architecture, PhD thesis, 2010. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 7
  • 10. QMC Methods in Photorealistic Image Synthesis Image Synthesis Quasi-Monte Carlo Points Halton sequence and Hammersley points (t,s)-sequences and (t,m,s)-nets in base b Rank-1 lattice sequences and rank-1 lattices Implementation Quasi-Monte Carlo Rendering Techniques Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 8
  • 11. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 12. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. consistent integro-approximation by uniform sampling I(x) = Z [0,1)s f(x,y)dy Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 13. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. consistent integro-approximation by uniform sampling I(x) = Z [0,1)s f(x,y)dy = lim n→∞ 1 n n−1 ∑ i=0 f(x,yi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 14. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. consistent integro-approximation by uniform sampling I(x) = Z [0,1)s f(x,y)dy = lim n→∞ 1 n n−1 ∑ i=0 f(x,yi ) ≈ 1 n n−1 ∑ i=0 f(x,yi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 15. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. consistent integro-approximation by uniform sampling I(x) = Z [0,1)s f(x,y)dy = lim n→∞ 1 n n−1 ∑ i=0 f(x,yi ) ≈ 1 n n−1 ∑ i=0 f(x,yi ) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 16. Quasi-Monte Carlo Points Quasi-Monte Carlo methods ’For every randomized algorithm, there is a clever deterministic one.’ Harald Niederreiter, Claremont, 1998. consistent integro-approximation by uniform sampling I(x) = Z [0,1)s f(x,y)dy = lim n→∞ 1 n n−1 ∑ i=0 f(x,yi ) ≈ 1 n n−1 ∑ i=0 f(x,yi ) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q pseudo-random low discrepancy Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 9
  • 17. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 18. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 19. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 20. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 21. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t t Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 22. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t t properties – subsequent points that “fall into biggest holes” – not completely uniform distributed (CUD) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 23. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t t d d d d properties – subsequent points that “fall into biggest holes” – not completely uniform distributed (CUD) – contiguous blocks of stratified points xi for kbm ≤ i (k +1)bm −1 for each block the Φb(i) are equidistant for each block the integers bbm Φb(i)c are a permutation of {0,...,bm −1} Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 24. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t t t t t t properties – subsequent points that “fall into biggest holes” – not completely uniform distributed (CUD) – contiguous blocks of stratified points xi for kbm ≤ i (k +1)bm −1 for each block the Φb(i) are equidistant for each block the integers bbm Φb(i)c are a permutation of {0,...,bm −1} Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 25. Quasi-Monte Carlo Points Radical inversion van der Corput sequence in base b Φb : N0 → Q∩[0,1) i = ∞ ∑ l=0 al (i)bl 7→ Φb(i) := ∞ ∑ l=0 al (i)b−l−1 – example Φ2(i): t t t t t t t t t t t t t t t t properties – subsequent points that “fall into biggest holes” – not completely uniform distributed (CUD) – contiguous blocks of stratified points xi for kbm ≤ i (k +1)bm −1 for each block the Φb(i) are equidistant for each block the integers bbm Φb(i)c are a permutation of {0,...,bm −1} Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 10
  • 26. Quasi-Monte Carlo Points Radical inversion based points for dimensions s 1 let the bj be co-prime, for example the j-th prime number Halton sequence xi := Φb1 (i),...,Φbs (i) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q (Φ2(i),Φ3(i))63 i=0 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
  • 27. Quasi-Monte Carlo Points Radical inversion based points for dimensions s 1 let the bj be co-prime, for example the j-th prime number Halton sequence Hammersley point sets xi := Φb1 (i),...,Φbs (i) xi := i n ,Φb1 (i),...,Φbs−1 (i) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q (Φ2(i),Φ3(i))63 i=0 ( i 64 ,Φ2(i))63 i=0 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
  • 28. Quasi-Monte Carlo Points Radical inversion based points for dimensions s 1 let the bj be co-prime, for example the j-th prime number Halton sequence Hammersley point sets xi := Φb1 (i),...,Φbs (i) xi := i n ,Φb1 (i),...,Φbs−1 (i) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q (Φ17(i),Φ19(i))63 i=0 ( i 64 ,Φ2(i))63 i=0 – correlations in low dimensional projections Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
  • 29. Quasi-Monte Carlo Points Radical inversion based points for dimensions s 1 let the bj be co-prime, for example the j-th prime number Halton sequence Hammersley point sets xi := Φb1 (i),...,Φbs (i) xi := i n ,Φb1 (i),...,Φbs−1 (i) a a a a a a a a a a a a a a a a a q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q (Φ17(i),Φ19(i))63 i=0 ( i 64 ,Φ2(i))63 i=0 – correlations in low dimensional projections Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 11
  • 30. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 31. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling unit square [0,1)2 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 32. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling bit 1 of x Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 33. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling bit 2 of x Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 34. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling bit 3 of x Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 35. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling all bits of x Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 36. Quasi-Monte Carlo Points Scrambling algorithm: start with H = Is and for each axis j 1. slice H into bj equally sized volumes H1,H2,...,Hbj along the axis 2. permute these volumes 3. for each Hh recursively repeat the procedure with H = Hh many variants, simplifications, and generalizations – example: XOR-scrambling all bits of x and y Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 12
  • 37. Quasi-Monte Carlo Points Scrambled radical inversion example: deterministic permutations σb by Faure i = ∞ ∑ j=0 aj (i)bj 7→ ∞ ∑ j=0 σb(aj (i))b−j−1 – b is even: Take 2σb 2 and append 2σb 2 +1 – b is odd: Take σb−1, increment each value ≥ b−1 2 and insert b−1 2 in the middle σ2 = (0,1) σ3 = (0,1,2) σ4 = (0,2,1,3) σ5 = (0,3,2,1,4) σ6 = (0,2,4,1,3,5) . . . Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 13
  • 38. Quasi-Monte Carlo Points Scrambled radical inversion example: deterministic permutations σb by Faure i = ∞ ∑ j=0 aj (i)bj 7→ ∞ ∑ j=0 σb(aj (i))b−j−1 – b is even: Take 2σb 2 and append 2σb 2 +1 – b is odd: Take σb−1, increment each value ≥ b−1 2 and insert b−1 2 in the middle σ2 = (0,1) σ3 = (0,1,2) σ4 = (0,2,1,3) σ5 = (0,3,2,1,4) σ6 = (0,2,4,1,3,5) . . . q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q → q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 13
  • 39. Quasi-Monte Carlo Points Properties of radical inversion subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 40. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 41. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 42. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 43. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 44. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 45. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 46. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: van der Corput sequence xi = Φ2(i) q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 47. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 48. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 49. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 50. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 51. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 52. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 53. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 54. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 55. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 56. Quasi-Monte Carlo Points Properties of radical inversion in dimensions s 1 subsequent points that “fall into biggest holes” stratification invariant under scrambling contiguous blocks of stratified points xi for k s ∏ j=1 b mj j ≤ i (k +1) s ∏ j=1 b mj j −1 example: Halton sequence xi = (Φ2(i),Φ3(i)) q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 14
  • 57. Quasi-Monte Carlo Points (t,s)-sequences and (t,m,s)-nets in base b elementary interval E := s ∏ j=1 aj blj , aj +1 blj ⊆ Is for integers lj ≥ 0 and 0 ≤ aj blj with volume λs(E) = ∏s j=1 1 b lj = 1 b ∑s j=1 lj For two integers 0 ≤ t ≤ m, a finite point set of bm points in s dimensions is called a (t,m,s)-net in base b, if every elementary interval of volume λs(E) = bt−m contains exactly bt points. For t ≥ 0, an infinite point sequence is called a (t,s)-sequence in base b, if for all k ≥ 0 and m ≥ t, the vectors xkbm ,...,x(k+1)bm−1 ∈ Is form a (t,m,s)-net. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 15
  • 58. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 59. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 60. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 61. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 62. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 63. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 64. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 65. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 66. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 67. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 68. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 69. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 70. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 71. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 72. Quasi-Monte Carlo Points (t,s)-sequences are sequences of (t,m,s)-nets in base b example: stratification properties of the Sobol’ (0,2)-sequence in base 2 – the sequence of (0,3,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – the sequence of (0,4,2)-nets q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – all components of the Sobol’ sequence are (0,1)-sequences in base 2 ⇒ deterministic LHS Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 16
  • 73. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 74. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 75. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q a Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 76. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 77. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 78. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 79. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 80. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q generator vectors – Korobov form (1,a,a2,a3,...) – rare constructions example: Fibonacci lattice with n = Fk and (g0,g1) = (1,Fk−1) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 81. Quasi-Monte Carlo Points Rank-1 lattices given generator vector (g0,...,gs−1) ∈ Ns xi := i n (g0,...,gs−1) mod [0,1)s q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q generator vectors – Korobov form (1,a,a2,a3,...) – rare constructions example: Fibonacci lattice with n = Fk and (g0,g1) = (1,Fk−1) – usually tabulated coefficients a or gj search by certain criteria, e.g. maximized minimum distance, projections, . . . component by component construction (CBC) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 17
  • 82. Quasi-Monte Carlo Points Rank-1 lattice sequences replace i n by radical inverse xi = φb(i)·(g0,...,gs−1) mod [0,1)s Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
  • 83. Quasi-Monte Carlo Points Rank-1 lattice sequences replace i n by radical inverse xi = φb(i)·(g0,...,gs−1) mod [0,1)s xkbm ,...,x(k+1)bm−1 form a shifted lattice – shift ∆ in the k +1st block for n = bm φb(i +kbm )·g = φb(i)+φb(kbm ) ·g = φb(i)·g+φb(k)b−m−1 g | {z } =:∆ q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
  • 84. Quasi-Monte Carlo Points Rank-1 lattice sequences replace i n by radical inverse xi = φb(i)·(g0,...,gs−1) mod [0,1)s xkbm ,...,x(k+1)bm−1 form a shifted lattice – shift ∆ in the k +1st block for n = bm φb(i +kbm )·g = φb(i)+φb(kbm ) ·g = φb(i)·g+φb(k)b−m−1 g | {z } =:∆ q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
  • 85. Quasi-Monte Carlo Points Rank-1 lattice sequences replace i n by radical inverse xi = φb(i)·(g0,...,gs−1) mod [0,1)s xkbm ,...,x(k+1)bm−1 form a shifted lattice – shift ∆ in the k +1st block for n = bm φb(i +kbm )·g = φb(i)+φb(kbm ) ·g = φb(i)·g+φb(k)b−m−1 g | {z } =:∆ q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
  • 86. Quasi-Monte Carlo Points Rank-1 lattice sequences replace i n by radical inverse xi = φb(i)·(g0,...,gs−1) mod [0,1)s xkbm ,...,x(k+1)bm−1 form a shifted lattice – shift ∆ in the k +1st block for n = bm φb(i +kbm )·g = φb(i)+φb(kbm ) ·g = φb(i)·g+φb(k)b−m−1 g | {z } =:∆ q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q similar to (t,s)-sequences – for b and gj relatively prime, φb(i)gj mod [0,1) are (0,1)-sequences Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 18
  • 87. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 88. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 89. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 90. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 91. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 92. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 93. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 94. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 95. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 96. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 97. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 98. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 99. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 100. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 101. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 102. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 103. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 104. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 105. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 106. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 107. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 108. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT low discrepancy D∗ (Pn) := sup A=∏s j=1[0,aj )⊆[0,1)s Z [0,1)s χA(x)dx − 1 n n−1 ∑ i=0 χA(xi ) ∈ O logs n n Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 109. Quasi-Monte Carlo Points Uniformity of a point set Pn := {x0,...,xn−1} ∈ [0,1)s maximum minimum distance on torus dmin(Pn) := min 0≤in min ijn kxj −xi kT low discrepancy D∗ (Pn) := sup A=∏s j=1[0,aj )⊆[0,1)s Z [0,1)s χA(x)dx − 1 n n−1 ∑ i=0 χA(xi ) ∈ O logs n n Let (X,B,µ) be an arbitrary probability space and let M be a nonempty subset of B. A point set Pn of n elements of X is called (M ,µ)-uniform if n−1 ∑ i=0 χM (xi ) = µ(M)·n for all M ∈ M , where χM (xi ) = 1 if xi ∈ M, zero otherwise. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 19
  • 110. Quasi-Monte Carlo Points Low discrepancy, minimum distance, and (M ,µ)-uniformity examples Hammersley Sobol‘ sequence Larcher-P’hammer Rank-1 lattice q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q dmin = 0.0883883 dmin = 0.0883883 dmin = 0.176777 dmin = 0.25 q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q dmin = 0.0220971 dmin = 0.0441942 dmin = 0.0883883 dmin = 0.125973 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 20
  • 111. Quasi-Monte Carlo Points Lesson learned consistency realized by uniform sequences, which may be deterministic – Halton, (t,s)-, and rank-1 lattice sequences more uniform than random samples can be – deterministic samples can be constructed as progressive Latin hypercube samples common principle: radical inversion – isomorphy to permutations Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 21
  • 112. Quasi-Monte Carlo Points Efficient generation of the Faure-scrambled Halton sequence efficient implementations of radical inversion double IntegerRadicalInverse(int Base, int i) { int numPoints, inverse; numPoints = 1; for(inverse = 0; i 0; i /= Base) { inverse = inverse * Base + (i % Base); numPoints = numPoints * Base; } return (double) inverse / (double) numPoints; } double RadicalInverse(const int Base, int i) { double Digit, Radical, Inverse; Digit = Radical = 1.0 / (double) Base; Inverse = 0.0; while(i) { Inverse += Digit * (double) (i % Base); Digit *= Radical; i /= Base; } return Inverse; } Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 22
  • 113. Quasi-Monte Carlo Points Efficient generation of the Faure-scrambled Halton sequence creating one look-up table for multiple digits results in compact and branchless code – example: σ5 = (0,3,2,1,4) σ5 ×σ5 =          (0,0) (0,3) (0,2) (0,1) (0,4) (3,0) (3,3) (3,2) (3,1) (3,4) (2,0) (2,3) (2,2) (2,1) (2,4) (1,0) (1,3) (1,2) (1,1) (1,4) (4,0) (4,3) (4,2) (4,1) (4,4)          Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 23
  • 114. Quasi-Monte Carlo Points Efficient generation of the Faure-scrambled Halton sequence creating one look-up table for multiple digits results in compact and branchless code – example: σ5 = (0,3,2,1,4) σ5 ×σ5 =          (0,0) (0,3) (0,2) (0,1) (0,4) (3,0) (3,3) (3,2) (3,1) (3,4) (2,0) (2,3) (2,2) (2,1) (2,4) (1,0) (1,3) (1,2) (1,1) (1,4) (4,0) (4,3) (4,2) (4,1) (4,4)          ∼ =          0 3 2 1 4 25 28 27 26 29 10 13 12 11 14 5 8 7 6 9 20 23 22 21 24          Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 23
  • 115. Quasi-Monte Carlo Points Efficient generation of the Faure-scrambled Halton sequence creating one look-up table for multiple digits results in compact and branchless code – example: σ5 = (0,3,2,1,4), for b = 5 and 3 digits, i.e. σ5 ×σ5 ×σ5 static const unsigned short perm5[] = { 0, 75, 50, 25, 100, 15, 90, 65, 40, 115, 10, 85, 60, 35, 110, 5, 80, 55, 30, 105, 20, 95, 70, 45, 120, 3, 78, 53, 28, 103, 18, 93, 68, 43, 118, 13, 88, 63, 38, 113, 8, 83, 58, 33, 108, 23, 98, 73, 48, 123, 2, 77, 52, 27, 102, 17, 92, 67, 42, 117, 12, 87, 62, 37, 112, 7, 82, 57, 32, 107, 22, 97, 72, 47, 122, 1, 76, 51, 26, 101, 16, 91, 66, 41, 116, 11, 86, 61, 36, 111, 6, 81, 56, 31, 106, 21, 96, 71, 46, 121, 4, 79, 54, 29, 104, 19, 94, 69, 44, 119, 14, 89, 64, 39, 114, 9, 84, 59, 34, 109, 24, 99, 74, 49, 124 }; inline float halton5(const unsigned index) { return (perm5[index % 125u] * 1953125u + perm5[(index / 125u) % 125u] * 15625u + perm5[(index / 15625u) % 125u] * 125u + perm5[(index / 1953125u) % 125u]) * (0x1.fffffep-1 / 244140625u); // For results 1. } Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 24
  • 116. Quasi-Monte Carlo Points Digital (t,s)-sequences in base b use a generator matrix Cj for each component finite precision m x (j) i =      b−1 . . . b−m      T Cj      a0(i) . . . am−1(i)      | {z } multiplication in Fb ∈ [0,1) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 25
  • 117. Quasi-Monte Carlo Points Digital (t,s)-sequences in b = 2 x (j) i =      2−1 . . . 2−m      T Cj      a0(i) . . . am−1(i)      | {z } multiplication in F2 ∈ [0,1) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
  • 118. Quasi-Monte Carlo Points Digital (t,s)-sequences in b = 2 x (j) i =      2−1 . . . 2−m      T Cj      a0(i) . . . am−1(i)      | {z } multiplication in F2 ∈ [0,1) example: vectorized radical inverse double RI(uint i, uint r = 0) { for (uint k = 0; i; i = 1, ++k) if (i 1) r ^= C[k]; // SIMD addition of column return (double) r / (double) (1 M); } Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
  • 119. Quasi-Monte Carlo Points Digital (t,s)-sequences in b = 2 x (j) i =      2−1 . . . 2−m      T Cj      a0(i) . . . am−1(i)      | {z } multiplication in F2 ∈ [0,1) example: vectorized radical inverse by Larcher and Pillichshammer double RI LP(uint i, uint r = 0) { for (uint v = 1u 31; i; i = 1, v |= v 1) if (i 1) r ^= v; return (double) r / (double) 0x100000000ull; } Cj =         1 1 1 ... 0 1 1 ... 0 0 1 ... . . . . . . . . . ...         Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 26
  • 120. Quasi-Monte Carlo Points Practical considerations radical inverse components easily “run out of bits”            1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 ...                       1 1 1 1 1 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 ...            φ2 second Sobol’ component changing the most significant index bits changes the result – slightly for Halton points – completely for Sobol’ points Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 27
  • 121. Quasi-Monte Carlo Points Practical considerations radical inverse components easily “run out of bits”            1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 ...                       1 1 1 1 1 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 ...            φ2 second Sobol’ component changing the most significant index bits changes the result – slightly for Halton points – completely for Sobol’ points can use tiling on image plane for Halton Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 27
  • 122. Quasi-Monte Carlo Points Hierarchical sample warping traverse kd-tree and rescale samples (probabilistic traversal) Images from P. Clarberg, W. Jarosz, T. Akenine-Möller, and H. Wann Jensen: “Wavelet Importance Sampling: Efficiently Evaluating Products of Complex Functions” Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 28
  • 123. Quasi-Monte Carlo Points How to select split planes want to minimize expected number of traversal steps E[S] – Huffman trees are optimal Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
  • 124. Quasi-Monte Carlo Points How to select split planes want to minimize expected number of traversal steps E[S] – Huffman trees are optimal heuristic to preserve spatial connectivity: split by minimizing estimated entropy H E[S] ≈ 1+pleft ·H(Tleft)+pright ·H(Tright) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
  • 125. Quasi-Monte Carlo Points How to select split planes want to minimize expected number of traversal steps E[S] – Huffman trees are optimal heuristic to preserve spatial connectivity: split by minimizing estimated entropy H E[S] ≈ 1+pleft ·H(Tleft)+pright ·H(Tright) – use SAT for finding split planes efficiently traversal depths (small / large) input mid-split entropy heuristic optimal kd-tree Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 29
  • 126. Quasi-Monte Carlo Points Implementation F. Kuo: Sobol sequence generator matrices. http://web.maths.unsw.edu.au/~fkuo/sobol/index.html F. Kuo: Lattice rule generating vectors. http://web.maths.unsw.edu.au/~fkuo/lattice/index.html Fast Sobol’ sequence generator (including pixel enumeration), inverse matrices, and Faure scrambled Halton sampler http://gruenschloss.org/ Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 30
  • 127. Quasi-Monte Carlo Points References H. Niederreiter: Random Number Generation and Quasi-Monte Carlo Methods, SIAM, Pennsylvania, 1992. C. Lemieux: Monte Carlo and Quasi-Monte Carlo Sampling. Springer Series in Statistics, New York, 2009. J. Dick, F. Pillichshammer: Digital Nets and Sequences: Discrepancy Theory and Quasi-Monte Carlo Integration. Cambridge University Press, 2010. proceedings of the MCQMC conference series. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 31
  • 128. QMC Methods in Photorealistic Image Synthesis Image Synthesis Quasi-Monte Carlo Points Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization Motion blur Scattering Connecting path segments by shadow rays Connecting path segments by proximity Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 32
  • 129. Quasi-Monte Carlo Rendering Techniques Path tracing generation of path segments P L Eye Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
  • 130. Quasi-Monte Carlo Rendering Techniques Path tracing connecting path segments by a shadow rays P L Eye – works for L 2 – weak singularity needs to be handled Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
  • 131. Quasi-Monte Carlo Rendering Techniques Path tracing connecting path segments by proximity P L Eye – required for singular surfaces 6∈ L 2, so-called “SDS” paths – requires multiple photons to be efficient Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
  • 132. Quasi-Monte Carlo Rendering Techniques Path tracing efficient algorithms require both connection techniques P L Eye – simple algorithm: path space partitioning shadow rays to connect diffuse-diffuse photon mapping to connect diffuse-specular Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 33
  • 133. Quasi-Monte Carlo Rendering Techniques Path tracing mapping the components of a quasi-Monte Carlo point sequence s i x0 x1 x2 x3 x4 x5 x6 x7 x8 – consistent integro-approximation LP = lim n→∞ 1 n n−1 ∑ i=0 fP (xi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
  • 134. Quasi-Monte Carlo Rendering Techniques Path tracing mapping the components of a quasi-Monte Carlo point sequence s i x0 x1 x2 x3 x4 x5 x6 x7 x8 – consistent integro-approximation LP = lim n→∞ |P| n n−1 ∑ i=0 χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
  • 135. Quasi-Monte Carlo Rendering Techniques Path tracing mapping the components of a quasi-Monte Carlo point sequence s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 – consistent integro-approximation LP = lim n→∞ |P| n n−1 ∑ i=0 χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...,yi,1,yi,2,yi,3,yi,4,...) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
  • 136. Quasi-Monte Carlo Rendering Techniques Path tracing mapping the components of a quasi-Monte Carlo point sequence s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 – consistent integro-approximation LP ≈ |P| n n−1 ∑ i=0 χP (xi,1,xi,2)f(xi,1,xi,2,xi,3,xi,4,xi,5,...,yi,1,yi,2,yi,3,yi,4,...) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 34
  • 137. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 138. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 139. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 140. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 141. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 142. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 143. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 144. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 145. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 146. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 147. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 148. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 149. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 150. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 151. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 152. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 153. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 154. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 155. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 156. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 157. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 158. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 159. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 160. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 161. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 162. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – one sequence to cover whole image stratified, minimum distance, Latin hypercube, and low discrepancy Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 163. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization quasi-Monte Carlo integro-approximation q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q – one sequence to cover whole image stratified, minimum distance, Latin hypercube, and low discrepancy – adaptively enumerate samples in elementary intervals in parallel example: Halton sequence and (0,2)-sequences in base b Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 35
  • 164. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization allows for consistent stratified adaptive sampling Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 36
  • 165. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 166. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 167. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 168. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 169. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 170. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 171. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 172. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 173. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 174. Quasi-Monte Carlo Rendering Techniques Anti-aliasing and deterministic parallelization partition one low discrepancy sequence along one dimension – projection yields multiple low discrepancy sequences – for Sobol’ and φ2 this results in simple leap-frogging for 2m partitions Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 37
  • 175. Quasi-Monte Carlo Rendering Techniques Motion blur simulate aperture interval – too expensive: different time per image sample – desirable: one instant in time for whole (0,m,2)-net Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 38
  • 176. Quasi-Monte Carlo Rendering Techniques Motion blur splitting by replicating the function bm times along temporal dimension f → f f f f Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
  • 177. Quasi-Monte Carlo Rendering Techniques Motion blur splitting by replicating the function bm times along temporal dimension f → f f f f Theorem: Given an s-dimensional (M ,µ)-uniform point sequence (xi ,ti ), where the component ti is a (0,1)-sequence generated by an upper triangular matrix, Z [0,1)s f(x,t)dtdx = Z [0,1)s bm −1 ∑ j=0 χ[ j bm , j+1 bm ) (t)f(x,bm t −j)dtdx Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
  • 178. Quasi-Monte Carlo Rendering Techniques Motion blur splitting by replicating the function bm times along temporal dimension f → f f f f Theorem: Given an s-dimensional (M ,µ)-uniform point sequence (xi ,ti ), where the component ti is a (0,1)-sequence generated by an upper triangular matrix, Z [0,1)s f(x,t)dtdx = Z [0,1)s bm −1 ∑ j=0 χ[ j bm , j+1 bm ) (t)f(x,bm t −j)dtdx = lim n→∞ 1 n n−1 ∑ i=0 f(xi ,tbi/bmc) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 39
  • 179. Quasi-Monte Carlo Rendering Techniques Splitting can increase efficiency by enumerating components at different speeds s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 40
  • 180. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 181. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 182. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 183. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 184. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 185. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 186. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 187. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 188. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 189. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 190. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 191. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 192. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 193. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 194. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 195. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 196. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 197. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 198. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 199. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 200. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 201. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 202. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 203. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 204. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 205. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 206. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 207. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 208. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 209. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 210. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 211. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 212. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 213. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 214. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 215. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 216. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 217. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 218. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 219. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 220. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 221. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 222. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 223. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 224. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 225. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 226. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 227. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 228. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 229. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 230. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 231. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 232. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 233. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 234. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 235. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 236. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 237. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 238. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 239. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 240. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 241. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 242. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 243. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 244. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 245. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 246. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 247. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 248. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 249. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 250. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 251. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 252. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 253. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 254. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 255. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 256. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 257. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 258. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 259. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 260. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 261. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 262. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 263. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 264. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 265. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 266. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 267. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 268. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 269. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 270. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Measured data from “A Data-Driven Reflectance Model”, W. Matusik, H. Pfister, M. Brand and L. McMillan, ACM Transactions on Graphics 22, 3(2003), 759-769. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 271. Quasi-Monte Carlo Rendering Techniques Scattering evaluation and simulation of scattering Phong model silver metallic paint violet rubber Measured data from “A Data-Driven Reflectance Model”, W. Matusik, H. Pfister, M. Brand and L. McMillan, ACM Transactions on Graphics 22, 3(2003), 759-769. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 41
  • 272. Quasi-Monte Carlo Rendering Techniques Scattering construction of alias map in O(n) by 40 lines of sequential code 0 1 2 3 4 5 ⇒ 0 1 2 3 4 5 a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2 density alias map Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 42
  • 273. Quasi-Monte Carlo Rendering Techniques Scattering construction of alias map in O(n) by 40 lines of sequential code 0 1 2 3 4 5 ⇒ 0 1 2 3 4 5 a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2 density alias map SIMD sample generation in O(1) – superior to inversion method with O(log2 n) divergent memory accesses – perfectly fits permutations generated by low discrepancy sequences Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 42
  • 274. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases 0 1 2 3 4 5 a0 = 4 (a1 = 1) a2 = 1 a3 = 2 a4 = 1 a5 = 2 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 275. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases Phong model diffuse lobe glossy lobe = + Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 276. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases Phong model diffuse lobe glossy lobe = + evaluation scattering Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 277. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases violet rubber diffuse lobe glossy lobe = + evaluation scattering Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 278. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases Phong model = + evaluation scattering Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 279. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases violet rubber = + evaluation scattering Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 280. Quasi-Monte Carlo Rendering Techniques Scattering partition BRDF data into integration and scattering by alias map more diffuse: evaluate/average clamped density more glossy: simulate aliases silver metallic = + evaluation scattering Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 43
  • 281. Quasi-Monte Carlo Rendering Techniques Simulation of light sources already explored for light sources on the OMPF forum investigations with respect to deterministic low discrepancy sampling Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 44
  • 282. Quasi-Monte Carlo Rendering Techniques Simulation of light sources already explored for light sources on the OMPF forum investigations with respect to deterministic low discrepancy sampling Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 44
  • 283. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays trace light paths and store vertices (xj ,Lj (xj → ·))M j=1 as point lights Light Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
  • 284. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays trace light paths and store vertices (xj ,Lj (xj → ·))M j=1 as point lights Light Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
  • 285. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays trace camera paths Light Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
  • 286. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays trace shadow rays to illuminate camera paths by points lights Light Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
  • 287. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays trace shadow rays to illuminate camera paths by points lights Light L(y,z) ≈ Le(y,z)+ M ∑ j=1 Lj (xj → y)fr (xj ,y,z)V(xj ,y) cosθxj cosθy |xj −y|2 – numerical issues for small distances |xj −y|2 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 45
  • 288. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays biased result of only bounding the weak singularity Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 46
  • 289. Quasi-Monte Carlo Rendering Techniques Connecting path segments by shadow rays consistent simulation algorithm Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 47
  • 290. Quasi-Monte Carlo Rendering Techniques Connecting path segments by proximity consistent photon mapping s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 LP = lim n→∞ 1 n n−1 ∑ i=0 fP(xi ,yi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
  • 291. Quasi-Monte Carlo Rendering Techniques Connecting path segments by proximity consistent photon mapping s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 LP = lim n→∞ 1 n n−1 ∑ i=0 χB(r(n))(h(xi )−h(yi )) πr2(n) ·f0 P(xi ,yi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
  • 292. Quasi-Monte Carlo Rendering Techniques Connecting path segments by proximity consistent photon mapping s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 LP = lim n→∞ 1 n n−1 ∑ i=0 χB(r(n))(h(xi )−h(yi )) πr2(n) ·f0 P(xi ,yi ) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
  • 293. Quasi-Monte Carlo Rendering Techniques Connecting path segments by proximity consistent photon mapping s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 LP = lim n→∞ 1 n n−1 ∑ i=0 1 bm bm −1 ∑ k=0 χB(r(n))(h(xi )−h(ybmbi/bmc+k )) πr0(xi )2 ·n−α ·f0 P(xi ,ybmbi/bmc+k ) – variation of trajectory splitting, relies on (0,1)-sequences Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 48
  • 294. Quasi-Monte Carlo Rendering Techniques Comparison at identical number of paths stochastic progressive photon mapping Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
  • 295. Quasi-Monte Carlo Rendering Techniques Comparison at identical number of paths consistent block-wise QMC photon mapping (Sobol’ sequence) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
  • 296. Quasi-Monte Carlo Rendering Techniques Comparison at identical number of paths stochastic progressive photon mapping Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
  • 297. Quasi-Monte Carlo Rendering Techniques Comparison at identical number of paths consistent block-wise QMC photon mapping (Sobol’ sequence) Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 49
  • 298. Quasi-Monte Carlo Rendering Techniques References E. Veach: Robust Monte Carlo Methods for Light Transport Simulation, PhD Thesis, 1997. A. Glassner: Principles of Digital Image Synthesis, Morgan Kaufmann, on the internet for free. Pharr, Humphreys: Physically Based Rendering, Morgan Kaufmann 2010, 2nd ed. T. Kollig, A. Keller: Illumination in the Presence of Weak Singularities. A. Keller: Myths of Computer Graphics. A. Keller: Quasi-Monte Carlo Image Synthesis in a Nutshell. proceedings of the MCQMC conference series. Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 50
  • 299. Quasi-Monte Carlo Rendering Techniques Lessons learned deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation – push button – simple to parallelize and strictly reproducible – more efficient Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
  • 300. Quasi-Monte Carlo Rendering Techniques Lessons learned deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation – push button – simple to parallelize and strictly reproducible – more efficient efficient algorithms for low discrepancy sequences p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
  • 301. Quasi-Monte Carlo Rendering Techniques Lessons learned deterministic consistent image synthesis by quasi-Monte Carlo integro-approximation – push button – simple to parallelize and strictly reproducible – more efficient efficient algorithms for low discrepancy sequences p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p efficient algorithms to enumerate and use low discrepancy sequences s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 s1 s2 i x0 y0 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 51
  • 302. Results Push-button rendering in NVIDIA iray R brilliant results without tweaking parameters Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 303. Results Push-button rendering in NVIDIA iray R even for pre-visualization Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 304. Results Push-button rendering in NVIDIA iray R even for pre-visualization Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 305. Results Push-button rendering in NVIDIA iray R physically based modeling with real lights and surfaces Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 306. Results Push-button rendering in NVIDIA iray R physically based modeling with real lights and surfaces Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 307. Results Push-button rendering in NVIDIA iray R physically based modeling with real lights and surfaces Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 52
  • 308. Thank you for your attention ! Slides and course notes http://gruenschloss.org Credits Nikolaus Binder, Ken Dahm, Carsten Wächter, and Thomas Kollig Image credits Delta Tracing, Jeff Patton, 2020, Daniel Simon Acknowledgements David Luebke, Sebastian Sylwain, Luca Fascione Quasi-Monte Carlo Methods in Photorealistic Image Synthesis 53