9
1 Interactive Visualization of Rotational Symmetry Fields on Surfaces Jonathan Palacios and Eugene Zhang, Member, IEEE Abstract—Rotational symmetries have found uses in several computer graphics applications, such as global surface parameterization, geometry remeshing, texture and geometry synthesis, and non-photorealistic visualization of surfaces. The visualization of N-way rotational symmetry (N-RoSy) fields is a challenging problem due to the ambiguities in the N directions represented by an N-way symmetry. We provide an algorithm that allows faithful and interactive representation of N-RoSy fields in the plane and on surfaces, by adapting the well-known Line Integral Convolution (LIC) technique from vector and second-order tensor fields. Our algorithm captures the N directions associated with each point in a given field by decomposing the field into multiple different vector fields, generating LIC images of these fields, and then blending the results. To address the loss of contrast caused by the blending of images, we observe that the pixel values in LIC images closely approximate normally distributed random variables. This allows us to use concepts from probability theory to correct the loss of contrast without the need to perform any image analysis at each frame. Index Terms—Rotational Symmetry, RoSy, Visualization, Tensor Field Visualization, Image Blending, Contrast Adjustment 1 I NTRODUCTION T HE visualization of rotational symmetry fields has many applications in computer graphics, such as surface para- meterization [14], [7], [2], quadrangular and triangular geom- etry remeshing [1], [8], texture and geometry synthesis [23], [8], architectural modeling [17], and non-photorealistic ren- dering [4], [24] (Figure 1). Intuitively, an N-way rotational symmetry (N-RoSy) represents phenomena that are invariant under rotations of integer multiples of 2π N [13], [15]. Examples of N-RoSy’s include a vector (N = 1), an eigenvector of a symmetric matrix (N = 2), and a cross (N = 4). An N-RoSy field is simply a directional field with a set of N different directions associated with every point in the domain, each being a 2kπ N rotation of the others, where k is an integer. Despite the number of applications, there has been little work on the visualization of N-RoSy fields for N > 2. In this paper, we present a texture-based visualization technique that adapts the Line Integral Convolution (LIC) algorithm [3] to handle the N-RoSy case. Texture-based flow visualization techniques are known to be space-filling, easily adapted to ren- der surface fields, and usually interactive when implemented on modern graphics hardware. The images generated by our method are similar to those seen in work by Palacios and Zhang [13] and Ray et al. [15], the techniques for both of which remain unpublished. The chief challenge presented by N-RoSy visualization when N > 2 lies in the fact that there are more than one trajectory that pass through each point in the domain. As shown in Figure 2, it is difficult to understand the structures in an N-RoSy field when only showing one trajectory per point, i.e., treating the N-RoSy field as a vector field. In addition, J. Palacios and E. Zhang are with the School of Electrical En- gineering and Computer Science at Oregon State University, Email: palacijo|[email protected]. in the presence of singularities, it is impossible to convert the N-RoSy field into a vector field without causing any visual discontinuity (Section 3). Given a vector field, the LIC algorithm traces a streamline in both directions at each pixel, and uses these streamlines as convolution kernels to anisotropically blur a noise image. A brute-force way to extend the LIC algorithm to handle the N- RoSy case involves two changes. First, at each pixel one needs to trace multiple trajectories. For each of these trajectories, the tracing method needs to be altered so that at each integration step all N directions at the corresponding point are examined, and the one that best matches previous direction is chosen. However, choosing the best of N directions at every integration step introduces a large amount of branching in the tracing algorithm, which increases linearly with N. This branching can severely affect performance on modern parallel architectures, such as graphics cards. To overcome the difficulty associated with branching, our algorithm decomposes a given N-RoSy field into multiple vector fields which, together, capture all N directions at each point. We then generate LIC images for each vector field and blend the these images together, which results in an image that visually represents the entire N-RoSy field. During numerical integration, our algorithm is significantly faster than the aforementioned brute-force adaptation of LIC (Table 1). Further difficulty arises from a generic problem in blending images from texture-based flow images; as we blend more and more images together, the resulting image begins to converge to the color gray. We thus make a further contribution in observing that the pixel values of LIC images generated from a binary noise texture are normally distributed random variables. This allows us to correct the loss of contrast resulting from the blending of LIC images without the need for image analysis. While this technique is part of our pipeline for N-RoSy field visualization, we believe the fundamental idea can find use in any application where a number of texture-based vector and

Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

Embed Size (px)

Citation preview

Page 1: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

1

Interactive Visualization of Rotational SymmetryFields on Surfaces

Jonathan Palacios and Eugene Zhang, Member, IEEE

Abstract —Rotational symmetries have found uses in several computer graphics applications, such as global surface parameterization,geometry remeshing, texture and geometry synthesis, and non-photorealistic visualization of surfaces. The visualization of N-wayrotational symmetry (N-RoSy) fields is a challenging problem due to the ambiguities in the N directions represented by an N-waysymmetry. We provide an algorithm that allows faithful and interactive representation of N-RoSy fields in the plane and on surfaces, byadapting the well-known Line Integral Convolution (LIC) technique from vector and second-order tensor fields. Our algorithm capturesthe N directions associated with each point in a given field by decomposing the field into multiple different vector fields, generating LICimages of these fields, and then blending the results. To address the loss of contrast caused by the blending of images, we observethat the pixel values in LIC images closely approximate normally distributed random variables. This allows us to use concepts fromprobability theory to correct the loss of contrast without the need to perform any image analysis at each frame.

