Line Integral Convolution
   HOME

TheInfoList



OR:

In
scientific visualization Scientific visualization ( also spelled scientific visualisation) is an interdisciplinary branch of science concerned with the visualization of scientific phenomena.Michael Friendly (2008)"Milestones in the history of thematic cartography, stat ...
, line integral convolution (LIC) is a method to visualize a vector field, such as
fluid motion In physics and engineering, fluid dynamics is a subdiscipline of fluid mechanics that describes the flow of fluids— liquids and gases. It has several subdisciplines, including ''aerodynamics'' (the study of air and other gases in motion) an ...
.


Features

* global method * integration-based method * texture-based method


Convolution

In
signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing ''signals'', such as audio signal processing, sound, image processing, images, and scientific measurements. Signal processing techniq ...
this process is known as
discrete convolution In mathematics (in particular, functional analysis), convolution is a mathematical operation on two functions ( and ) that produces a third function (f*g) that expresses how the shape of one is modified by the other. The term ''convolution'' ...
.


Integration-based method

It is the
integration Integration may refer to: Biology *Multisensory integration *Path integration * Pre-integration complex, viral genetic material used to insert a viral genome into a host genome *DNA integration, by means of site-specific recombinase technology, ...
-based method (technique). More precisely it is based on the discrete
line integral In mathematics, a line integral is an integral where the function to be integrated is evaluated along a curve. The terms ''path integral'', ''curve integral'', and ''curvilinear integral'' are also used; ''contour integral'' is used as well, alt ...
on uniform grids. Discrete numerical integration is performed along a line ( more precisely curve). Line here means
field line A field line is a graphical visual aid for visualizing vector fields. It consists of an imaginary directed line which is tangent to the field vector at each point along its length. A diagram showing a representative set of neighboring field ...
of vector field.


Global method

Compared to other
integration Integration may refer to: Biology *Multisensory integration *Path integration * Pre-integration complex, viral genetic material used to insert a viral genome into a host genome *DNA integration, by means of site-specific recombinase technology, ...
-based techniques that compute
field line A field line is a graphical visual aid for visualizing vector fields. It consists of an imaginary directed line which is tangent to the field vector at each point along its length. A diagram showing a representative set of neighboring field ...
s of the input vector field, LIC has the advantage that all structural features of the vector field are displayed, without the need to adapt the start and end points of field lines to the specific vector field. In other words, itr shows the topology of the vector field. In user testing, LIC was found to be particularly good for identifying critical points.


other

With the availability of high-performance GPU-based implementations, the former disadvantage of limited interactivity is no longer present.


Texture-based methood

LIC takes texture as an input and gives texture ( output). So it is texture synthesis.


History

LIC technique was proposed by Brian Cabral and Leith Casey Leedom


Algorithm


Informal description

Principle : the pixel values ​​along the field lines are strongly correlated, but orthogonally to them almost uncorrelated. As a result, the field lines stand out visually from the background and become visible. Intuition: * throwing paint in a river * visualisation of
magnetic field A magnetic field is a vector field that describes the magnetic influence on moving electric charges, electric currents, and magnetic materials. A moving charge in a magnetic field experiences a force perpendicular to its own velocity and to ...
lines using randomly distributed iron filings * "emulates what happens when a rectangular area of massless fine sand is blown by strong wind" Intuitively, the flow of a vector field in some domain is visualized by adding a static random pattern of dark and light paint sources. As the flow passes by the sources, each parcel of fluid picks up some of the source color, averaging it with the color it has already acquired in a manner similar to throwing paint in a river. The result is a random striped texture where points along the same streamline tend to have similar color.


Formal mathematical description

