volumetric zero-variance-based path guidingjirka/path-guiding-in...volumetric monte-carlo path...

99
S. Herholz: A Unified Manifold Framework for Efficient BRDF Sampling โ€ฆ Sebastian Herholz 1 Yangyang Zhao 2 Oskar Elek 3 Derek Nowrouzezahrai 2 Hendrik P. A. Lensch 1 Jaroslav Kล™ivรกnek 3 Volumetric Zero-Variance-Based Path Guiding 1 University of Tรผbingen 2 McGill University Montreal 3 Charles University Prague

Upload: others

Post on 13-Jul-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

S. Herholz: A Unified Manifold Framework for Efficient BRDF Sampling โ€ฆ

Sebastian Herholz1 Yangyang Zhao2 Oskar Elek3

Derek Nowrouzezahrai 2 Hendrik P. A. Lensch1 Jaroslav Kล™ivรกnek3

Volumetric Zero-Variance-Based

Path Guiding

1University of Tรผbingen 2McGill University Montreal 3Charles University Prague

Page 2: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

MOTIVATION

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding2

Page 3: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

MOTIVATION

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding3

Page 4: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

MOTIVATION

โ€ข A correct physically-based simulation of volumetric effects is crucial for rendering realistic scenes

โ€ข In the recent years, brute-force path tracing these effects startedto become applicable in production environments ([Fong2017], [Novak2018])

โ€ข Increased complexity of the light transport makes it still challenging

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding4

Page 5: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

5

No guiding Guiding

(Our)

10 min10 min

Page 6: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUMETRIC MONTE-CARLO PATH TRACING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding6

๐‘“ ๐‘‹

p ๐‘‹

โ€ข The variance is defined by how well we can generate

random paths proportional to the volumetric light transport:

๐œŽ2 = ๐‘‰๐‘“(๐‘‹)

๐‘(๐‘‹)

๐ผ = เถฑ๐‘“ ๐‘‹ ๐‘‘๐‘‹

Page 7: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUMETRIC MONTE-CARLO PATH TRACING: ZERO-VARIANCE

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding7

๐‘“ ๐‘‹

p๐‘ง๐‘ฃ ๐‘‹ (optimal)

๐ผ = เถฑ๐‘“ ๐‘‹ ๐‘‘๐‘‹

โ€ข If the PDF for all paths is proportional to the light transport function

we would get a perfect zero-variance estimator:

๐œŽ2 = ๐‘‰๐‘“(๐‘‹)

๐‘๐‘ง๐‘ฃ(๐‘‹)= 0

We need to know the

shape of ๐’‡ ๐‘ฟ !

Page 8: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

THE 4 SAMPLING DECISIONS:

1. Scatter: ๐‘ƒ๐‘š ๐’™๐‘— , ๐œ”๐‘—

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding8

3. Direction: ๐‘๐œ” ๐œ”๐‘—+1|๐’™๐‘—+1, ๐œ”๐‘— 4. Termination: ๐‘ƒ๐‘…๐‘… ๐’™๐‘— , ๐œ”๐‘—โˆ’1

2. Distance: ๐‘๐‘‘ ๐‘‘๐‘—+1|๐’™๐‘— , ๐œ”๐‘—

Page 9: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUMETRIC RANDOM WALK - DECISIONS

๐‘ฅ0

๐œ”0

๐‘ฅ๐‘—

๐œ”๐‘—

๐‘ฅ๐‘—+1

๐œ”๐‘—+1

๐‘ฅ๐‘€โˆ’1

๐œ”๐‘€โˆ’1

๐‘ฅ๐‘—+2

๐œ”๐‘—+2

โ€ข Path PDF :

๐‘ ๐‘ฟ = เท‘

๐‘—=1

๐‘€โˆ’1

๐‘ƒ๐‘š โ€ฆ โˆ™ ๐‘๐‘‘ โ€ฆ โˆ™ ๐‘๐œ” โ€ฆ โˆ™ 1 โˆ’ ๐‘ƒ๐‘…๐‘… โ€ฆ

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding9

Source of variance

Path segment PDF

Page 10: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RENDERING EQUATION