Index Terms —Rotational Symmetry, RoSy, Visualization, Tensor Field Visualization, Image Blending, Contrast Adjustment

1 INTRODUCTION

T HE visualization of rotational symmetry fields has manyapplications in computer graphics, such as surface para-

meterization [14], [7], [2], quadrangular and triangular geom-etry remeshing [1], [8], texture and geometry synthesis [23],[8], architectural modeling [17], and non-photorealistic ren-dering [4], [24] (Figure 1). Intuitively, anN-way rotationalsymmetry(N-RoSy) represents phenomena that are invariantunder rotations of integer multiples of2π

N [13], [15]. Examplesof N-RoSy’s include a vector (N = 1), an eigenvector of asymmetric matrix (N = 2), and a cross (N = 4). An N-RoSyfield is simply a directional field with a set ofN differentdirections associated with every point in the domain, eachbeing a 2kπ

N rotation of the others, wherek is an integer.Despite the number of applications, there has been little

work on the visualization ofN-RoSy fields forN > 2. Inthis paper, we present a texture-based visualization techniquethat adapts the Line Integral Convolution (LIC) algorithm [3]to handle theN-RoSy case. Texture-based flow visualizationtechniques are known to be space-filling, easily adapted to ren-der surface fields, and usually interactive when implementedon modern graphics hardware. The images generated by ourmethod are similar to those seen in work by Palacios andZhang [13] and Ray et al. [15], the techniques for both ofwhich remain unpublished.

The chief challenge presented byN-RoSy visualizationwhen N > 2 lies in the fact that there are more than onetrajectory that pass through each point in the domain. Asshown in Figure 2, it is difficult to understand the structures inan N-RoSy field when only showing one trajectory per point,i.e., treating theN-RoSy field as a vector field. In addition,

• J. Palacios and E. Zhang are with the School of Electrical En-gineering and Computer Science at Oregon State University, Email:palacijo|[email protected].

in the presence of singularities, it is impossible to convert theN-RoSy field into a vector field without causing any visualdiscontinuity (Section 3).

Given a vector field, the LIC algorithm traces a streamlinein both directions at each pixel, and uses these streamlines asconvolution kernels to anisotropically blur a noise image. Abrute-force way to extend the LIC algorithm to handle theN-RoSy case involves two changes. First, at each pixel one needsto trace multiple trajectories. For each of these trajectories, thetracing method needs to be altered so that at each integrationstep allN directions at the corresponding point are examined,and the one that best matches previous direction is chosen.However, choosing the best ofN directions at every integrationstep introduces a large amount of branching in the tracingalgorithm, which increases linearly withN. This branching canseverely affect performance on modern parallel architectures,such as graphics cards.

To overcome the difficulty associated with branching, ouralgorithm decomposes a givenN-RoSy field into multiplevector fields which, together, capture allN directions at eachpoint. We then generate LIC images for each vector fieldand blend the these images together, which results in animage that visually represents the entireN-RoSy field. Duringnumerical integration, our algorithm is significantly faster thanthe aforementioned brute-force adaptation of LIC (Table 1).

Further difficulty arises from a generic problem in blendingimages from texture-based flow images; as we blend more andmore images together, the resulting image begins to convergeto the color gray. We thus make a further contribution inobserving that the pixel values of LIC images generated from abinary noise texture are normally distributed random variables.This allows us to correct the loss of contrast resulting from theblending of LIC images without the need for image analysis.While this technique is part of our pipeline forN-RoSy fieldvisualization, we believe the fundamental idea can find use inany application where a number of texture-based vector and

Page 2: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

2

(a) (b) (c) (d) (e)

Fig. 1. Pen-and-ink surface visualization algorithms (a), such as the one described in [4] require 4-RoSy fields asinput, as do many global parameterization algorithms, such as QuadCover [7] (b). Applications of 6-RoSy fields includeregular hexagonal texture tiling (c) and geometry synthesis (d) as well as regular triangular remeshing (e). The highlyregular triangular meshes generated using field-guided techniques can also be used as a starting point for circlepacking algorithms, which have applications in free-form architecture [17].

Fig. 2. Here we demonstrate that visualizing only oneof the directions of a 6-RoSy field not only results in avisual discontinuity (left, the horizontal line to the rightof the colored dot), but also does not allow a user tosee the distinct patterns of the field around featureslike singularities. In order to achieve this goal, one mustrender all 6 directions at each point (right).

tensor field visualizations need to be composited.The remainder of this paper is organized as follows. We first

review related work in Section 2 and then some theoreticalbackground onN-RoSy fields in Section 3. In Section 4, wegive the details of our planar algorithm. Our proposed methodof contrast correction is discussed in Section 5, and Section 6covers the extension of the planar algorithm to surfaces. Wegive our results in Section 7, where we compare our algorithmto a brute-force implementation ofN-RoSy LIC. Finally, weclose with our conclusions in Section 8.

2 RELATED WORK

While N-RoSy fields have been applied to many problems ingeometric modeling and computer graphics, there has beenlittle published work on their visualization whenN > 2.

N-RoSy fields: To the best of our knowledge, Hertzmannand Zorin [4] were the first to use4-RoSy fields in their workon the illustration of smooth surfaces. In this work they usea “cross” field derived from the principal curvature directionsto guide the orientations of the hatches in their images.

Ray et al. [14] use4-RoSy fields to specify localuv-directions in their work on periodic global parameterization,which facilitates quadrangular remeshing. They later develop

a design system [15] that allows the user to control the numberand locations of singularities ofN-RoSy fields on surfaces forarbitrary values ofN. Their paper features LIC style imagesof 4-RoSy fields similar to ours, but the method used togenerate them was never published. Palacios and Zhang [13]propose anN-RoSy field design and analysis system thatextracts singularities and separatrices for fields of arbitraryN. They also point out thatN-RoSy fields can be representedby a special subspace ofNth-order symmetric tensor fields,allowing mathematically sound algebraic operations, such asinterpolation and change of basis. Again, that work featuresvisualizations similar to ours, although no description of thevisualization technique was provided in the paper.

Vector and tensor field visualization: To review all pre-vious work in vector and tensor field visualization is beyondthe scope of this paper. We will cover only the most relevanthere (namely, texture-based methods), and refer the readersto the works by Laramee et al. [9], Zhang et al. [24] andthe references therein for further information. Texture-basedvector field visualizations, first introduced by Van Wijk [20],are space-filling and interactive when accelerated by mod-ern graphics hardware. Many variations, accelerations andextensions have since been proposed, such as Image BasedFlow Visualization (IBFV) [21], IBFV for surfaces [22], [10],LIC [3], and others [19], [18], [5]. IBFV and LIC have bothbeen adapted to also handle symmetric second-order tensorsfields (2-RoSy), in [6], [25] and [24]. In particular, Hsu [6]was the first to apply LIC to diffusion tensor visualization,and originated a two-pass method that appropriately blursacross the LIC result from the principal eigenvector when thetwo largest eigenvalues are nearly equal (in which case thecorresponding eigenvectors are not well defined). Sanderson etal. [16] proposed a vector field visualization based on reaction-diffusion, that combines concepts from glyph, streamline, andimage based techniques.

In our pipeline, we use a LIC implementation very similar tothe GPU image-space technique presented by Li et al. [11], togenerate each of theN LIC images which are later composedto produce our final visualization. However, any other texture-based vector field visualization technique could also be easilyincorporated into our general framework (e.g., IBFV).

Page 3: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

3

Fig. 3. Here we see two 4-RoSy singularities; startingwith the green member vectors, we travel around theyellow circles in the counter-clockwise direction, and trackthe changes in the angular component of these membervectors. When we get back to the same point we startedat, the member vector has made a π

2 counter-clockwiserotation (left) and a π

2 clockwise rotation (right) and thatthe starting and ending vectors are discontinuous. Noticethat it is impossible to convert an N-RoSy field into a con-tinuous vector field when such singularities are present.

3 BACKGROUND : N-ROSY FIELDS

In this section we briefly review the definition and propertiesof N-RoSy fields; for more in-depth treatments of this topic,we refer the reader to the works by Palacios and Zhang [13]and Ray et al. [15]. As mentioned previously, anN-RoSyrepresents phenomena that are invariant under integer mul-tiples of rotations of2kπ

N . More formally, anN-RoSy s is aset ofN different 2D directions (ormember vectors) of equalmagnitude, where each is a2kπ

N rotation of the others,k∈ Z:

s= {ρ(cos(θ + 2kπ

N ) sin(θ + 2kπN )

)T | 0≤ k≤ N−1} (1)

Here, ρ is the magnitude ofs, and θ is the angle of one ofthe member vectors; only one member vector must be storedin order to retrieve the others.N-RoSy’s can be representedby a subspace of2D, symmetric,Nth-order tensors [13].

An N-RoSy fieldS is a continuousN-RoSy valued functionof some spatial domain; that is, for every pointp in thedomain, there is an associatedN-RoSy:

S(p) = {ρ(p)(

cos(θ(p)+ 2kπN )

sin(θ(p)+ 2kπN )

)| 0≤ k≤ N−1} (2)

Moreover, the continuity of anN-RoSy field is defined interms of the continuity of corresponding higher-order tensorfield [13]. In this paper, the domain is either the2D Euclideanplane, or a2D surface embedded in3D Euclidean space.

A singularity in an N-RoSy field S is any point p0 inthe domain whereρ(p0) = 0, i.e., θ(p0) is undefined. AsFigure 3 demonstrates, it is impossible to decompose themember vectors of the field in the regions surrounding somesingularities into continuous vector fields. Since part of ouralgorithm (described in Section 4) decomposes a givenN-RoSy field in to N vector fields, this fact represents anobstacle that we must overcome in order to produce qualityvisualizations.

Fig. 4. In the top row, we see how the guiding angle φ(indicated by the blue arrow) allows us to select one ofthe N directions (in red) from a N-RoSy (N = 4 in thiscase). Note that if use N guiding angles with values ofθ + 2iπ

N (θ = 0 in this case), we will get one of the Ndirections for each. In the middle row, we see that if thereare two directions (in green) that are equally close to φfor a given N-RoSy s, then there will also be two suchdirections for each φ + 2iπ

N . The bottom row illustrates thatusing φ + 2(i+1)π

N as our set of guiding angles on the sameN-RoSy from the middle row will result in one direction.These facts together indicate that if we assign each Vi

by using guiding angles of θ + 2iπN (i = 0,1, ...N− 1), all

directions at every point will be captured, the breakingpoints will be in the same locations in each Vi , and Vi

and V ′i will have non-overlapping sets of breaking points

(except at singularities).

4 VISUALIZATION OF N-ROSY FIELDS

In this section, we describe our algorithm in further detail.As previously mentioned, our basic planar algorithm has thefollowing steps:

1) Decompose the originalN-RoSy field into a set ofNmember vector fields.

2) Generate texture-based flow images for each of thesevector fields.

3) Compose (blend) these images uniformly into a singleimage that captures the original field.

There are some complications that arise from the fact that, inthe general case, a member vector field will be discontinuouswhen N > 1 (see Section 3), and thus further steps mustbe taken to reduce the visual artifacts that result from thesediscontinuities. We now describe each step in more detail; theentire pipeline is outlined in Figure 5 for a3-RoSy field.

Recall that every pointp in the domain of anN-RoSy fieldS (except singularities) hasN member vectors (Equation 2).We first discuss the case whereN is odd. Our goal for thisstage of our pipeline is to decompose the original fieldS

Page 4: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

4

(a) I0 (b) I1 (c) I2 (d) I = (I0 + I1 + I2)/3 (e) w

( f ) I ′0 (g) I ′1 (h) I ′2 (i) I ′ = (I ′0 + I ′1 + I ′2)/3 ( j) w× I +(1−w)× I ′

Fig. 5. Our visualization algorithm is demonstrated with an example 3-RoSy field S. In (a)-(c), we applied the LICalgorithm to V0, V1, and V2 (the guiding angle for each is shown in the upper right corner) to obtain I0, I1 and I2,respectively. Notice that while (a)-(c) provide a complete coverage of the streamlines passing through any regularpoint in the domain, they have the same regions of breaking points (left X-axis). By blending them uniformly, we obtainI (d), a visualization of S with visual artifacts in the same place (a close-up of the artifact, highlighted in red, is seeninset with the contrast enhanced; note the curving patterns in a region that should be regular). To remedy the problem,we also apply the LIC algorithm to V ′

0, V ′1, and V ′

2, generating the images I ′0 (f), I ′1 (g), and I ′2 (h), and blend themuniformly to obtain I ′ (i). The visual artifacts in I ′ appear on the right side (again, a close-up is inset) of the X-axis.By blending I and I ′ using the weight map w (e), we obtain the final image in (j) in which the artifacts due to fielddiscontinuities are no longer visible. Note that the image in (j) has had its contrast corrected via the transformationdescribed in Section 5.

into a set ofN vector fields{V0,V1, ...,VN−1}, such that forevery pointp in the domain,Vi(p) ∈ S(p) andVi(p) 6= Vj(p),where 0 ≤ i < j ≤ N− 1. That is, the direction at everypoint in each vector fieldVi is one of the directions at thesame point inS, and none of the vector fields have thesame direction at the same point. Thus, every direction atevery non-singularity pointp in S is represented by the set{V0(p), ...VN−1(p)}. As mentioned earlier, in the vicinity ofa singularity visual discontinuity occurs when one attemptsto construct a continuous vector field from S. Consequently,it is insufficient to use only N vector fields to represent theN-RoSy field. To address this, we will generate2N vectorfields which, when blended properly, will result in a high-quality visualization. To facilitate the discussion, we give thefollowing definitions.

Given anN-RoSy s = {ρ(cos(θ + 2kπ

N ) sin(θ + 2kπN )

)T |0≤ k≤ N−1} and aguiding angleφ ∈ [0,2π), let

vs,φ = ρ(

cos(θ + 2ls,φ πN ) sin(θ + 2ls,φ π

N ))T

(3)

wherels,φ = argmink|θ +

2kπN

−φ | (4)

Intuitively, vs,φ is the member vector ofs that has the smallestangular difference withφ . vS,φ is a vector field that is generatedby selecting a member vector in this fashion everywhere inthe domain ofS. It is well-defined at non-singularity points

and continuous where only one minimum exists (Figure 4,top row). On the other hand, when there are two minima, wehave two candidate member vectors which are2π/N apart,an ambiguity which leads to visual discontinuity (Figure 4,middle row). In these cases, we choose the one such thatθ +2kπN − φ > 0. For a givenφ , the points where there are two

minima forSwill be referred to asbreaking pointswith respectto φ , .

We then assignVi(p) = vS(p), 2iπN

. {V0, ...,VN−1} assigned inthis fashion are mutually different and can collectively captureall member directions in theN-RoSy field everywhere in thedomain. While there will be discontinuities in eachVi , theywill be in the exact same locations.

Further, note that for every two fieldsVi and Vj , Vi is a2π(i− j)

N rotation ofVj . Thus, in practice, we only have to assignV0 in the way described above, andV1, ...,VN−1 can be assignedas rotations ofV0.

