46
A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The work was done while both authors were with Weta Digital

A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Embed Size (px)

Citation preview

Page 1: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR

MONTE CARLO SUBSURFACE SCATTERING

Jaroslav KřivánekCharles University in Prague

Eugene d’EonWeta Digital

The work was done while both authors were with Weta Digital

Page 2: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Monte Carlo subsurface scattering

Křivánek and d'Eon - Zero-variance-based MC SSS 2

Page 3: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Classical random walk Oblivious to the boundary

Goal Guide paths toward the

boundary

Motivation

3Křivánek and d'Eon - Zero-variance-based MC SSS

Page 4: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Teaser

4Křivánek and d'Eon - Zero-variance-based MC SSS

Classical random walk New methodOblivious to the boundary Guides paths toward the boundary

Variance reduction Efficiency

improvement(shorter paths on average)

Page 5: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

PREVIOUS WORK

Page 6: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Previous work in graphics

Diffusion approximation for SSS [Jensen et al. ‘01]

6Křivánek and d'Eon - Zero-variance-based MC SSS

Page 7: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Previous work in graphics

Diffusion approximation for SSS Multi-layered materials

[Donner and Jensen ‘05]

Hybrid MC–diffusion [Li et al. ’05, Donner and Jensen ’07]

Extended source [d’Eon and Irving ’11, Habel et al. ’13]

Direction dipole [Frisvald et al. ‘14]

7Křivánek and d'Eon - Zero-variance-based MC SSS

Page 8: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Diffusion-based SSS – Limitations

Assumptions do not hold in practice (flat, semi-infinite medium)

Inaccuracies of the diffusion approximation

8Křivánek and d'Eon - Zero-variance-based MC SSS

Page 9: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Monte Carlo SSS

Accurate, no assumptions about the geometry Fits smoothly into a physically-based path tracer

BUT slow Hundreds of scattering events to get an accurate

answer

Similar issues tackled in neutron transport

9Křivánek and d'Eon - Zero-variance-based MC SSS

Page 10: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

“Deep penetration problems” (reactor shield design) Blind MC: One in a billion particles makes it

through

slab(reactor shield)

Previous work in neutron transport

10Křivánek and d'Eon - Zero-variance-based MC SSS

incidentradiation

transmittedradiation

Page 11: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Path stretching[Clark ’66, Ponti ‘71, Spanier ‘71] heuristic, manual “stretching parameter” setting

Previous work in neutron transport

11Křivánek and d'Eon - Zero-variance-based MC SSS

incidentradiation

transmittedradiation

long step

short step

Page 12: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Zero-variance random walk theory

Zero variance random walk theory[Kahn ‘54, Kalos and Whitlock ’08, Hoogenboom ’08, Booth ‘11]

[Dwivedi ‘81] Synergistic path stretching and angular

sampling Solid theory, no heuristics

We apply these ideas in SSS in computer graphics

12Křivánek and d'Eon - Zero-variance-based MC SSS

Page 13: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

THEORY OF ZERO-VARIANCE RANDOM WALKS

Page 14: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

WARNING!

Zero-variance walk much harder than calculating the desired answer!

Requires knowing the solution everywhere

Approximate zero-variance walks yield low variance [Dwivedi ‘81] This work

Page 15: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Transport equation

r

r’

Křivánek and d'Eon - Zero-variance-based MC SSS 15

r'rr'r'rr d)()()()( e TLLL

Page 16: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Solving the transport equation

r

r’

Křivánek and d'Eon - Zero-variance-based MC SSS 16

r'rr'r'rr d)()()()( e TLLL

Page 17: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Zero-variance estimator

Křivánek and d'Eon - Zero-variance-based MC SSS 17

r

r’

1. Terminate with prob.:

2. Score only when terminating

