Vectorising Bitmaps into Semi-Transparent Gradient Layers

Christian Richardt, Jorge Lopez-Moreno, Adrien Bousseau, Maneesh Agrawala, George Drettakis


We present an interactive approach for decompositing bitmap drawings and studio photographs into opaque and semi-transparent vector layers. Semi-transparent layers are especially challenging to extract, since they require the inversion of the non-linear compositing equation. We make this problem tractable by exploiting the parametric nature of vector gradients, jointly separating and vectorising semi-transparent regions. Specifically, we constrain the foreground colours to vary according to linear or radial parametric gradients, restricting the number of unknowns and allowing our system to efficiently solve for an editable semi-transparent foreground. We propose a progressive workflow, where the user successively selects a semi-transparent or opaque region in the bitmap, which our algorithm separates as a foreground vector gradient and a background bitmap layer. The user can choose to decompose the background further or vectorise it as an opaque layer. The resulting layered vector representation allows a variety of edits, such as modifying the shape of highlights, adding texture to an object or changing its diffuse colour.

Our interactive vectorisation technique lets users vectorise an input bitmap (a) into a stack of opaque and semi-transparent vector layers composed of linear or radial colour gradients (b). Users can manipulate the resulting layers using standard tools to quickly produce new looks (c). We outline semi-transparent layers for visualisation; these edges are not part of our result. We rasterised figures to avoid problems with transparency in some PDF viewers. See supplemental material for vector graphics.

Research Paper

PDF (6.6M)


MP4 (69.4M)

Vectorising Bitmaps into Semi-Transparent Gradient Layers
Computer Graphics Forum 33(4) [EGSR 2014]. pp. 11-19.