Sign In

Communications of the ACM

Research highlights

Technical Perspective: A Fresh Approach to Vector Graphics

To understand the impact of the following paper, I would like to first reflect on the following question: What is a good representation for two-dimensional images?

There are generally two distinct choices to represent and process an image: raster graphics and vector graphics. In raster graphics, color values are stored as discrete samples on a regular pixel grid. The major advantage of this representation is its simplicity and raster images are the most common image representation today. This is mainly due to the fact that photographs are naturally stored as raster images.

Still, as an important alternative, vector graphics provides many unique advantages. In vector graphics, images are stored using curves, typically placed at image edges. Traditionally, these curves have been closed curves, so that each curve encloses a clearly defined region. The curves are given some attributes that describe how the enclosed region should be filled, for example, in the simplest case using a single color. One advantage of vector graphics is that it provides infinitely sharp edges. If we wish to zoom into an area of the image, or print a very high-resolution version of the image, the edges will remain sharp. Therefore, vector graphics is considered to be resolution independent in a certain sense. Additionally, some editing operations and animations are much easier with a vector graphics representation.

The following paper makes a fundamental contribution to the world of vector graphics by introducing a new primitive called diffusion curve. Diffusion curves no longer have to be closed, but can be open curves. To determine the colors in other parts of the image, the authors propose to use a diffusion equation. The figure here offers an example of a diffusion curve image generated by my colleague, Stefan Jeschke. The fact that most of the curves are open has some implications for editing this image. While in many areas of this image we can still imagine a similar representation with closed curves this creates some overhead. Closed curves require the user to manage the curves on different layers to define occlusions and to manage the topology. Using open curves it is easier to draw like using pen and paper.

Personally, I believe the importance of this paper is mainly due to two reasons. First, it is very difficult to make a fundamental contribution to a mature and important area of research, such as vector graphics. An essential aspect of this contribution is it increases the expressiveness of vector graphics. It becomes easier to represent and edit images using curves. Diffusion curves are a versatile representation and they make for a great addition to any vector graphics software.

Second, this is a seminal paper that poses many exciting questions for future research. How can diffusion curves be used in computer animation? Can the idea of diffusion curves be extended to represent textures? How can three-dimensional textures, smoke, or surfaces be defined by diffusion curves? How to accelerate the rendering of diffusion curves? How to extend the definition of diffusion curves to have more control over how colors are diffused? How to further automate the conversion of raster images into a diffusion curve representation?

Many of these questions have been addressed in subsequent papers, demonstrating how a paper like this, with a fresh approach to an old representation, can breath new life into a mature area like vector graphics.

Back to Top


Peter Wonka is an associate professor in computer science at Arizona State University, Tempe, and at KAUST Thuwal, Saudi Arabia.

Back to Top


UF1Figure. Diffusion curves example: Curves with texture samples and rendering.

Back to top

©2013 ACM  0001-0782/13/07

Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and full citation on the first page. Copyright for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or fee. Request permission to publish from or fax (212) 869-0481.

The Digital Library is published by the Association for Computing Machinery. Copyright © 2013 ACM, Inc.


No entries found