We now generateN LIC imagesI0, ..., IN−1, one for eachof the respective vector fieldsV0, ...,VN−1 (Figure 5a-c). Oncewe have theN images, we compose them by blending themuniformly into a new imageI = 1

N ∑N−1j=0 I j , which captures

all N directions everywhere in the field (Figure 5d). Note,however, that due to the discontinuities in our vector fields, wehave artifacts at the corresponding locations inI (Figure 5d).

Page 5: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

5

(a) (b) (c) (d) (e)

Fig. 6. Here we demonstrate our contrast correction and enhancement for a constant 6-RoSy field. Note that the insethistograms only show the red channel of the color images, but that the distributions for the other two channels aresimilar. The three member vector field images I0 (a) and I1 (b), and I2 (not shown) are blended uniformly to get I (c).However, the pixel signals in I have reduced variance, which makes the image appear washed out and gray, and sowe apply the transformation in Equation 6 to get Icorrected (d), whose pixel signals have the same variance as those inI0 and I1. We can then (optionally) expand the variance further, by using the same transformation with a larger scalingfactor to get the image in (e).

We thus generate another set of vector fields{V ′

0,V′1, ...,V

′N−1} where V ′

i = vS,

(2i+1)πN

. While these vector

fields also contain visual discontinuities, the discontinuities(set of breaking points) will also be in the same places(regardless ofi) that are different from the discontinuities inV0, ...,VN−1 (Figure 4, middle and bottom rows).

Now, when we generate LIC imagesI ′0, ..., I′N−1 (Figure 5f-

h) from this second set of vector fields, and the imageI ′ = 1

N ∑N−1j=0 I ′j , all of the artifacts appear in complementary

locations to those fromI (Figures 5i). The intersection ofthe two sets of artifacts (breaking points) consists of only thesingularities in the field. We can then blendI and I ′ so that inplaces where visual artifacts occur in one image we will usecorresponding regions in the other image. There are differentways in which this can be achieved. We choose to adapt theweighting scheme of Zhang et al. [24], which correspondsto the case N=2. In this scheme, the weighting functions areand whereθ is angular component of one of the membervectors at the corresponding pixel location (Figure 5e). Wechose these blend weights because they will always sum toone, and because the regions where there are artifacts inIcorrespond to the places wherecos2 Nθ

2 = 0, and the regionswhere there are artifacts inI ′ correspond to the places wheresin2 Nθ

2 = 0. One can also easily modify this weight so thatit is binary-valued (either0 or 1) and the color of a pixel inthe composited image will come from either I or I’, thoughthe difference between the results these two weights produceis virtually imperceptible.

When N is even, we can save computational cost byobserving that each of theN directions at every point inSis the opposite of another direction at the same point, i.e.,Vi = −Vi+N/2. Because of how the LIC algorithm works,we need only generateN2 fields (V0, ...,VN

2−1) and images(I0, ..., I N

2−1) to visually capture all directions.The result, shown in Figure 5j, is an image where the

artifacts due to vector field discontinuities are no longer visible(except very close to singularities), and where all directionsat every point in the field are captured. Our technique worksfor all values ofN, including whenN = 1 andN = 2 (thoughwhen N = 1, there will not be any breaking points, and thus

generating the imageI ′ is unnecessary). Also, note that theimage in Figure 5j is actually contrast corrected by the processto be described in Section 5.

Color can be integrated into LIC with relative ease, as hasbeen done in several other works [12], [14], [15]. We findthat with the larger amount of directional information presentin N-RoSy fields, color often helps the LIC streaks in thefinal image stand out better against each other, making thedirections at each point more apparent (Figure 11).

To perform a colored version of our algorithm, we simplygenerate three different black and white noise textures, mapeach to a color channel, and use this “colored” noise imageas the initial LIC image in the steps above. Note that this isthe same as performing LIC three times in parallel.

5 CONTRAST CORRECTION

Uniformly blending the imagesI0, ..., IM−1 (whereM is equalto N or N/2, depending on whetherN is odd or even) canresult inI having lower contrast than eachI j , making the imageappear faded and the directions at each difficult to discern(Figure 5d). Here, we explore this issue further, and providea systematic solution which will eliminate this latter contrastloss without performing any image analysis.

Recall that, given a pixelP in the imageI (defined inSection 4) andM signals at that pixelP0, ...,PM−1 (one fromeach respectiveI j ), we haveP = 1

M ∑M−1j=0 Pj . Given that each

I j is generated from the same initial noise texture with thesame LIC parameter L,P0, ...,PM−1 are normally distributedrandom variables with the same meanµ and and varianceσ2

(that is, Pj ∼ N(µ ,σ2) where0≤ j ≤M−1). Consequently,P is also normally distributed:

P∼ N(µ,σ2

M) (5)

Note that the mean has remained the same (in our experimentsthe mean is always almost exactly0.5), but the variance hasshrunk by a factor of1M . This explains why the imagesI andI ′appear more gray thanI0, ..., IM−1 and I ′0, ..., I

′M−1 (Figure 6a-

c).

Page 6: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

6

Fortunately, in order to “correct”P so that its distributionis the same as that ofP0, ...,PM−1, we need only apply thefollowing transformation:

Pcorrected=√

M(P−µ)+ µ (6)

