• 沒有找到結果。

planar angles with respect to their counterparts in the three-dimensional space. Though the minimization problem is linear, it becomes non-linear as some other non-linear con-straints have to be taken into account in order to generate a valid solution. As a type of discrete conformal parameterization, the method suffers more area distortion, especially in region closed to the center of the surface. The area distortion leads to linear distor-tion in texture mapping. Sheffer et al. tried to solve the problem by applying a mesh smoothing procedure to the uniform grid overlaying on the parametric domain [22].

The smoothing uses a sizing function which is based on the ratios between the lengths of the edges in the three-dimensional surface and their counterparts in parametric do-main. Figure 2.9 demonstrates the result of texture mapping by overlaying a regular grid.

Levy et al. computed quasi-conformal parameterizations by measuring the violation of the Cauchy-Rieman equation in the least square sense [16]. They also show that the quasi-conformal parameterization exists uniquely, independent of resolution and pre-serves orientations. Using a standard numerical conjugate gradient solver they are able to compute least squares approximations to continuous conformal maps very efficiently without requiring fixed boundary texture coordinates.

2.3 Surface Painting

Surface painting system allows users to paint directly onto a three-dimensional surface and stores the painting result in a texture. The mapping between mesh and texture space is built via a parameterization. In current surface painting systems, the parameterization is pre-computed and remains fixed during the painting process. One and the only thing done by surface painting systems is to sample painting stokes into the texture space.

In this way, it is often that insufficient samples will be found in the regions with high painting detail. The left side of Figure 2.10 shows that the aliasing occurs in the region

2.3 Surface Painting 17

Figure 2.9: Texture mapping for a cat head model [22]. (a) cat head model. (b) ABF parameterization. (c) ABF texturing result. (d) Uniform Grid G1. (e) Smoothed grid G2. (f) Texturing result after applying G2.

spaced in-between black and white. The right part of Figure 2.10 depicts same model with reduced aliasing, as the result of using a parameterization that takes the signal variation into account.

Hanrahan and Haeberli firstly proposed the concept of three dimensional surface painting, in which the color signal is stored directly in mesh vertices [10]. Based on this method, the shading result is interpolated between mesh vertices, though we could not reveal rich texture detail.

Igarashi and Cosgrove stored the paint strokes image that occurred for each pose as separate charts packed into a texture atlas [13]. As shown in Figure 2.11, the eyes and mouth were first painted. Mesh triangles affected by these strokes are found and

2.3 Surface Painting 18

Figure 2.10: Texturing result of geometry stretch and signal stretch [18].

projected onto a two dimensional domain to form an atlas. Similarly, each subsequent stroke is stored in a new atlas. When the painting process complete, all the atlas are packed together to form the final texture atlas. The major disadvantage of the method is that a stroke that overlapping other strokes may appear in more than one atlas; as shown in Figure 2.11. In such cases, texture space may be wasted.

Before going on the approach proposed by Carr et al., we address the concept of procedural texturing. The simplest form of texturing is texture mapping. The texture space is usually created from an image file, often a photograph or artist’s rendering of the material. The major disadvantage is that aliasing occurs when the texturing is under

2.3 Surface Painting 19

Figure 2.11: Each stroke is stored in an individual atlas [13].

either minification or magnification. Another issue is that the mapping function itself could be complicated. The essential idea of procedural texturing is that the color of a pixel is based functionally on the three dimensional coordinates of its corresponding vertex.

In general, the result of procedural texturing is stored via texture atlases. Some methods for constructing mesh atlas have been proposed, for example, uniform mesh atlas (Figure 2.12), area-weighted mesh atlas (Figure 2.13) and length-weighted mesh atlas. There are two major drawbacks among these methods. The first is that the texture sample space is not completely used. As shown in Figure 2.13, much texture space are wasted at the right-side of the atlas. The second drawback is that these methods do not take the triangles’ shape and area into account. As shown in Figure 2.12, each triangle has the same sample space no matter how large it is.

Carr and Hart made use of the Metis algorithm [14] to recursively partition the mesh into several charts; see Figure 2.14. A quaternary tree hierarchy, called MMA, is then constructed. The construction is based on the clustering of charts via a top-down or a bottom-up approach. The MMA framework takes the size of mesh triangles into account such that each triangle could be allocated suitable texture sample space.

2.3 Surface Painting 20

Figure 2.12: Uniform mesh atlas for a cloud textured moon [1].

Figure 2.13: Rhino sculpted from wood and its area-weighted mesh atlas [1].

Based on the MMA framework, Carr and Hart proposed a method aiming to derive a parameterization that is sensitive to signal distribution [2]. The method consists of three steps. Firstly, the mesh is divided into several charts based on the method proposed by Sander et al. [19]. Several triangles are chosen as seed of the charts and from each of which faces are joined into chart based on the geometric distance and normal difference between face and chart. Secondly, each chart is parameterized into a two

2.3 Surface Painting 21

Figure 2.14: Recursively partition the mesh using Metis algorithm [1].

dimensional domain based on Sander et al’s geometry stretch metric [17]. Finally, an MMA hierarchy is constructed for all charts built in step one. Each chart has the weight as its L2 stretch computed in step two. The MMA hierarchy can be presented by a quaternary tree, in which tree nodes at the same level have the same weight, and, in consequence, have equivalent texture space. As shown in Figure 2.15, each of the four child nodes occupies one-fourth texture space of its parent node.

During the surface painting process, all painting strokes are rendered into texture and then the stroke frequency distributed on the texture is analyzed using graphics hardware.

After the analysis, an importance value computed from frequency analysis for previous strokes is attached to each chart and the MMA hierarchy(quaternary tree) is re-balanced to generate a new parameterization. All of the charts are placed in a priority queue based on the importance value. The MMA hierarchy is reconstructed via the priority queue.

Each chart should consist of a quite large number of faces in order to reduce distortion introduced by the parameterization. Moreover, the re-balancing is more significant with more number of charts. Therefore this method is suitable for meshes with large number of triangles.

2.3 Surface Painting 22

Figure 2.15: A multiresolution meshed atlas of a cow. Each node in the tree corresponds to (a) a cluster of triangles (b) and a square region in the texture domain. (c) Each node’s cluster is the union of its children’s clusters [2].

C H A P T E R 3

A Re-parameterization

相關文件