Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sampling Attila Gyulassy Image Synthesis. Overview Problem Statement Random Number Generators Quasi-Random Number Generation Uniform sampling of Disks,

Similar presentations


Presentation on theme: "Sampling Attila Gyulassy Image Synthesis. Overview Problem Statement Random Number Generators Quasi-Random Number Generation Uniform sampling of Disks,"— Presentation transcript:

1 Sampling Attila Gyulassy Image Synthesis

2 Overview Problem Statement Random Number Generators Quasi-Random Number Generation Uniform sampling of Disks, Triangles, Spheres Stratified Sampling Importance Sampling of General Functions

3 Problem Statement What is sampling? –Want to Take a function f and recreate it using only certain values e.g. data points used in interpolation where to pick those points? –Sometimes don’t know f but can evaluate it would like to choose data points used to reconstruct function in an optimal way

4 Problem Statement (ctd) Monte Carlo Integration –2 ways to improve improve estimation method carefully selecting samples****** Use filtering to recreate original function –covered next time –important to know necessary sampling frequency

5 Example

6 Overview of Sampling Over some domain –Sometimes parametrizable Some sample density Random / Regular

7 Random Numbers Would like to get uniformly distributed random numbers over a range [a,b] Problems –large open spaces –slow convergence –nondeterministic

8 RNG methods Non-linear additive feedback Linear congruence methods Mersenne Twister algorithm many more...

9 Quasi-Monte Carlo Use deterministic roughly uniform aperiodic distribution through domain –I.e. pseudo-random numbers Want low discrepancy –small = evenly distributed –large = clustering causes clumping and sparse regions Want high speed

10 Quasi-Random Generators

11 Halton Sequence N-dimensional points x i x m = (  2 (m),  3 (m),…,  PN-1 (m),  PN (m)) PI = ith prime number (2,3,5,7,…)  r (m) is the radical-inverse function of m to the base r. The value is obtained by writing m in base r and then reflecting the digits around the decimal point. 26 10 = 11010 2 reflecting 0.01011 2 = 11/27 10

12 Halton Sequence N-dimensional points x i x m = (  2 (m),  3 (m),…,  PN-1 (m),  PN (m)) PI = ith prime number (2,3,5,7,…) m = a 0 r 0 + a 0 r 1 + a 0 r 2 + a 0 r 3 +...  r (m) = a 0 r -1 + a 0 r -2 + a 0 r -3 + a 0 r -4 +...

13 Halton Sequence Starting at (1,1,…,1) better than starting at (0,0,…,0) 1 = 1.0 => 0.1 = 1/2 2 = 10.0 => 0.01 = 1/4 3 = 11.0 => 0.11 = 3/4 4 = 100.0 => 0.001 = 1/8 5 = 101.0 => 0.101 = 5/8 6 = 110.0 => 0.011 = 3/8 7 = 111.0 => 0.111 = 7/8 Notice even distribution

14 Hammersley Sequence Similar to Halton x m = (m/N,  2 (m),  3 (m),…,  PN-1 (m)) PI = ith prime number (2,3,5,7,…) m = a 0 r 0 + a 0 r 1 + a 0 r 2 + a 0 r 3 +...  r (m) = a 0 r -1 + a 0 r -2 + a 0 r -3 + a 0 r -4 +... Where N is number of total samples

15 Hammersley Sequence

16

17 Poisson Random Numbers Generate random numbers according to the Poisson distribution function This turns out to be the same as just “throwing darts”**

18

19 Result of RNGs Basically, now we have random numbers in [0,1] –what do we do with these? –How does this relate to sampling?

20 Uniform Sampling of a Disk Want Subdivision into equal area regions

21 Uniform Sampling Over a Sphere demo

22 Uniform Sampling - Disk vs Sphere Sampling of disk and projecting onto hemisphere = sampling on 1/2 of sphere

23 Uniform Sampling of Triangles Compute probability density function for triangles

24 Uniform Sampling of Triangles The u and v are not independent

25 Stratified Sampling Alternative to uniform –break domain into strata –fills in gaps faster

26 Importance Sampling Basic Idea –sample at important locations to decrease variance

27 Importance Sampling ctd. As seen last time, use a probability density function f to pick samples –properties

28 Importance Sampling ctd. Then, our approximation becomes (here g(x) is prob. Dens. Funciton, not f(x))

29 Importance Sampling ctd. How do we pick f? –want to minimize variance –where G is integral of original function g(x) –… after much math we get –which is great!! Except, G is what we are trying to find f(x) = |g(x)| / G G2G2

30 Importance Sampling ctd. If we don’t know G, how can we pick f –If we apply a filter to g, so integral is of form Then if the filter is clamped [0,1] the filter itself becomes a reasonable estimate for f Problems with this method?

31 Importance Sampling ctd. Remember f(x) = |g(x)| / G gives least variance motivation for adaptive sampling build f from first few samples

32 Conclusion Multiple ways to generate “random” numbers –have to pick best method for each application Many sampling techniques, with pros and cons –uniform –stratified –importance –adaptive

33 References http://www.math.iastate.edu/reu/2001/voronoi/halton_sequence.html http://www.cse.cuhk.edu.hk/~ttwong/papers/udpoint/udpoint.pdf http://www.fz-juelich.de/nic-series/volume10/janke1.pdf http://graphics.stanford.edu/courses/cs348b- 00/lectures/lecture13/montecarlo.1.pdf Principles of Digital Image Synthesis, Glassner


Download ppt "Sampling Attila Gyulassy Image Synthesis. Overview Problem Statement Random Number Generators Quasi-Random Number Generation Uniform sampling of Disks,"

Similar presentations


Ads by Google