Elsevier

Computers & Graphics

Volume 29, Issue 3, June 2005, Pages 451-461
Computers & Graphics

Unsupervised learning applied to progressive compression of time-dependent geometry

https://doi.org/10.1016/j.cag.2005.03.021Get rights and content

Abstract

We propose a new approach to progressively compress time-dependent geometry. Our approach exploits correlations in motion vectors to achieve better compression. We use unsupervised learning techniques to detect good clusters of motion vectors. For each detected cluster, we build a hierarchy of motion vectors using pairwise agglomerative clustering, and succinctly encode the hierarchy using entropy encoding. We demonstrate our approach on a client–server system that we have built for downloading time-dependent geometry.

Introduction

In recent years, there has been a significant growth in e-commerce and entertainment over the Internet. Triangulated 3D geometric models are starting to appear on the World Wide Web as virtual shopping malls and virtual games become more common. Currently, most of the geometric data are static, i.e., they do not vary with time. However, if one were to look at the 2D world, where images (static 2D data) were followed by video, one can expect time-dependent geometry to become a more common form of data on the Internet of the future. Time-dependent geometry arises in simulations of many naturally occurring phenomena, e.g., water waves, plant growth, molecular dynamics, cloth animation, etc. In this paper, we describe how to compress time-dependent geometry for the purpose of transmission over the World Wide Web.

There has been a great deal of research on compressing static geometry [1], [2], [3], [4], [5], [6], but very little work has been done on compressing time-dependent 3D geometric data. The work by Lengyel [7] compresses dynamic meshes by solving for few-parameter deformation models and encoding the residuals. The prototype system considered in their work uses affine transform as the deformation model. However, the problem of determining the class of deformation for a vertex is still open, thus limiting the applicability of their algorithm. In our approach, we view motion as simple translation. In many examples of dynamic models (e.g., water, molecular simulation), the object is non-rigid and fluid. The components that comprise the object (e.g., atoms in a molecule, particles simulating waves on water) move in a seemingly independent manner, yet create concerted effects in the object. In such particle-like systems [8], it is sufficient to model motion as translation. In this paper, our focus is on compressing the motion vectors.

Particles in a dynamic object move in such a way as to create concerted effects in the object. Atoms in a protein may move with different velocities, but their concerted movement can create a channel in the center of the protein [9]. These concerted movements typically imply interesting patterns in the translation vectors and hence low entropy (information content). This observation suggests that one should be able to achieve good compression by exploiting these patterns.

Since motion vectors lack connectivity, connectivity-driven compression algorithms cannot be used to compress them. The geometry-driven compression algorithm by Gandoin and Devillers [10] does not take advantage of motion correlations. Compression algorithms based on building a minimum Hamiltonian path through the motion vectors also do not take advantage of motion correlations. In this paper, we describe the step we have taken towards exploiting motion correlations for good compression of motion vectors. We use ideas from unsupervised learning theory to find good clusters of motion vectors. By encoding vectors within each cluster in its own local coordinate system, we achieve de-correlation of motion vectors. The main contributions of our paper are the following:

  • 1.

    We show that good compression can be achieved by exploiting motion correlations.

  • 2.

    We show that good clusters can be found using the expectation maximization algorithm from unsupervised learning theory.

  • 3.

    We demonstrate a progressive compression scheme for motion vectors suitable for progressive downloads.

  • 4.

    We demonstrate a system that supports progressive download of dynamic, geometric data at varying precisions.

Section snippets

Related work

Compression of static geometry has been an active area of research among computer graphics researchers since the article by Deering on generalized triangle strips [2]. Most algorithms are connectivity-driven, i.e., they compress the connectivity of a 3D model first and encode the geometry (vertex coordinates) in terms of the connectivity [1], [3], [4], [5], [6]. Connectivity determines the order of enumeration of vertices and provides useful hints for coordinate prediction. Geometry compression

Clustering motion vectors

