Page MenuHome

Denoising - artefacts when transparent background is enabled
Confirmed, NormalPublicBUG

Description

System Information
Operating system: Windows-10-10.0.16299 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 419.67

Blender Version
Broken: version: 2.81 (sub 4), branch: master, commit date: 2019-08-28 20:33, hash: rBa7ac8a22f8eb

Short description of error
When "Transparent" is enabled in "Film" tab, denoising (old blender denoiser) is producing dark pixels. It seems to happen only with an environment map. When "World" is set to flat color, problem disappears. Here's an example (zoomed in):

There seem to be holes in "Denoising Depth" pass which seem to coincide with the bad pixels.

When you turn transparency off, those artefacts disappear:

Denoising Depth also looks a lot cleaner, although there are still couple of bad pixels:

Here's a file with the example above. It has env map packed in.

Related Objects

Event Timeline

Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Needs Developer to Reproduce.Jan 10 2020, 11:22 AM

Not sure if looking at the Denoising Depth as an image really helps, this is a Z pass and looking at the ZBuffer in the Image Editor doesnt have these artifacts (might be wrong though).
Trying to make up my mind here, but could it be that it is more the Image Pixel Filter not playing nice?

For example, if I reduce Blackman-Harris to only 1px (instead of 1.5) or just use Box these "artifacts" almost completely go away.
Seems like the Pixel Filter is also applied on all denoising passes [something I did not expect, but maybe makes sense].
Not exactly sure why it is behaving so "badly" on transparent borders (even without denoising in this particular example), but yes overall this is a bit unexpected behavior.

CC @Lukas Stockner (lukasstockner97) : could you shed some light on this?

I can agree that the Denoising Depth pass contains unexpected values here.

I also noticed that when changing the number of samples to 1, I get this denoising depth pass:

Richard Antalik (ISS) changed the task status from Needs Developer to Reproduce to Confirmed.Mar 19 2020, 11:42 PM

Is it possible that denoiser would get some unwanted data from world background?

I used flat (gray) color texture as background and there is very little noise and no perceptible difference in render with or without transparency.

Brecht Van Lommel (brecht) changed the subtype of this task from "Report" to "Bug".Mar 20 2020, 2:35 PM

Hi I was wondering if this is the same problem that I am having:

No Denoising with transparent background:

Denoising with transparent background:

This comment was removed by Hayrullah Konak (DNMDG).

Is it possible that denoiser would get some unwanted data from world background?

Yes, it seems to be that the denoiser is taking data from the world background. I have made another render with a HDRI map and it seems to be taking colours from the HDRI: