Skip to main content

Next generation technologies for modeling the full complexity of living and designed structures

Periodic Reporting for period 2 - NGTMod (Next generation technologies for modeling the full complexity of living and designed structures)

Reporting period: 2017-08-01 to 2018-07-31

Digital geometry processing is an important research field which has been extensively developed for more than forty years. It deals with the definition and implementations of models and operations for describing and handling geometrical objects. Computers have become increasingly powerful and are now capable of handling detailed representations of complex objects. In addition, powerful tools have recently been developed that are able to scan real objects in order to reconstruct the corresponding electronic descriptions. For these reasons, real objects can now be described in computers with a very high level of precision, and we can use these precise descriptions to perform analysis and processing tasks on the corresponding objects.

One main challenge for digital geometry processing is the elaboration of geometrical models to describe digital objects and to propose algorithms that use these models to compute information and to handle the objects represented.

Due to the considerable diversity of all the different domains of application, the needs are very varied as each application has its own specificity:
- specific dimension: 2D models in image analysis/processing. 3D models in medical imagery, CAD, geology, etc; 4D for example to describe a 3D animated object, the additional dimension being time, or higher dimensional objects by adding some feature spaces, for example in geographic information systems;
- specific objects to represent: regular when all the cells have the same type versus non-regular; manifold (when each point has a neighborhood equivalent to a ball) versus non-manifold;
- specific relations between objects: two objects can touch several times (multi-incidence) or not; two objects can be adjacent only along one of their faces (quasi-manifold) or along any cell in their boundary.

In this framework, our overall research goal in this project is to design the next generation technologies for modeling the full complexity of living and designed structures. In order to do this, we plan to define a generic purpose representation for geometric structures of arbitrary topology and different high level powerful operations capable of building and modifying this representation. In addition, we want to develop libraries and software implementing our solutions to serve as a basis for future software development in computer graphics.

In the NGTMod proposal, we said “The results of the NGTMod project will improve existing solutions by allowing handling of very big objects in any dimension thanks to compact and streamable representation and powerful operations”. The two first goals were reached thanks to our compact definition of 2D, 3D and nD representations based on unit elements. Indeed, our solution allows compact encoding, by using only symbols to encode our words. It is thus possible to represent very big objects that can not fit in memory when using a classical datastructure for combinatorial maps. Moreover, our solution is local which thus provides directly streaming operations. Our second main contribution, the distributed combinatorial maps, is another possible solution to the problem of very big object representation. For this second contribution, we also show that it simplifies the definition of parallel algorithm and thus it is possible to define powerful operations. Our main goal following the NGTMod project is to use our solutions in many different domains of application and to share models and techniques across domains thanks to a universal representation. This goal is not yet reached since it was not planed in the NGTMod proposal, but this is an important part of the work in order to convince users of the interest of our solutions. We plan to work on this topic after the end of the NGTMod project.
During the first year of the project, we defined a new model allowing to describe 2D planar objects in a compact and a streamable way. We devised a rasterized representation for planar face graphs, called rPFC. Our solution unifies the previous approaches and provides a compact, per pixel representation. It provides a spatial decomposition of the connectivity of the graph into local (per pixel) descriptors that can be stored using a small number of bits per pixel and streamed as needed. This solution stores the topology of the original complex and is capable of representing sub-pixel connectivity.

During the second year of the project, firstly, we developed a first prototype allowing to built our compact data-structures taking a 2D initial mesh as input, and we implemented some corrections for the most frequent errors observed, allowing us to increase the number of models that we are able to consider as input.

Secondly, we extended our first rPFC solution in 3D and then in nD. In 3D, the words encode the topology of the intersection of the mesh and the 6 faces of each voxel. This principle can be generalized recursively in nD. We are continuing to work on this topic and started to write a paper for the 3D version that we plan to submit to an international journal soon.

Thirdly, we defined distributed nD combinatorial maps. The idea here is to cut an nD combinatorial map in different independent blocks, and to add some information on the cells in order to keep the links between the different parts. The different blocks can be either stored in a same computer, in this case our solution is interesting in order to develop parallel algorithms, or stored in several computers, for example in a computing centre cluster, allowing us to handle huge objects by using the memory available on the different computers.

These results were published in three papers, in international journals Computer-Aided Design, Computers & Graphics and Algorithms; they were presented into the two international conferences SPM 2017 and SMI 2018; and presented during the CGAL developer meeting 2018.
The main advantages of our solution is to approximates vertex and curved edge geometry of a PFC by the list of pixels they intersect, but represents graph connectivity exactly and hence supports exact topological graph traversal. It can accommodate non trivial topology in a pixel, including multiple vertices and multiple connected components. Moreover, the rPFC decomposes the graph connectivity description into a set of local maps, one per pixel, and stores each map using a very compact representation. As such, it offers a new paradigm that makes it possible to provide spatial indexing to both quantized geometry and exact topology of a valid PFC that may be complex both combinatorially and topologically.

Our experiments shown that the storage required by very large models is very small; while providing direct memory access to each pixel content, and thus providing efficient, because local, traversal operators. For this reason, we were able to use our rPFC to handle geographic information system data (GIS). These data contained a spatial database of the location of the world's administrative areas.

About our definition of distributed combinatorial maps, the main interest of this approach is to allow handling huge objects by using the memory available on several computers. Indeed, it is possible to directly traverse and update the distributed combinatorial maps by using message passings between the different computers. We showed the interest of this solution by implementing a parallel method of hexahedral subdivision ran on a computing center cluster.