3. Sample r’ with pdf:

)(

)()(

e

term r

rr

L

LP

)()()|( rr'r'rr' TLp

r'rr'r'rr d)()()()( e TLLL

Page 18: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Proof of zero-variance

Křivánek and d'Eon - Zero-variance-based MC SSS 18

If the Le(r) term selected

Return

Terminate

)()(/)(

)(

)(

)(e

e

term

e

rrr

r

r

rL

LL

L

P

L

r'rr'r'rr d)()()()( e TLLL 1. Terminate with prob.:

2. Score only when terminating

3. Sample r’ with pdf:

)(

)()(

e

term r

rr

L

LP

)()()|( rr'r'rr' TLp

Page 19: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Proof of zero-variance

Křivánek and d'Eon - Zero-variance-based MC SSS 19

Else: Return

)()(

)()(

)|(

)()(

)(1

1

d)()()(1

1

term

term

rr'

r'r

rr'

rr'r'

r

r'rr'r'r

LL

LL

p

TL

P

TLP

r'rr'r'rr d)()()()( e TLLL 1. Terminate with prob.:

2. Score only when terminating

3. Sample r’ with pdf:

)(

)()(

e

term r

rr

L

LP

)()()|( rr'r'rr' TLp

Page 20: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Discussion

Requires knowing L(r) everywhere

Approximate L(r) yields low variance

Use in graphics MC calculation [Jensen 1995, Vorba et al. 2014] Analytic solution: this work

20Křivánek and d'Eon - Zero-variance-based MC SSS

Page 21: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

(NEAR)-ZERO-VARIANCE SOLUTION FOR HALF-

SPACE PROBLEMS

Page 22: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Setup

(Unidirectional) path tracing

22Křivánek and d'Eon - Zero-variance-based MC SSS

Page 23: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Assumptions

Flat, semi-infinite medium Uniform, white-sky illumination

23Křivánek and d'Eon - Zero-variance-based MC SSS

x

Page 24: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Analytical radiance solution

“Caseology”, singular eigenfunctions [Case 1960, McCormick and Kuscer 1973]

24Křivánek and d'Eon - Zero-variance-based MC SSS

0/00

1

1

/ ),(),(),( vxvx evdvevxL

x

transient terms asymptotic terms

Singular eigenfunctions

Page 25: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Approximate solution

Use only the discrete asymptotic term

25Křivánek and d'Eon - Zero-variance-based MC SSS

0/00

1

1

/ ),(),(),( vxvx evdvevxL

x

asymptotic terms

Page 26: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Approximate solution

26

albedo = 0.95

solu

tion

depth x

albedo = 0.2

depth x

Křivánek and d'Eon - Zero-variance-based MC SSS

Use only the discrete asymptotic term

Page 27: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

)/1(')'exp(

)/exp()exp()(

0

0

vs

vxssp

Distance sampling

27Křivánek and d'Eon - Zero-variance-based MC SSS

x

transmittance

solution

s

path stretching!

Page 28: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

0

0)(v

vp

Directional distribution

28Křivánek and d'Eon - Zero-variance-based MC SSS

Page 29: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Directional distribution

Křivánek and d'Eon - Zero-variance-based MC SSS 29

albedo = 0.95 albedo = 0.2

Page 30: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

RESULTS

Page 31: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Semi-infinite half-space test

J. Křivánek - Zero variance walks for subsurface scattering 31

albedo 0.4 0.8 0.95

newscheme

(Dwivedi)

classicalsampling

Page 32: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Semi-infinite half-space test

J. Křivánek - Zero variance walks for subsurface scattering 32

newscheme

(Dwivedi)

classicalsampling

albedo 0.4 0.8 0.95

0.132

0.025 (5.3×)variance

variance 0.093

0.034 (2.7×)

0.020

0.020 (1×)

Page 33: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Use in rendering

33Křivánek and d'Eon - Zero-variance-based MC SSS

Page 34: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Use in rendering – White sky illum.

J. Křivánek - Zero variance walks for subsurface scattering 34

25 samples per pixel

classical sampling (36 s) Dwivedi (21 s)

MIS: 75% Dwivedi (25 s)

Page 35: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Use in rendering – IBL

J. Křivánek - Zero variance walks for subsurface scattering 35

equal-time comparison, 100 samples per pixel, 75% Dwivedi,

our resultclassical sampling

our resultclassical sampling

Page 36: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

WORK IN PROGRESS

Page 37: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Exponential radiance falloff

… does not hold for low scattering

J. Křivánek - Zero variance walks for subsurface scattering 37

albedo=0.95 albedo = 0.2

Page 38: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Directional distribution

38Křivánek and d'Eon - Zero-variance-based MC SSS

Dwivedi more accurate

Page 39: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Radiance distribution

39

albedo=0.95

Dwivedi Reference Difference

dir

dep

th

albedo = 0.2

Dwivedi Reference Difference

Page 40: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Improved sampling

Take boundary into account

Better radiance approximation Matching 1st and 2nd moments of the true solution

40Křivánek and d'Eon - Zero-variance-based MC SSS

Page 41: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Semi-infinite half-space test

J. Křivánek - Zero variance walks for subsurface scattering 41

newscheme

(Dwivedi)

classicalsampling

albedo 0.4 0.8 0.95

0.132

0.025 (5.3×)variance

variance 0.093

0.034 (2.7×)

0.020

0.020 (1×)improved

scheme

variance .001 (132×).0008 (116×).0002 (100×)

Page 42: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Future work

Boundary conditions (Fresnel, rough)

Anisotropic scattering

More rendering tests

Other applications of zero-variance schemes

42Křivánek and d'Eon - Zero-variance-based MC SSS

Page 43: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Conclusion

Solution for MC subsurface scattering

Zero-variance MC schemes

43Křivánek and d'Eon - Zero-variance-based MC SSS

Page 44: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Acknowledgments

Funding from Czech Science Foundation

44Křivánek and d'Eon - Zero-variance-based MC SSS

Page 45: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Zero-variance-based Monte Carlo subsurface scattering

Thank you!

45Křivánek and d'Eon - Zero-variance-based MC SSS

Page 46: A ZERO-VARIANCE-BASED SAMPLING SCHEME FOR MONTE CARLO SUBSURFACE SCATTERING Jaroslav Křivánek Charles University in Prague Eugene d’Eon Weta Digital The

Proof of zero variance (details)

Křivánek and d'Eon - Zero-variance-based MC SSS 46

)()(

)()(

d)()(

)()()|(

e rr

rr'r'

r'rr'r'

rr'r'rr'

LL

TL

TL

TLp

)(

)()(

)()()()(

)()(

)()(

)(

)|(

)()(

)()(

)(

d)()()(1

1

e

e

e

term

r'

r'r

rrrr'r'

rr'r'

rr

r

rr'

rr'r'

rr

r

r'rr'r'r

L

LL

LLTL

TL

LL

L

p

TL

LL

L

TLP