add floyd-steinberg error dithering to reduce banding