Note thatPcorrected∼N(µ,σ2), and our empirical data supportsthis hypothesis (Figure 6d). Further, note that if we apply thistransformation to every pixel inI (and I ′) using our empiricalvalue ofµ = 0.5, this amounts to contrast scaling. Note that thescaling can be applied either before or after image blending;this is because that we do not have to perform any imageanalysis on the blended image.

On the other hand, we do not perform contrast correctionwhen blending the imagesI and I ′. Because of how theseimages are generated (using the same noise image, and thesame field),I and I ′ end up being almost exactly identical,except in the regions near their artifacts caused by breakingpoints (Figures 2b,c and 5d,i). Thus, there is very littleinterference between pixel signals when blending these twoimages, leading to little loss of contrast in the resulting image.

Finally, when performing the colored version of our algo-rithm, the above operations can be performed in exactly thesame manner, but per channel; in this case, we are correctinga loss of variance in image hue (Figure 6c).

6 EXTENSION TO SURFACES

The algorithm described in Section 4 can be adapted tovisualize N-RoSy fields on surfaces with relative ease, byperforming almost all of the previously described operationsin image space and adding diffuse lighting; this is akinto techniques proposed by Van Wijk [22] and Laramee etal. [10]. Figure 11 shows our results on several surfaces. Theimplementation is almost identical to that of the planar case,except that we must take care to use the correct set of membervectors; this is because the member vectors at a point on thesurface are rotations of integer multiples of2π

N of each otherin tangent space, but their projections onto the view plane donot necessarily share this property (Figure 7).

This distinction, however, actually leads to an issue whichlessens the effectiveness of our artifact reduction step (seeSection 4). Because the projections of the member vectorsin the view plane do not preserve the rotational relationshipsbetween them, the weights we use to to blendI andI ′ are lesseffective in places where the surface normal is not parallel tothe view direction. This can lead to the reappearance of theartifacts described in Section 4 in the corresponding regionsof the image (Figure 8 left and middle). While these artifactsalways appear in regions that are not directly facing the viewplane, they can nonetheless be distracting, and so we proposea method to eliminate them here.

At each pointp on the surface whose normal is not parallelto the normal of the view plane, there is a unique minimalrotation R that takes a vector in the tangent plane at p tobe parallel to the view plane. This3D rotation will introducea rigid, orientation-preserving transformation between tangentvectors from the two planes: the tangent plane at p and theview plane. Consequently, anN-RoSy can be maintained dur-ing this transformation. Using this transformation, we simply

Fig. 7. On the left, we see a 4-RoSy on a plane thatis parallel to the view plane; all of its directions are 2kπ

4rotations of the others, where k is an integer. As the planeis rotated so that it is nearly orthogonal to the view plane(middle and left), these relationships no longer hold.

Fig. 8. On the left we have a 4-RoSy field on a sphere thatforms a cube pattern. In the middle, a close-up is shownof an artifact in the visualization on the left (the regionindicated by the black box in the left image). We proposea method to fix the problem (right) in Section 6.

rotate eachN-RoSy into the view plane, and then perform thefield decomposition and weight computation on these rotatedRoSy’s. The resulting vector fields can then be translated backinto tangent space by the inverse rotationR−1. As Figure 8(right) shows, this completely eliminates the artifacts.

7 RESULTS

Our algorithm produces accurate visual representations ofN-RoSy fields at interactive frame-rates. Table 1 shows renderingtimes for our algorithm compared to those for a brute-forceimplementation ofN-RoSy LIC. Recall that a brute-forceimplementation simply alters the tracing method of the LICalgorithm so that allN directions are examined at eachintegration step, and the one that most closely matches thedirection at the previous step is chosen. Further,N (N/2 whenN is even) streamlines are traced for each pixel (one foreach direction at that pixel), used as convolution kernels toanisotropically blur the noise texture, and the result from thesekernels is then uniformly blended to get the final pixel color.In this method there is no need to decompose the originalfield into vector fields. However, choosing the best direction atevery tracing step requires a great deal of branching, makingthis algorithm suboptimal for parallel architectures, such as

Page 7: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

7

Our algorithm Brute-force algorithmN 12K ∆ 200K ∆ 12K ∆ 200K ∆2 17 28 211 2373 46 57 1059 11824 32 43 564 6276 46 57 1059 1182

TABLE 1A rendering time comparison between our algorithm and

a brute-force implementation of an N-RoSy version ofLIC. Rendering times are in milliseconds and mesh sizes

in triangles appear in the second row.

graphics cards. In contrast, our algorithm benefits greatly fromparallelization.

All of our experiments were performed on a desktop com-puter with a dual-core 3.73 GHz Intel Pentium D processor andan NVIDIA GeForce 8600 GTS video card. Both algorithmswere accelerated using the programmable graphics hardware,and all renderings were done at a resolution of512× 512using the surface implementations of these algorithms. Thetwo methods produce virtually identical images. Our algorithmoutperforms the brute-force implementation in all of ourexperiments, and maintains interactive frame-rates for fieldswith values ofN = 2,3,4 and6, even for large meshes.

