Lecture 12: Monte Carlo Integration (35)
mylinhvu11

How do we calculate how many random variables we should use? Also this seems very inefficient with all the samples needed to be taken to get this image, what are the algorithms or methods to increase it's efficiency?

andrewhuang56

I believe that every single point (so every light or dark pixel) is a different random variable. You're right, that's a lot of random variables! Indeed, we choose rays from each point in a bunch of completely random directions and take the fraction of these rays that reach the light (without hitting the light blocker first). You're also right that this is inefficient: in order to get an actually-good estimate, we need to sample a whole lot (if we're using this method). This is also why the image looks quite noisy: we're limited by inefficiency and can only sample a certain number of directions.

This problem is tackled later on in the lecture with the following observation: a bunch of these rays are pointed in the completely wrong direction, meaning that they have no business ever pointing towards the light in the first place. Instead of sampling different directions upward from points on the ground, we sample different parts of the light itself, and figure out what rays from the point on the ground to the light are unblocked. Of course, if you're really far away, not a lot of photons will reach your point on the ground from the light, so this is what the calculations on slides 45 and 46 are looking at.

You must be enrolled in the course to comment