Automatic Parameter Control for Metropolis Light Transport | Two Minute Papers #30

Károly Zsolnai-Fehér explains how Metropolis Light Transport fixes path tracing's weakness in difficult scenes by automatically mixing both methods. An algorithm measures invalid rays and two other metrics to detect scene difficulty, then adjusts parameters on its own to render near-optimal results without manual tuning.
Questions this video answers
Károly Zsolnai-Fehér
December 3, 2015
Chapters
Dear fellow scholars, this is two minute papers with. We'll start with a quick recap on Metropolis Light Transport. And then discuss a cool technique that builds on top of it. If we would like to see how digitally modeled objects would look like in real life, we would create a 3D model of the desired scene, Assign material models to the objects within. And use a photorealistic rendering algorithm to finish the job. It simulates rays of light that connect the camera to the light sources in the scene. And compute the flow of energy between them. Initially, after a few rays, will only have a rough idea on how the image should look like. Therefore, our initial results will contain a substantial amount of noise. We can get rid of this by simulating the path of millions and millions of rays. That will eventually clean up our image. This process, where a noisy image gets clearer and clearer, we call convergence. And the problem is that this can take excruciatingly long, even up to hours. To get a perfectly clear image with the simple algorithms out there, we generate these light paths randomly. This technique we call path tracing. However, in the scene that you see here, Most random paths can't connect the camera and the light source. Because this wall is in the way, obstructing many of them. Light paths like these don't contribute anything to our calculations. And are ultimately a waste of time and resources. After generating hundreds of random light paths, we finally found a path that connects the camera with the light source. Without any obstruct. When generating the next path. It would be a crime not to use this knowledge to our advantage. A technique called Metropolis Light Transport will make sure to use this valuable knowledge. And upon finding a bright light path, it will explore other paths that are nearby. To have the best shot at creating valid, unobstructed connections. If we have a difficult scene at hand, Metropolis Light Transport gives us way better results. Than traditional completely random path sampling techniques such as path tracing. This scene is extremely difficult. In a sense that the only source of light is coming from the upper left. And after the light goes through multiple glass spheres, Most of the light paths that we generate will be invalid. As you can see, this is a valiant effort with random path tracing. That yields really dreadful results. Metropolis Light Transport is extremely useful in these cases. And therefore should always be the weapon of choice. However, it is more expensive to compute than traditional random sampling. This means that if we have an easy scene on our hands, this smart metropolis sampling doesn't pay off. And performs worse than a naive technique in the same amount of time. So on easy scenes, traditional random sampling Difficult scenes, Metropolis sampling. Super simple, super intuitive. But the million dollar question is how to mathematically formulate and measure what an easy and what a difficult scene is. This problem is considered extremely difficult and was left open in the Metropolis Light transport paper in 2002. Even if we knew what to look for, we would likely get an answer by creating a converged image of the scene, which, without the knowledge of what algorithm to use, may take up to days to complete. But if we've created the image, it's too late. We would need this information before we start this rendering process. This way, we can choose the right algorithm on the first try. With this technique that came more than 10 years after the Metropolis paper, It is possible to mathematically formalize and quickly decide whether a scene is easy or difficult. The key insight is that in a difficult scene, we often experience that a completely random ray is very likely to be invalid. This insight, with two other simple metrics, gives us all the knowledge we need to decide whether a scene is easy or difficult to. And the algorithm tells us what mixture of the two sampling techniques we exactly need to use to get beautiful images quickly. The more complex light transport algorithms get, the more efficient they become. But at the same time, we are wallowing in parameters that we need to set up correctly to get adequate results quickly. This way we have an algorithm that doesn't take any parameters. You just fire it up and forget about it. Like a good employee, it knows when to work smart and when a damp solution with a lot of firepower is better. And it was tested on a variety of scenes and found close to optimal settings. Implementing this technique is remarkably easy. Someone who is familiar with the basics of light transport can do it in less than half an hour. Thanks for watching and for your generous support, and I'll see you next time.










