• No results found

Model simplification has been extensively applied to triangular meshes [24]. Some of these techniques have been extended to tetrahedral meshes and use a methodology to evaluate the approximation error and the quality of the obtained mesh [23]. Methods for level-of-detail (LOD) sequences of triangular and tetrahedral meshes can also be found extensively in the literature [123, 162]. There also exist methods to simplify quadrilateral meshes [50, 155].

In contrast to these methods, that rely on geometric operations such as edge-collapse or clustering, the simplification can follow other strategies. Morphological operators like filleting and rounding, equivalent to opening and closing, can be used to simplify 2D binary images as well as 3D triangular meshes [180]. Alternative representations can be used such as octrees [7, 135, 167] in such a way that the geometry as well as the topology can be simplified, or BSP [61] obtaining a LOD sequence with a decreasing number of nodes. A carving strategy is applied to an octree model [167] as well as to a tetrahedral mesh [55] to simplify the topology.

Simplification strategies have also been developed for B-Rep models [151] by removing connected sets of faces, and for point clouds [110].

There has been also an intensive research in surface simplification in a progressive and lossless way, applied specially to triangle meshes [4, 42, 83, 107, 109, 111]. Early methods are called connectivity-driven, as they change progressively the connectivity [4, 107]. Recent approaches for triangle meshes, called geometry-driven, perform an space partitioning by using intermediate structures like kd-trees [42] or octrees [83, 109, 111] in order to code the mesh. In surface simplification the quality of the approximations is evaluated by some distance defined on the points on the surface, regardless of the potentially enclosed volume [6]. The reported compression rates for the geometry-driven techniques are better in general.

2.4.1 Bounding Volumes

Many of the aforementioned approaches provide approximations designed either to preserve the original topology between the original and the simplified object or just to obtain an appro-ximated shape. Nevertheless, in some cases, it is desirable to compute an approximation that is also a bounding volume. Bounding volumes are used in many applications like collision detection [64], ray tracing [45, 178], graphics interaction [63] and volume of interest computation [40].

Several works use classical bounding volumes, such as spheres [70, 41] and the minimum axis-aligned bounding box (AABB) [154, 184]. Nevertheless, other kinds of bounding volumes are used such as convex polytopes with faces oriented in a reduced set of orientations [72] or oriented polytopes that take into account the object’s velocity, or dynamic collision detection [28]. Moreover, hybrid bounding volumes are also used. Bounding boxes are enhanced with planes computed from the intersection between two objects [175]. Slab cut balls built from a ball cut by a slab (intersection region between two parallel planes) present a good balance between tightness and testing costs [78]. An oriented bounding box tree, enhanced with bounding spheres at each node, is used to speed up collision detection applying the more efficient sphere test first to eliminate distant objects [22].

Orthogonal polyhedra have been proposed as geometric bounds for constructive solid geo-metry because general set membership operations with them are very efficient [2]. However, in this work the authors present a Boolean operations algorithm using EVM, but do not present methods to compute bounding orthogonal polyhedra.

There are also simplification methods that generate orthogonal approximations. Iterative orthogonal subdivisions of the AABB of the original model can be made in order to get an pre-defined number of cuboids (boxes) [10]. Orthogonal polyhedra are used as bounding structures in a coarsening strategy [37], where orthogonal polyhedra are represented with the vertex-list representation [38], which stores a subset of vertices with a weight needed for orientation pur-poses. The authors present two simplification strategies. One of them, moving faces, performs face displacements but fails for objects with holes or more than one connected component. The other strategy, rectangle pairs does not have this restriction and performs a partition of the object in boxes, takes them in pairs, obtaining the AABB of this pairs, and finally performs the union of these AABB.

Some methods produce bounding volume hierarchies of polygonal meshes for fast collision detection between massive models [183] and for haptic rendering [105]. Other methods produce a hierarchy of polygonal convex volumes (a shrink-wrap around the object) [61, 94]. Meanwhile, orthogonally convex polygons can be computed as orthogonal hulls for 2D images [17]. An orthogonal polygon is orthogonally convex if any axis-parallel line intersects it in at most one line segment. This problem has been extended to orthogonally convex polyhedra [16]. Such convex polygons, like the convex hull, are not suitable to represent simplified objects with many concavities and holes, i.e., objects that are not close to a convex shape.