โ€ข Incident radiance (volume):

โ€ข In-scattered radiance:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding10

๐ฟ ๐‘ฅ, ๐œ” = ๐‘‡ โ€ฆ โ‹… ๐ฟ๐‘œ(โ€ฆ ) + เถฑ๐‘‡ โ€ฆ โ‹… ๐œŽ๐‘ (โ€ฆ ) โ‹… ๐ฟ๐‘–(โ€ฆ )d๐‘‘

๐ฟ๐‘– โ€ฆ = เถฑ๐‘“ โ€ฆ โ‹… ๐ฟ(โ€ฆ )d๐œ”โ€ฒ

Surface contribution Volume contribution

Page 11: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RENDERING EQUATION

โ€ข Incident radiance (volume):

โ€ข In-scattered radiance:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding11

๐ฟ ๐‘ฅ, ๐œ” = ๐‘‡ โ€ฆ โ‹… ๐ฟ๐‘œ(โ€ฆ ) + เถฑ๐‘‡ โ€ฆ โ‹… ๐œŽ๐‘ (โ€ฆ ) โ‹… ๐ฟ๐‘–(โ€ฆ )d๐‘‘

๐ฟ๐‘– โ€ฆ = เถฑ๐‘“ โ€ฆ โ‹… ๐ฟ(โ€ฆ )d๐œ”โ€ฒ

Known Local

Quantities

Transmittance

Phase function

Page 12: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RENDERING EQUATION

โ€ข Incident radiance (volume):

โ€ข In-scattered radiance:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding12

๐ฟ ๐‘ฅ, ๐œ” = ๐‘‡ โ€ฆ โ‹… ๐ฟ๐‘œ(โ€ฆ ) + เถฑ๐‘‡ โ€ฆ โ‹… ๐œŽ๐‘ (โ€ฆ ) โ‹… ๐ฟ๐‘–(โ€ฆ )d๐‘‘

๐ฟ๐‘– โ€ฆ = เถฑ๐‘“ โ€ฆ โ‹… ๐ฟ(โ€ฆ )d๐œ”โ€ฒ

Unknown Light

Transport Quantities

Incident radiance

In-scattered radiancesurface radiance

Page 13: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

STANDARD SAMPLING

13

๐‘ฅ๐‘—+1๐‘ฅ๐‘— ๐œ”๐‘— ๐‘ฅ๐‘—+1 ๐œ”๐‘—๐‘ฅ๐‘—+1

๐œ”๐‘—+1

1+2 Scatter and Distance:

โ€ข Based on the transmittance

3 Direction:

โ€ข Based on the phase function

Page 14: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

STANDARD SAMPLING

14

โ€ข Based on local albedo or throughput

4 Termination:

๐‘ฅ๐‘—

๐œ”๐‘—๐‘ฅ๐‘—+1

Page 15: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

CHALLENGES FOR VOLUME SAMPLINGWhy do we need volumetric path guiding?

15

Page 16: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

LIGHT SHAFTS

โ€ข Light shafts:

- We need to scatter inside the light shaft.

- We need to follow the direction of the light shaft.

- We need to scatter towards the light shaft.

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding16

Page 17: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

LIGHT SHAFTS

โ€ข Light shafts:

- We need to scatter inside the light shaft.

- We need to follow the direction of the light shaft.

- We need to scatter towards the light shaft.

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding17

Page 18: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

LIGHT SHAFTS

โ€ข Light shafts:

- We need to scatter inside the light shaft.

- We need to follow the direction of the light shaft.

- We need to scatter towards the light shaft.

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding18

Page 19: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding (1024 spp) Our guiding (1024 spp)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding19

Page 20: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SUB-SURFACE-SCATTERING

๐‘ฅ

๐œ”

โ€ข Sub-Surface-Scattering:

- We โ€˜oftenโ€™ need stay close to the surface

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding20

Page 21: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SUB-SURFACE-SCATTERING

๐‘ฅ

๐œ”

โ€ข Sub-Surface-Scattering:

- We โ€˜oftenโ€™ need to stay close to the surface

