Demo with Vue 2 to show loading an image and dithering to black and white. Has threshold, Bayer, Floyd Steinberg and Minimized Average Error dithering algorithms.
A threshold technique where the threshold changes based on the value in an 8x8 array.
https://en.wikipedia.org/wiki/Ordered_dithering
Divides the error in pixel value into 16 parts and distributes the error to 4 neighboring pixels.
https://en.wikipedia.org/wiki/Floyd%E2%80%93Steinberg_dithering
Very similiar to Floyd Steinberg but uses a larger kernel (48 error parts among 12 neighboring pixels) which helps reduce stray pixels in black and white areas.
https://en.wikipedia.org/wiki/Error_diffusion#minimized_average_error
npm install
npm run serve
npm run build
npm run lint