Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
35 views

Geometry Images

This document proposes representing surface geometry with "geometry images", which capture geometry as a simple 2D array of 3D points. Other surface attributes like normals and colors are also stored as 2D images using the same implicit surface parameterization. To create a geometry image, a mesh is cut along edge paths and unfolded onto a square domain. Geometry images can then be compressed using image compression and allow efficient rendering. Challenges include finding good cuts and parameterizations to avoid geometric blurring when unfolding non-disk-like surfaces onto an image.

Uploaded by

snt_388857437
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Geometry Images

This document proposes representing surface geometry with "geometry images", which capture geometry as a simple 2D array of 3D points. Other surface attributes like normals and colors are also stored as 2D images using the same implicit surface parameterization. To create a geometry image, a mesh is cut along edge paths and unfolded onto a square domain. Geometry images can then be compressed using image compression and allow efficient rendering. Challenges include finding good cuts and parameterizations to avoid geometric blurring when unfolding non-disk-like surfaces onto an image.

Uploaded by

snt_388857437
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Geometry Images

Xianfeng Gu Steven J. Gortler Hugues Hoppe


Harvard University Harvard University Microsoft Research

Abstract In this paper, we propose to remesh an


arbitrary surface onto a completely regular
Surface geometry is often modeled with irregular triangle meshes.
structure we call a geometry image. It cap-
The process of remeshing refers to approximating such geometry
tures geometry as a simple n n array of
using a mesh with (semi)-regular connectivity, which has advan-
[x, y, z] values. Other surface attributes, such
tages for many graphics applications. However, current techniques
as normals and colors, are stored as addi-
for remeshing arbitrary surfaces create only semi-regular meshes.
tional square images, sharing the same do-
The original mesh is typically decomposed into a set of disk-like
main as the geometry. Because the geome-
charts, onto which the geometry is parametrized and sampled. In Stanford bunny
try and attributes share the same parametriza-
this paper, we propose to remesh an arbitrary surface onto a com-
tion, the parametrization itself is implicit texture coordinates
pletely regular structure we call a geometry image. It captures ge-
are absent. Moreover, this parametrization fully utilizes the texture
ometry as a simple 2D array of quantized points. Surface signals
domain (with no wasted space). Geometry images can be encoded
like normals and colors are stored in similar 2D arrays using the
using traditional image compression algorithm, such as wavelet-
same implicit surface parametrization texture coordinates are ab-
based coders. Also, geometry images are ideally suited for hard-
sent. To create a geometry image, we cut an arbitrary mesh along
ware rendering. They may be transmitted to the graphics pipeline
a network of edge paths, and parametrize the resulting single chart
in a compressed form just like texture images. And, they eliminate
onto a square. Geometry images can be encoded using traditional
expensive pointer-based structures such as indexed vertex lists.
image compression algorithms, such as wavelet-based coders.
Of course, arbitrary surfaces cannot generally be mapped
Keywords: remeshing, surface parametrization. directly onto a square image domain, because their topology can
differ from that of a disk. The basic idea in our approach is to
1 INTRODUCTION slice open the mesh along an appropriate set of cut paths, to allow
the unfolding of the mesh onto a disk-like surface. The vertices
Surface geometry is often modeled with irregular triangle meshes. and edges along the cut paths are represented redundantly (typically
The process of remeshing refers to approximating such geometry twice) along the boundary of this disk. Next, we parametrize this
using a mesh with (semi)-regular connectivity (e.g. [3, 13]). cut surface onto the square domain of the image, and sample the
Resampling geometry onto a regular structure offers a number geometry at the 2D grid samples.
of benefits. Compression is improved since the connectivity
of the samples is implicit. Moreover, remeshing can reduce Representing surfaces as geometry images presents challenges:
the non-uniformity of the geometric samples in the tangential A cut must be found that opens the mesh into a topological
surface directions, thus reducing overall entropy [10]. The disk, and that also permits a good parametrization of the surface
regularity of sample neighborhoods helps in applying signal- within this disk. We describe an effective, automatic method for
processing operations and in creating hierarchical representations cutting arbitrary 2-manifold meshes (possibly with boundaries).
for multiresolution viewing and editing [14, 24]. The image boundary must be parametrized such that the
However, current techniques for remeshing arbitrary surfaces reconstructed surface matches exactly along the cut, to avoid
create only semi-regular meshes. The original mesh is typically cracks. Traditional texture mapping is more forgiving in this
decomposed into a set of disk-like charts, onto which the geometry respect, in that color discontinuities at boundaries are less
is parametrized and sampled. Although the sampling on each noticeable.
chart follows regular subdivision, the chart domains form an The parametrization must evenly distribute image samples over
irregular network over the surface. This irregular domain network the surface, since undersampling would lead to geometric
complicates processing, particularly for operations that require blurring. We do not make a technical contribution in this
accessing data across neighboring charts. In contrast, texture data is area, but simply apply the geometric-stretch parametrization
typically represented in a completely regular fashion, as a (possibly of [18, 17].
compressed) 2D array of [r, g, b] values. This distinction, among Straightforward lossy compression of the geometry image may
others, causes geometry and textures to be treated and represented introduce tears along the surface cut. We allow fusing of the cut
quite differently by current graphics hardware. by encoding the cut topology as a small data sideband.
Geometry images have the following limitations:
They cannot represent non-manifold geometry.
Unwrapping an entire mesh as a single chart can create
parametrizations with greater distortion and less uniform sam-
pling than can be achieved with multiple local charts, particu-
larly for surfaces of high genus.
In this paper, we describe an automatic system for converting
arbitrary meshes into geometry images and associated attribute
maps (Figure 1). We demonstrate that they form a practical and
elegant representation for a variety of graphical models (Figure 7).
(a) Original mesh with cut (b) Geometry image 257257 (c) Geometry reconstructed (d) Geometry reconstructed
70K faces; genus 0 (b) Compr. to 1.5KB (not shown) entirely from b entirely from b