- We need to leave the object with the right direction

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding21

Page 22: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding (256 spp) Our guiding (256 spp)

22

Page 23: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

DENSE MEDIA

โ€ข Dense media (back illuminated):

- We may need to โ€˜avoidโ€™ generating a scattering

event even if the transmittance is low

(e.g. strong light source behind the volume).

๐‘ฅ

๐œ”

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding23

Page 24: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding (256 spp) Our guiding (256 spp)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding24

Page 25: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

NON-DENSE MEDIA

โ€ข Non-dense media (no back illumination):

- We may need to โ€˜forceโ€™ a scattering event

even if the transmittance is high.

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding25

Page 26: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding (256 spp) Our guiding (256 spp)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding26

Page 27: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SPECIALIZED SOLUTIONS: SHORTCOMINGS

โ€ข Many individual solutions:

โ€ข Equiangular Sampling: [Kulla2012]

โ€ข Joint-Importance Sampling: [Georgiev2012]

โ€ข Zero-Variance Dwivedi Sampling: [Krivanek2014]

[Meng2016]

โ€ข Directional (illumination-based) guiding: [Pegoraro2008][Bashford2012]

โ€ข Only considering sub-sets or special cases:

โ€ข Surface-bounded volumes

โ€ข Homogenous or isotropic volumes

โ€ข Single scattering

โ€ข None of the current methods importance samples the full volumetric light transport!

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding27

Page 28: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SPECIALIZED SOLUTIONS: SHORTCOMINGS

โ€ข Many individual solutions:

โ€ข Equiangular Sampling: [Kulla2012]

โ€ข Joint-Importance Sampling: [Georgiev2012]

โ€ข Zero-Variance Dwivedi Sampling: [Krivanek2014]

[Meng2016]

โ€ข Directional (illumination-based) guiding: [Pegoraro2008][Bashford2012]

โ€ข Only considering sub-sets or special cases:

โ€ข Surface-bounded volumes

โ€ข Homogenous or isotropic volumes

โ€ข Single scattering

โ€ข None of the current methods importance samples the full volumetric light transport!

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding28

Page 29: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SPECIALIZED SOLUTIONS: SHORTCOMINGS

โ€ข Many individual solutions:

โ€ข Equiangular Sampling: [Kulla2012]

โ€ข Joint-Importance Sampling: [Georgiev2012]

โ€ข Zero-Variance Dwivedi Sampling: [Krivanek2014]

[Meng2016]

โ€ข Directional (illumination-based) guiding: [Pegoraro2008][Bashford2012]

โ€ข Only considering sub-sets or special cases:

โ€ข Surface-bounded volumes

โ€ข Homogenous or isotropic volumes

โ€ข Single scattering

โ€ข None of the current methods importance samples the full volumetric light transport!

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding29

Page 30: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ZERO-VARIANCE-BASEDVOLUMETRIC PATH GUIDING

30

TUE: 30TH JULY TIME: 9:00 AMROOM: 152

TECH TALK:

Page 31: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

[Hoogenboom 2008]

ZV-BASED VOLUMETRIC PATH GUIDING: GOALS

โ€ข Leverage recent success of local surface guiding methods:

โ€ข Extend the concept to volumes

โ€ข Consider the complete volumetric light transport:

โ€ข No prior assumptions or special cases

โ€ข Guide based on the optimal zero-variance decisions

โ€ข Replace unknown quantities by estimates:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding31

๐ฟ ๐’™, ๐œ” = เทจ๐ฟ ๐’™, ๐œ” ๐ฟ๐‘– ๐’™,๐œ” = เทจ๐ฟ๐‘– ๐’™,๐œ”

[Vorba2014],

[Herholz2016],

[Mueller2017]

Page 32: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ZV-BASED VOLUMETRIC PATH GUIDING: CONTRIBUTIONS

โ€ข Guiding all local sampling decisions:

โ€ข 1+2 Guided product distance sampling:

โ€ข 3 Guided product directional sampling:

โ€ข 4 Guided Russian roulette and Splitting:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding32

Page 33: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ZV-BASED VOLUMETRIC PATH GUIDING: CONTRIBUTIONS