Although the input vector field and the result image are discretized, it pays to look at it from a continuous viewpoint. Let \mathbf be the vector field given in some domain \Omega. Although the input vector field is typically discretized, we regard the field \mathbf as defined in every point of \Omega, i.e. we assume an interpolation. Streamlines, or more generally field lines, are tangent to the vector field in each point. They end either at the boundary of \Omega or at critical points where \mathbf=\mathbf. For the sake of simplicity, in the following critical points and boundaries are ignored. A field line \boldsymbol \sigma, parametrized by arc length s, is defined as \frac = \frac. Let \boldsymbol_\mathbf(s) be the field line that passes through the point \mathbf for s=0. Then the image gray value at \mathbf is set to :D(\mathbf) = \int_^ k(s)N(\boldsymbol_(s)) ds where k(s) is the convolution kernel, N(\mathbf) is the noise image, and L is the length of field line segment that is followed. D(\mathbf) has to be computed for each pixel in the LIC image. If carried out naively, this is quite expensive. 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. The output image will normally be colored in some way. Typically some scalar field in \Omega is used, like the vector length, to determine the hue, while the gray-scale LIC image determines the brightness of the color. Different choices of convolution kernels and random noise produce different textures: for example
pink noise Pink noise or noise is a signal or process with a frequency spectrum such that the power spectral density (power per frequency interval) is inversely proportional to the frequency of the signal. In pink noise, each octave interval (halving ...
produces a cloudy pattern where areas of higher flow stand out as smearing, suitable for weather visualization. Further refinements in the convolution can improve the quality of the image.


description for programmers

Algorithmically, the technique 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 Streamline may refer to: Business * Streamline Air, American regional airline * Adobe Streamline, a discontinued line tracing program made by Adobe Systems * Streamline Cars, the company responsible for making the Burney car Engineering ...
of a fixed
arc length ARC may refer to: Business * Aircraft Radio Corporation, a major avionics manufacturer from the 1920s to the '50s * Airlines Reporting Corporation, an airline-owned company that provides ticket distribution, reporting, and settlement services * ...
is calculated. The value assigned to the current pixel is computed by a
convolution In mathematics (in particular, functional analysis), convolution is a operation (mathematics), mathematical operation on two function (mathematics), functions ( and ) that produces a third function (f*g) that expresses how the shape of one is ...
of a suitable
convolution kernel In mathematics (in particular, functional analysis), convolution is a mathematical operation on two functions ( and ) that produces a third function (f*g) that expresses how the shape of one is modified by the other. The term ''convolution'' ...
with the gray levels of all the pixels lying on a segment of this streamline. This creates a gray level LIC image.


Problem

Visualise field lines and singularities of a 2D stationary vector field (stream lines of a 2D steady flow)


Input

* vector field: 2D stationary vector field * noise: stationary white noise (scalar field = texture)


Output

result (output image) = final LIC image of input vector field


Steps


constraints

* false singularities


Versions


Basic

Basic LIC images are grayscale images, without color and animation. While such LIC image conveys the orientation of the field vectors, it does not indicate their direction; for stationary fields, this can be remedied by animation. Basic LIC images do not show the length of the vectors (or the strength of the field).


Color

The length of the vectors (or the strength of the field) is usually coded in color; alternatively, animation can be used.


Animated version

LIC images can be animated by using a kernel that changes over time. 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 The Hann function is named after the Austrian meteorologist Julius von Hann. It is a window function used to perform Hann smoothing. The function, with length L and amplitude 1/L, is given by: : w_0(x) \triangleq \left\.   For digital sign ...
acting as a window (in order to prevent artifacts) is used. The periodic function is then shifted along the period to create an animation.


FLIC

Fast Lic ( FLIC) The computation can be significantly accelerated by re-using parts of already computed field lines, specializing to a box function as convolution kernel k(s) and avoiding redundant computations during convolution. The resulting fast LIC method can be generalized to convolution kernels that are arbitrary polynomials.


OLIC

Oriented Line Integral Convolution (OLIC) * Fast Rendering of Oriented Line Integral Convolution ( FROLIC)


UFLIC

For time-dependent vector fields ( unsteady flow) a variant (UFLIC = Unsteady Flow LIC), has been designed that maintains the coherence of the flow animation.


Parallel versions

Since the computation of a LIC image is expensive but inherently parallel, it has also been parallelized and, with availability of GPU-based implementations, it has become interactive on PCs. Also for UFLIC an interactive GPU-based implementation has been presented.


Multidimensional

Note that domain \Omega does not have to be a 2D domain: the method is applicable to higher dimensional domains using multidimensional noise fields. 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. The domain \Omega does not have to be flat either; the LIC texture can be computed also for arbitrarily shaped 2D surfaces in 3D space.


Applications

This technique has been applied to a wide range of problems since it first was published in 1993. Applications: * representing vector fields by approximation a
field line A field line is a graphical visual aid for visualizing vector fields. It consists of an imaginary directed line which is tangent to the field vector at each point along its length. A diagram showing a representative set of neighboring field ...
s of the input vector field ** flow-visualization method for steady ( time independent) flows. Here field lines are called stremlines ** Visual exploration of 2D autonomous dynamical systems ** windy maps ** water directions * artistic effects to generate fancy images ** pencil drawing *** automatic pencil drawing generation technique using LIC pencil filter ** Automatic generation of hair texture ** creating marbling texture * Terrain generalization: creating generalized
shaded relief Terrain cartography or relief mapping is the depiction of the shape of the surface of the Earth on a map, using one or more of several techniques that have been developed. Terrain or relief is an essential aspect of physical geography, and as su ...
Bernhard Jenny (2021) Terrain generalization with line integral convolution, Cartography and Geographic Information Science, 48:1, 78-92, DOI: 10.1080/15230406.2020.1833762
/ref>


Implementations


GPU Based Image Processing Tools by Raymond McGuire

ParaView : Line Integral Convolution

A 2D flow visualization tool based on LIC and RK4. Developed using C++ and VTK. by Andres Bejarano



See also

* Weighted arithmetic mean or Weighted average


References

{{Wikibooks, Fractals/Mathematics/LIC Numerical function drawing Vector calculus Fluid dynamics Complex analysis Computer graphics