ParaView/Line Integral Convolution

From KitwarePublic
< ParaView
Revision as of 18:21, 27 November 2013 by Burlen (talk | contribs)
Jump to navigationJump to search

The line integral convolution(LIC) vector field visualization technique convolves noise with a vector field producing streaks along vector field tangents. Originally the technique was developed for use with 2D image based data but has since been extended to use on arbitrary surfaces and volumes. ParaView supports LIC on arbitrary surfaces via the Surface LIC plugin.

Failed to parse (unknown function "\begin{equation}"): {\displaystyle \begin{equation} c_{ij} = L_{ij} * I + S_{ij} * (1 - I) \end{equation} }

Surface LIC Plugin Parameters

Integrator

Select Input Vectors
This is used to select the vector field.
Number Of Steps
Number of integration steps.
Step Size
Step size given in the original vector field's units.
Normalize Vectors
When on the vector field will be normalized during integration. Normalization doesn't change the tangent field and makes it so the same step size and number of steps parameters work well on a variety of data. Disabling normalization can help reveal relationships between individual flow features.
Enhanced LIC
Enabling enhanced LIC activates an algorithm sub-pipeline that applies some image processing techniques to improve the visibility of streaking patterns in the result. The enhanced LIC algorithm requires two LIC passes. In the first pass a traditional LIC is computed, in the second pass image processing is applied to the output of pass 1 which is then used in place of noise in the second LIC pass over 1/2 of the number of integration steps.

Shaders

Color Mode
This selects the shader that is used to combine mapped scalar colors with the gray scale LIC.
Blend 
LIC and mapped scalar colors are combined in inverse proportion to produce the final color, $$c_{ij} = L_{ij} * I + S_{ij} * (1 - I)$$
Multiply 
LIC and mapped scalar colors are multiplied together to produce the final color, $$c_{ij} = ( L_{ij} + f ) * S_{ij}$$
LIC Intensity
This sets the intensity for LIC pattern when using Blend shader.
Map Mode Bias
An additive term that could be used to brighten or darken the final colors when using the Multiply shader.

Contrast Enhancement

The contrast enhancement(CE) feature applies an image processing technique called histogram stretching at various points in the algorithm to increase contrast and dynamic range in the LIC streaks and final colored image. We've used CE in three places internally. A gray scale implementation occurs after each LIC pass and a color based implementation after scalar colors and LIC have been combined. The latter is referred to as color contrast enhancement(CCE) and is applied in HSL space on the L channel but in other respects is similar to the gray scale implementation.

We've implemented this as follows: \begin{equation} c_{ij} = \frac{c_{ij} - m}{M - m} \end{equation} where, the indices $i,j$ identify a specific fragment, $c$ is the fragment's gray scale intensity (or HSL lightness for CCE), $m$ is the gray scale color value to map to 0, $M$ is the gray scale color value to map to 1. When the contrast enhancement stage is applied on the input of the high-pass filter stage, $m$ and $M$ are always set to the minimum and maximum gray scale color of all fragments. In the final contrast enhancement stage $m$ and $M$ take on minimum and maximum gray scale colors by default but may be individually adjusted by the following set of equations: \begin{equation} m = min(C) + F_{m} * ( max(C) - min(C) ) \end{equation} \begin{equation} M = max(C) - F_{M} * ( max(C) - min(C) ) \end{equation} where, $C = \{c_{00},c_{01},...,c_{nm}\}$, are all of the gray scale(L channel) fragments in the image and $F_m$ and $F_M$ are adjustment factors that take on values between 0 and 1. When $F_m$ and $F_M$ are 0 minimum and maximum are input values are used. This is the default. Adjusting $F_m$ and $F_M$ above zero controls the saturation of normalization. This is useful, for example, if the brightness of pixels near the border dominate because these are convolved less because we can't integrate outside of the dataset.

Enhance Contrast
Low LIC Contrast Enhancement Factor
This can be used to adjust the minimum value in the output of the contrast enhancement. This applies only to the final CE stage in the LIC.
High LIC Contrast Enhancement Factor
This can be used to adjust the minimum value in the output of the contrast enhancement. This applies only to the final CE stage in the LIC.
Low Color Contrast Enhancement Factor
High Color Contrast Enhancement Factor


AntiAlias

Fragment masking

Mask On Surface
Mask Threshold
Mask Intensity
Mask Color

Noise texture generator

Generate Noise Texture
Noise Type
Noise Texture Size
Noise Grain Size
Min Noise Value
Max Noise Value
Number Of Noise Levels
Impulse Noise Probability
Impulse Noise Background Value
Noise Generator Seed

Parallelization

Composite Strategy

Interactivity

Use LIC For LOD