mixing monte carlo and progressive rendering for improved
play

Mixing Monte Carlo and Progressive Rendering for Improved Global - PowerPoint PPT Presentation

Mixing Monte Carlo and Progressive Rendering for Improved Global Illumination Ian C. Doidge Mark W. Jones Benjamin Mora Swansea University, Wales Thursday 14 th June Computer Graphics International 2012 Motivation ? X Remove caustics MC


  1. Mixing Monte Carlo and Progressive Rendering for Improved Global Illumination Ian C. Doidge Mark W. Jones Benjamin Mora Swansea University, Wales Thursday 14 th June Computer Graphics International 2012

  2. Motivation ? X Remove caustics MC Path tracing Add 16x samples 128 samples 2048 samples 128 filtered samples 2

  3. Monte Carlo Integration − Path Tracing (PT) − [Kajiya ’86] − Bidirectional Path Tracing − [Lafortune & Willems ‘93] − [Veach & Guibas ’94] − Metropolis Light Transport Path Tracing − Modify existing paths Iterate − [Veach & Guibas ’97] 3

  4. Monte Carlo Integration − Path Tracing (PT) − [Kajiya ’86] − Bidirectional Path Tracing − [Lafortune & Willems ‘93] − [Veach & Guibas ’94] − Metropolis Light Transport Bidirectional PT − Modify existing paths Iterate − [Veach & Guibas ’97] 4

  5. Monte Carlo Integration − Path Tracing (PT) − [Kajiya ’86] − Bidirectional Path Tracing − [Lafortune & Willems ‘93] − [Veach & Guibas ’94] − Metropolis Light Transport Metropolis − Modify existing paths Iterate − [Veach & Guibas ’97] 5

  6. Monte Carlo Integration Path Tracing − Good for diffuse lighting − Sample stratification − Explicit camera/light source connections − Poor caustic evaluation − Low probability, high luminance paths − Result in spiked noise: Converged Reference (PT)

  7. Monte Carlo Integration Path Tracing − Path Tracing (PT): − [Kajiya ’86] − Bidirectional Path Tracing (BDPT): − [Lafortune & Willems ‘93] − [Veach & Guibas ’94] − Metropolis Light Transport (MLT): − Modify existing paths − [Veach & Guibas ’97] Converged Reference (PT)

  8. Monte Carlo Integration − Good for diffuse lighting − Sample stratification − Explicit camera/light source connections − Poor caustic evaluation − Low probability, high luminance paths − Result in spiked noise: Path Tracing Iterate 8

  9. Density Estimation SPPM − Much better for caustic lighting − High photon density regions − Inefficient for diffuse lighting − Diffuse bounces lead to poor distributions − Too few photons in density estimates − Photon Mapping (PM): − [Jensen ‘96] − Stochastic Progressive PM (SPPM): − [Hachisuka ‘09] Converged Reference (PT)

  10. Stochastic Progressive Photon Mapping (SPPM) Photon Pass Ray Tracing Pass Update & Iterate 10

  11. Contributions Path Tracing − Filter path space and evaluate independently... − Efficiently combine MC with density estimation − On the fly path filtering − Superior RMSE convergence (vs. PT and SPPM) − Related Work Our Method − Progressive Point-Light-Based Global Illumination [Dammertz et al. 2010] − Density Based Outlier Rejection [DeCoro SPPM et al. 2010] 11

  12. Algorithm Overview Trace Camera Filter path Compute vertex Paths vertices contributions Diffuse buffer Generate caustic Output image photons Primary hitpoints Caustic buffer Gather photons Iterate 12

  13. Path Filtering − Separate path space − ‘Diffuse’ and ‘Caustic’ lighting − Based on path/surface interactions − Two disjoint sub-spaces − Account for all possible light transport 13

  14. Diffuse interaction D Path Filtering Specular interaction S Implicit lighting L (L) Explicit lighting − Apply pattern matching − Diffuse subspace: − Caustic subspace: X 14

  15. Filtered Path Tracing X X Path Tracing Filtered Path Tracing Iterate Iterate 15

  16. Diffuse interaction D Filtering Example Specular interaction S Implicit lighting L (L) Explicit lighting D E D D D S D D D D S D D E Binary Path Encoding: ‐ ‐ 0 0 0 1 0 0 − Diffuse subspace: Vertex Interactions 16

  17. Diffuse interaction D Filtering Example Specular interaction S Implicit lighting L (L) Explicit lighting (L) (L) (L) (L) D X E D D D S D D D D S D D E Binary Path Encoding: ‐ ‐ 0 0 0 1 0 0 Perform table lookup... − Diffuse subspace: ‐ ‐ 1 0 0 1 1 1 Implicit Lighting ‐ ‐ 1 1 0 0 1 1 Explicit Lighting 17

  18. Diffuse interaction D Filtering Example Specular interaction S Implicit lighting L (L) Explicit lighting (L) (L) (L) (L) D X E D D D S D X 18

  19. Overview Trace Camera Filter path Compute vertex Paths vertices contributions Diffuse buffer Generate caustic Output image photons Primary hitpoints Caustic buffer Gather photons Iterate 19

  20. 20 Photon Pass X Filtered SPPM X Update Primary Hitpoints

  21. Photon Filtering L − Caustic subspace: D X D L S D D D − Deposit only caustic photons: − Lower memory cost (~10%) − Faster photon gathering − Similar caustic convergence 21

  22. Image Reconstruction � � Diffuse Buffer Caustic Buffer Full Global Illumination − Combine diffuse and caustic buffers: − Pixel-wise addition − Obtain intermediate results after each iteration 22

  23. Results Path Tracing SPPM 23 Equal time comparison after 30 minutes

  24. Results Path Tracing SPPM 24 Equal time comparison after 30 minutes

  25. Results SPPM Path Tracing Converged PT Our Method 25 Equal time comparison after 5 minutes

  26. Results Path Tracing Our Method SPPM 26 Equal time comparison after 5 minutes

  27. 27 Error comparison (RMSE)

  28. Conclusion − Efficiently render diffuse and caustic lighting: − Progressive multi-pass method − Diffuse lighting using Monte Carlo integration − Caustic lighting via reduced SPPM − No additional bias − Future Work − Automatic adjustment of camera paths vs. photons − Adaptive photon generation − Improve efficiency and photon distribution 28

  29. Thank you for listening! Questions? (and Answers) 29

  30. Thank you for listening! Questions? (and Answers) 30

  31. 31

  32. Error comparison (RMSE)

  33. Error comparison (RMSE)

  34. Error comparison (RMSE)

  35. Motivation Path Tracing Our Method Converged Reference (PT) SPPM 35

  36. Overview Trace Camera Filter path Compute vertex Paths vertices contributions Diffuse buffer Generate caustic Output image photons Primary hit points Caustic buffer Gather photons Iterate

  37. Filtered Photon Pass Caustic only SPPM X Iterate X X X Filtered Path Tracing Pass

  38. Filtered Photon Pass X Filtered SPPM Iterate X

  39. ‘ Diffuse’ photon Photon Filtering ‘ Caustic’ photon Our Method SPPM − Caustic subspace: − Deposit only caustic photons: − Lower memory cost − Faster photon gathering − Same rate of convergence

  40. Stochastic Progressive Photon Mapping (SPPM) Ray Tracing Pass Photon Pass Iterate

  41. Path Filtering The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. Direct lighting: ES*DL The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. Single Bounce Diffuse: ES*DDL Caustic Lighting: E(S|D)*D+S*L E(S|D)*D+S*DL Multiple Bounce Diffuse: ES*DDD+L

  42. Monte Carlo Integration Path Tracing Bidirectional Path Tracing Iterate Iterate 42

  43. Stochastic Progressive Photon Mapping (SPPM) Photon Pass Ray Tracing Pass Iterate

  44. Monte Carlo Integration Path Tracing − Monte Carlo Integration methods: − Good for diffuse lighting − Sample stratification − Explicit camera/light source connections − Poor caustic evaluation − Low probability, high luminance paths − Result in spiked noise: Converged Reference (PT)

  45. Density Estimation SPPM − Density Estimation methods: − Much better for caustic lighting − Higher photon density regions − Can handle difficult specular paths − Inefficient for diffuse lighting − Diffuse bounces lead to poor photon distribution − Insufficient photons in density estimates Converged Reference (PT)

  46. Overview − Multi-pass progressive algorithm: − Path Tracing for ‘diffuse’ lighting (No bias) − SPPM for 'caustic' lighting (Progressively decreasing bias) − Filter path space and evaluate independently... − Efficiently combine MC and density estimation methods − On the fly path filtering − Superior RMSE convergence (vs. PT and SPPM) − Related Work − Density-based outlier rejection [Decoro et al. 2010] − Progressive point-light based global illumination [Dammertz et al. 2010] − Caustic Forecasting [Budge et al. 2008]

  47. Progressive Photon Mapping The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location. Ray Tracing Pass Photon Pass Iterate

  48. Related Work − Density-based outlier rejection [Decoro et al. 2010] − Progressive point-light based global illumination [Dammertz et al. 2010] − Caustic Forecasting [Budge et al. 2008]

Recommend


More recommend