(e) Geometry of d topology-fused (f) Normal-map image 512512 (g) Geometry of c (h) Geometry of e
using sideband data (f) Compr. to 24KB (not shown) normal-mapped using f normal-mapped using f
Figure 1: Creation, compression, and rendering of a geometry image. Images b and f (not shown) are compressed using an image wavelet-
coder. Geometry image is 12-bit [x, y, z] visualized as [r, g, b]. Normal-map image is 8-bit [nx , ny , nz ] visualized as [r, g, b].

2 PREVIOUS WORK into two boundary edges to form the opened cut  . This directed
loop of edges  is the boundary of M  . We say that two edges in 
There exist several schemes for semi-regular remeshing of arbitrary
are mates if they result from the splitting of an edge in .
surfaces. Eck et al. [3] achieve remeshing by cutting a mesh
into multiple charts using a Voronoi-like decomposition. Each A vertex v with valence k in is replicated as k vertices in  .
chart is parametrized using a harmonic map, sampled using a Vertices in that have valence k  = 2 in the cut are called cut-nodes.
regular triangular subdivision pattern, and compressed using a (We still refer to these as cut-nodes when replicated in  .) A cut-
triangular wavelet construction [14]. Khodakovsky et al. [10] path is the set of boundary edges and vertices between two ordered
use the MAPS scheme [13] to partition the mesh into charts cut-nodes in the loop  . Each cut-path has a mate defined by the
and create the chart parametrizations. They obtain impressive mates of its edges (unless its edges were boundary edges in ).
compression results using zero-tree coding of local-frame wavelet Let D be the domain unit square for the geometry image. The
coefficients. Lee et al. [12] create a multi-chart domain using mesh parametrization is a piecewise linear map from the unit square
simplification. They define a subdivision surface over this domain D to M  , defined by associating domain coordinates (s, t) with each
and fit it to the original surface. The fit residual is expressed as a mesh vertex in M  . The domain D has a rectilinear nn grid, where
semi-regular scalar displacement map over the smooth subdivision grid points have coordinates (i/(n1), j/(n1)) with i, j = 0. . n1.
surface. Guskov el al. [7] use a MAPS-like approach to create We evaluate at the grid points to sample the mesh geometry, as
multiple charts. These charts are recursively subdivided, and newly well as any other surface attributes (e.g. color, skinning weights,
introduced vertices are expressed using displacements from the radiance transfer coefficients).
previous mesh, mostly as scalar displacements.
In our setting, previous semi-regular remeshing approaches can The geometry image samples are used to reconstruct an approxi-
be viewed as representing a surface as a collection of abutting mation of M. In this work, we use linear basis functions (triangles)
geometry images. The crux of our contribution is to represent the to define the reconstruction interpolant for geometry. Our goal is to
entire surface as a single geometry image, by cutting the surface find a good cut and parametrization , such that this reconstruc-
and sampling it using a completely regular quad grid. We optimize tion is a good approximation of M for moderate sampling rates.
the creation of the cut to allow for a good parametrization.
Approach overview Our strategy for finding a good cut and
3 CREATION OF GEOMETRY IMAGES
parametrization is as follows. We first find a topologically
From a 2-manifold triangle mesh M, we create a geometry image sufficient cut, and create an initial parametrization using this cut.
consisting of an n n array of [x, y, z] data values. If we plan to We use information from the parametrization to improve the cut,
render using normal mapping, we also create another 2D array of and reparametrize based on the new cut. This process of cutting
normal values [nx , ny , nz ]. (See Figure 1.) and reparametrizing is iterated until the parametrization no longer
Our approach is to cut the mesh M to form a new mesh M  that improves. To aid in the exposition, we first describe how a
has the topology of a disk (Figure 2). The cut is specified as a set parametrization is found given any cut (Section 3.1). We then
of edges in M. To create M  , we split each non-boundary edge in describe how the space of cuts is explored (Section 3.2).
3.1 Parametrization 3.2 Cutting
For now, assume that we are given a cut . To create a We now describe how we automatically find a good cut for M.
parametrization, we first fix a mapping between the opened cut  Starting with a surface of arbitrary genus, we first find an initial cut
and the boundary of the unit square D. Next, we solve for a map that opens M into a disk. Given the resulting topological disk, we
of M  onto D that is consistent with these boundary conditions. We use a novel algorithm to augment the cut in order to improve the
now describe these two steps in more detail. subsequent parametrization and reconstruction quality.
Boundary parametrization In order to avoid cracks in the Initial cut It is well known that any closed surface can be opened
reconstructed geometry, it is necessary that each cut-node in  be into a topological disk (called a polygonal schema) by cutting along
exactly sampled in the remesh. This implies that we must map cut- an appropriate set of edges [15]. Such a cut was used in [5] as
nodes to grid points on the boundary of D. (Other vertices in  are part of a geometric modeling system for creating smooth surfaces.
not constrained to lie on grid points.) In addition, cut-path mates Piponi and Borshukov [16] describe an interactive system allowing
must be sampled at identical surface points to avoid cracks, which a user to manually cut a genus-zero manifold into a single chart
requires that cut-path mates be allocated the same length on the using a tree of edge cuts.
boundary of D. To accomplish this, we allocate for each cut-path The computational complexity of optimally cutting a mesh of
an amount of the boundary proportional to its length in  . This arbitrary genus into a disk is studied in [4]. Algorithms for finding
allocation is then rounded to an integer multiple of 1/(n 1). If special kinds of cuts (those that form reduced and canonically
due to rounding we have over- or under-allocated the boundary, we reduced polygonal schemata) are described in [2, 11, 21].
redistribute the residual to the various cut-paths in units of 1/(n1), Our algorithm, which is most similar to that of [2], works as
making sure to treat cut-path mates identically. Note that an nn follows. If the mesh has boundaries, let B be the set of original
geometry image can represent a surface with genus at most n. boundary edges. This set remains frozen throughout the algorithm,
To avoid degeneracies, we must enforce two more constraints. and is always a subset of the final cut . After removing a single
First, no triangle in M  can have all its three vertices mapped to one seed triangle from the mesh, we apply two phases.
of the four sides of the square, for it would become parametrically In the first phase we repeatedly identify an edge e  B adjacent
degenerate. If such a triangle arises, we split the triangle by to exactly one triangle, and remove both the edge and the triangle.
introducing new vertices at the midpoints of its non-boundary Note that the two remaining edges of the triangle are left in the
edge(s), and split neighboring triangles so as to avoid T-junctions. simplicial complex, even if they are dangling. In order to obtain a
Second, as we lay out  along the boundary of D we must break result of minimal radius, we order triangle removals according to
any edge that spans one of the four corners of D. Otherwise a single their geodesic distance from the seed triangle. When this first phase
boundary edge in M  would map to an L shape in D. The edge is terminates, we have removed a topological disk that includes all of
broken by introducing a vertex at the domain corner, thus splitting the faces of the mesh. Thus, the remaining vertices (which is in
its adjacent triangle into two. To enforce topological consistency fact all of them), and the remaining edges must form a topological
across the cut, the same procedure is applied to its mate edge. cut of M. At this point, consists of a set of connected loops
Finally, we find that placing a valence-1 cut-node at a corner of along with some unnecessary trees of edges (and is similar to the
D results in poor geometric behavior, so if this occurs we rotate the construction of [20]).
boundary parametrization. In a second phase, we repeatedly identify a vertex adjacent to
exactly one edge (i.e. a dangling edge), and remove both the vertex
Interior parametrization Having fixed the boundary of the and the edge. This second phase terminates when all the edge trees
parametrization, we now solve for its interior. When creating a have been trimmed away, leaving just the connected loops. Since
parametrization, there are numerous metrics that can be used to the resulting cut may be serrated (it is not made up of shortest
measure its quality, e.g. [3, 6, 8, 13, 16]. For our application, paths), we straighten each cut-path in by computing a constrained
an ideal metric would be some measure of surface accuracy after shortest path that connects its two adjacent cut-nodes and stays
sampling and reconstruction. As shown by the analysis in [17], within a neighborhood of the original cut-path.
the L2 geometric-stretch metric introduced in [18] is in fact an
For the case of a closed mesh of genus 0, the resulting will
approximation of this ideal measure.
consist of a single vertex, since it has no loops. Because our
Geometric stretch measures the amount of spacing that occurs parametrization requires that we map  onto a square, we add back
on the surface when the parameter domain is uniformly sampled. to two adjacent mesh edges.
Thus, minimizing geometric stretch tends to uniformly distribute
samples on the surface. In [17], the stretch metric is shown to Iterated cut augmentation Through experiment, we have found
be related to signal-approximation error (SAE) the difference that to obtain efficient geometry images, it is important for to
between a signal defined on the surface and its reconstruction pass through the various extrema of M. For example, in the hand
from a discrete grid sampling. Specifically, the stretch metric model a good cut should pass through its five fingers (see Figure 2).
corresponds to the first-order Taylor expansion of SAE under the Therefore our goal is to find these extrema and augment the cut so
assumption of locally constant reconstruction. In our context, the that it passes through them. A similar subproblem is investigated by
signal is the geometry itself, and therefore geometric stretch can be Sheffer [19], who classifies extrema as vertices with high (discrete)
seen as a predictor of geometric reconstruction error. In Section 5, curvature. Unfortunately, this type of local method will not be able
we show the advantage of using a geometric-stretch parametrization to find protrusions with widely distributed curvature.
over the Floater shape-preserving parametrization. Our approach to finding extrema is to search for mesh re-
We compute a geometric-stretch parametrization using the gions that behave poorly (have large geometric stretch) under a
hierarchical optimization algorithm described in [17]. First, parametrization using the current cut. Specifically, we map the ver-
the interior of M  is simplified to form a progressive mesh tices of  to the unit circle C, spaced according to their edge lengths
representation [9]. The few interior vertices in the resulting base over the surface. (We use the unit circle at this point instead of the
mesh are optimized within D by brute-force. Then, we apply unit square in order to avoid boundary constraints.) The cut mesh
vertex splits from the progressive mesh to successively refine the M  is parametrized into the interior of C using the shape-preserving
mesh. For each inserted vertex, we optimize the parametrization parametrization of Floater [6]. Given the resulting map we identify
of its neighborhood to minimize stretch using a local, non-linear the triangle with maximum geometric stretch, and pick one of its
optimization algorithm. vertices as an extremal vertex.

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


