1
$\begingroup$

From this answer: Why do fireflies increase with number of samples when using a hdri light source?

It seems like you can get much nicer, faster rendering with low samples, image merging. However, I'm rendering an animation and compositing each of the 250 frames 20 times simply isn't a realistic option.

Is there a way to do this automatically for animations?

$\endgroup$
  • $\begingroup$ I don't think that edit is correct about how statistics work. There's no guarantee you'll avoid the hot pixel in any of the low sample renders, and you also lose the benefit of a single quasi-random sequence. $\endgroup$ – JtheNinja Feb 21 '17 at 22:21
  • 1
    $\begingroup$ Related: blender.stackexchange.com/questions/5017/… $\endgroup$ – Carlo Feb 22 '17 at 1:00
2
$\begingroup$

The reason why the low sample image merging works, is that

the 1000000 watt pixel will have to be 1, which is much easier to average with the corresponding pixel from another version of the image

(quoted from the article you linked to).

In other words, it clamps all of the bright pixels at one when you write it out to an image format like a PNG. This means, though, that if you wrote to an image format with an extended range, like HDR or EXR, this method wouldn't be effective.

When Cycles samples a pixel, it basically averages together the values of possible paths the light could take, not really any different than what you would do by averaging together low sample images with different seed values.

Therefore, all you are really doing is just what Cycles does anyway. When you write out to images like PNGs or TIFFs, you are clamping the bright pixels. You can get the same results, with more control, even, by adjusting the Clamp Direct and Clamp Indirect values.

enter image description here

When the clamping value is anything other than zero, Cycles will make that the maximum brightness of any pixel that it samples. This means that clamping can check for über-bright pixels every sample, not just every 128 samples, or however many you are using. This also allows you to clamp indirect and direct samples separately. This is useful, since indirect sampling is usually more noisy than direct sampling. Don't make your clamping values too low, though, or your image will become dark, which can make it grainy.

Example

Average of 4 images, each with 128 samples, total rendertime about 1 min 20 sec:

enter image description here

Single image with 256 samples, Clamp Indirect at 3 and Clamp Direct at 5, total rendertime 40 sec:

enter image description here

There is a better reduction of fireflies through clamping instead averaging together differently seeded images. Plus, the clamped one had a faster rendertime, since it had half the samples. You'd be better off clamping.

Here is the Blender manual page on clamping.

$\endgroup$
  • $\begingroup$ I cannot use clamp direct as I am using filmic. I am using clamp indirect. $\endgroup$ – 10 Replies Feb 22 '17 at 1:34
  • $\begingroup$ @10Replies Ah. Since you are already doing that, I don't see how averaging together images helps you any more than just upping your samples. $\endgroup$ – Scott Milner Feb 22 '17 at 1:43
  • $\begingroup$ Based off of render images that I have seen with glass and glossy materials, averaging together images seems to be faster and have a nicer result. Also, when clamping indirect, I lose some genuine light reflections that I would prefer to have. $\endgroup$ – 10 Replies Feb 22 '17 at 1:45
  • $\begingroup$ @10Replies In this video (it requires an account, though, sorry) Kent Trammel explains that averaging together images is the exact same thing as just boosting your samples. I don't think splitting your render over multiple images would speed it up, since Cycles is still doing the same amount of work, just spread out. $\endgroup$ – Scott Milner Feb 22 '17 at 1:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.