Skip to main content

Denoising

Denoising can be used as a final step to reduce undesired artifacts in the rendering.

Configuration​

There are two independent denoising options available.

Denoise filtering​

Simple denoise filtering using circular Gaussian kernel. To enable the default settings, use:

strahlConfiguration.js
runPathTracer(target, model, {
enableDenoise: true,
});

If you want more control, pass a configuration object instead:

strahlConfiguration.js
runPathTracer(target, model, {
enableDenoise: {
type: "gaussian",
sigma: 4.0,
kSigma: 1.0,
threshold: 0.1,
},
});
  • sigma is the standard deviation of the Gaussian kernel.
  • kSigma is the kernel size multiplier.
  • threshold is the edge sharpening threshold for the denoising.
note

The example does few samples to emphasize the denoising effect.

OIDN​

Open Image Denoise is a denoise library which uses machine learning techniques to reduce noise. To configure it, you must provide a URL to a weight file. One option is: oidn-weights on GitHub.com.

warning

OIDN may introduce undesired artifacts

strahlConfiguration.js
runPathTracer(target, model, {
enableDenoise: {
type: "oidn",
url: "./oidn-weights/rt_hdr_alb_nrm.tza",
},
});