Figure 2: Columns (ad) show iterations of the cut improvement algorithm. Upper images show the mesh M with the current cut (blue
except red where occluded). Bottom images show the Floater parametrization (over circle) of the corresponding M  , together with the shortest
path to an extremal point, which will be added to . Column (e) shows the final cut and the geometric-stretch parametrization (over square).

The intuition for this method is that any protrusion of the mesh 3.3 Topological sideband
experiences high geometric stretch under a Floater parametrization. A geometry image is a parametric sampling of the topological
For instance, it can be shown that when parametrizing a tube closed disk M  . Its reconstruction looks like M because its boundary
at its top and open at its base, a triangle at a height h from the base vertices coincide geometrically. For some applications though, it
has geometric stretch exponential in h, reaching a maximum at the is important to be able to fuse the boundary of D so that it has the
tube apex. It is important to use the Floater parametrization for original topology of . This fusing could be achieved by searching
protrusion detection, since the geometric-stretch parametrization for geometric correspondences on the image boundary, but this
would evenly distribute stretch, thus hiding the extrema. process might be error-prone, particularly if the geometry image
Having identified an extremal point, we find the shortest path undergoes lossy compression.
from it to the current boundary of M  (measuring distance on the Since the necessary topological cut information is extremely
mesh), and add this path to . This maintains the invariant that is compact, we record it into a sideband signal as follows. We
a valid cut of M. associate a pair of labels e.g. {a, a} to each cut-path and its mate.
We repeatedly apply this augmentation process, as shown in We then store the string of labels corresponding to the sequence
Figure 2. To determine when to stop, we run our geometric-stretch
of cut-paths on the boundary of M  , e.g. ababcc. From this string,
parametrization algorithm (Section 3.1) after each cut, and stop if
we can recover the topology of the cut, i.e. the valence k of each
the geometric stretch increases.
cut-node in and the ordering of the cut-nodes along  . We also
As a further improvement in the case of genus-zero meshes,
store for each cut-path a its discretized length on the boundary of
when we find the first extremal point, we discard the original cut,
domain D, and we store the starting boundary location of the first
which was based on an arbitrary random seed point, and replace the
cut-path. From this topological and parametric information, we can
cut with a pair of adjacent edges at this extremum.
later establish the correspondence of all boundary grid vertices.
Cutting summary This pseudocode summarizes our algorithm: The size of this sideband information is O(q log n) bits, where
function Cut and parametrize(mesh M) q is the number of cut-paths and n is the sampling rate over D.
Remove seed triangle. For our models, q ranges between 3 and 10, and the sideband is
while there remains an edge e adjacent to only one triangle t approximately 12 bytes long.
Remove e and t.
while there remains a vertex v adjacent to only one edge e 4 APPLICATIONS
Remove v and e. Rendering To render geometry images on current hardware, we
Cut := remaining edges and vertices. span each 22 quad of grid points using two triangles, by splitting
if only a single vertex remains in then along the shorter of the two diagonals.
Add back two adjacent edges to . Level-of-detail rendering is implemented by mip-mapping the
Straighten each cut-path in . geometry image, as shown in Figure 3. In order to avoid cracks
Param := geometric-stretch parametrization using . at multiple levels of details, we use geometry images of size
repeat (2j + 1) (2j + 1), and minify using simple sub-sampling. Also,
f := Floater parametrization using . the boundary mapping of Section 3.1 is constructed to place cut-
t := triangle with maximal stretch under f . nodes to grid-points of the lowest intended resolution (6565 for
s := shortest path on M from t to . all of our examples). Unlike [16], our boundary samples coincide
 := + s. exactly across the cut so we need no special boundary treatment,
 := geometric-stretch parametrization using  . even for mip-mapping.
