Concept

Since we use supersampling, we need a way to weight the samples, and the normal Box-filter (weight each image equally) and Triangle-filters (weight each sample by the distance to the pixel center squared) expose a lot of artifacts on the final image.
Instead, we use implementations of the Gaussian filter, Mitchell-Netravali filter, and Lanczos filter, which in that order are basically: A filter to blur, a filter to sharpen, and a Sinc function. More information can be found in the plethora of articles about image filtering.
While the filter is not directly visible in the picture, it definitely changes it, and in our opinion, the Lnaczos filter produces the most pleasing results, although you may judge yourself with the images below.

Implementation (filters folder)

Our implementation pretty much uses the standard-algorithms for each filter (i.e. the first thing popping up in google). In practice, we only use the Lanczos-filter, since our Samplers avoid ringing artifacts for the most part.

The different filters in use