In computer graphics, image tracing, raster-to-vector conversion or vectorization is the conversion of raster graphics into vector graphics.
An image does not have any structure: it is just a collection of marks on paper, grains in film, or pixels in a bitmap. While such an image is useful, it has some limits. If the image is magnified enough, its artifacts appear. The halftone dots, film grains and pixels become apparent. Images of sharp edges become fuzzy or jagged. See, for example, pixelation.
Ideally, a vector image does not have the same problem. Edges are represented as a mathematical lines or curves, and they can be magnified thousands of times — until the precision of the numbers becomes an issue.
The task in vectorization is to convert a two-dimensional image into a two-dimensional vector representation of the image. It is not examining the image and attempting to recognize or extract a three-dimensional model which may be depicted; i.e. it is not a vision system. For most applications, vectorization also does not involve optical character recognition; characters are treated as lines, curves, or filled objects without attaching any significance to them. In vectorization the shape of the character is preserved, so artistic embellishments remain.
Synthetic images such as maps, cartoons, logos, clip art, and technical drawings are suitable for vectorization. Those images could have been originally made as vector images because they are based on geometric shapes or drawn with simple curves.
Continuous tone photographs (such as live portraits) are not good candidates for vectorization.
The input to vectorization is an image, but an image may come in many forms such as a photograph, a drawing on paper, or one of several raster file formats. Programs that do raster-to-vector conversion may accept bitmap formats such as TIFF, BMP and PNG.
The output is a vector file format. Common vector formats are SVG, , EPS, EMF and AI.