To the Vectors go the Spoils
From Wikipedia: Scalable Vector Graphics (SVG) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation.
In contrast to the pixel-defined raster image formats, SVG and other vector formats define images by the relative positions of drawn objects. This gives SVG distinct advantages over raster images, including:
- Scalability: Images can be resized without pixel artifacts
- Lightweight size: Often, vector graphics have smaller sizes because they store relationships instead of pixels
- Deployability: SVG is an open standard and can be easily embedded in HTML
- Interactivity: SVG allows for animation, interaction and simple customization
Vector Frankenstein's Monster
Our hack produces SVG files in two ways:
- Given a photograph, we use cutting-edge image processing algorithms to select a suitable triangulation. We then convert this triangulation into an SVG file, by rendering each triangle and applying Gouraud shading to the interior. This gives a vectorized approximation of the photograph (and looks pretty cool!)
- Given hand-drawn input, we use a simple sketching program on the iPad to capture and record vectorized drawings. We accomplish this by closely approximating the strokes of the artist using a series of Bezier curves, allowing for variable line thickness.
Flawless Vectory
Other vectorization products either use a less sophisticated algorithm, are expensive, or both. We plan to polish the Vectorwise beta version and submit to the App Store soon!