โ€ข Guiding all local sampling decisions:

โ€ข 1+2 Guided product distance sampling:

โ€ข 3 Guided product directional sampling:

โ€ข 4 Guided Russian roulette and Splitting:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding33

Page 34: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ZV-BASED VOLUMETRIC PATH GUIDING: CONTRIBUTIONS

โ€ข Guiding all local sampling decisions:

โ€ข 1+2 Guided product distance sampling:

โ€ข 3 Guided product directional sampling:

โ€ข 4 Guided Russian roulette and Splitting:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding34

Page 35: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RADIANCE ESTIMATES

35

Page 36: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RADIANCE ESTIMATES

โ€ข Spatial caches via BSP-tree: max. 2K photons per node:

โ€ข Similar 3D structure as PPG [Mueller2017]

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding36

Page 37: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VOLUME RADIANCE ESTIMATES

โ€ข Pre-processing step to fit estimates from photons (50M):

โ€ข EM-fitting of von Mises-Fisher mixtures (similar to [Vorba2014]โ€™s GMMs)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding37

Page 38: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VON MISES-FISHER MIXTURE MODELS

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding38

โ€ข Spherical Distribution:

โ€ข Features (closed-form):

- Sampling

- Convolution

- Product

๐‘‰ ๐œ”|ฮ˜ =

๐พ

๐œ‹๐‘–๐‘ฃ(๐œ”|๐œ‡๐‘– , ๐œ…๐‘–)

Page 39: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

RADIANCE ESTIMATES

โ€ข Incident Radiance Distribution โ€ข In-Scattered Radiance Distribution

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding39

Page 40: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INCIDENT RAD. TO IN-SCATTERED RAD. TRANSFORMATION

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding40

โ€ข Convolution between incident radiance ๐ฟ and the phase function ๐‘“

โŠ›

Page 41: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INCIDENT RADIANCE ESTIMATES

Ground truth (2K spp) Our estimates (VMM)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding41

Page 42: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

IN-SCATTERED RADIANCE ESTIMATES

Ground truth (2K spp) Our estimates (VMM)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding42

Page 43: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED SAMPLING DECISIONS

43

Page 44: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

DISTANCE SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding44

2. Scatter distance

1. Volume or surface decision

Page 45: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

DISTANCE SAMPLING

โ€ข Standard distance PDF:

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding45

1+2. Event distance

๐‘๐‘‘๐‘ ๐‘ก๐‘‘ โ€ฆ โˆ ๐‘‡ โ€ฆ โ‹… ๐œŽ๐‘  โ€ฆ

Page 46: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED PRODUCT DISTANCE SAMPLING

โ€ข Our guided PDF:

๐‘๐‘‘๐‘ง๐‘ฃ โ€ฆ =

๐‘‡ โ€ฆ โ‹… ๐œŽ๐‘  โ€ฆ โ‹… เทจ๐ฟ๐‘–(โ€ฆ )

เทจ๐ฟ(โ€ฆ )Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding46

1+2. Event distance

Our estimates

Page 47: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

NAรVE TABULATED APPROACH

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding47

โ€ข Naรฏve tabulated approach:

โ€ข Step through the complete volume and build a tabulated PDF

โ€ข Inefficient (large scenes dense media):

โ€ข we always need to evaluated all bins first

Page 48: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

OUR INCREMENTAL GUIDED PRODUCT DISTANCE SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding48

โ€ข Incremental approach:

โ€ข At each step make a local decision, if we scatter inside the bin

โ€ข We only need to step until the scattering event happens

Page 49: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Full CDF (30min) Our incremental (30min)

49

Spp: 548

Avg. steps: 18

Spp: 1140

Avg. steps: 4

Page 50: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

45 min

Page 51: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding

Spp: 960

relMSE: 1.342

45 min

Page 52: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding Distance guiding

Spp: 960

relMSE: 1.342Spp: 424

relMSE: 0.901

45 min

Page 53: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding (256 spp) Distance guiding (256 spp)

53

โ€ข Here, distance sampling is not the main cause of variance!!