Methods that generate bounding approximations evaluate the quality of the approximations as the tightness of the bounding volume with respect to the volume of the original object.

Progressive Simplification with Bounding Volumes

In this section, three methods that produce a progressive LOD sequence of bounding volumes are described in some detail. These methods are compared with the proposed simplification method presented in Chapter 5.

The first method is a technique presented by Samet and Kochut [135] to progressively approximate and compress in a lossless way binary 3D objects represented by pointer-less octrees. This method is forest-based and deals with the internal nodes to progressively transmit n blocks, where n is not longer than the minimum number of either black or white blocks in the octree. This pointer-less octree is represented by its leaf nodes, where each leaf q is uniquely identified by the path leading from the root to q called locational code. This path is represented as a sequence of directional codes: 1 to 8 for each of the eight directions in the octree (UNW, UNE, USW, USE, DNW, DNE, DSW, DSE). The locational code for any node is an integer computed by a recursive function. Although this method is progressive, not all the approximations are a bounding volume of the original object.

The second method is a progressive solid simplification approach for 3D objects represented by binary space partition (BSP), presented by Huang and Wang [61]. It produces a LOD sequence with a decreasing number of nodes by using a combination of two techniques: (1) a volume bounded convex simplification that collapse parts with small volumes into a simple convex volume enclosing the volumetric cells on the input object, and (2) a plane collapse method which reduces the BSP tree depth ensuring that the input object is enclosed by the simplified BSP tree. In this way, from an initial object Γ0, a progressive sequence of simplified BSP trees, Γi, can be computed, such that Ω(Γi) ⊆ Ω(Γi+1), i = 0, . . . , n − 1, where Ω(Γi) is the space occupied by Γi. As the simplified object is always a convex wrapping of the original, this approach is not suitable if the original object is not close to a convex shape.

Finally, the third method is based on a structure called bounding-planes octree (BP-O) proposed by Melero et al. [94], which is based on an octree where each node contains a set of planes taken from the input polygonal model. These planes form a convex bounding volume that includes completely the portion of the 3D object contained in the node. The nodes only contain the indices of the planes, so, all the planes are stored in an external data structure accessed by the octree. The same idea applies to the final geometry, stored at leaf nodes.

To construct the BP-O, the polygons are classified in a 3D grid first, then, these polygons are assigned to each leaf node and all these nodes are grouped in order to have a minimum number of planes per node. After selecting the bounding planes at leafs, internal nodes are built by following the path from the root node to each leaf, computing their bounding planes in a bottom-up recursion.

One of the applications of BP-Octrees is the progressive transmission of 3D data though the network [93], in this case, planes contained in low levels of the BP-Octree are sent first, and so on until the leaf level. To save the generated data, it is distributed into three files, and as the data size of the original geometry is smaller than the required data size to transmit the full resolution contained in the BP-Octree, it is clear that the method does not compress the information. Besides, this approach is also not suitable if the original object is not close to a

convex shape.

2.5 Conclusions

The purpose of this chapter was to give a brief overview of the state of art of the issues that conform the base of this thesis. Some conclusions have been derived from this review and they have oriented the objectives of this thesis:

• Scanned images with 3D acquisition devices must be represented with some representation model in order to manipulate them. Datasets used in this thesis are restricted to binary volumes and there are many models to represent them, where each one offers different capabilities and restrictions. The most common model is the voxel model, but several proposals as EVM and OUDB, represent binary volume datasets in a more compact way.

• Most of the methods to compute the pore-size distribution of porous samples rely on a previous computation of a skeleton (1D or 2D), which is a very time-consuming process.

• The study of other properties of materials, collectively called structural parameters, is of interest for researchers. Several methods exist to compute the connectivity mainly based on classical representation models. Since the measurement of a 3D roundness index is impractical, methods to compute sphericity and roundness work with 2D projections of the sample.

• Because of the size of the source models, sometimes it is desirable to compute a simplified model. Moreover, if the approximation is also a bounding volume, it can be used in many applications such as collision detection, volume of interest computation, among other tasks.

CHAPTER

3

An Improved Decomposition Model for