Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
[2.1] 3D Imaging, Analysis and Applications-Springer-Verlag London (2012).pdf
Скачиваний:
12
Добавлен:
11.12.2021
Размер:
12.61 Mб
Скачать

170

W.A.P. Smith

Fig. 4.18 The angles used in the cotangent weights scheme for surface normal computation

The Laplacian relates absolute and differential coordinates as follows: If the long vector x RN contains the x coordinates of the vertices then Lx = Dδx , where δx RN is a long vector of the x components of the differential coordinates of the vertices. Similarly for the y and z coordinates. Note that spectral analysis of the Laplacian can be used to perform signal processing operations on an irregularly triangulated mesh [68].

From differential geometry it is known that an infinitesimal curvilinear integral about a point on a smooth surface is related to the mean curvature H (vi ) at vi and the surface normal ni :

 

1

 

 

γlim0

 

(vi v)dl(v) = −H (vi )ni ,

(4.28)

γ

| |→

| |

v γ

 

where γ is a closed simple surface curve l(v) around vi . By rewriting the differential coordinate vector, it can be seen that a discrete approximation to this integral can be made:

 

1

 

 

 

Adj(i)

 

(vi vj ) ≈ −H (vi )ni .

(4.29)

 

j Adj(i)

 

Hence, the direction of the differential coordinate vector approximates the surface normal and the magnitude is proportional to the mean curvature [68]. This provides an alternative means to surface normal calculation for a mesh which is motivated by differential geometry. A final alternative proposed by Meyer et al. [42] is based on cotangent weights:

cot

=

1

1

(cot αij + cot βij )(vi vj ),

(4.30)

δi

 

 

 

| i | j Adj(i)

2

where | i | is the size of the Voronoi cell of i and αij and βij denote the two angles opposite the edge {i, j } (see Fig. 4.18).

4.6 Compression and Levels of Detail

Broadly speaking, the storage requirements for 3D data can be reduced in two ways: storing a 3D representation in less space (compression) or deriving a lower resolu-

4 Representing, Storing and Visualizing 3D Data

171

tion representation that approximates the original data. We have already seen some representations that lead to space efficient storage of 3D data. For example, subdivision surfaces require only the storage of a low resolution base mesh and subdivision rule, while the octree representation uses adaptive resolution depending on the complexity of the volume. Compression of 3D data in general [1, 49] is a more challenging problem than is solved by the relatively mature technologies available for compression of audio, image and video data. Techniques for 3D data compression can be categorized into three classes of approach:

Mesh-based methods. These methods involve traversal of a polygonal mesh and encoding of the mesh structure in a manner that can be compressed. An example of such an approach is topological surgery [69]. This method proceeds by quantizing vertex positions within the desired accuracy. A vertex spanning tree is then used to predict the position of each vertex from 2, 3 or 4 of its ancestors in the tree. Finally, the correction vectors required to recover the original positions are entropy encoded. Another popular approach is based on a spectral analysis of the mesh Laplacian [27]. An eigendecomposition of the Laplacian matrix (see Sect. 4.5.2) yields an orthonormal set of basis vectors onto which the geometry signals (vectors of x, y and z components) can be projected. By discarding high frequency components of the decomposition (i.e. those eigenvectors with small eigenvalues), the mesh can be compressed such that only high frequency detail is lost.

Progressive and hierarchical methods. We have already seen subdivision surfaces that fall into this category. Another important approach is the compressed progressive mesh [24]. In the original progressive mesh, a mesh is encoded as a form of reverse simplification. The opposite of an edge collapse operation is a vertex split, in which a vertex is divided into two and additional edges and faces are added to the mesh. A progressive mesh represents a high resolution mesh as a series of vertex split operations starting from a base mesh. Although this allows progressive transmission of increasingly detailed mesh data, there is a storage overhead, which means space requirements increase. Pajarola and Rossignac [47] showed how this representation can be compressed.

Imaged-based methods. A 3D surface may be represented in image space. This can either be native to the representation (in the case of a range image or bump map) or via a process known as surface parameterization or surface flattening [59]. Once represented as an image, any existing image compression algorithm may be applied to the data. However, it is important to note that the objectives of lossy image compression may not yield correspondingly high quality results in the surface domain since the redundancies in the two data sources may not be the same. One example of an image-based approach is geometry images [20]. Geometry is captured as a 2D array of quantized points. To transform a mesh to this representation, an arbitrary mesh is cut along a network of edge paths and the resulting single chart is parameterized onto a square. Face connectivity is implicit in the representation and bump maps or texture can be stored in the same parameterization. Compressing the resulting data using an image wavelet-encoder allows dramatic reductions in storage requirements without severely affecting the resulting geometry.