All Projects â†’ ticky â†’ canvas-dither

ticky / canvas-dither

Licence: other
🖼 Simple demo of image processing in Javascript using HTML5 and Canvas

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to canvas-dither

MultiTileBlueNoise
Storage for blue noise textures, including mixed-tiling textures, in results/
Stars: ✭ 16 (-60%)
Mutual labels:  dithering
nQuantCpp
nQuantCpp includes top 6 color quantization algorithms for visual c++ producing high quality optimized images.
Stars: ✭ 83 (+107.5%)
Mutual labels:  dithering
Image-to-Braille
Give it an image, and it will become unicode braille
Stars: ✭ 140 (+250%)
Mutual labels:  dithering
colorquant
Go library for color quantization and dithering
Stars: ✭ 75 (+87.5%)
Mutual labels:  dithering
hicolor
🎨 Convert images to 15/16-bit RGB color with dithering
Stars: ✭ 172 (+330%)
Mutual labels:  dithering
KGySoft.Drawing
KGy SOFT Drawing is a library for advanced image, icon and graphics handling.
Stars: ✭ 27 (-32.5%)
Mutual labels:  dithering
DitherPunk.jl
Dithering algorithms in Julia.
Stars: ✭ 28 (-30%)
Mutual labels:  dithering
WernessDithering
Copy of dithering code by Brent Werness (Koloth) invented for Obra Dinn
Stars: ✭ 24 (-40%)
Mutual labels:  dithering
undither
Smart filter to remove Floyd-Steinberg dithering from paletted images
Stars: ✭ 38 (-5%)
Mutual labels:  dithering

Canvas Dither

Description

Simple demo of image processing in Javascript using HTML5 and Canvas.

Recent Changes

  • Includes a timer for performance testing
  • Now able to dither/process each channel (R, G and B) separately, producing interesting effects
  • Now allows for choosing your own image to process
  • Moved processing to a Web Worker
  • Now able to output images in three different formats! (Assuming your browser supports it)
  • Renders to an <img> element rather than just to a canvas
  • Can filter pixels using a simple threshold as well as Atkinson dithering (which, obviously, is what you're here for)

Future Plans

  • Create fallback for when web workers are not available
  • Enable drag-and-drop custom image selection
  • Improve compatibility
  • Probably going to re-style to look more like classic Mac OS (currently borrows a lot of design language and ideas from OS X, like fractal-thing.)

Version History

v1.0

  • Full implementation of algorithm in main JS thread
  • Renders to an <img> element

v2.0

  • Moved to Web Workers

v3.0

  • Allowed custom image uploads
  • Deal more effectively with large/broken/invalid images

v3.1

  • Enabled processing each channel separately, all required channels are processed in one pass
  • Tidied up some stuff, made JS create its canvas itself and render off screen
  • Added timers for performance testing

Notes

Takes a lot of learned stuff from my fractal-thing project (and improves on it significantly).

Example image is by Keven Law, and sourced from flickr. Image is licensed under Creative Commons Attribution-ShareAlike 2.0 Generic.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].