Not only is our algorithm faster, it also scales much betterwith N; as N and the number of directions at each pointincreases, the brute-force algorithm suffers greatly due toincreased branching. Our algorithm incurs only a moderateadditional cost associated with generating additional LIC im-ages. Note that the cases whereN = 4 outperform the oneswhereN = 3; this is because whenN is even, we only needgenerateN/2 images to represent allN directions everywherein the field. The brute-force implementation takes advantageof this as well, but is still outperformed by our method inevery experiment.

Also note that, at a fixed resolution, a large increase inmesh size (from12K to 200K triangles) results in only arelatively small offset in rendering time for both algorithms.This indicates that the rendering time is pixel-bound, which isto be expected for image space methods.

In all of the applications that we know of involvingN-RoSyfields (whereN > 2), it is the directions of the RoSy thatare of ultimate importance. On the other hand, the magnitudeis equally important in vector and tensor field visualization(N = 1,2). Our framework inherits the flexibility of texture-based methods in which the magnitude can be conveyed bycolor, varying length of streamlines, or both (Figure 9).

The effectiveness of this visualization technique beginsto lessen asN increases, and computational cost grows; itbecomes difficult to discern meaningful information in caseswhere N = 5,7 and beyond (Figure 10). Fortunately, forknown applications involvingN-RoSy fields, such as surfaceparameterization, remeshing, and non-photorealistic rendering,only fields whereN = 2, 4, and6 have found uses thus far.

8 CONCLUSIONS

We have presented an interactive texture-based visualizationalgorithm for N-RoSy fields on surfaces. Our algorithm can

Fig. 9. Our method can represent continuous N-RoSyfields by mapping the magnitude to color (left), varying thelength of the streamline traced per pixel, or both (right).

Fig. 10. We find that due to the abundance of directionalinformation at each point, the effectiveness of our algo-rithm is decreased as N reaches higher numbers, suchas 5 (left) and 7 (right).

show allN directions at every point and captures the featuresof N-RoSy fields, such as singularities. In our technique, anN-RoSy field is decomposed into a number of vector fields, whichare visualized using the LIC techniques and then combined.We note that the number of vector fields used is only twicethat of the minimal number of images needed in order to showall N directions.

Further, we have observed that the pixel values in LICimages are normally distributed random variables, allowing usto use concepts from probability theory to correct the loss ofcontrast usually associated with the blending of such images.Contrast can also be further enhanced if desired.

In the future, we wish to investigate efficient contrastadjustment when the input images are not gray-scale andhave different hues. One example of this is to visualize boththe major and minor eigenvector fields of a second-ordertensor. In addition, we will consider how to best adjust thecontrast given lighting conditions. Also of interest are newdecomposition strategies that will lead to fewer images toblend, thus increasing the interactivity. Finally,N-RoSy fieldsare special types ofNth-order symmetric tensors. We wish toextend our method to handle symmetricNth-order tensor fieldvisualization, in which angles between neighboring membervectors are no longer constant.

ACKNOWLEDGMENTS

The authors would like to thank the following groups for the3D models they have made available: Marc Levoy and the

Page 8: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

8

Stanford Graphics Group, Cyberware, and the AIM@ShapeRepository. We also thank Konrad Polthier, Felix Kalbererand Matthias Nieser for the use of their images, and RandallRauwendaal and Jonathan Dodge for their help in proofreadingthe paper. The discussions with Greg Turk have been mostvaluable, and the incredibly astute and constructive criticismand comments from the editor, Dr. Jarke van Wijk, and theanonymous reviewers have definitely resulted in a better paper;we are most grateful. This work is partially supported by NSFCCF-0546881 and CCF-0830808. Jonathan Palacios is alsosupported by an NSF IGERT Fellowship DGE-0333257.

REFERENCES

[1] P. Alliez, D. Cohen-Steiner, O. Devillers, B. Levy, and M. Desbrun.Anisotropic polygonal remeshing. ACM Transactions on Graphics(SIGGRAPH 2003), 22(3):485–493, Jul 2003.

[2] D. Bommes, H. Zimmer, and L. Kobbelt. Mixed-integer quadrangula-tion. ACM Trans. Graph., 28(3):1–10, 2009.

[3] B. Cabral and L. C. Leedom. Imaging vector fields using line integralconvolution. In SIGGRAPH ’93: Proceedings of the 20th annualconference on Computer graphics and interactive techniques, pages263–270, New York, NY, USA, 1993. ACM.

[4] A. Hertzmann and D. Zorin. Illustrating smooth surfaces.ComputerGraphics Proceedings, Annual Conference Series (SIGGRAPH 2000),pages 517–526, Aug 2000.

[5] I. Hotz, L. Feng, H. Hagen, B. Hamann, B. Jeremic, and K. Joy. Phys-ically based methods for tensor field visualization. InIn Proceedingsof IEEE Visualization 2004, pages 123–130. IEEE Computer SocietyPress, 2004.

[6] E. Hsu. Generalized line integral convolution rendering of diffusiontensor fields. InProc. ISMRM, page 790, 2001.

[7] F. Kalberer, M. Nieser, and K. Polthier. Quadcover - surface parame-terization using branched coverings. InEurographics 2007, 2007.

[8] Y.-K. Lai, M. Jin, X. Xie, Y. He, J. Palacios, E. Zhang, S.-M. Hu,and X. Gu. Metric-driven rosy field design and remeshing.IEEETransactions on Visualization and Computer Graphics, 16(1):95–108,2010.

