This page gives information on the V-Ray Denoiser Render Element.
The V-Ray Denoiser detects areas where noise is present in the rendered beauty image and render elements and smoothing them out.
The V-Ray Denoiser performs an additional operation to the rendering and changing the denoising settings and denoising the image again does not require re-rendering the scene.
When rendering, the V-Ray Denoiser automatically adds a few render channels in the V-Ray Frame Buffer which are required to guide the denoising algorithm. The two denoising engines require different render elements. Some of them are standard render channels like the diffuse filter color, the reflection filter color etc. A few special channels are also generated for the Default V-Ray denoiser:
- The effectsResult channel holds the result of the denoising operations and the lens effects that are executed over that image. The RGB Channel button in the VFB will toggle between the effectsResult and original RGB color channels.
- The noiseLevel channel is the amount of noise for a pixel as estimated by the V-Ray image sampler.
- The defocusAmount channel is non-black when depth of field and motion blur are enabled and contains the estimated pixel blurring in screen space.
- The Denoiserchannel contains the result of the noise removal. This channel appears in the VFB only if mode is set to Show denoiser result channel.
Currently the scene can contain only one Denoiser Render Element. Future versions of V-Ray will support multiple Denoiser Render Elements with different settings.
VRayDenoiser can be applied to the Viewport IPR by enabling the Use Denoiser option from V-Ray Renderer > Export > IPR.
||out Network|| > V-Ray Render Elements node > V-Ray > Render Channel > Denoiser
VRayDenoiser offers a choice between the Default V-Ray denoiser and the NVIDIA AI denoiser. Each offers a different denoising algorithm that comes with different benefits. See the denoising engine examples below.
Default V-Ray denoiser - V-Ray's denoising algorithm. It can utilize the CPU or the GPU (AMD or NVIDIA GPUs) to perform the denoising. It is consistent when denoising render elements, as it applies the same denoising operator to all render channels, which means that it is recommended for denoising the render elements to be used for compositing back the beauty image. In addition, it comes with a standalone version, which is recommended for denoising animation by using frame blending.
NVIDIA AI denoiser - V-Ray's integration of NVIDIA's AI-based denoising algorithm. The NVIDIA AI denoiser requires an NVIDIA GPU to work, regardless of whether the actual rendering was performed on the CPU or GPU. This means that rendering on the CPU will still require an NVIDIA GPU for denoising with the NVIDIA AI denoiser and has some advantages and drawbacks compared to the Default V-Ray Denoiser. For example, the NVIDIA AI denoiser performs the denoising faster, but is not consistent when denoising render elements. This means that there will be differences between the original RGB image and the one reconstructed from render elements that are denoised with the NVIDIA AI denoiser. It also doesn't support cross-frame denoising and will likely produce flickering when used in animation.
The Nvidia AI denoiser only works on Nvidia GPUs starting with the Kepler GPU architecture (GTX 6xx series and newer).
Use GPU – Enables the usage of GPU if an OpenCL videocard is found.
Name – The text added to the end of the rendered file, when saved as a separate file (e.g. myrender.Denoiser.vrimg).
Engine – Allows choosing between the Default V-Ray denoiser and the NVIDIA AI denoiser. See the denoising engine examples below.
Preset – When using the Default V-Ray denoiser, the presets can be used to automatically set the Strength and Radius values.
Default – Applies a mid-level denoising.
Mild – Applies a more subtle level of denoising than the Default preset.
Strong – Applies a stronger level of denoising than the Default preset.
Custom – Allows the Strength and Radius parameters to be set to custom values.
Mode – Specifies how the results of the Denoiser will be saved.
None – All render elements required for denoising will be generated so that denoising can be done with the Standalone Denoise Tool. The information calculated within them will not be applied to other render elements, and no DenoiserRender Element will be generated.
Replace RGB – The RGB Color Render Element will be replaced with the denoised version, and the DenoiserRender Element will not be present as a separate channel.
Show the channel with the denoised result in VFB.
Separate Channel – The DenoiserRender Element will be generated to contain a denoised version of the RGB Color Render Element using the specified settings. The original render elements, including the RGB Color Render Element, will not be changed.
Type – Specifies which channels to denoise.
Generate Render Elements – Adds specific render elements that help the denoiser be more effective.
Progressive Rendering Update Frequency – Sets the frequency at which the denoiser is updated during progressive rendering. 0 is never, 100 is as often as possible.
Suggested Render Settings
While the denoiser can be quite effective at removing noise, it may produce artifacts and loss of detail if the image is very noisy. For most scenes, use Bucket or Progressive image sampler with the Noise threshold set to 0.05 or lower. Additionally, the denoiser works best when the noise levels across the image are similar (the noiseLevel render channel is uniform grey), so using very low sampling is not recommended.
Example: Default V-Ray denoiser
The example below illustrates how the Default V-Ray denoiser works after more samples are made with the Progressive image sampler. When the samples are too few, the're not enough information for the denoising to produce a smooth result.
The original vs. the denoised image after 64 passes.
Example: NVIDIA AI denoiser
The example below illustrates how the NVIDIA AI denoiser works after more samples are made with the Progressive image sampler. When the samples are too few, there's not enough information for the denoising to produce a smooth result.
The original vs. the denoised image after 64 passes.
When denoising animations, it is recommended to use the Standalone Denoiser Tool. Unlike the denoiser integrated in the UI, the standalone tool can do frame blending for animations, which reduces flickering. The integrated denoiser only works on the rendered frame and does not take the next and previous frame(s) into account, like the standalone tool does.
To denoise an image sequence with vdenoise run the following command:
where the question mark (?) replaces the digits in the sequence's file names.
For example, if the images in the sequence are named anim_0001.exr, anim_0002.exr, etc. and are located in the folder c:\renderoutput, the full command will be:
When that command is run, the sequence is read and for each frame, the specified number of adjacent frames are also considered. A new output image is then written for each frame.
- Мode set to only generate render elements.
- denoising engine set to Default V-Ray denoiser.
- Render output set to vrimg or multichannel exr.
The NVIDIA AI denoiser does not perform frame blending and will likely produce flickering when denoising animations.
When bucket rendering, image denoising takes place after the frame has been rendered and will not show up until all rendering has finished.
When progressive rendering, image denoising takes place during the rendering. How frequently the denoising is updated is controlled with the Post effects rate parameter found in Render Setup window > Settings tab > System rollout.
Textures or materials such as VRayStochasticFlakesMtl that could be considered to have a purposely noisy look will not be considered "noisy" by VRayDenoiser, and will not be affected by the noise removal process.