In scientific visualization, line integral convolution (LIC) is a method to visualize a vector field (such as fluid motion) at high spatial resolutions.
[1] The LIC technique was first proposed by Brian Cabral and Leith Casey Leedom in 1993.
[2] In LIC, discrete numerical line integration is performed along the field lines (curves) of the vector field on a uniform grid.
The integral operation is a convolution of a filter kernel and an input texture, often white noise.
[1][3] More sophisticated methods, such as streamlines and particle tracing techniques, can be more revealing but are highly dependent on proper seed points.
[1] Texture-based methods, like LIC, avoid these problems since they depict the entire vector field at point-like (pixel) resolution.
[citation needed] In user testing, LIC was found to be particularly good for identifying critical points.
[4] LIC causes output values to be strongly correlated along the field lines, but uncorrelated in orthogonal directions.
[1] As a result, the field lines contrast each other and stand out visually from the background.
Intuitively, the process can be understood with the following example: the flow of a vector field can be visualized by overlaying a fixed, random pattern of dark and light paint.
The result is a randomly striped, smeared texture where points along the same streamline tend to have a similar color.
Other physical examples include: Although the input vector field and the result image are discretized, it pays to look at it from a continuous viewpoint.
First, the field lines have to be computed using a numerical method for solving ordinary differential equations, like a Runge–Kutta method, and then for each pixel the convolution along a field line segment has to be calculated.
Different choices of convolution kernels and random noise produce different textures; for example, pink noise produces a cloudy pattern where areas of higher flow stand out as smearing, suitable for weather visualization.
The process starts by generating in the domain of the vector field a random gray level image at the desired output resolution.
Then, for every pixel in this image, the forward and backward streamline of a fixed arc length is calculated.
The value assigned to the current pixel is computed by a convolution of a suitable convolution kernel with the gray levels of all the noise pixels lying on a segment of this streamline.
Basic LIC images do not show the length of the vectors (or the strength of the field).
The length of the vectors (or the strength of the field) is usually coded in color; alternatively, animation can be used.
Samples at a constant time from the streamline would still be used, but instead of averaging all pixels in a streamline with a static kernel, a ripple-like kernel constructed from a periodic function multiplied by a Hann function acting as a window (in order to prevent artifacts) is used.
[1] The resulting fast LIC method can be generalized to convolution kernels that are arbitrary polynomials.
[8] Oriented Line Integral Convolution (OLIC) solves this issue by using a ramp-like asymmetric kernel and a low-density noise texture.
[8] The kernel asymmetrically modulates the intensity along the streamline, producing a trace that encodes orientation; the low-density of the noise texture prevents smeared traces from overlapping, aiding readability.
Fast Rendering of Oriented Line Integral Convolution (FROLIC) is a variation that approximates OLIC by rendering each trace in discrete steps instead of as a continuous smear.
However, the visualization of the higher-dimensional LIC texture is problematic; one way is to use interactive exploration with 2D slices that are manually positioned and rotated.
does not have to be flat either; the LIC texture can be computed also for arbitrarily shaped 2D surfaces in 3D space.
[13] This technique has been applied to a wide range of problems since it first was published in 1993, both scientific and creative, including: Representing vector fields: Artistic effects for image generation and stylization: Terrain generalization: