CS 6650, Fall 2002

Program 1: sampling

David Cline

 

Analytic integration

 

MC integration. 16 random samples per pixel

MC integration. 100 random samples per pixel

MC integration. 16 stratified samples per pixel

MC integration. 100 stratified samples per pixel

B-spline filter, 16 samples per pixel

B-spline filter, 100 samples per pixel

Density estimation, 16 random samples per pixel on average

Density Estimation, 100 random samples per pixel on average

Density estimation, 16 stratified samples per pixel on average

Density estimation, 100 stratified samples per pixel on average

Metropolis transport, 16 samples per pixel on average, 16 iterations

Metropolis transport, 100 samples per pixel on average, 16 iterations

 

 

A Note on Metropolis Transport

 

Unlike the other image generation techniques in this assignment, Metropolis transport is an iterative process.  Over a number of iterations as set of initial samples migrates on the image plane to approximate the density of the desired image.  I ran metropolis simulations in both 1D and 2D.  In every case I found that simulations with larger migration windows converged faster than simulations with smaller windows.  For example, on the test image, I ran a simulation with a migration window of 32 pixels (plus or minus 16), which failed to converge after 400 iterations (though it did latch on to local features in the image).  I re-ran the same simulation using the entire image as the migration window, and it converged to the image in the table above in just 16 iterations.  The following animations show the behavior of a Metropolis transport simulation with differing migration windows over 100 iterations:

 

Simulation1 (migration window is entire image)

Simulation2 (migration window is 128 pixels)

Simulation3 (migration window is 32 pixels)

 

 

 

Metropolis Revisited

 

The way I did Metropolis transport above was to start with an evenly distributed population of samples and then mutate all of the samples a certain number of times (I used 16 for the images above).  An image was obtained by using the final positions of all the samples.  Metropolis Light Transport does not use this strategy.  Instead, a single sample is mutated a large number of times (say imagewidth*imageheight*100), and a sample is recorded at the current sample location for each attempted mutation.  The table below shows images generated in this way.  Note the artifacts that occur when the migration window is too small.

 

1 mutation per pixel (migration window is 4 pixels)

1 mutation per pixel (migration window is 32 pixels)

1 mutation per pixel (migration window is entire image)

10 mutations per pixel (migration window is 4 pixels)

10 mutations per pixel (migration window is 32 pixels)

10 mutations per pixel (migration window is entire image)

100 mutations per pixel (migration window is 4 pixels)

100 mutations per pixel (migration window is 32 pixels)

100 mutations per pixel (migration window is entire image)

1000 mutations per pixel (migration window is 4 pixels)

1000 mutations per pixel (migration window is 32 pixels)

1000 mutations per pixel (migration window is entire image)