if stretch( ) > stretch() break. For hardware that implements normal mapping, we also create
:=  ; :=  . a normal map using the exact same parametrization . Usually,
Report cut and parametrization . we sample the normals into an image of higher resolution than the
Original mesh (342K faces) Geometry image (257257) Mip-mapped (129129) Mip-mapped (6565)
Figure 3: Mip-mapping a geometry image. As in all examples, the boundary parametrization is constructed for a 6565 domain grid.

geometry since the normal-map signal tends to be more detailed. 90


During rendering, the normal-map signal is rasterized over the tri- 85
angles by hardware texture-mapping, using bilinear reconstruction 80
of each quad in the normal map. (Texture coordinates at the vertices 75
are assigned the range [(0. 5)/n , . . . , (n 0. 5)/n ] where n is the 70

PSNR
texture resolution, for correspondence with the texture samples.) 65
Because geometry images have the same regular structure as 60
Khodakovsky
texture images, one can envision hardware that would use bilinear 55 513 geometric-stretch
(or even bicubic) basis functions to reconstruct the geometry. 50 257 geometric-stretch
Moreover, the rendering process should be inherently simpler 45
513 Floater
than with traditional texture mapping. The attribute samples can 40
be accessed in scan order rather than backward-mapped through 100 1000 10000 100000 1000000 10000000
random-access texture coordinates. Also, the attribute samples have File Size (bytes)
a regular correspondence with the geometry samples, and therefore
do not require general tri-linear interpolation lookup. Figure 4: Rate distortion for geometric reconstruction from com-
Both view-frustum and backface culling could be implemented pressed geometry images of the bunny (at 257257 and 513513
in a unified setting by constructing hierarchies on the geometry resolutions, and using a Floater-parametrization), compared to [10].
image and the normal image respectively.
Compression and Decompression For compression we use the
image-compression coder provided by Davis [1]. For decompres-
sion, we decode the wavelet coefficients to recreate an nn grid of
[x, y, z] values. Our wavelet decoder produces floating-point coor-
dinate values as output. Quantizing these values to 12-bit integers
provides sufficient resolution for our models.
Since this wavelet coding is lossy, cut-path mates may be recon-
structed differently, leading to cracks in the mesh (see Figure 1d).
To address this problem, we also record and losslessly compress the
topological sideband (Section 3.3). During decompression, we use
this topological information to geometrically fuse the cut. We first
determine the equivalence classes of boundary grid points. Most Figure 5: Example artifacts in the Buddha geometry image: aliasing
boundary grid point are paired up with a single other grid point, (jaggedness) near sharp features, and regions of high anisotropy.
while grid points that sample a cut-node are grouped with k 1
other grid points, where k is the valence of the cut-node in . We Geometry images tend to be relatively smooth, and therefore pro-
average together the [x, y, z] values of equivalent grid points, and vide opportunity for compression. Even simple image compressors
replace their data with this common average. We record the vector will define basis functions that span the whole surface, and there-
displacement added due to this averaging for later error diffusion. fore allow high compression ratios. Figure 4 shows rate-distortion
This simple averaging scheme gives rise to a continuous surface, curves when using the image wavelet-coder of [1]. These curves
but can lead to unsightly steps in the reconstructed geometry near measure the reconstruction accuracy for various compression rates
the cut. In order to smooth these steps, we apply a simple error dif- applied to the geometry image. Error is measured as Peak Signal
fusion technique, spreading the displacements towards the center of to Noise Ratio PSNR = 20 log10 (peak/d), where peak is the bound-
the square. The result of this fusing process is shown in Figure 1e. ing box diagonal and d is the symmetric rms Hausdorff error (ge-
ometric distance) between the original mesh and the reconstructed
5 RESULTS geometry. The blue curves show results for wavelet-compressed
We have run our system on a number of high-resolution models, geometry image created using a geometric-stretch parametrization
with and without boundaries. Uncompressed examples are shown and two different sampling rates. The green curve corresponds to
in Figure 7. These required about an hour to convert offline. The a geometry image formed using the same cut, but with a Floater
conversion bottleneck is the sequence of parametrizations in the parametrization, and is noticeably less efficient. For comparison,
iterated cut augmentation process. Currently, we set the geometry the red curve is the result of the compression scheme described
image resolution n manually (most often n = 257), but this in [10], which is more efficient by about 3dB. Reconstructions from
parameter could be set automatically to achieve a desired accuracy. compressed geometry images are shown in Figure 6.
(a) 49 KB (b) 12 KB (c) 3 KB (d) 49 KB
Figure 6: (ac) Surfaces reconstructed from a 257257 geometry image under increasing levels of wavelet compression. (d) Reconstructed
from a 257257 Floater-parametrized geometry image. All models are flat-shaded.