As mentioned earlier, particles in a dynamic object move to create concerted effects in the object, i.e., their motion vectors exhibit correlations. In Fig. 1, we show two orthogonal views of motion vectors of atoms in a molecular simulation, where each motion vector is plotted as a point. These motion vectors were obtained from biological experiments on the opening of a channel in an Escherichia Coli bacterium. In this example, the vectors form a five-sided structure resembling a badminton

Progressive compression of motion vectors

Recall that the goal of our work is the compression of time-dependent geometry for the purpose of transmission. Therefore, as mentioned in Section 1, we compress motion vectors in a progressive manner, which enables their transmission from coarse to fine detail. The various steps of our algorithm are shown in Fig. 4. The EM algorithm, described in the previous section, is the first step of our algorithm. It outputs the most likelihood estimate of the probabilities, means, and covariances of the

Handling multiple frames

In the discussion so far, we have concentrated on the progressive compression of motion vectors, without mentioning how they are obtained. In general, motion vectors can be computed as the difference in particle positions in the ith and (i+k)th frames. When k=1, the resulting motion vectors represent particle motion in fine detail. As k is increased, the resulting motion vectors are coarse approximations of particle motion. In our approach, we build a hierarchy of coarse to fine approximations

Progressive transmission of time-dependent geometry

We now describe a system that we have built for the progressive download of time-dependent geometry. In Fig. 9, we show the user interface at the client. The vertical bar can be used to control how motion vectors are to approximate the motion. The intervals along this bar indicate how motion vectors are to be computed. The frames that are the end points of an interval are used to compute the motion vectors for that interval. For example, in Fig. 9, motion is approximated using three sets of

Results

In this section, we present the results of running our algorithm on data obtained from a molecular dynamics simulation. The simulation consists of the opening of a channel in an (E. Coli) bacterium molecule [22]. The data consists of five frames (Frames 04), and each frame consists of the 3D coordinates of 10,585 atoms (Fig. 10).

With each of the x-, y-, z-coordinates quantized to 16 bits, our algorithm compresses the 10,585 motion vectors between frames 0 and 1 to 35.82 bits per atom. The

Conclusion

In this paper, we have described an algorithm to compress time-dependent geometry by treating motion as simple translation. We have proposed a scheme that takes advantage of correlations in motion by detecting interesting clusters using expectation–maximization. Currently, our algorithm requires the user to specify the number of clusters. In future work, we plan to automatically determine the best number of clusters. We also plan to extend our work to compress 3D geometric models.

Acknowledgements

We would like to acknowledge the anonymous referees for their careful reviews for this paper that have led to a much better presentation of our results. This work has been supported in part by the NSF grants: IIS 00-81847, CCF 04-29753, and CNS 04-03313.

References (23)

  • S. Sukharev et al.

    Structural models of the mscl gating mechanism

    Journal of Biophysics

    (2001)
  • Alliez P, Desbrun M. Valence-driven connectivity encoding for 3d meshes. In: Eurographics 2001 conference proceedings....
  • Deering M. Geometry compression. Proceedings of ACM SIGGRAPH 1995. 1995. p....
  • Gumhold S, Strasser W. Real time compression of triangle mesh connectivity. ACM Transactions on Graphics 1998; 133–140....
  • J. Rossignac

    Edgebreaker: connectivity compression for triangle meshes

    IEEE Transactions on Visualization and Computer Graphics

    (1999)
  • G. Taubin et al.

    Geometric compression through topological surgery

    ACM Transactions on Graphics

    (1998)
  • Touma C, Gotsman C. Triangle mesh compression. In: Graphics interface ’98 conference proceedings. 1998. p....
  • Lengyel JE. Compression of time-dependent geometry. In: Proceedings of the 1999 symposium on Interactive 3D graphics....
  • W.T. Reeves

    Particle systems—a technique for modeling a class of fuzzy objects

    Computer Graphics

    (1983)
  • Huitema H, Van Liere R. Interactive visualization of protein dynamics. Proceedings of IEEE Visualization 2000 2000;...
  • P. Gandoin et al.

    Progressive lossless compression of arbitrary simplicial complexes

    ACM Transactions on Graphics

    (2002)
  • Cited by (2)

    View full text