Line Integral Convolution for Flow Visualization
Dr. Matthew O. Ward
Computer Science Department
WPI

Introduction

The problem with most visualization techniques for flow fields is that the density of information being shown is low - the glyphs or structures used to depict the magnitude and direction of flow (as well as other features) precludes the display of dense information. This can lead to overlooked features of the flow field. What is needed is a method which conveys information at every pixel in the field.

Observation

Each data point in a flow field (apart from stationary points) lies on a unique path or streamline. Ideally we can set the color or intensity of pixels in the output image such that pixels along a common path have a common color, while those on adjacent paths would have their own color.

General Approach of Line Integral Convolution

Given a scalar field (the texture) and a vector field.

For each pixel in result image
   find its position in the scalar and vector fields (interpolate as needed)
   create a composite output pixel by
      following the path containing the pixel a given distance in both 
          directions (using vector field)
      average the pixels in the scalar field at corresponding positions on
          path (ideally, integrate values over a fixed arclength)

Result will be scalar image smeared locally in direction of scalar field.

In signal processing this process is known as convolution. The result is that given a long enough path, points on the same streamline will have similar colors, as we'd just drop a point off one end and add a point on the other for adjacent points.

The key is to use a random noise field for the scalar input. The result is that the probability of adjacent points which are not on the same path having the same resulting value is small.

Variations

This technique has been enhanced many times and applied to a wide range of problems since it first was published in 1993. Some examples include mapping LICs onto surfaces, using 3D flow fields, color-encoding additional variables, and animating LICs. Various artistic effects can also be obtained by using images as the scalar field. A nice Java applet, called LicFactory, created by the visualization group at ZIB, provides users the opportunity to interactively select scalar and vector fields and control the generation of LICs.

References

Cabral, B. and Leedom, C, "Imaging Vector Fields using Line Integral Convolution", Proc. SIGGRAPH '93, pp. 263-272.

van Wijk, J., "Spot noise texture synthesis for data visualization ", Proc. SIGGRAPH '91, pp. 309-318.

Forssell, L., "Visualizing flow over curvilinear grid surfaces using line integral convolution", Proc. Visualization '94, pp. 240 - 247.

Stalling, D. and Hege, H., "Fast and resolution independent line integral convolution", Proc. SIGGRAPH '95, pp. 249-256.

Teitzel, C., Grosso, R., and Ertl, T., "Line integral convolution on triangulated surfaces".

[Return to CS563 '99 talks list]

matt@owl.WPI.EDU