Page 54: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

DIRECTIONAL SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding54

3. Scatter direction

๐œ”๐‘—๐‘ฅ๐‘—+1

โ€ข Standard PDF:

๐‘๐œ”๐‘ ๐‘ก๐‘‘ โ€ฆ โˆ แˆš๐‘“ โ€ฆ

Page 55: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED PRODUCT DIRECTIONAL SAMPLING

โ€ข Our guided PDF:

๐‘๐œ”๐‘ง๐‘ฃ โ€ฆ โˆ แˆš๐‘“ โ€ฆ โˆ™ เทจ๐ฟ(โ€ฆ )

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding55

3. Scatter direction

๐œ”๐‘—๐‘ฅ๐‘—+1 ๐œ”๐‘—+1

Our estimates

Page 56: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

OUR GUIDED PRODUCT DIRECTIONAL SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding56

Incident radiance VMM

Page 57: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

OUR GUIDED PRODUCT DIRECTIONAL SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding57

Incident radiance VMM Phase function VMM

Page 58: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

OUR GUIDED PRODUCT DIRECTIONAL SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding58

Product sampling VMM

Page 59: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

30 min

59

Page 60: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

30 min No guiding

Spp: 2212

relMSE: 0.376

Page 61: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Directional guiding

Spp: 1756

relMSE: 0.048

30 min No guiding

Spp: 2212

relMSE: 0.376

Page 62: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Directional guiding Dist + Direct

Spp: 1756

relMSE: 0.048Spp: 1228

relMSE: 0.034

30 min No guiding

Spp: 2212

relMSE: 0.376

Page 63: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No Guiding

(256 spp)

Product Guiding

(256 spp)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding63

Illum Guiding

(256 spp)

IMPORTANCE OF THE PRODUCT FOR DENSE ANISOTROPIC MEDIA

Page 64: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING

4a. Termination 4b. Splitting Distance

Directional

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding64

Page 65: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING

โ€ข Post-sampling compensation strategies:

โ€ข Identify, if we did a sub-optimal sampling decision

โ€ข Terminate: to increase performance

โ€ข Split: bound/reduce sample variance

4b. Splitting

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding65

4a. Termination

Page 66: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING

โ€ข Path contribution: ๐ธ[๐‘‹]โ€ข The expected contribution

if we continue the path

โ€ข Reference solution: ๐ผโ€ข the final pixel value

๐‘ž =๐ธ ๐‘‹

๐ผ

Path contribution

Reference solution

survival prob /

splitting factor

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding66

Page 67: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING

โ€ข Path contribution: ๐ธ[๐‘‹]โ€ข The expected contribution

if we continue the path

โ€ข Reference solution: ๐ผโ€ข the final pixel value

๐‘ž =๐ธ ๐‘‹

๐ผ= 1

Path contribution

Reference solution

survival prob /

splitting factor

Zero-Variance

Estimator

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding67

Page 68: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING

โ€ข If ๐‘ž โ‰ค 1: Russian Roulette

โ€ข Terminates low contributing paths

โ€ข Survival probability: ๐‘ž

โ€ข If ๐‘ž > 1: Splitting

โ€ข Splits an under sampled paths with

a potential high contribution (๐‘ž times)

๐‘ž =๐ธ ๐‘‹

๐ผ

Path contribution

Reference solution

survival prob /

splitting factor

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding68

Page 69: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ESTIMATED PATH CONTRIBUTION

โ€ข See course notes or paper for more details

เทจ๐ฟ๐‘–

๐‘ฟ

๐ธ ๐‘ฟ = ๐‘Žโ€ฒ(๐‘ฟ) โ‹… เทจ๐ฟ๐‘– ๐‘ฅ๐‘— , ๐œ”๐‘—โˆ’1

Path throughput: ๐‘“(๐‘ฟ)/๐‘(๐‘ฟ) In-scattered radiance estimate

๐‘ฅ๐‘—

๐œ”๐‘—โˆ’1

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding69

Page 70: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

GUIDED RUSSIAN ROULETTE AND SPLITTING: PIXEL ESTIMATE

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding71

