Person:
Rossignac, Jarek

Associated Organization(s)
Organizational Unit
School of Interactive Computing
School established in 2007
ORCID
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 10 of 16
  • Item
    Connectivity Compression for Irregular Quadrilateral Meshes
    (Georgia Institute of Technology, 1999) King, Davis ; Rossignac, Jarek ; Szymczak, Andrzej
    Applications that require Internet access to remote 3D datasets are often limited by the storage costs of 3D models. Several compression methods are available to address these limits for objects represented by triangle meshes. Many CAD and VRML models, however, are represented as quadrilateral meshes or mixed triangle/quadrilateral meshes, and these models may also require compression. We present an algorithm for encoding the connectivity of such quadrilateral meshes, and we demonstrate that by preserving and exploiting the original quad structure, our approach achieves encodings 30 - 80% smaller than an approach based on randomly splitting quads into triangles. We present both a code with a proven worst-case cost of 3 bits per vertex (or 2.75 bits per vertex for meshes without valence-two vertices) and entropy-coding results for typical meshes ranging from 0.3 to 0.9 bits per vertex, depending on the regularity of the mesh. Our method may be implemented by a rule for a particular splitting of quads into triangles and by using the compression and decompression algorithms introduced in [Rossignac99] and [Rossignac&Szymczak99]. We also present extensions to the algorithm to compress meshes with holes and handles and meshes containing triangles and other polygons as well as quads.
  • Item
    Guaranteed 3.67V Bit Encoding of Planar Triangle Graphs
    (Georgia Institute of Technology, 1999) King, Davis ; Rossignac, Jarek
    We present a new representation that is guaranteed to encode any planar triangle graph of V vertices in less than 3.67V bits. Our code improves on all prior solutions to this well studied problem and lies within 13% of the theoretical lower limit of the worst case guaranteed bound. It is based on a new encoding of the CLERS string produced by Rossignac's Edgebreaker compression [Rossignac99]. The elegance and simplicity of this technique makes it suitable for a variety of 2D and 3D triangle mesh compression applications. Simple and fast compression/decompression algorithms with linear time and space complexity are available.
  • Item
    Solid Modeling
    (Georgia Institute of Technology, 1999) Rossignac, Jarek ; Requicha, Aristides A. G.
    A solid model is a digital representation of the geometry of an existing or envisioned physical object. Solid models are used in many industries, from entertainment to health care. They play a major role in the discrete-part manufacturing industries, where precise models of parts and assemblies are created using solid modeling software or more general computer-aided design (CAD) systems. Solid modeling is an interdisciplinary field that involves a growing number of areas. Its objectives evolved from a deep understanding of the practices and requirements of the targeted application domains. Its formulation and rigor are based on mathematical foundations derived from general and algebraic topology, and from Euclidean, differential, and algebraic geometry. The computational aspects of solid modeling deal with efficient data structures and algorithms, and benefit from recent developments in the field of computational geometry. Efficient processing is essential, because the complexity of industrial models is growing faster than the performance of commercial workstations. Techniques for modeling and analyzing surfaces and for computing their intersections are important in solid modeling. This area of research, sometimes called computer aided geometric design, has strong ties with numerical analysis and differential geometry. Graphic user-interface (GUI) techniques also play a crucial role in solid modeling, since they determine the overall usability of the modeler and impace the user's productivity. There have always been strong symbiotic links and overlaps between the solid modeling community and the computer graphics community. Solid modeling interfaces are based on efficient three-dimensional (3D) graphics techniques, whereas research in 3D graphics focuses on fast or photo-realistic rendering of complex scenes, often composed of solid models, and on realistic or artistic animations of non-rigid objects. A similar symbiotic relation with computer vision is regaining popularity, as many research efforts in vision are model-based and attempt to extract 3D models from images or video sequences of existing parts or scenes. These efforts are particularly important for solid modeling, because the cost of manually designing solid models of existing objects or scenes far excees the other costs (hardware, software, maintenance, and training) associated with solid modeling. Finally, the growing complexity of solid models and the growing need for collaboration, reusability of design, and interoperability of software require expertise in distributed databases, constraint management systems, optimization techniques, object linking standards, and internet protocols. This report provides a brief overview of the solid modeling field, its fundamental technologies, and some important applications.
  • Item
    Blist: A Boolean List Formulation of CSG Trees
    (Georgia Institute of Technology, 1999) Rossignac, Jarek
    Set membership classification algorithms visit nodes of a CSG tree through a recursive divide-and-conquer process, which stores intermediate results in a stack, whose depth equals the height, H, of the tree. During this process, the candidate sets is usually subdivided into uniform cells, whose interior is disjoint from primitives' boundaries. Cells inside the CSG object are identified by combining the binary results of classifying them against the primitives. In parallel systems, which allocate a different process to each leaf of the tree, and in algorithms that classify large collections of regularly spaced candidate sets (points, pixels, voxels, rays, or cross-sections) against the primitives using forward differences, a separate stack is associated with each candidate or cell. Our new representation for CSG trees, called Blist, distributes the merging operation to the primitives and reduces the storage requirement for each cell to log(H+1) bits. Blist can represent any Boolean expression as a list of primitives, each containing a reference to the primitive's description (type, parameter, transformation), a sign, a stamp, and a name. During set membership classification, a label is attached to each cell and passed to the successive primitives in the Blist. When the name written on the label matches the primitive's name, the cell is classified against the primitive. If the result matches the primitive's sign, the name stored in the primitive's stamp is put on the label -- if not, a zero name is used. The elimination of the intermediate CSG nodes and of the recursive merging operations make the Blist architecture particularly well suited for parallel hardware configurations. We provide a simple algorithm for converting CSG expressions to Blists. It uses rotations on the positive form of the tree to reduce the number of bits needed for each label.
  • Item
    Optimal Bit Allocation in 3D Compression
    (Georgia Institute of Technology, 1999) King, Davis ; Rossignac, Jarek
    To use 3D models on the Internet or in other bandwidth-limited applications, it is often necessary to compress their triangle mesh representations. We consider the problem of balancing two forms of lossy mesh compression: reduction of the number of vertices by simplification, and reduction of the number of bits of resolution used per vertex coordinate via quantization. Let A be a triangle mesh approximation for an original model O. Suppose that A has V vertices, each represented using B bits per coordinate. Given a file size F for A, what are the optimal values of B and V? Given a desired error level E, what are estimates of B and V, and how many total bits are needed? We develop answers to these questions by using a shape complexity measure K that allows us to express the optimal value of B for a general model in terms of V and K alone. We give formulas linking B, V, F, E and K, and we provide a simple algorithm for estimating the optimal B and V for an existing triangle mesh with a given file size F.
  • Item
    Compressed Progressive Meshes
    (Georgia Institute of Technology, 1999) Pajarola, Renato B. ; Rossignac, Jarek
    Most systems that support the visual interaction with 3D models use shape representations based on triangle meshes. The size of these representations imposes limits on applications, where complex 3D models must be accessed remotely. Techniques for simplifying and compressing 3D models reduce the transmission time. Multi-resolution formats provide quick access to a crude model and then refine it progressively. Unfortunately, compared to the best non-progressive compression methods, previously proposed progressive refinement techniques impose a signitifant overhead when the full resolution model must be downloaded. The CPM (Compressed Progressive Meshes) appreach proposed here eliminates this overhead. It uses a new "patching" technique, which refines the topology of the mesh in batches, which each increase the number of vertices by up to 50%. Less than 4 bits per triangle encode where and how the topological refinements should be applied. We estimate the position of new vertices from the positions of their topological neighbors in the less refined mesh using a new estimator that leads to representations of vertex coordinates that are 50% more compact than previously reported progressive geometry compression techniques.
  • Item
    Computing and Visualizing Pose-Interpolating 3D Motions
    (Georgia Institute of Technology, 1999) Rossignac, Jarek ; Kim, Jay J.
    CAD and animation systems offer a variety of techniques for designing and animating arbitrary movements of rigid bodies. Such tools are essential for planning, analyzing, and demonstrating assembly and disassembly procedures of manufactured products. In this paper, we advocate the use of screw motions for such applications, because of their simplicity, flexibility, uniqueness, and computational advantages. Two arbitrary control-poses of an object are interpolated by a screw motion, which, in general, is unique and combines a minimum-angle rotation around an axis A with a translation by a vector parallel to A. We explain the advantages of screw motions for the intuitive design and local refinement of complex motions. We present a new, simple and efficient algorithm for computing the parameters of a screw motion that interpolates any two control-poses and explain how to use it to produce animations of the moving objects. Finally, we discuss a new and efficient variant of a known procedure for computing a set of faces which may be used to display the 3D region swept by a polyhedron that moves along a screw motion.
  • Item
    Matchmaker: Manifold Breps for Non-manifold r-sets
    (Georgia Institute of Technology, 1999) Rossignac, Jarek ; Cardoze, David Enrique Fabrega
    Many solid modeling construction techniques produce non-manifold r-sets (solids). With each non-manifold model N we can associate a family of manifold solid models that are infinitely close to N in the geometric sense. For polyhedral solids, each non-manifold edge of N with 2k incident faces will be replicated k times in any manifold model M of that family. Furthermore, some non-manifold vertices of N must also be replicated in M, possibly several times. M can be obtained by defining, in N, a single adjacent face TA(E,F) for each pair (E,F) that combines an edge E and an incident face F. The adjacency relation satisfies TA(E,TA(E,F))=F. The choice of the map A defines which vertices of N must be replicated in M and how many times. The resulting manifold representation of a non-manifold solid may be encoded using simpler and more compact data-structures, especially for triangulated model, and leads to simpler and more efficient algorithms, when it is used instead of a non-manifold representation for a variety of tasks, such as simplification, compression, interference detection or rendering. Most choices of the map A lead to invalid (self-intersecting) boundaries and to unnecessary vertex replications for M. We propose an efficient algorithm, called Matchmaker, which computes a map A, such that there exists an infinitely small perturbation of the vertices and edges of M that produces a valid (non self-intersecting) boundary of a manifold solid. Furthermore, our approach avoids most unnecessary vertex replications.
  • Item
    Connectivity Compression for Irregular Quadrilateral Meshes
    (Georgia Institute of Technology, 1999) King, Davis ; Szymczak, Andrzej ; Rossignac, Jarek
    Many 3D models used in engineering, scientific, and visualization applications are represented by an irregular mesh of bounding quadrilaterals. We propose a scheme for compressing the connectivity of irregular quadrilateral meshes in 0.26-1.7 bits/quad, a 25-45% savings over randomly splitting quads into triangles and applying triangle mesh compression. Our approach is an extension of the Edgebreaker compression approach and of the Wrap&Zip decompression technique.
  • Item
    Grow & Fold: Compression of Tetrahedral Meshes
    (Georgia Institute of Technology, 1999) Szymczak, Andrzej ; Rossignac, Jarek
    Standard representations of irregular finite element meshes combine vertex data (sample coordinates and node values) and connectivity (tetrahedron-vertex incidence). Connectivity specifies how the samples should be interpolated. It may be encoded for each tetrahedron as four vertex-references, which together occupy 128 bits. For simple 3D meshes with a single scalar value per node, non-compressed vertex data occupies 14 times less storage. Our Grow & Fold format reduces the connectivity storage down to 7 bits per tetrahedron: 3 of these are used to encode the presence of children in a tetrahedron spanning tree; the other 4 constrain sequences of "folding" operations, so that they produce the connectivity graph of the original mesh. Additional bits must be used for each handle in the mesh and for each topological lock in the tree. By storing vertex data in an order defined by the tree, we avoid the need to store tetrahedron-vertex references, and facilitate variable coding techniques for the vertex data. We provide the details of simple, loss-less compression and decompression algorithms and describe implementation results.