1. A computer program product embodied on a non-transitory computer readable medium, comprising: computer code for identifying each noisy pixel of an image having noise; computer code for identifying, for each noisy pixel, at least one sample included in each of a plurality of neighboring pixels to the noisy pixel; and computer code for sweeping over the samples at least partially in a depth-based order to determine a final filter weight that identifies a plurality of the samples as applicable neighboring samples, wherein a filter weight of each of the samples is adjusted based on a filter weight for each subsequent sample to determine the final filter weight; computer code for computing, based on the applicable neighboring samples, a value for the noisy pixel that reduces the noise.