โ€ข Ray marched cache to integrate: ๐‘‡ โ‹… ๐œŽ๐‘  โ‹… เทจ๐ฟ๐‘–

Page 71: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No RR

Spp: 468

relMSE: 0.454

45 min

Page 72: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No RR Guided RR

Spp: 468

relMSE: 0.454Spp: 1500

relMSE: 0.174

45 min

Page 73: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No RR Guided RR

Spp: 468

relMSE: 0.454Spp: 1500

relMSE: 0.174

45 min

+ Guided splitting

Spp: 1340

relMSE: 0.066

Page 74: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Guided RR + Guided splitting

Spp: 1500

relMSE: 0.174

Spp: 1340

relMSE: 0.06675

Page 75: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

No guiding

Time: 60 min

Spp: 10644

relMSE: 11.58

Page 76: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Distance guiding

Time: 60 min

Spp: 4624

relMSE: 3.520

Page 77: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Distance + directional guiding

Time: 60 min

Spp: 4448

relMSE: 0.468

Page 78: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

Distance + directional guiding + GRRS

Time: 60 min

Spp: 3796

relMSE: 0.321

Page 79: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

OPEN PROBLEMS AND LIMITATIONSOpen Challenges to make it bullet proof

80

Page 80: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

SPATIAL CACHE STRUCTURE

โ€ข Naive approach to define the resolution:

โ€ข Heuristic based on sample numbers

โ€ข Takes time or many samples to model/separate fine features (e.g. thin shafts or caustics)(PPG by [Mueller2017] has the same problem)

โ€ข Influences the performance of some sampling methods (e.g. distance)

โ€ข Ideal structure should adjust to the light transport characteristics

81

Page 81: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INSUFFICIENT CACHE SIZES

โ€ข Shared problem with other 3D caching based guiding approaches(e.g. [Vorba2014], [Mueller2017], โ€ฆ)

โ€ข By merging the samples of a spatial cache we blur the directional distribution

โ€ข Can lead to incorrect estimates of ๐ฟ and ๐ฟ๐‘–

82

Ground truth Our estimate Spatial avg. ground truth

Page 82: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

PRODUCTION CHALLENGESHow can we get good guiding estimates?

83

Page 83: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VMM PHASE FUNCTION FITTING: PRE-PROCESSING STEP

โ€ข Pre-processing step:โ€ข Fitting a VMM for each phase function

โ€ข Fitting up to K = 4 componentsโ€ข Details in the course notes

โ€ข Open Challenge:โ€ข Procedural phase functions or

procedural mixtures?

โ€ข How to deal with changing mean cosines (roughening/mollification)?

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding84

Page 84: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VMM PHASE FUNCTION FITTING: PRE-PROCESSING STEP

โ€ข Pre-processing step:โ€ข Fitting a VMM for each phase function

โ€ข Fitting up to K = 4 componentsโ€ข Details in the course notes

โ€ข Open Challenge:โ€ข Procedural phase functions or

procedural mixtures?

โ€ข How to deal with changing mean cosines (roughening/mollification)?

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding85

Page 85: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

FITTING/LEARNING THE INCIDENT RADIANCE MIXTURES

Pros:

โ€ข Photons directly represents the light transport

โ€ข Spatial distribution corresponds to important features (light shaft)

โ€ข Number of traced photons can be fixed

โ€ข No additional fitting during rendering

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding86

Photon-based pre-processing ([Herholz2019][Vorba2014])

Page 86: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

FITTING/LEARNING THE INCIDENT RADIANCE MIXTURES

Cons:

โ€ข Pre-processing step:

โ€ข Long time to first render iteration

โ€ข Complex scenes need bidirectional learning:

โ€ข Ping-Pong style [Vorba2014]

โ€ข It is not the ideal solution for artists in production

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding87

Photon-based pre-processing ([Herholz2019][Vorba2014])

Page 87: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

FITTING/LEARNING THE INCIDENT RADIANCE MIXTURES

Pros:

โ€ข First experiments show promising results

โ€ข No pre-processing

โ€ข Refines spatial and directional distributions in each iteration

