Monte Carlo Integration

Slides:



Advertisements
Similar presentations
Monte Carlo Methods and Statistical Physics
Advertisements

Advanced Computer Graphics
Photorealistic Rendering. Ray tracing v. photorealistic rendering What illumination effects are not captured by ray tracing? What illumination effects.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
Monte Carlo Integration Robert Lin April 20, 2004.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lectures 18, 19: Monte Carlo Integration Ravi Ramamoorthi Acknowledgements.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Photon Tracing with Arbitrary Materials Patrick Yau.
Advanced Computer Graphics (Fall 2009) CS 294, Rendering Lecture 5: Monte Carlo Path Tracing Ravi Ramamoorthi
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 10: Global Illumination Ravi Ramamoorthi Some images courtesy.
Everything on Global Illumination Xavier Granier - IMAGER/UBC.
Monte Carlo Integration COS 323 Acknowledgment: Tom Funkhouser.
Objectives Learn to shade objects so their images appear three- dimensional Learn to shade objects so their images appear three- dimensional Introduce.
#10 MONTE CARLO SIMULATION Systems Fall 2000 Instructor: Peter M. Hahn
Advanced Computer Graphics (Spring 2006) COMS 4162, Lecture 20: Monte Carlo Path Tracing Ravi Ramamoorthi Acknowledgements.
1 Monte Carlo Global Illumination Brandon Lloyd COMP 238 December 16, 2002.
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
Computer Graphics (Spring 2008) COMS 4160, Lecture 22: Global Illumination
CSC418 Computer Graphics n Raytracing n Shadows n Global Illumination.
Random Number Generation Fall 2013
Monte Carlo Integration Digital Image Synthesis Yung-Yu Chuang with slides by Pat Hanrahan and Torsten Moller.
Global Illumination Jian Huang, CS 594, Fall 2002 This set of slides reference text book and the course note of Dutre et. al on SIGGRAPH 2001.
1 CE 530 Molecular Simulation Lecture 7 David A. Kofke Department of Chemical Engineering SUNY Buffalo
Simulation of Random Walk How do we investigate this numerically? Choose the step length to be a=1 Use a computer to generate random numbers r i uniformly.
1 Statistical Mechanics and Multi- Scale Simulation Methods ChBE Prof. C. Heath Turner Lecture 11 Some materials adapted from Prof. Keith E. Gubbins:
01/24/05© 2005 University of Wisconsin Last Time Raytracing and PBRT Structure Radiometric quantities.
Today More raytracing stuff –Soft shadows and anti-aliasing More rendering methods –The text book is good on this –I’ll be using images from the CDROM.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Distribution Ray Tracing.
Monte Carlo I Previous lecture Analytical illumination formula This lecture Numerical evaluation of illumination Review random variables and probability.
Module 1: Statistical Issues in Micro simulation Paul Sousa.
02/10/03© 2003 University of Wisconsin Last Time Participating Media Assignment 2 –A solution program now exists, so you can preview what your solution.
Monte Carlo Methods So far we have discussed Monte Carlo methods based on a uniform distribution of random numbers on the interval [0,1] p(x) = 1 0  x.
Monté Carlo Simulation  Understand the concept of Monté Carlo Simulation  Learn how to use Monté Carlo Simulation to make good decisions  Learn how.
Importance Resampling for Global Illumination Justin F. Talbot Master’s Thesis Defense Brigham Young University Provo, UT.
Importance Resampling for Global Illumination Justin Talbot, David Cline, and Parris Egbert Brigham Young University Provo, UT.
CPSC 641 Computer Graphics: Radiosity Jinxiang Chai.
Real-Time High Quality Rendering
Monte-Carlo Ray Tracing and
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Computer Graphics III – Monte Carlo integration Direct illumination
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
Slide 1Lastra, 2/14/2016 Monte-Carlo Methods. Slide 2Lastra, 2/14/2016 Topics Kajiya’s paper –Showed that existing rendering methods are approximations.
Gil McVean, Department of Statistics Thursday February 12 th 2009 Monte Carlo simulation.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
01/26/05© 2005 University of Wisconsin Last Time Raytracing and PBRT Structure Radiometric quantities.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Computer Graphics Ken-Yi Lee National Taiwan University (the slides are adapted from Bing-Yi Chen and Yung-Yu Chuang)
Monte Carlo Integration Digital Image Synthesis Yung-Yu Chuang 12/3/2008 with slides by Pat Hanrahan and Torsten Moller.
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
Advanced Computer Graphics
Advanced Computer Graphics
Lesson 8: Basic Monte Carlo integration
Introduction to Monte Carlo Method
Monte Carlo Integration
Sampling and Reconstruction of Visual Appearance
Sampling and Reconstruction of Visual Appearance
The Rendering Equation
(c) 2002 University of Wisconsin
Path Tracing (some material from University of Wisconsin)
Monte Carol Integration
Lecture 2 – Monte Carlo method in finance
(c) 2002 University of Wisconsin
Efficient Importance Sampling Techniques for the Photon Map
Monte Carlo I Previous lecture Analytical illumination formula
Monte Carlo Rendering Central theme is sampling:
Foundations of Computer Graphics (Spring 2012)
CSC418 Computer Graphics Raytracing Shadows Global Illumination.
Photon Density Estimation using Multiple Importance Sampling
Presentation transcript:

