Synopses & Reviews
A common and time-consuming task in the graphic design and print industries is the conversion of bitmap images, which have a fixed resolution and may not be freely scaled, into vector art, in which the shapes in the scene are described by combinations of geometric primitives such as line segments, elliptical arcs, and Bezier curves. In addition to being scalable, which facilitates crisp high-quality printing, vector art is preferred because its abstract representation makes subsequent editing of the composition much easier than is possible with pixel-based representations. A recent survey of graphic designers and print professionals (conducted as part of this work), indicates that more than 10 million bitmap images are converted to vector form in the U.S. every year and that 65% of those are converted by manually redrawing (tracing) the image. This thesis presents a new automatic vectorization algorithm based on an accurate and differentiable generative model of the anti-aliased rasterization process used to generate most of the bitmap images that are candidates for vectorization. Bayes' theorem is applied to find the maximum a posteriori (MAP) estimate of the vector image given the original bitmap image, an appropriate generative measurement model, and a well-designed prior distribution over vector images. Posing the problem in this manner results in a highly non-convex mixed continuous-discrete optimization problem. Using the parametrization developed in this work, a typical image results in tens of thousands of continuous variables and hundreds of thousands of discrete variables. The problem is solved by decomposing the optimization into a mostly-discrete phase, which determines the number of shapes present in the image, their colors, their topological arrangement, and rough estimates of the location of the boundaries between them, followed by a continuous phase, which determines the precise locations of the shape boundaries. An optional third step fits the shape boundaries with third-order Bezier curves. The discrete phase is solved using a modified local agglomerative approach. The continuous variables are optimized using a non-linear conjugate gradient method. For computational complexity reasons, non-intersection constraints are not imposed directly; rather, countermeasures are put into place to correct detected intersections once they are found. The results of the present work compare very favorably with the current state of the art, both qualitatively and quantitatively. In order to test the algorithm using real-world images, a web-based application was developed to make this tool available to the public. During the five months that the site was online, it drew more than 1.5 million visits from 199 countries. All told, more than 1.3 million images were processed.