[9] R. S. Laramee, H. Hauser, H. Doleisch, B. Vrolijk, F. H. Post, andD. Weiskopf. The state of the art in flow visualization: Dense andtexture-based techniques.Computer Graphics Forum, 23:2004, 2004.

[10] R. S. Laramee, B. Jobard, and H. Hauser. Image space based visual-ization of unsteady flow on surfaces. InVIS ’03: Proceedings of the14th IEEE Visualization 2003 (VIS’03), page 18, Washington, DC, USA,2003. IEEE Computer Society.

[11] W.-C. Li, , B. Vallet, N. Ray, and B. Levy. Representing higher-order singularities in vector fields on piecewise linear surfaces.IEEETransactions on Visualization and Computer Graphics (ProceedingsVisualization ’06), to appear, 2006.

[12] Z. Liu, R. J. M. II, and J. Groner. An advanced evenly-spaced streamlineplacement algorithm.IEEE Transactions on Visualization and ComputerGraphics, 2006.

[13] J. Palacios and E. Zhang. Rotational symmetry field design on surfaces.In SIGGRAPH ’07: ACM SIGGRAPH 2007 papers, page 55, New York,NY, USA, 2007. ACM.

[14] N. Ray, W.-C. Li, B. Levy, A. Sheffer, and P. Alliez. Periodic globalparameterization. ACM Transactions on Graphics, 25(4):1460–1485,2006.

[15] N. Ray, B. Vallet, W.-C. Li, and B. Levy. N-symmetry direction fielddesign.ACM Transactions on Graphics, 2008. Presented at SIGGRAPH.

[16] A. R. Sanderson, C. R. Johnson, and R. M. Kirby. Display of vectorfields using a reaction-diffusion model. InVIS ’04: Proceedings of theconference on Visualization ’04, pages 115–122, Washington, DC, USA,2004. IEEE Computer Society.

[17] A. Schiftner, M. Hbinger, J. Wallner, and H. Pottmann. Packing circlesand spheres on surfaces.ACM Transactions on Graphics (to appear inSIGGRAPH Asia), 28(5), 2010.

[18] H.-W. Shen and D. L. Kao. A new line integral convolution algorithm forvisualizing time-varying flow fields.IEEE Transactions on Visualizationand Computer Graphics, 4(2):98–108, 1998.

[19] D. Stalling and H.-C. Hege. Fast and resolution independent lineintegral convolution. InSIGGRAPH ’95: Proceedings of the 22ndannual conference on Computer graphics and interactive techniques,pages 249–256, New York, NY, USA, 1995. ACM.

[20] J. J. van Wijk. Spot noise texture synthesis for data visualization.In SIGGRAPH ’91: Proceedings of the 18th annual conference onComputer graphics and interactive techniques, pages 309–318, NewYork, NY, USA, 1991. ACM.

[21] J. J. van Wijk. Image based flow visualization.ACM Transactions onGraphics (SIGGRAPH 2002), 21(3):745–754, Jul 2002.

[22] J. J. van Wijk. Image based flow visualization for curved surfaces.In: G.Turk, J. van Wijk, R. Moorhead (eds.), Proceedings IEEE Visualization,pages 123–130, Oct 2003.

[23] L. Y. Wei and M. Levoy. Texture synthesis over arbitrary manifoldsurfaces. Computer Graphics Proceedings, Annual Conference Series(SIGGRAPH 2001), pages 355–360, 2001.

[24] E. Zhang, J. Hays, and G. Turk. Interactive tensor field design andvisualization on surfaces. IEEE Transactions on Visualization andComputer Graphics, 13(1):94–107, 2007.

[25] X. Zheng and A. Pang. Hyperlic. InVIS ’03: Proceedings of the14th IEEE Visualization 2003 (VIS’03), page 33, Washington, DC, USA,2003. IEEE Computer Society.

Jonathan Palacios is currently a PhD studentin the Department of Electrical Engineering andComputer Science at Oregon State University,studying under Dr. Eugene Zhang. His primaryresearch areas are computer graphics, geomet-ric modeling, symmetry, and higher-order tensorfield visualization and analysis. He is an NSFIGERT fellow, and a member of the ACM.

Eugene Zhang received his PhD degree in com-puter science in 2004 from Georgia Institute ofTechnology. He is currently an assistant profes-sor at Oregon State University, where he is amember of the School of Electrical Engineeringand Computer Science. His research interestsinclude computer graphics, scientific visualiza-tion, and geometric modeling. He received aNational Science Foundation (NSF) CAREERaward in 2006. He is a member of the IEEE andACM.

Page 9: Jonathan Palacios and Eugene Zhang- Interactive Visualization of Rotational Symmetry Fields on Surfaces

9

(a) (b)

(c) (d)

(e) ( f )

Fig. 11. Here we see 4-RoSy fields on the Bunny (a-b), triple-torus (c) and Rocker Arm models visualized using oursystem. Color can be added by performing our algorithm three times in parallel and mapping each output to a colorchannel, resulting in a plaid-like pattern; alternatively color can be reserved for for visualizing other values, such asfield magnitude. In (e), we see a 6-RoSy field field on the Moai statue and another on the torus in (f).