Check out the code
Image starts noisy and progressively cleans up with each pass