feather_fireflies3

Firefly Removal

Every modern renderer has to deal with fireflies (very bright, nervously jumping around pixels). Sometimes it’s quite difficult to get rid of those and often enough very high sampling just isn’t an option within tight deadlines.

Most renderers provide a clamping option for that reason. This may work well, but the problem is, that it’s baked in. You are not able to tweak your blur/noise trade-off afterwards. And when your rendering lacks dynamic range because of an aggressive clamp or even worse, stil has fireflies, then you are lost.

Well, not anymore. May I introduce you to my firefly killer gizmo?

Just pipe it in your nuke script and you are ready to go. Now you are even able to only filter a certain framebuffer, too (not possible with built-in renderer clamps solutions). Use gain and gamma to make the fireflies more visible, so that the gizmo is able to find and remove them. You can turn on diagnose  to see exactly what you are doing. Be careful with the pixel size knob. If your fireflies are only 1×1 pixel, set it to 1 accordingly. If you have larger fireflies, you can increase it of course. It’s even perfectly possible to combine multiple firefly killers. That way I was able to shrink a 3×3 pixel firefly to a 1×1 and eliminate it afterwards with a second firefly killer.

A somewhat extreme case: 1 min iray sampling. Note how beautifully all the details and noise is preserved and only the fireflies are removed. (click to enlarge)

teapot_close teapot_close2

 

Of course everything works great with teapots, so here is a real world scenario as well :)

ffk_01 ffk_02

feather_fireflies1 feather_fireflies2

Download Firefly Killer Gizmo

 

Happy compositing!

7 thoughts on “Firefly Removal

  1. stefan

    Hey everybody! Thank you all for the nice comments! :) I’m looking into ways to improve this even further. Maybe I find some time to update firefly killer and put it on nukepedia, so that more people get to know it.

Leave a Reply to Aaron Cancel reply