Line integral convolution: Difference between revisions

Content deleted Content added
Fun Chaos (talk | contribs)
Link suggestions feature: 1 link added.
Line 27:
Although the input vector field and the result image are discretized, it pays to look at it from a continuous viewpoint.<ref name="Stalling 1995">{{cite conference | first1 = Detlev | last1 = Stalling | first2 = Hans-Christian | last2 = Hege | title = Fast and Resolution Independent Line Integral Convolution | citeseerx = 10.1.1.45.5526 | book-title = Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques | conference = SIGGRAPH '95 | date = August 6–11, 1995 | ___location = Los Angeles, California | pages = [https://archive.org/details/computergraphics00sigg/page/249 249–256] | doi = 10.1145/218380.218448 | isbn = 0-89791-701-4 | url = https://archive.org/details/computergraphics00sigg/page/249 }}</ref> Let <math>\mathbf{v}</math> be the vector field given in some ___domain <math>\Omega</math>. Although the input vector field is typically discretized, we regard the field <math>\mathbf{v}</math> as defined in every point of <math>\Omega</math>, 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 <math>\Omega</math> or at critical points where <math>\mathbf{v}=\mathbf{0}</math>. For the sake of simplicity, critical points and boundaries are ignored in the following.
 
A field line <math>\boldsymbol \sigma</math>, parametrized by arc length <math>s</math>, is defined as

<math display="block">\frac{d\boldsymbol \sigma (s)}{ds} = \frac{\mathbf{v}(\boldsymbol {\sigma}(s))}{|\mathbf{v}(\boldsymbol{\sigma}(s))|}.</math>

Let <math>\boldsymbol{\sigma}_\mathbf{r}(s)</math> be the field line that passes through the point <math>\mathbf{r}</math> for <math>s=0</math>. Then the image gray value at <math>\mathbf{r}</math> is set to
 
:<math display="block">D(\mathbf{r}) = \int_{-L/2}^{L/2} k(s)N(\boldsymbol{\sigma}_{\mathbf{r}}(s)) ds</math>
 
where <math>k(s)</math> is the convolution [[Kernel (image processing)|kernel]], <math>N(\mathbf{r})</math> is the noise image, and <math>L</math> is the length of field line segment that is followed.