Monte Carlo Integration COS 323 Acknowledgment: Tom Funkhouser

Slide courtesy of Peter Shirley Integration in 1D f(x) x=1 Slide courtesy of Peter Shirley

Slide courtesy of Peter Shirley We can approximate g(x) f(x) x=1 Slide courtesy of Peter Shirley

Slide courtesy of Peter Shirley Or we can average f(x) E(f(x)) x=1 Slide courtesy of Peter Shirley

Estimating the average f(x) E(f(x)) x1 xN Slide courtesy of Peter Shirley

Slide courtesy of Peter Shirley Other Domains f(x) < f >ab x=a x=b Slide courtesy of Peter Shirley

Benefits of Monte Carlo No “exponential explosion” in required number of samples with increase in dimension Resistance to badly-behaved functions

Variance E(f(x)) x1 xN

Variance Variance decreases as 1/N Error decreases as 1/sqrt(N) E(f(x)) x1 xN

Variance Problem: variance decreases with 1/N Increasing # samples removes noise slowly E(f(x)) x1 xN

Variance Reduction Techniques Problem: variance decreases with 1/N Increasing # samples removes noise slowly Variance reduction: Stratified sampling Importance sampling

Stratified Sampling Estimate subdomains separately Arvo Ek(f(x)) x1 xN

Stratified Sampling This is still unbiased Ek(f(x)) x1 xN

Stratified Sampling Less overall variance if less variance in subdomains Ek(f(x)) x1 xN

Importance Sampling Put more samples where f(x) is bigger E(f(x)) x1 xN

Importance Sampling This is still unbiased E(f(x)) for all N x1 xN

Importance Sampling Zero variance if p(x) ~ f(x) E(f(x)) Less variance with better importance sampling x1 xN

Generating Random Points Uniform distribution: Use pseudorandom number generator 1 Probability W

Pseudorandom Numbers Deterministic, but have statistical properties resembling true random numbers Common approach: each successive pseudorandom number is function of previous Linear congruential method: Choose constants carefully, e.g. a = 1664525 b = 1013904223 c = 232 – 1

Pseudorandom Numbers To get floating-point numbers in [0..1), divide integer numbers by c + 1 To get integers in range [u..v], divide by (c+1)/(v–u+1), truncate, and add u Better statistics than using modulo (v–u+1) Only works if u and v small compared to c

Generating Random Points Uniform distribution: Use pseudorandom number generator 1 Probability W

Importance Sampling Specific probability distribution: Function inversion Rejection Split into 2 slides: one for theta, one for phi.

Importance Sampling “Inversion method” Integrate f(x): Cumulative Distribution Function 1 Split into 2 slides: one for theta, one for phi.

Importance Sampling “Inversion method” Integrate f(x): Cumulative Distribution Function Invert CDF, apply to uniform random variable 1 Split into 2 slides: one for theta, one for phi.

Importance Sampling Specific probability distribution: Function inversion Rejection Split into 2 slides: one for theta, one for phi.

Generating Random Points “Rejection method” Generate random (x,y) pairs, y between 0 and max(f(x))

Generating Random Points “Rejection method” Generate random (x,y) pairs, y between 0 and max(f(x)) Keep only samples where y < f(x)

Monte Carlo in Computer Graphics

or, Solving Integral Equations for Fun and Profit

or, Ugly Equations, Pretty Pictures

Computer Graphics Pipeline Modeling Animation Rendering Lighting and Reflectance

Rendering Equation Surface Light Viewer [Kajiya 1986]

Rendering Equation This is an integral equation Hard to solve! Can’t solve this in closed form Simulate complex phenomena Heinrich

Rendering Equation This is an integral equation Hard to solve! Can’t solve this in closed form Simulate complex phenomena Jensen

Monte Carlo Integration f(x) Shirley

Monte Carlo Path Tracing Estimate integral for each pixel by random sampling

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Surface Eye Pixel x

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Light x’ Eye x Surface

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Herf

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Surface Light Eye w w’ x Surface

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Debevec

Monte Carlo Global Illumination Specular Surface Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Light Eye w w’ x Diffuse Surface

Monte Carlo Global Illumination Rendering = integration Antialiasing Soft shadows Indirect illumination Caustics Jensen

Challenge Rendering integrals are difficult to evaluate Multiple dimensions Discontinuities Partial occluders Highlights Caustics Drettakis

Challenge Rendering integrals are difficult to evaluate Multiple dimensions Discontinuities Partial occluders Highlights Caustics Jensen

Monte Carlo Path Tracing Big diffuse light source, 20 minutes Jensen

Monte Carlo Path Tracing 1000 paths/pixel Jensen

Monte Carlo Path Tracing Drawback: can be noisy unless lots of paths simulated 40 paths per pixel: Lawrence

Monte Carlo Path Tracing Drawback: can be noisy unless lots of paths simulated 1200 paths per pixel: Lawrence

Reducing Variance Observation: some paths more important (carry more energy) than others For example, shiny surfaces reflect more light in the ideal “mirror” direction Idea: put more samples where f(x) is bigger

Importance Sampling Idea: put more samples where f(x) is bigger

Effect of Importance Sampling Less noise at a given number of samples Equivalently, need to simulate fewer paths for some desired limit of noise Uniform random sampling Importance sampling