6 SUMMARY AND DISCUSSION [5] F ERGUSON , H., ROCKWOOD , A., AND C OX , J. Topological design
of sculptured surfaces. In SIGGRAPH 92, pp. 149156.
We have introduced geometry images, a completely regular repre-
sentation for approximating the geometry of an irregular mesh. Ge- [6] F LOATER , M. Parametrization and smooth approximation of surface
triangulations. CAGD 14, 3 (1997), 231250.
ometry images can be easily rendered and compressed using current
hardware and software. Due to their simplicity, we envision that ge- [7] G USKOV, I., V IDIMCE , K., S WELDENS , W., AND S CHR ODER , P.
ometry images may inspire new hardware rendering approaches. Normal Meshes. In SIGGRAPH 2000, pp. 95102.
We have found that we can create efficient geometry images on [8] H AKER , S., A NGENENT, S., TANNENBAUM , A., K IKINIS , R.,
a wide variety of models. However, models of high genus can be S APIRO , G., AND H ALLE , M. Conformal Surface Parameterization
problematic. Such models may require long cuts to open up all the for Texture Mapping. IEEE TVCG 6, 2 (2000), 181189.
topological handles. In that case, much of the surface lies near the [9] H OPPE , H. Progressive Meshes. In SIGGRAPH 96, pp. 99108.
cut boundary, making it difficult to create a parametrization without [10] K HODAKOVSKY, A., S CHR ODER , P., AND S WELDENS , W. Progres-
significant geometric stretch and poor resampling. Figure 5 shows sive Geometry Compression. In SIGGRAPH 2000, pp. 271278.
examples of trouble areas in the remeshing of the Buddha model. [11] L AZARUS , F., P OCCHIOLA , M., V EGTER , G., AND V ERROUST,
Our genus-6 Buddha model was obtained by filtering out tiny A. Computing a Canonical Polygonal Schema of an Orientable
topological handles from a genus-104 scanned model [23]; working Triangulated Surface. In ACM SoCG 2001, pp. 8089.
directly on the genus-104 surface would have been impossible. [12] L EE , A., M ORETON , H., AND H OPPE , H. Displaced Subdivision
In general, remeshing techniques can have difficulty capturing Surfaces. In SIGGRAPH 2000, pp. 8594.
sharp surface features accurately at low sampling rates. In semi- [13] L EE , A., S WELDENS , W., S CHR ODER , P., C OWSAR , L., AND
regular remeshing, one technique to improve accuracy is to make D OBKIN , D. MAPS: Multiresolution Adaptive Parameterization of
the chart boundaries correspond with the most significant features, Surfaces. In SIGGRAPH 98, pp. 95104.
so that the subdivided domain edges follow these features [13].
[14] L OUNSBERY, M., D E ROSE , T., AND WARREN , J. Multiresolution
Another technique is feature-sensitive remeshing [22], which warps Analysis for Surfaces of Arbitrary Topological Type. ACM TOG 16,
the parametrization as a post-process to align the remesh edges 1 (January 1997), 3473.
with the sharp surface features. When creating our geometry
[15] M UNKRES , J. Topology. Prentice Hall, 2000.
images, adding a pass of feature-sensitive remeshing could improve
reconstruction results for meshes with sharp geometry. [16] P IPONI , D., AND B ORSHUKOV, G. D. Seamless Texture Mapping
Since we used off-the-shelf compression code, we did not of Subdivision Surfaces by Model Pelting and Texture Blending. In
SIGGRAPH 2000, pp. 471478.
explore the extra savings that could be obtained using local-frame
detail representation [10]. Adding this to our system may improve [17] S ANDER , P., G ORTLER , S., S NYDER , J., AND H OPPE , H. Signal-
compression efficiencies. Specialized Parametrization. Microsoft Research MSR-TR-2002-27
(January 2002).
ACKNOWLEDGEMENTS [18] S ANDER , P., S NYDER , J., G ORTLER , S., AND H OPPE , H. Texture
Mapping Progressive Meshes. In SIGGRAPH 2001, pp. 409416.
We gratefully thank Zoe Wood for providing the topologically sim- [19] S HEFFER , A. Spanning Tree Seams for Reducing Parameterization
plified dragon and Buddha, Pedro Sander for the parametrization Distortion of Triangulated Surfaces. Shape Modelling International
code, and Stanford University and Cyberware for models. (2002).
[20] TAUBIN , G., AND ROSSIGNAC , J. Geometric compression through
REFERENCES
topological surgery. ACM TOG 17, 2 (1998), 84115.
[1] DAVIS , G. Wavelet Image Compression Construction Kit. [21] V EGTER , G., AND YAP, C. K. Computational complexity of
http://www.geoffdavis.net/dartmouth/wavelet/wavelet.html. combinatorial surfaces. In ACM SoCG 1990, pp. 102111.
[2] D EY, T. K., AND S CHIPPER , H. A new technique to compute
[22] VORSATZ , J., R OSSL , C., KOBBELT, L., AND S EIDEL , H.-P.
polygonal schema for 2-manifolds with application to null-homotopy Feature Sensitive Remeshing. Computer Graphics Forum 20, 3
detection. Discrete and Computational Geometry 14 (1995), 93110. (2001), 393401.
[3] E CK , M., D E ROSE , T., D UCHAMP, T., H OPPE , H., L OUNSBERY, [23] W OOD , Z., H OPPE , H., D ESBRUN , M., AND S CHR ODER , P.
M., AND S TUETZLE , W. Multiresolution Analysis of Arbitrary Isosurface topology simplification. Microsoft Research MSR-TR-
Meshes. In SIGGRAPH 95, pp. 173182. 2002-28 (January 2002).

[24] Z ORIN , D., S CHR ODER , P., AND S WELDENS , W. Interactive
[4] E RICKSON , J., AND H AR -P ELED , S. Cutting a surface into a disk.
multiresolution mesh editing. In SIGGRAPH 97, pp. 259268.
ACM SoCG 2002.
Original (500K faces; genus 1) Original (500K faces; genus 6) Original (47K faces; genus 3) Original (480K faces; genus 0)

Geometry image (257x257) Geometry image (257x257) Geometry image (129x129) Geometry image (257x257)

Reconstruction (PSNR=66.8) Reconstruction (PSNR=64.9) Reconstruction (PSNR=75.2) Reconstruction (PSNR=78.6)

Normal map (512x512) Normal map (512x512) Normal map (256x256) Normal map (512x512)

Normal-mapped reconstruction Normal-mapped reconstruction Normal-mapped reconstruction Normal-mapped reconstruction


Figure 7: Examples: original meshes with cut, geometry images and their reconstructions, and use of normal-mapping.

You might also like