The node set-up is a quick and easy to use method of reducing fireflies.
Fire flys are not always white spots, they can be any colour, and this makes it difficult to interpret what is and what is not a fire fly. The node set up is fairly smart, it will look at each pixel, it surrounding pixels and edges and use them to decide if it is a fire fly; however as a result it is fairly complex:
An simple overview on how this works in steps:
1) The initial image is taken for each pixel the value of surrounding pixels is summed.
2) If the value of the surrounding pixels is smaller than the current pixel, that pixel is marked as white, everything else is black.
3) The node will then use the z-depth of the image (is not always required, but is used for best results) to get the edges of the objects, the edges are subtracted from the black and white image from step 2.
4) The difference between the average colour (using the surrounding pixels to calculate it) and the original colour. The luminance of this is gathered, which is added to step 3's black and white image.
5) Edges in the image are detected by using a blur then a kirsch, the result (after a little math) is subtracted from the black and white image from 4.
6) Using a mix, the average colour image from step 4 and the initial image is done using the black and white image.
7) The outputs are given.