One of the key technologies is the noise elimination algorithms, the NVIDIA OptiX Denoiser is one of those algorithms that seeks to solve this problem, but first we need some basic information.
What is the OptiX Denoiser used for?
To understand the noise problem let’s assume an example, imagine you have a huge pediment in front of you, you have to paint. To do this, they tell you to do it with tennis balls full of paint that you have to throw at the wall using a racket. How long will it take to paint the whole wall? Most likely a long time. Well the problem with Ray Tracing is the same and although at first glance the algorithm says that a ray is thrown per pixel and suffers multiple bounces across the scene, the reality ends up looking like the image above.
This means that the system has to summon a large number of rays per pixel to get a much sharper image with less noise, but each new ray summoned requires more and more power. Which makes the cost of getting a crisp version of the image a titanic effort on the part of the GPU or whatever hardware that makes up the scene at that time.
If we are talking about audiovisual content studios responsible for creating extremely complex scenes where Ray Tracing is used, this can be time consuming and if we are talking about entirely computer-generated films, it even takes weeks to render the entire film in. a data center and how to say that time is money.
What is a Denoiser or a denoising algorithm?
Disney engineers, remember that it is the owner of Pixar, to save money and offline rendering time in his films, they have developed a noise reduction algorithm based on the use of a network neurons and therefore based on Deep Learning. The algorithm is able to generate from very few samples, 32 on average, an image with a quality of 1024 samples. It must be taken into account that the number of samples is equal to the number of rays projected per pixel, so this is a huge saving, because with this they manage to make the scenes up to 32 times faster.
The deep learning algorithms are often used to catalog things or to predict values and in the case of the noise reduction algorithm there is an algorithm of the second type. How it works? Using a series of data, the neural network creates a mathematical function that the Allows you to predict the value of worthless pixels in a scene with a large amount of noise.
The whole process requires a learning and therefore the neural network must know where are you wrong. That is why it has to be trained with a large amount of data, which allows you to see a pattern
Little by little, the neural network ends up generating an ever closer version of the images. The final idea is that the neural network of an image rendered by ray tracing with a large amount of noise can generate a clean image without noise of any kind. This has a lower computational cost than rendering the scene with hundreds or even thousands of samples per beam.
What is NVIDIA Optix technology?
Optix is a ray tracing engine, who is fully programmable and was created by NVIDIA for use with your GPUs. Unlike the RTX designed for video games, Optix is intended for offline rendering and uses the GPU’s shader units for things like:
- Lightning generation
- Shading of materials
- Intersection of objects
- Visiting places
The latter two can be done through the use of intersection units called RT Cores or through raw code in the form of Compute Shaders. In fact, the whole renderer in this case is programmed via CUDA
Considering NVIDIA’s foray into the world of artificial intelligence, it’s no surprise that they implemented technologies like the NVIDIA Optix AI Denoiser, which is based on the same principle that we have discussed previously with the example of the PIXAR noise elimination algorithm. .
NVIDIA Optix denoiser
Now that we have all the necessary elements, we can already deduce what Optix AI Denoiser is, which started to be implemented from its Volta architecture, where NVIDIA started to implement what we call tensor units. This is essential for accelerating deep learning algorithms such as noise elimination algorithms, known as Denoiser.
In the current version, this was not designed with the idea of making a single frame, but a sequence of thembecause it uses the information from the previous images to give more precision to the function of removing the generated noise. It should be taken into account that the more information it has as a basis, the easier it is for the AI to predict the values it needs to guess and the more accurate it is in doing so.
However and finally, despite the high rendering speed compared to a few years ago, the reality is that a denoising algorithm is not fast enough to bring scenes rendered with pure ray tracing in real time, for this we still have a long wait of several years.
Table of Contents