GEOMETRIC // PHOTO FILTER / / / exporting PNG, GIF, SVG© 2014-15 Zden | Satori SK | source
ver. 1.20 | March 2015 | changelog

Record Vectors:
Filled Shader:
Shape Precision:
No Overlap:
Allow Inside:
Line Width:
Line Cap:
Alfa End:
Alfa End works with Gradients only.
Start Distance:
Max Distance:
Color Similiarity:
Value represents maximal difference between R/G/B components.
The lower the value, the more exact color you seek.
Start Angle:
Start Angle Randomize:
Arc Length:
Fade by Distance:
Inverted Fade:
Values lower than 128 turns colors to gray tones.
Steps per Frame:
Max Steps per Walk:
Supporting WebWorkers. Higher values may slow down painting but will not brick your browser.
Start with:
Custom Color:
Color by English name or RGB value in hexadecimal.
Drag and drop some image and work with the values in real-time to make your generative version. You have basic geometric primitives to choose from and full real-time parametric control over the painting algorithm. Use Pause/Play to set parameters comfortably, have a look at original picture for comparison, and when you are satisfied with your creation, you can save it to a new browser tab. This filter performs best on high detailed portrait pictures. If you want to start on another picture just drop it onto the drawing area.

Photo filter based on random lookup for neighbouring pixels with similar color property and applying found pixels' positions and color for shading via drawing basic geometric primitives.

Seek for the similar pixel is started from the center radially. You can set starting and ending seek distance as well range of the circle sector. Alpha is calculated according to the distance of found pixels. "Line Walk" is a special mode when line primitive repeats seek process multiple times for the same color starting again from the newly found pixel.

If you like the filter share your interest or creations. I have a couple of ideas to progress this further. Some of them are about the new parameters to control colors or extend Walk feature to other primitives. I am especially interested to implement ability to record all your actions with feature to reapply these steps on another picture which gives a possibility for motion video application.

[ drop image ]