โ€ข Sample data gets more reliable

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding88

Progressive learning (PPG-style [Mueller2017])

Page 88: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

FITTING/LEARNING THE INCIDENT RADIANCE MIXTURES

Cons (open challenges):

โ€ข Sample count grows exponential:

โ€ข Memory and fitting time increases

โ€ข Shorter update rates ?

โ€ข Online fitting for mixtures?

โ€ข Spatial structure adapts slowly to LT:

โ€ข Important for distance sampling

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding89

Progressive learning (PPG-style [Mueller2017])

Page 89: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

CONCLUSION

โ€ข Even approximate local sampling decisions lead to a good approximation of the globally optimal guiding distribution (and thus significantly reducing MC variance)

โ€ข Converges to optimal ZV estimator in the hypothetical limit (i.e., if the approximations were perfect)

โ€ข Solely based one guiding structure for alldecisions (incident radiance VMMs)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding90

Page 90: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

THANK YOU

91

Page 91: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

REFERENCES

โ€ข [Fong2017]: โ€œProduction volume renderingโ€

โ€ข [Novak2018]: โ€œMonte Carlo methods for volumetric light transport simulationโ€

โ€ข [Kulla2012]: โ€œImportance sampling techniques for path tracing in participating mediaโ€

โ€ข [Georgiev2012]: โ€œimportance sampling of low-order volumetric scatteringโ€

โ€ข [Krivanek2014]: โ€œA zero-variance-based sampling scheme for Monte Carlo subsurface scatteringโ€

โ€ข [Meng2016]: โ€œImproving the Dwivedi sampling schemeโ€

โ€ข [Vorba2014]: โ€œOnline learning of parametric mixture models for light transport simulationโ€

โ€ข [Vorba2016]: โ€œAdjoint-driven Russian roulette and splitting in light transport simulationโ€

โ€ข [Herholz2016]: โ€œProduct importance sampling for light transport path guidingโ€

โ€ข [Koerner2016]: โ€œSubdivision next-event estimation for path-traced subsurface scatteringโ€

โ€ข [Mueller2017]: โ€œPractical path guiding for efficient light-transport simulationโ€

โ€ข [Hoogenboom2008]: โ€œZero-varianceMonte Carlo schemes revisitedโ€

โ€ข [Pegoraro2008]:โ€ Sequential Monte Carlo integration in low-anisotropy participating mediaโ€

โ€ข [Bashford2012]: โ€œA significance cache for accelerating global illuminationโ€

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding92

Page 92: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

ADJOINT ESTIMATE ACCURACY

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding93

Page 93: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

COMPARING AGAINST EQUIANGULAR SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding94

Page 94: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

BUMPY SPHERE

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding95

Page 95: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INCREMENTAL GUIDED DISTANCE SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding96

Page 96: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INCREMENTAL GUIDED DISTANCE SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding97

Page 97: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

INCREMENTAL GUIDED DISTANCE SAMPLING

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding98

Page 98: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VMM PHASE FUNCTION FITTING: PRE-PROCESSING STEP

โ€ข Using up to K = 4 components

โ€ข Optimization Problem:

arg mi๐‘›ฮ˜๐‘“

๐‘›=1

๐‘

โ„’log(๐‘“ ๐œ”๐‘›, โ€ฆ , ๐‘‰(๐œ”๐‘›, ฮ˜๐‘“))2

โ„’log(๐‘‘,๐‘š) = log ๐‘‘ + ๐œ– โˆ’ log ๐‘š + ๐œ–

๐œ– = (1๐‘’ โˆ’ 4) โˆ™ max(๐‘‘1, โ€ฆ , ๐‘‘๐‘›)

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding99

Page 99: Volumetric Zero-Variance-Based Path Guidingjirka/path-guiding-in...VOLUMETRIC MONTE-CARLO PATH TRACING 6 Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding ๐‘‹ p๐‘‹

VMM PHASE FUNCTION FITTING

โ€ข Manifold representation of the VMM parameters for an HG phase function model for different mean cosines

Sebastian Herholz | Volumetric Zero-Variance-Based Path Guiding100